1<html><body> 2<style> 3 4body, h1, h2, h3, div, span, p, pre, a { 5 margin: 0; 6 padding: 0; 7 border: 0; 8 font-weight: inherit; 9 font-style: inherit; 10 font-size: 100%; 11 font-family: inherit; 12 vertical-align: baseline; 13} 14 15body { 16 font-size: 13px; 17 padding: 1em; 18} 19 20h1 { 21 font-size: 26px; 22 margin-bottom: 1em; 23} 24 25h2 { 26 font-size: 24px; 27 margin-bottom: 1em; 28} 29 30h3 { 31 font-size: 20px; 32 margin-bottom: 1em; 33 margin-top: 1em; 34} 35 36pre, code { 37 line-height: 1.5; 38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace; 39} 40 41pre { 42 margin-top: 0.5em; 43} 44 45h1, h2, h3, p { 46 font-family: Arial, sans serif; 47} 48 49h1, h2, h3 { 50 border-bottom: solid #CCC 1px; 51} 52 53.toc_element { 54 margin-top: 0.5em; 55} 56 57.firstline { 58 margin-left: 2 em; 59} 60 61.method { 62 margin-top: 1em; 63 border: solid 1px #CCC; 64 padding: 1em; 65 background: #EEE; 66} 67 68.details { 69 font-weight: bold; 70 font-size: 14px; 71} 72 73</style> 74 75<h1><a href="adexchangebuyer_v1_4.html">Ad Exchange Buyer API</a> . <a href="adexchangebuyer_v1_4.proposals.html">proposals</a></h1> 76<h2>Instance Methods</h2> 77<p class="toc_element"> 78 <code><a href="#close">close()</a></code></p> 79<p class="firstline">Close httplib2 connections.</p> 80<p class="toc_element"> 81 <code><a href="#get">get(proposalId)</a></code></p> 82<p class="firstline">Get a proposal given its id</p> 83<p class="toc_element"> 84 <code><a href="#insert">insert(body=None)</a></code></p> 85<p class="firstline">Create the given list of proposals</p> 86<p class="toc_element"> 87 <code><a href="#patch">patch(proposalId, revisionNumber, updateAction, body=None)</a></code></p> 88<p class="firstline">Update the given proposal. This method supports patch semantics.</p> 89<p class="toc_element"> 90 <code><a href="#search">search(pqlQuery=None)</a></code></p> 91<p class="firstline">Search for proposals using pql query</p> 92<p class="toc_element"> 93 <code><a href="#setupcomplete">setupcomplete(proposalId)</a></code></p> 94<p class="firstline">Update the given proposal to indicate that setup has been completed.</p> 95<p class="toc_element"> 96 <code><a href="#update">update(proposalId, revisionNumber, updateAction, body=None)</a></code></p> 97<p class="firstline">Update the given proposal</p> 98<h3>Method Details</h3> 99<div class="method"> 100 <code class="details" id="close">close()</code> 101 <pre>Close httplib2 connections.</pre> 102</div> 103 104<div class="method"> 105 <code class="details" id="get">get(proposalId)</code> 106 <pre>Get a proposal given its id 107 108Args: 109 proposalId: string, Id of the proposal to retrieve. (required) 110 111Returns: 112 An object of the form: 113 114 { # Represents a proposal in the marketplace. A proposal is the unit of negotiation between a seller and a buyer and contains deals which are served. Each field in a proposal can have one of the following setting: 115 # 116 # (readonly) - It is an error to try and set this field. (buyer-readonly) - Only the seller can set this field. (seller-readonly) - Only the buyer can set this field. (updatable) - The field is updatable at all times by either buyer or the seller. 117 "billedBuyer": { # Reference to the buyer that will get billed for this proposal. (readonly) 118 "accountId": "A String", # Adx account id of the buyer. 119 }, 120 "buyer": { # Reference to the buyer on the proposal. (readonly, except on create) 121 "accountId": "A String", # Adx account id of the buyer. 122 }, 123 "buyerContacts": [ # Optional contact information of the buyer. (seller-readonly) 124 { 125 "email": "A String", # Email address of the contact. 126 "name": "A String", # The name of the contact. 127 }, 128 ], 129 "buyerPrivateData": { # Private data for buyer. (hidden from seller). 130 "referenceId": "A String", 131 "referencePayload": "A String", 132 }, 133 "dbmAdvertiserIds": [ # IDs of DBM advertisers permission to this proposal. 134 "A String", 135 ], 136 "hasBuyerSignedOff": True or False, # When an proposal is in an accepted state, indicates whether the buyer has signed off. Once both sides have signed off on a deal, the proposal can be finalized by the seller. (seller-readonly) 137 "hasSellerSignedOff": True or False, # When an proposal is in an accepted state, indicates whether the buyer has signed off Once both sides have signed off on a deal, the proposal can be finalized by the seller. (buyer-readonly) 138 "inventorySource": "A String", # What exchange will provide this inventory (readonly, except on create). 139 "isRenegotiating": True or False, # True if the proposal is being renegotiated (readonly). 140 "isSetupComplete": True or False, # True, if the buyside inventory setup is complete for this proposal. (readonly, except via OrderSetupCompleted action) Deprecated in favor of deal level setup complete flag. 141 "kind": "adexchangebuyer#proposal", # Identifies what kind of resource this is. Value: the fixed string "adexchangebuyer#proposal". 142 "labels": [ # List of labels associated with the proposal. (readonly) 143 { 144 "accountId": "A String", # The accountId of the party that created the label. 145 "createTimeMs": "A String", # The creation time (in ms since epoch) for the label. 146 "deprecatedMarketplaceDealParty": { # Information about the party that created the label. 147 "buyer": { # The buyer/seller associated with the deal. One of buyer/seller is specified for a deal-party. 148 "accountId": "A String", # Adx account id of the buyer. 149 }, 150 "seller": { # The buyer/seller associated with the deal. One of buyer/seller is specified for a deal party. 151 "accountId": "A String", # The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product. 152 "subAccountId": "A String", # Optional sub-account id for the seller. 153 }, 154 }, 155 "label": "A String", # The label to use. 156 }, 157 ], 158 "lastUpdaterOrCommentorRole": "A String", # The role of the last user that either updated the proposal or left a comment. (readonly) 159 "name": "A String", # The name for the proposal (updatable) 160 "negotiationId": "A String", # Optional negotiation id if this proposal is a preferred deal proposal. 161 "originatorRole": "A String", # Indicates whether the buyer/seller created the proposal.(readonly) 162 "privateAuctionId": "A String", # Optional private auction id if this proposal is a private auction proposal. 163 "proposalId": "A String", # The unique id of the proposal. (readonly). 164 "proposalState": "A String", # The current state of the proposal. (readonly) 165 "revisionNumber": "A String", # The revision number for the proposal (readonly). 166 "revisionTimeMs": "A String", # The time (ms since epoch) when the proposal was last revised (readonly). 167 "seller": { # Reference to the seller on the proposal. (readonly, except on create) 168 "accountId": "A String", # The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product. 169 "subAccountId": "A String", # Optional sub-account id for the seller. 170 }, 171 "sellerContacts": [ # Optional contact information of the seller (buyer-readonly). 172 { 173 "email": "A String", # Email address of the contact. 174 "name": "A String", # The name of the contact. 175 }, 176 ], 177}</pre> 178</div> 179 180<div class="method"> 181 <code class="details" id="insert">insert(body=None)</code> 182 <pre>Create the given list of proposals 183 184Args: 185 body: object, The request body. 186 The object takes the form of: 187 188{ 189 "proposals": [ # The list of proposals to create. 190 { # Represents a proposal in the marketplace. A proposal is the unit of negotiation between a seller and a buyer and contains deals which are served. Each field in a proposal can have one of the following setting: 191 # 192 # (readonly) - It is an error to try and set this field. (buyer-readonly) - Only the seller can set this field. (seller-readonly) - Only the buyer can set this field. (updatable) - The field is updatable at all times by either buyer or the seller. 193 "billedBuyer": { # Reference to the buyer that will get billed for this proposal. (readonly) 194 "accountId": "A String", # Adx account id of the buyer. 195 }, 196 "buyer": { # Reference to the buyer on the proposal. (readonly, except on create) 197 "accountId": "A String", # Adx account id of the buyer. 198 }, 199 "buyerContacts": [ # Optional contact information of the buyer. (seller-readonly) 200 { 201 "email": "A String", # Email address of the contact. 202 "name": "A String", # The name of the contact. 203 }, 204 ], 205 "buyerPrivateData": { # Private data for buyer. (hidden from seller). 206 "referenceId": "A String", 207 "referencePayload": "A String", 208 }, 209 "dbmAdvertiserIds": [ # IDs of DBM advertisers permission to this proposal. 210 "A String", 211 ], 212 "hasBuyerSignedOff": True or False, # When an proposal is in an accepted state, indicates whether the buyer has signed off. Once both sides have signed off on a deal, the proposal can be finalized by the seller. (seller-readonly) 213 "hasSellerSignedOff": True or False, # When an proposal is in an accepted state, indicates whether the buyer has signed off Once both sides have signed off on a deal, the proposal can be finalized by the seller. (buyer-readonly) 214 "inventorySource": "A String", # What exchange will provide this inventory (readonly, except on create). 215 "isRenegotiating": True or False, # True if the proposal is being renegotiated (readonly). 216 "isSetupComplete": True or False, # True, if the buyside inventory setup is complete for this proposal. (readonly, except via OrderSetupCompleted action) Deprecated in favor of deal level setup complete flag. 217 "kind": "adexchangebuyer#proposal", # Identifies what kind of resource this is. Value: the fixed string "adexchangebuyer#proposal". 218 "labels": [ # List of labels associated with the proposal. (readonly) 219 { 220 "accountId": "A String", # The accountId of the party that created the label. 221 "createTimeMs": "A String", # The creation time (in ms since epoch) for the label. 222 "deprecatedMarketplaceDealParty": { # Information about the party that created the label. 223 "buyer": { # The buyer/seller associated with the deal. One of buyer/seller is specified for a deal-party. 224 "accountId": "A String", # Adx account id of the buyer. 225 }, 226 "seller": { # The buyer/seller associated with the deal. One of buyer/seller is specified for a deal party. 227 "accountId": "A String", # The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product. 228 "subAccountId": "A String", # Optional sub-account id for the seller. 229 }, 230 }, 231 "label": "A String", # The label to use. 232 }, 233 ], 234 "lastUpdaterOrCommentorRole": "A String", # The role of the last user that either updated the proposal or left a comment. (readonly) 235 "name": "A String", # The name for the proposal (updatable) 236 "negotiationId": "A String", # Optional negotiation id if this proposal is a preferred deal proposal. 237 "originatorRole": "A String", # Indicates whether the buyer/seller created the proposal.(readonly) 238 "privateAuctionId": "A String", # Optional private auction id if this proposal is a private auction proposal. 239 "proposalId": "A String", # The unique id of the proposal. (readonly). 240 "proposalState": "A String", # The current state of the proposal. (readonly) 241 "revisionNumber": "A String", # The revision number for the proposal (readonly). 242 "revisionTimeMs": "A String", # The time (ms since epoch) when the proposal was last revised (readonly). 243 "seller": { # Reference to the seller on the proposal. (readonly, except on create) 244 "accountId": "A String", # The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product. 245 "subAccountId": "A String", # Optional sub-account id for the seller. 246 }, 247 "sellerContacts": [ # Optional contact information of the seller (buyer-readonly). 248 { 249 "email": "A String", # Email address of the contact. 250 "name": "A String", # The name of the contact. 251 }, 252 ], 253 }, 254 ], 255 "webPropertyCode": "A String", # Web property id of the seller creating these orders 256} 257 258 259Returns: 260 An object of the form: 261 262 { 263 "proposals": [ # The list of proposals successfully created. 264 { # Represents a proposal in the marketplace. A proposal is the unit of negotiation between a seller and a buyer and contains deals which are served. Each field in a proposal can have one of the following setting: 265 # 266 # (readonly) - It is an error to try and set this field. (buyer-readonly) - Only the seller can set this field. (seller-readonly) - Only the buyer can set this field. (updatable) - The field is updatable at all times by either buyer or the seller. 267 "billedBuyer": { # Reference to the buyer that will get billed for this proposal. (readonly) 268 "accountId": "A String", # Adx account id of the buyer. 269 }, 270 "buyer": { # Reference to the buyer on the proposal. (readonly, except on create) 271 "accountId": "A String", # Adx account id of the buyer. 272 }, 273 "buyerContacts": [ # Optional contact information of the buyer. (seller-readonly) 274 { 275 "email": "A String", # Email address of the contact. 276 "name": "A String", # The name of the contact. 277 }, 278 ], 279 "buyerPrivateData": { # Private data for buyer. (hidden from seller). 280 "referenceId": "A String", 281 "referencePayload": "A String", 282 }, 283 "dbmAdvertiserIds": [ # IDs of DBM advertisers permission to this proposal. 284 "A String", 285 ], 286 "hasBuyerSignedOff": True or False, # When an proposal is in an accepted state, indicates whether the buyer has signed off. Once both sides have signed off on a deal, the proposal can be finalized by the seller. (seller-readonly) 287 "hasSellerSignedOff": True or False, # When an proposal is in an accepted state, indicates whether the buyer has signed off Once both sides have signed off on a deal, the proposal can be finalized by the seller. (buyer-readonly) 288 "inventorySource": "A String", # What exchange will provide this inventory (readonly, except on create). 289 "isRenegotiating": True or False, # True if the proposal is being renegotiated (readonly). 290 "isSetupComplete": True or False, # True, if the buyside inventory setup is complete for this proposal. (readonly, except via OrderSetupCompleted action) Deprecated in favor of deal level setup complete flag. 291 "kind": "adexchangebuyer#proposal", # Identifies what kind of resource this is. Value: the fixed string "adexchangebuyer#proposal". 292 "labels": [ # List of labels associated with the proposal. (readonly) 293 { 294 "accountId": "A String", # The accountId of the party that created the label. 295 "createTimeMs": "A String", # The creation time (in ms since epoch) for the label. 296 "deprecatedMarketplaceDealParty": { # Information about the party that created the label. 297 "buyer": { # The buyer/seller associated with the deal. One of buyer/seller is specified for a deal-party. 298 "accountId": "A String", # Adx account id of the buyer. 299 }, 300 "seller": { # The buyer/seller associated with the deal. One of buyer/seller is specified for a deal party. 301 "accountId": "A String", # The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product. 302 "subAccountId": "A String", # Optional sub-account id for the seller. 303 }, 304 }, 305 "label": "A String", # The label to use. 306 }, 307 ], 308 "lastUpdaterOrCommentorRole": "A String", # The role of the last user that either updated the proposal or left a comment. (readonly) 309 "name": "A String", # The name for the proposal (updatable) 310 "negotiationId": "A String", # Optional negotiation id if this proposal is a preferred deal proposal. 311 "originatorRole": "A String", # Indicates whether the buyer/seller created the proposal.(readonly) 312 "privateAuctionId": "A String", # Optional private auction id if this proposal is a private auction proposal. 313 "proposalId": "A String", # The unique id of the proposal. (readonly). 314 "proposalState": "A String", # The current state of the proposal. (readonly) 315 "revisionNumber": "A String", # The revision number for the proposal (readonly). 316 "revisionTimeMs": "A String", # The time (ms since epoch) when the proposal was last revised (readonly). 317 "seller": { # Reference to the seller on the proposal. (readonly, except on create) 318 "accountId": "A String", # The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product. 319 "subAccountId": "A String", # Optional sub-account id for the seller. 320 }, 321 "sellerContacts": [ # Optional contact information of the seller (buyer-readonly). 322 { 323 "email": "A String", # Email address of the contact. 324 "name": "A String", # The name of the contact. 325 }, 326 ], 327 }, 328 ], 329}</pre> 330</div> 331 332<div class="method"> 333 <code class="details" id="patch">patch(proposalId, revisionNumber, updateAction, body=None)</code> 334 <pre>Update the given proposal. This method supports patch semantics. 335 336Args: 337 proposalId: string, The proposal id to update. (required) 338 revisionNumber: string, The last known revision number to update. If the head revision in the marketplace database has since changed, an error will be thrown. The caller should then fetch the latest proposal at head revision and retry the update at that revision. (required) 339 updateAction: string, The proposed action to take on the proposal. This field is required and it must be set when updating a proposal. (required) 340 Allowed values 341 accept - 342 cancel - 343 propose - 344 proposeAndAccept - 345 unknownAction - 346 updateNonTerms - 347 body: object, The request body. 348 The object takes the form of: 349 350{ # Represents a proposal in the marketplace. A proposal is the unit of negotiation between a seller and a buyer and contains deals which are served. Each field in a proposal can have one of the following setting: 351 # 352 # (readonly) - It is an error to try and set this field. (buyer-readonly) - Only the seller can set this field. (seller-readonly) - Only the buyer can set this field. (updatable) - The field is updatable at all times by either buyer or the seller. 353 "billedBuyer": { # Reference to the buyer that will get billed for this proposal. (readonly) 354 "accountId": "A String", # Adx account id of the buyer. 355 }, 356 "buyer": { # Reference to the buyer on the proposal. (readonly, except on create) 357 "accountId": "A String", # Adx account id of the buyer. 358 }, 359 "buyerContacts": [ # Optional contact information of the buyer. (seller-readonly) 360 { 361 "email": "A String", # Email address of the contact. 362 "name": "A String", # The name of the contact. 363 }, 364 ], 365 "buyerPrivateData": { # Private data for buyer. (hidden from seller). 366 "referenceId": "A String", 367 "referencePayload": "A String", 368 }, 369 "dbmAdvertiserIds": [ # IDs of DBM advertisers permission to this proposal. 370 "A String", 371 ], 372 "hasBuyerSignedOff": True or False, # When an proposal is in an accepted state, indicates whether the buyer has signed off. Once both sides have signed off on a deal, the proposal can be finalized by the seller. (seller-readonly) 373 "hasSellerSignedOff": True or False, # When an proposal is in an accepted state, indicates whether the buyer has signed off Once both sides have signed off on a deal, the proposal can be finalized by the seller. (buyer-readonly) 374 "inventorySource": "A String", # What exchange will provide this inventory (readonly, except on create). 375 "isRenegotiating": True or False, # True if the proposal is being renegotiated (readonly). 376 "isSetupComplete": True or False, # True, if the buyside inventory setup is complete for this proposal. (readonly, except via OrderSetupCompleted action) Deprecated in favor of deal level setup complete flag. 377 "kind": "adexchangebuyer#proposal", # Identifies what kind of resource this is. Value: the fixed string "adexchangebuyer#proposal". 378 "labels": [ # List of labels associated with the proposal. (readonly) 379 { 380 "accountId": "A String", # The accountId of the party that created the label. 381 "createTimeMs": "A String", # The creation time (in ms since epoch) for the label. 382 "deprecatedMarketplaceDealParty": { # Information about the party that created the label. 383 "buyer": { # The buyer/seller associated with the deal. One of buyer/seller is specified for a deal-party. 384 "accountId": "A String", # Adx account id of the buyer. 385 }, 386 "seller": { # The buyer/seller associated with the deal. One of buyer/seller is specified for a deal party. 387 "accountId": "A String", # The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product. 388 "subAccountId": "A String", # Optional sub-account id for the seller. 389 }, 390 }, 391 "label": "A String", # The label to use. 392 }, 393 ], 394 "lastUpdaterOrCommentorRole": "A String", # The role of the last user that either updated the proposal or left a comment. (readonly) 395 "name": "A String", # The name for the proposal (updatable) 396 "negotiationId": "A String", # Optional negotiation id if this proposal is a preferred deal proposal. 397 "originatorRole": "A String", # Indicates whether the buyer/seller created the proposal.(readonly) 398 "privateAuctionId": "A String", # Optional private auction id if this proposal is a private auction proposal. 399 "proposalId": "A String", # The unique id of the proposal. (readonly). 400 "proposalState": "A String", # The current state of the proposal. (readonly) 401 "revisionNumber": "A String", # The revision number for the proposal (readonly). 402 "revisionTimeMs": "A String", # The time (ms since epoch) when the proposal was last revised (readonly). 403 "seller": { # Reference to the seller on the proposal. (readonly, except on create) 404 "accountId": "A String", # The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product. 405 "subAccountId": "A String", # Optional sub-account id for the seller. 406 }, 407 "sellerContacts": [ # Optional contact information of the seller (buyer-readonly). 408 { 409 "email": "A String", # Email address of the contact. 410 "name": "A String", # The name of the contact. 411 }, 412 ], 413} 414 415 416Returns: 417 An object of the form: 418 419 { # Represents a proposal in the marketplace. A proposal is the unit of negotiation between a seller and a buyer and contains deals which are served. Each field in a proposal can have one of the following setting: 420 # 421 # (readonly) - It is an error to try and set this field. (buyer-readonly) - Only the seller can set this field. (seller-readonly) - Only the buyer can set this field. (updatable) - The field is updatable at all times by either buyer or the seller. 422 "billedBuyer": { # Reference to the buyer that will get billed for this proposal. (readonly) 423 "accountId": "A String", # Adx account id of the buyer. 424 }, 425 "buyer": { # Reference to the buyer on the proposal. (readonly, except on create) 426 "accountId": "A String", # Adx account id of the buyer. 427 }, 428 "buyerContacts": [ # Optional contact information of the buyer. (seller-readonly) 429 { 430 "email": "A String", # Email address of the contact. 431 "name": "A String", # The name of the contact. 432 }, 433 ], 434 "buyerPrivateData": { # Private data for buyer. (hidden from seller). 435 "referenceId": "A String", 436 "referencePayload": "A String", 437 }, 438 "dbmAdvertiserIds": [ # IDs of DBM advertisers permission to this proposal. 439 "A String", 440 ], 441 "hasBuyerSignedOff": True or False, # When an proposal is in an accepted state, indicates whether the buyer has signed off. Once both sides have signed off on a deal, the proposal can be finalized by the seller. (seller-readonly) 442 "hasSellerSignedOff": True or False, # When an proposal is in an accepted state, indicates whether the buyer has signed off Once both sides have signed off on a deal, the proposal can be finalized by the seller. (buyer-readonly) 443 "inventorySource": "A String", # What exchange will provide this inventory (readonly, except on create). 444 "isRenegotiating": True or False, # True if the proposal is being renegotiated (readonly). 445 "isSetupComplete": True or False, # True, if the buyside inventory setup is complete for this proposal. (readonly, except via OrderSetupCompleted action) Deprecated in favor of deal level setup complete flag. 446 "kind": "adexchangebuyer#proposal", # Identifies what kind of resource this is. Value: the fixed string "adexchangebuyer#proposal". 447 "labels": [ # List of labels associated with the proposal. (readonly) 448 { 449 "accountId": "A String", # The accountId of the party that created the label. 450 "createTimeMs": "A String", # The creation time (in ms since epoch) for the label. 451 "deprecatedMarketplaceDealParty": { # Information about the party that created the label. 452 "buyer": { # The buyer/seller associated with the deal. One of buyer/seller is specified for a deal-party. 453 "accountId": "A String", # Adx account id of the buyer. 454 }, 455 "seller": { # The buyer/seller associated with the deal. One of buyer/seller is specified for a deal party. 456 "accountId": "A String", # The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product. 457 "subAccountId": "A String", # Optional sub-account id for the seller. 458 }, 459 }, 460 "label": "A String", # The label to use. 461 }, 462 ], 463 "lastUpdaterOrCommentorRole": "A String", # The role of the last user that either updated the proposal or left a comment. (readonly) 464 "name": "A String", # The name for the proposal (updatable) 465 "negotiationId": "A String", # Optional negotiation id if this proposal is a preferred deal proposal. 466 "originatorRole": "A String", # Indicates whether the buyer/seller created the proposal.(readonly) 467 "privateAuctionId": "A String", # Optional private auction id if this proposal is a private auction proposal. 468 "proposalId": "A String", # The unique id of the proposal. (readonly). 469 "proposalState": "A String", # The current state of the proposal. (readonly) 470 "revisionNumber": "A String", # The revision number for the proposal (readonly). 471 "revisionTimeMs": "A String", # The time (ms since epoch) when the proposal was last revised (readonly). 472 "seller": { # Reference to the seller on the proposal. (readonly, except on create) 473 "accountId": "A String", # The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product. 474 "subAccountId": "A String", # Optional sub-account id for the seller. 475 }, 476 "sellerContacts": [ # Optional contact information of the seller (buyer-readonly). 477 { 478 "email": "A String", # Email address of the contact. 479 "name": "A String", # The name of the contact. 480 }, 481 ], 482}</pre> 483</div> 484 485<div class="method"> 486 <code class="details" id="search">search(pqlQuery=None)</code> 487 <pre>Search for proposals using pql query 488 489Args: 490 pqlQuery: string, Query string to retrieve specific proposals. 491 492Returns: 493 An object of the form: 494 495 { 496 "proposals": [ # The list of matching proposals. 497 { # Represents a proposal in the marketplace. A proposal is the unit of negotiation between a seller and a buyer and contains deals which are served. Each field in a proposal can have one of the following setting: 498 # 499 # (readonly) - It is an error to try and set this field. (buyer-readonly) - Only the seller can set this field. (seller-readonly) - Only the buyer can set this field. (updatable) - The field is updatable at all times by either buyer or the seller. 500 "billedBuyer": { # Reference to the buyer that will get billed for this proposal. (readonly) 501 "accountId": "A String", # Adx account id of the buyer. 502 }, 503 "buyer": { # Reference to the buyer on the proposal. (readonly, except on create) 504 "accountId": "A String", # Adx account id of the buyer. 505 }, 506 "buyerContacts": [ # Optional contact information of the buyer. (seller-readonly) 507 { 508 "email": "A String", # Email address of the contact. 509 "name": "A String", # The name of the contact. 510 }, 511 ], 512 "buyerPrivateData": { # Private data for buyer. (hidden from seller). 513 "referenceId": "A String", 514 "referencePayload": "A String", 515 }, 516 "dbmAdvertiserIds": [ # IDs of DBM advertisers permission to this proposal. 517 "A String", 518 ], 519 "hasBuyerSignedOff": True or False, # When an proposal is in an accepted state, indicates whether the buyer has signed off. Once both sides have signed off on a deal, the proposal can be finalized by the seller. (seller-readonly) 520 "hasSellerSignedOff": True or False, # When an proposal is in an accepted state, indicates whether the buyer has signed off Once both sides have signed off on a deal, the proposal can be finalized by the seller. (buyer-readonly) 521 "inventorySource": "A String", # What exchange will provide this inventory (readonly, except on create). 522 "isRenegotiating": True or False, # True if the proposal is being renegotiated (readonly). 523 "isSetupComplete": True or False, # True, if the buyside inventory setup is complete for this proposal. (readonly, except via OrderSetupCompleted action) Deprecated in favor of deal level setup complete flag. 524 "kind": "adexchangebuyer#proposal", # Identifies what kind of resource this is. Value: the fixed string "adexchangebuyer#proposal". 525 "labels": [ # List of labels associated with the proposal. (readonly) 526 { 527 "accountId": "A String", # The accountId of the party that created the label. 528 "createTimeMs": "A String", # The creation time (in ms since epoch) for the label. 529 "deprecatedMarketplaceDealParty": { # Information about the party that created the label. 530 "buyer": { # The buyer/seller associated with the deal. One of buyer/seller is specified for a deal-party. 531 "accountId": "A String", # Adx account id of the buyer. 532 }, 533 "seller": { # The buyer/seller associated with the deal. One of buyer/seller is specified for a deal party. 534 "accountId": "A String", # The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product. 535 "subAccountId": "A String", # Optional sub-account id for the seller. 536 }, 537 }, 538 "label": "A String", # The label to use. 539 }, 540 ], 541 "lastUpdaterOrCommentorRole": "A String", # The role of the last user that either updated the proposal or left a comment. (readonly) 542 "name": "A String", # The name for the proposal (updatable) 543 "negotiationId": "A String", # Optional negotiation id if this proposal is a preferred deal proposal. 544 "originatorRole": "A String", # Indicates whether the buyer/seller created the proposal.(readonly) 545 "privateAuctionId": "A String", # Optional private auction id if this proposal is a private auction proposal. 546 "proposalId": "A String", # The unique id of the proposal. (readonly). 547 "proposalState": "A String", # The current state of the proposal. (readonly) 548 "revisionNumber": "A String", # The revision number for the proposal (readonly). 549 "revisionTimeMs": "A String", # The time (ms since epoch) when the proposal was last revised (readonly). 550 "seller": { # Reference to the seller on the proposal. (readonly, except on create) 551 "accountId": "A String", # The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product. 552 "subAccountId": "A String", # Optional sub-account id for the seller. 553 }, 554 "sellerContacts": [ # Optional contact information of the seller (buyer-readonly). 555 { 556 "email": "A String", # Email address of the contact. 557 "name": "A String", # The name of the contact. 558 }, 559 ], 560 }, 561 ], 562}</pre> 563</div> 564 565<div class="method"> 566 <code class="details" id="setupcomplete">setupcomplete(proposalId)</code> 567 <pre>Update the given proposal to indicate that setup has been completed. 568 569Args: 570 proposalId: string, The proposal id for which the setup is complete (required) 571</pre> 572</div> 573 574<div class="method"> 575 <code class="details" id="update">update(proposalId, revisionNumber, updateAction, body=None)</code> 576 <pre>Update the given proposal 577 578Args: 579 proposalId: string, The proposal id to update. (required) 580 revisionNumber: string, The last known revision number to update. If the head revision in the marketplace database has since changed, an error will be thrown. The caller should then fetch the latest proposal at head revision and retry the update at that revision. (required) 581 updateAction: string, The proposed action to take on the proposal. This field is required and it must be set when updating a proposal. (required) 582 Allowed values 583 accept - 584 cancel - 585 propose - 586 proposeAndAccept - 587 unknownAction - 588 updateNonTerms - 589 body: object, The request body. 590 The object takes the form of: 591 592{ # Represents a proposal in the marketplace. A proposal is the unit of negotiation between a seller and a buyer and contains deals which are served. Each field in a proposal can have one of the following setting: 593 # 594 # (readonly) - It is an error to try and set this field. (buyer-readonly) - Only the seller can set this field. (seller-readonly) - Only the buyer can set this field. (updatable) - The field is updatable at all times by either buyer or the seller. 595 "billedBuyer": { # Reference to the buyer that will get billed for this proposal. (readonly) 596 "accountId": "A String", # Adx account id of the buyer. 597 }, 598 "buyer": { # Reference to the buyer on the proposal. (readonly, except on create) 599 "accountId": "A String", # Adx account id of the buyer. 600 }, 601 "buyerContacts": [ # Optional contact information of the buyer. (seller-readonly) 602 { 603 "email": "A String", # Email address of the contact. 604 "name": "A String", # The name of the contact. 605 }, 606 ], 607 "buyerPrivateData": { # Private data for buyer. (hidden from seller). 608 "referenceId": "A String", 609 "referencePayload": "A String", 610 }, 611 "dbmAdvertiserIds": [ # IDs of DBM advertisers permission to this proposal. 612 "A String", 613 ], 614 "hasBuyerSignedOff": True or False, # When an proposal is in an accepted state, indicates whether the buyer has signed off. Once both sides have signed off on a deal, the proposal can be finalized by the seller. (seller-readonly) 615 "hasSellerSignedOff": True or False, # When an proposal is in an accepted state, indicates whether the buyer has signed off Once both sides have signed off on a deal, the proposal can be finalized by the seller. (buyer-readonly) 616 "inventorySource": "A String", # What exchange will provide this inventory (readonly, except on create). 617 "isRenegotiating": True or False, # True if the proposal is being renegotiated (readonly). 618 "isSetupComplete": True or False, # True, if the buyside inventory setup is complete for this proposal. (readonly, except via OrderSetupCompleted action) Deprecated in favor of deal level setup complete flag. 619 "kind": "adexchangebuyer#proposal", # Identifies what kind of resource this is. Value: the fixed string "adexchangebuyer#proposal". 620 "labels": [ # List of labels associated with the proposal. (readonly) 621 { 622 "accountId": "A String", # The accountId of the party that created the label. 623 "createTimeMs": "A String", # The creation time (in ms since epoch) for the label. 624 "deprecatedMarketplaceDealParty": { # Information about the party that created the label. 625 "buyer": { # The buyer/seller associated with the deal. One of buyer/seller is specified for a deal-party. 626 "accountId": "A String", # Adx account id of the buyer. 627 }, 628 "seller": { # The buyer/seller associated with the deal. One of buyer/seller is specified for a deal party. 629 "accountId": "A String", # The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product. 630 "subAccountId": "A String", # Optional sub-account id for the seller. 631 }, 632 }, 633 "label": "A String", # The label to use. 634 }, 635 ], 636 "lastUpdaterOrCommentorRole": "A String", # The role of the last user that either updated the proposal or left a comment. (readonly) 637 "name": "A String", # The name for the proposal (updatable) 638 "negotiationId": "A String", # Optional negotiation id if this proposal is a preferred deal proposal. 639 "originatorRole": "A String", # Indicates whether the buyer/seller created the proposal.(readonly) 640 "privateAuctionId": "A String", # Optional private auction id if this proposal is a private auction proposal. 641 "proposalId": "A String", # The unique id of the proposal. (readonly). 642 "proposalState": "A String", # The current state of the proposal. (readonly) 643 "revisionNumber": "A String", # The revision number for the proposal (readonly). 644 "revisionTimeMs": "A String", # The time (ms since epoch) when the proposal was last revised (readonly). 645 "seller": { # Reference to the seller on the proposal. (readonly, except on create) 646 "accountId": "A String", # The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product. 647 "subAccountId": "A String", # Optional sub-account id for the seller. 648 }, 649 "sellerContacts": [ # Optional contact information of the seller (buyer-readonly). 650 { 651 "email": "A String", # Email address of the contact. 652 "name": "A String", # The name of the contact. 653 }, 654 ], 655} 656 657 658Returns: 659 An object of the form: 660 661 { # Represents a proposal in the marketplace. A proposal is the unit of negotiation between a seller and a buyer and contains deals which are served. Each field in a proposal can have one of the following setting: 662 # 663 # (readonly) - It is an error to try and set this field. (buyer-readonly) - Only the seller can set this field. (seller-readonly) - Only the buyer can set this field. (updatable) - The field is updatable at all times by either buyer or the seller. 664 "billedBuyer": { # Reference to the buyer that will get billed for this proposal. (readonly) 665 "accountId": "A String", # Adx account id of the buyer. 666 }, 667 "buyer": { # Reference to the buyer on the proposal. (readonly, except on create) 668 "accountId": "A String", # Adx account id of the buyer. 669 }, 670 "buyerContacts": [ # Optional contact information of the buyer. (seller-readonly) 671 { 672 "email": "A String", # Email address of the contact. 673 "name": "A String", # The name of the contact. 674 }, 675 ], 676 "buyerPrivateData": { # Private data for buyer. (hidden from seller). 677 "referenceId": "A String", 678 "referencePayload": "A String", 679 }, 680 "dbmAdvertiserIds": [ # IDs of DBM advertisers permission to this proposal. 681 "A String", 682 ], 683 "hasBuyerSignedOff": True or False, # When an proposal is in an accepted state, indicates whether the buyer has signed off. Once both sides have signed off on a deal, the proposal can be finalized by the seller. (seller-readonly) 684 "hasSellerSignedOff": True or False, # When an proposal is in an accepted state, indicates whether the buyer has signed off Once both sides have signed off on a deal, the proposal can be finalized by the seller. (buyer-readonly) 685 "inventorySource": "A String", # What exchange will provide this inventory (readonly, except on create). 686 "isRenegotiating": True or False, # True if the proposal is being renegotiated (readonly). 687 "isSetupComplete": True or False, # True, if the buyside inventory setup is complete for this proposal. (readonly, except via OrderSetupCompleted action) Deprecated in favor of deal level setup complete flag. 688 "kind": "adexchangebuyer#proposal", # Identifies what kind of resource this is. Value: the fixed string "adexchangebuyer#proposal". 689 "labels": [ # List of labels associated with the proposal. (readonly) 690 { 691 "accountId": "A String", # The accountId of the party that created the label. 692 "createTimeMs": "A String", # The creation time (in ms since epoch) for the label. 693 "deprecatedMarketplaceDealParty": { # Information about the party that created the label. 694 "buyer": { # The buyer/seller associated with the deal. One of buyer/seller is specified for a deal-party. 695 "accountId": "A String", # Adx account id of the buyer. 696 }, 697 "seller": { # The buyer/seller associated with the deal. One of buyer/seller is specified for a deal party. 698 "accountId": "A String", # The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product. 699 "subAccountId": "A String", # Optional sub-account id for the seller. 700 }, 701 }, 702 "label": "A String", # The label to use. 703 }, 704 ], 705 "lastUpdaterOrCommentorRole": "A String", # The role of the last user that either updated the proposal or left a comment. (readonly) 706 "name": "A String", # The name for the proposal (updatable) 707 "negotiationId": "A String", # Optional negotiation id if this proposal is a preferred deal proposal. 708 "originatorRole": "A String", # Indicates whether the buyer/seller created the proposal.(readonly) 709 "privateAuctionId": "A String", # Optional private auction id if this proposal is a private auction proposal. 710 "proposalId": "A String", # The unique id of the proposal. (readonly). 711 "proposalState": "A String", # The current state of the proposal. (readonly) 712 "revisionNumber": "A String", # The revision number for the proposal (readonly). 713 "revisionTimeMs": "A String", # The time (ms since epoch) when the proposal was last revised (readonly). 714 "seller": { # Reference to the seller on the proposal. (readonly, except on create) 715 "accountId": "A String", # The unique id for the seller. The seller fills in this field. The seller account id is then available to buyer in the product. 716 "subAccountId": "A String", # Optional sub-account id for the seller. 717 }, 718 "sellerContacts": [ # Optional contact information of the seller (buyer-readonly). 719 { 720 "email": "A String", # Email address of the contact. 721 "name": "A String", # The name of the contact. 722 }, 723 ], 724}</pre> 725</div> 726 727</body></html>