1<?php 2/* 3 * Copyright 2014 Google Inc. 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); you may not 6 * use this file except in compliance with the License. You may obtain a copy of 7 * the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 13 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 14 * License for the specific language governing permissions and limitations under 15 * the License. 16 */ 17 18namespace Google\Service; 19 20use Google\Client; 21 22/** 23 * Service definition for AdExchangeBuyer (v1.4). 24 * 25 * <p> 26 * Accesses your bidding-account information, submits creatives for validation, 27 * finds available direct deals, and retrieves performance reports.</p> 28 * 29 * <p> 30 * For more information about this service, see the API 31 * <a href="https://developers.google.com/ad-exchange/buyer-rest" target="_blank">Documentation</a> 32 * </p> 33 * 34 * @author Google, Inc. 35 */ 36class AdExchangeBuyer extends \Google\Service 37{ 38 /** Manage your Ad Exchange buyer account configuration. */ 39 const ADEXCHANGE_BUYER = 40 "https://www.googleapis.com/auth/adexchange.buyer"; 41 42 public $accounts; 43 public $billingInfo; 44 public $budget; 45 public $creatives; 46 public $marketplacedeals; 47 public $marketplacenotes; 48 public $marketplaceprivateauction; 49 public $performanceReport; 50 public $pretargetingConfig; 51 public $products; 52 public $proposals; 53 public $pubprofiles; 54 55 /** 56 * Constructs the internal representation of the AdExchangeBuyer service. 57 * 58 * @param Client|array $clientOrConfig The client used to deliver requests, or a 59 * config array to pass to a new Client instance. 60 * @param string $rootUrl The root URL used for requests to the service. 61 */ 62 public function __construct($clientOrConfig = [], $rootUrl = null) 63 { 64 parent::__construct($clientOrConfig); 65 $this->rootUrl = $rootUrl ?: 'https://www.googleapis.com/'; 66 $this->servicePath = 'adexchangebuyer/v1.4/'; 67 $this->batchPath = 'batch/adexchangebuyer/v1.4'; 68 $this->version = 'v1.4'; 69 $this->serviceName = 'adexchangebuyer'; 70 71 $this->accounts = new AdExchangeBuyer\Resource\Accounts( 72 $this, 73 $this->serviceName, 74 'accounts', 75 [ 76 'methods' => [ 77 'get' => [ 78 'path' => 'accounts/{id}', 79 'httpMethod' => 'GET', 80 'parameters' => [ 81 'id' => [ 82 'location' => 'path', 83 'type' => 'integer', 84 'required' => true, 85 ], 86 ], 87 ],'list' => [ 88 'path' => 'accounts', 89 'httpMethod' => 'GET', 90 'parameters' => [], 91 ],'patch' => [ 92 'path' => 'accounts/{id}', 93 'httpMethod' => 'PATCH', 94 'parameters' => [ 95 'id' => [ 96 'location' => 'path', 97 'type' => 'integer', 98 'required' => true, 99 ], 100 'confirmUnsafeAccountChange' => [ 101 'location' => 'query', 102 'type' => 'boolean', 103 ], 104 ], 105 ],'update' => [ 106 'path' => 'accounts/{id}', 107 'httpMethod' => 'PUT', 108 'parameters' => [ 109 'id' => [ 110 'location' => 'path', 111 'type' => 'integer', 112 'required' => true, 113 ], 114 'confirmUnsafeAccountChange' => [ 115 'location' => 'query', 116 'type' => 'boolean', 117 ], 118 ], 119 ], 120 ] 121 ] 122 ); 123 $this->billingInfo = new AdExchangeBuyer\Resource\BillingInfo( 124 $this, 125 $this->serviceName, 126 'billingInfo', 127 [ 128 'methods' => [ 129 'get' => [ 130 'path' => 'billinginfo/{accountId}', 131 'httpMethod' => 'GET', 132 'parameters' => [ 133 'accountId' => [ 134 'location' => 'path', 135 'type' => 'integer', 136 'required' => true, 137 ], 138 ], 139 ],'list' => [ 140 'path' => 'billinginfo', 141 'httpMethod' => 'GET', 142 'parameters' => [], 143 ], 144 ] 145 ] 146 ); 147 $this->budget = new AdExchangeBuyer\Resource\Budget( 148 $this, 149 $this->serviceName, 150 'budget', 151 [ 152 'methods' => [ 153 'get' => [ 154 'path' => 'billinginfo/{accountId}/{billingId}', 155 'httpMethod' => 'GET', 156 'parameters' => [ 157 'accountId' => [ 158 'location' => 'path', 159 'type' => 'string', 160 'required' => true, 161 ], 162 'billingId' => [ 163 'location' => 'path', 164 'type' => 'string', 165 'required' => true, 166 ], 167 ], 168 ],'patch' => [ 169 'path' => 'billinginfo/{accountId}/{billingId}', 170 'httpMethod' => 'PATCH', 171 'parameters' => [ 172 'accountId' => [ 173 'location' => 'path', 174 'type' => 'string', 175 'required' => true, 176 ], 177 'billingId' => [ 178 'location' => 'path', 179 'type' => 'string', 180 'required' => true, 181 ], 182 ], 183 ],'update' => [ 184 'path' => 'billinginfo/{accountId}/{billingId}', 185 'httpMethod' => 'PUT', 186 'parameters' => [ 187 'accountId' => [ 188 'location' => 'path', 189 'type' => 'string', 190 'required' => true, 191 ], 192 'billingId' => [ 193 'location' => 'path', 194 'type' => 'string', 195 'required' => true, 196 ], 197 ], 198 ], 199 ] 200 ] 201 ); 202 $this->creatives = new AdExchangeBuyer\Resource\Creatives( 203 $this, 204 $this->serviceName, 205 'creatives', 206 [ 207 'methods' => [ 208 'addDeal' => [ 209 'path' => 'creatives/{accountId}/{buyerCreativeId}/addDeal/{dealId}', 210 'httpMethod' => 'POST', 211 'parameters' => [ 212 'accountId' => [ 213 'location' => 'path', 214 'type' => 'integer', 215 'required' => true, 216 ], 217 'buyerCreativeId' => [ 218 'location' => 'path', 219 'type' => 'string', 220 'required' => true, 221 ], 222 'dealId' => [ 223 'location' => 'path', 224 'type' => 'string', 225 'required' => true, 226 ], 227 ], 228 ],'get' => [ 229 'path' => 'creatives/{accountId}/{buyerCreativeId}', 230 'httpMethod' => 'GET', 231 'parameters' => [ 232 'accountId' => [ 233 'location' => 'path', 234 'type' => 'integer', 235 'required' => true, 236 ], 237 'buyerCreativeId' => [ 238 'location' => 'path', 239 'type' => 'string', 240 'required' => true, 241 ], 242 ], 243 ],'insert' => [ 244 'path' => 'creatives', 245 'httpMethod' => 'POST', 246 'parameters' => [], 247 ],'list' => [ 248 'path' => 'creatives', 249 'httpMethod' => 'GET', 250 'parameters' => [ 251 'accountId' => [ 252 'location' => 'query', 253 'type' => 'integer', 254 'repeated' => true, 255 ], 256 'buyerCreativeId' => [ 257 'location' => 'query', 258 'type' => 'string', 259 'repeated' => true, 260 ], 261 'dealsStatusFilter' => [ 262 'location' => 'query', 263 'type' => 'string', 264 ], 265 'maxResults' => [ 266 'location' => 'query', 267 'type' => 'integer', 268 ], 269 'openAuctionStatusFilter' => [ 270 'location' => 'query', 271 'type' => 'string', 272 ], 273 'pageToken' => [ 274 'location' => 'query', 275 'type' => 'string', 276 ], 277 ], 278 ],'listDeals' => [ 279 'path' => 'creatives/{accountId}/{buyerCreativeId}/listDeals', 280 'httpMethod' => 'GET', 281 'parameters' => [ 282 'accountId' => [ 283 'location' => 'path', 284 'type' => 'integer', 285 'required' => true, 286 ], 287 'buyerCreativeId' => [ 288 'location' => 'path', 289 'type' => 'string', 290 'required' => true, 291 ], 292 ], 293 ],'removeDeal' => [ 294 'path' => 'creatives/{accountId}/{buyerCreativeId}/removeDeal/{dealId}', 295 'httpMethod' => 'POST', 296 'parameters' => [ 297 'accountId' => [ 298 'location' => 'path', 299 'type' => 'integer', 300 'required' => true, 301 ], 302 'buyerCreativeId' => [ 303 'location' => 'path', 304 'type' => 'string', 305 'required' => true, 306 ], 307 'dealId' => [ 308 'location' => 'path', 309 'type' => 'string', 310 'required' => true, 311 ], 312 ], 313 ], 314 ] 315 ] 316 ); 317 $this->marketplacedeals = new AdExchangeBuyer\Resource\Marketplacedeals( 318 $this, 319 $this->serviceName, 320 'marketplacedeals', 321 [ 322 'methods' => [ 323 'delete' => [ 324 'path' => 'proposals/{proposalId}/deals/delete', 325 'httpMethod' => 'POST', 326 'parameters' => [ 327 'proposalId' => [ 328 'location' => 'path', 329 'type' => 'string', 330 'required' => true, 331 ], 332 ], 333 ],'insert' => [ 334 'path' => 'proposals/{proposalId}/deals/insert', 335 'httpMethod' => 'POST', 336 'parameters' => [ 337 'proposalId' => [ 338 'location' => 'path', 339 'type' => 'string', 340 'required' => true, 341 ], 342 ], 343 ],'list' => [ 344 'path' => 'proposals/{proposalId}/deals', 345 'httpMethod' => 'GET', 346 'parameters' => [ 347 'proposalId' => [ 348 'location' => 'path', 349 'type' => 'string', 350 'required' => true, 351 ], 352 'pqlQuery' => [ 353 'location' => 'query', 354 'type' => 'string', 355 ], 356 ], 357 ],'update' => [ 358 'path' => 'proposals/{proposalId}/deals/update', 359 'httpMethod' => 'POST', 360 'parameters' => [ 361 'proposalId' => [ 362 'location' => 'path', 363 'type' => 'string', 364 'required' => true, 365 ], 366 ], 367 ], 368 ] 369 ] 370 ); 371 $this->marketplacenotes = new AdExchangeBuyer\Resource\Marketplacenotes( 372 $this, 373 $this->serviceName, 374 'marketplacenotes', 375 [ 376 'methods' => [ 377 'insert' => [ 378 'path' => 'proposals/{proposalId}/notes/insert', 379 'httpMethod' => 'POST', 380 'parameters' => [ 381 'proposalId' => [ 382 'location' => 'path', 383 'type' => 'string', 384 'required' => true, 385 ], 386 ], 387 ],'list' => [ 388 'path' => 'proposals/{proposalId}/notes', 389 'httpMethod' => 'GET', 390 'parameters' => [ 391 'proposalId' => [ 392 'location' => 'path', 393 'type' => 'string', 394 'required' => true, 395 ], 396 'pqlQuery' => [ 397 'location' => 'query', 398 'type' => 'string', 399 ], 400 ], 401 ], 402 ] 403 ] 404 ); 405 $this->marketplaceprivateauction = new AdExchangeBuyer\Resource\Marketplaceprivateauction( 406 $this, 407 $this->serviceName, 408 'marketplaceprivateauction', 409 [ 410 'methods' => [ 411 'updateproposal' => [ 412 'path' => 'privateauction/{privateAuctionId}/updateproposal', 413 'httpMethod' => 'POST', 414 'parameters' => [ 415 'privateAuctionId' => [ 416 'location' => 'path', 417 'type' => 'string', 418 'required' => true, 419 ], 420 ], 421 ], 422 ] 423 ] 424 ); 425 $this->performanceReport = new AdExchangeBuyer\Resource\PerformanceReport( 426 $this, 427 $this->serviceName, 428 'performanceReport', 429 [ 430 'methods' => [ 431 'list' => [ 432 'path' => 'performancereport', 433 'httpMethod' => 'GET', 434 'parameters' => [ 435 'accountId' => [ 436 'location' => 'query', 437 'type' => 'string', 438 'required' => true, 439 ], 440 'endDateTime' => [ 441 'location' => 'query', 442 'type' => 'string', 443 'required' => true, 444 ], 445 'startDateTime' => [ 446 'location' => 'query', 447 'type' => 'string', 448 'required' => true, 449 ], 450 'maxResults' => [ 451 'location' => 'query', 452 'type' => 'integer', 453 ], 454 'pageToken' => [ 455 'location' => 'query', 456 'type' => 'string', 457 ], 458 ], 459 ], 460 ] 461 ] 462 ); 463 $this->pretargetingConfig = new AdExchangeBuyer\Resource\PretargetingConfig( 464 $this, 465 $this->serviceName, 466 'pretargetingConfig', 467 [ 468 'methods' => [ 469 'delete' => [ 470 'path' => 'pretargetingconfigs/{accountId}/{configId}', 471 'httpMethod' => 'DELETE', 472 'parameters' => [ 473 'accountId' => [ 474 'location' => 'path', 475 'type' => 'string', 476 'required' => true, 477 ], 478 'configId' => [ 479 'location' => 'path', 480 'type' => 'string', 481 'required' => true, 482 ], 483 ], 484 ],'get' => [ 485 'path' => 'pretargetingconfigs/{accountId}/{configId}', 486 'httpMethod' => 'GET', 487 'parameters' => [ 488 'accountId' => [ 489 'location' => 'path', 490 'type' => 'string', 491 'required' => true, 492 ], 493 'configId' => [ 494 'location' => 'path', 495 'type' => 'string', 496 'required' => true, 497 ], 498 ], 499 ],'insert' => [ 500 'path' => 'pretargetingconfigs/{accountId}', 501 'httpMethod' => 'POST', 502 'parameters' => [ 503 'accountId' => [ 504 'location' => 'path', 505 'type' => 'string', 506 'required' => true, 507 ], 508 ], 509 ],'list' => [ 510 'path' => 'pretargetingconfigs/{accountId}', 511 'httpMethod' => 'GET', 512 'parameters' => [ 513 'accountId' => [ 514 'location' => 'path', 515 'type' => 'string', 516 'required' => true, 517 ], 518 ], 519 ],'patch' => [ 520 'path' => 'pretargetingconfigs/{accountId}/{configId}', 521 'httpMethod' => 'PATCH', 522 'parameters' => [ 523 'accountId' => [ 524 'location' => 'path', 525 'type' => 'string', 526 'required' => true, 527 ], 528 'configId' => [ 529 'location' => 'path', 530 'type' => 'string', 531 'required' => true, 532 ], 533 ], 534 ],'update' => [ 535 'path' => 'pretargetingconfigs/{accountId}/{configId}', 536 'httpMethod' => 'PUT', 537 'parameters' => [ 538 'accountId' => [ 539 'location' => 'path', 540 'type' => 'string', 541 'required' => true, 542 ], 543 'configId' => [ 544 'location' => 'path', 545 'type' => 'string', 546 'required' => true, 547 ], 548 ], 549 ], 550 ] 551 ] 552 ); 553 $this->products = new AdExchangeBuyer\Resource\Products( 554 $this, 555 $this->serviceName, 556 'products', 557 [ 558 'methods' => [ 559 'get' => [ 560 'path' => 'products/{productId}', 561 'httpMethod' => 'GET', 562 'parameters' => [ 563 'productId' => [ 564 'location' => 'path', 565 'type' => 'string', 566 'required' => true, 567 ], 568 ], 569 ],'search' => [ 570 'path' => 'products/search', 571 'httpMethod' => 'GET', 572 'parameters' => [ 573 'pqlQuery' => [ 574 'location' => 'query', 575 'type' => 'string', 576 ], 577 ], 578 ], 579 ] 580 ] 581 ); 582 $this->proposals = new AdExchangeBuyer\Resource\Proposals( 583 $this, 584 $this->serviceName, 585 'proposals', 586 [ 587 'methods' => [ 588 'get' => [ 589 'path' => 'proposals/{proposalId}', 590 'httpMethod' => 'GET', 591 'parameters' => [ 592 'proposalId' => [ 593 'location' => 'path', 594 'type' => 'string', 595 'required' => true, 596 ], 597 ], 598 ],'insert' => [ 599 'path' => 'proposals/insert', 600 'httpMethod' => 'POST', 601 'parameters' => [], 602 ],'patch' => [ 603 'path' => 'proposals/{proposalId}/{revisionNumber}/{updateAction}', 604 'httpMethod' => 'PATCH', 605 'parameters' => [ 606 'proposalId' => [ 607 'location' => 'path', 608 'type' => 'string', 609 'required' => true, 610 ], 611 'revisionNumber' => [ 612 'location' => 'path', 613 'type' => 'string', 614 'required' => true, 615 ], 616 'updateAction' => [ 617 'location' => 'path', 618 'type' => 'string', 619 'required' => true, 620 ], 621 ], 622 ],'search' => [ 623 'path' => 'proposals/search', 624 'httpMethod' => 'GET', 625 'parameters' => [ 626 'pqlQuery' => [ 627 'location' => 'query', 628 'type' => 'string', 629 ], 630 ], 631 ],'setupcomplete' => [ 632 'path' => 'proposals/{proposalId}/setupcomplete', 633 'httpMethod' => 'POST', 634 'parameters' => [ 635 'proposalId' => [ 636 'location' => 'path', 637 'type' => 'string', 638 'required' => true, 639 ], 640 ], 641 ],'update' => [ 642 'path' => 'proposals/{proposalId}/{revisionNumber}/{updateAction}', 643 'httpMethod' => 'PUT', 644 'parameters' => [ 645 'proposalId' => [ 646 'location' => 'path', 647 'type' => 'string', 648 'required' => true, 649 ], 650 'revisionNumber' => [ 651 'location' => 'path', 652 'type' => 'string', 653 'required' => true, 654 ], 655 'updateAction' => [ 656 'location' => 'path', 657 'type' => 'string', 658 'required' => true, 659 ], 660 ], 661 ], 662 ] 663 ] 664 ); 665 $this->pubprofiles = new AdExchangeBuyer\Resource\Pubprofiles( 666 $this, 667 $this->serviceName, 668 'pubprofiles', 669 [ 670 'methods' => [ 671 'list' => [ 672 'path' => 'publisher/{accountId}/profiles', 673 'httpMethod' => 'GET', 674 'parameters' => [ 675 'accountId' => [ 676 'location' => 'path', 677 'type' => 'integer', 678 'required' => true, 679 ], 680 ], 681 ], 682 ] 683 ] 684 ); 685 } 686} 687 688// Adding a class alias for backwards compatibility with the previous class name. 689class_alias(AdExchangeBuyer::class, 'Google_Service_AdExchangeBuyer'); 690