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 AndroidPublisher (v3).
24 *
25 * <p>
26 * Lets Android application developers access their Google Play accounts.</p>
27 *
28 * <p>
29 * For more information about this service, see the API
30 * <a href="https://developers.google.com/android-publisher" target="_blank">Documentation</a>
31 * </p>
32 *
33 * @author Google, Inc.
34 */
35class AndroidPublisher extends \Google\Service
36{
37  /** View and manage your Google Play Developer account. */
38  const ANDROIDPUBLISHER =
39      "https://www.googleapis.com/auth/androidpublisher";
40
41  public $applications_deviceTierConfigs;
42  public $edits;
43  public $edits_apks;
44  public $edits_bundles;
45  public $edits_countryavailability;
46  public $edits_deobfuscationfiles;
47  public $edits_details;
48  public $edits_expansionfiles;
49  public $edits_images;
50  public $edits_listings;
51  public $edits_testers;
52  public $edits_tracks;
53  public $generatedapks;
54  public $grants;
55  public $inappproducts;
56  public $internalappsharingartifacts;
57  public $monetization;
58  public $orders;
59  public $purchases_products;
60  public $purchases_subscriptions;
61  public $purchases_voidedpurchases;
62  public $reviews;
63  public $systemapks_variants;
64  public $users;
65
66  /**
67   * Constructs the internal representation of the AndroidPublisher service.
68   *
69   * @param Client|array $clientOrConfig The client used to deliver requests, or a
70   *                                     config array to pass to a new Client instance.
71   * @param string $rootUrl The root URL used for requests to the service.
72   */
73  public function __construct($clientOrConfig = [], $rootUrl = null)
74  {
75    parent::__construct($clientOrConfig);
76    $this->rootUrl = $rootUrl ?: 'https://androidpublisher.googleapis.com/';
77    $this->servicePath = '';
78    $this->batchPath = 'batch';
79    $this->version = 'v3';
80    $this->serviceName = 'androidpublisher';
81
82    $this->applications_deviceTierConfigs = new AndroidPublisher\Resource\ApplicationsDeviceTierConfigs(
83        $this,
84        $this->serviceName,
85        'deviceTierConfigs',
86        [
87          'methods' => [
88            'create' => [
89              'path' => 'androidpublisher/v3/applications/{packageName}/deviceTierConfigs',
90              'httpMethod' => 'POST',
91              'parameters' => [
92                'packageName' => [
93                  'location' => 'path',
94                  'type' => 'string',
95                  'required' => true,
96                ],
97                'allowUnknownDevices' => [
98                  'location' => 'query',
99                  'type' => 'boolean',
100                ],
101              ],
102            ],'get' => [
103              'path' => 'androidpublisher/v3/applications/{packageName}/deviceTierConfigs/{deviceTierConfigId}',
104              'httpMethod' => 'GET',
105              'parameters' => [
106                'packageName' => [
107                  'location' => 'path',
108                  'type' => 'string',
109                  'required' => true,
110                ],
111                'deviceTierConfigId' => [
112                  'location' => 'path',
113                  'type' => 'string',
114                  'required' => true,
115                ],
116              ],
117            ],'list' => [
118              'path' => 'androidpublisher/v3/applications/{packageName}/deviceTierConfigs',
119              'httpMethod' => 'GET',
120              'parameters' => [
121                'packageName' => [
122                  'location' => 'path',
123                  'type' => 'string',
124                  'required' => true,
125                ],
126                'pageSize' => [
127                  'location' => 'query',
128                  'type' => 'integer',
129                ],
130                'pageToken' => [
131                  'location' => 'query',
132                  'type' => 'string',
133                ],
134              ],
135            ],
136          ]
137        ]
138    );
139    $this->edits = new AndroidPublisher\Resource\Edits(
140        $this,
141        $this->serviceName,
142        'edits',
143        [
144          'methods' => [
145            'commit' => [
146              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}:commit',
147              'httpMethod' => 'POST',
148              'parameters' => [
149                'packageName' => [
150                  'location' => 'path',
151                  'type' => 'string',
152                  'required' => true,
153                ],
154                'editId' => [
155                  'location' => 'path',
156                  'type' => 'string',
157                  'required' => true,
158                ],
159                'changesNotSentForReview' => [
160                  'location' => 'query',
161                  'type' => 'boolean',
162                ],
163              ],
164            ],'delete' => [
165              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}',
166              'httpMethod' => 'DELETE',
167              'parameters' => [
168                'packageName' => [
169                  'location' => 'path',
170                  'type' => 'string',
171                  'required' => true,
172                ],
173                'editId' => [
174                  'location' => 'path',
175                  'type' => 'string',
176                  'required' => true,
177                ],
178              ],
179            ],'get' => [
180              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}',
181              'httpMethod' => 'GET',
182              'parameters' => [
183                'packageName' => [
184                  'location' => 'path',
185                  'type' => 'string',
186                  'required' => true,
187                ],
188                'editId' => [
189                  'location' => 'path',
190                  'type' => 'string',
191                  'required' => true,
192                ],
193              ],
194            ],'insert' => [
195              'path' => 'androidpublisher/v3/applications/{packageName}/edits',
196              'httpMethod' => 'POST',
197              'parameters' => [
198                'packageName' => [
199                  'location' => 'path',
200                  'type' => 'string',
201                  'required' => true,
202                ],
203              ],
204            ],'validate' => [
205              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}:validate',
206              'httpMethod' => 'POST',
207              'parameters' => [
208                'packageName' => [
209                  'location' => 'path',
210                  'type' => 'string',
211                  'required' => true,
212                ],
213                'editId' => [
214                  'location' => 'path',
215                  'type' => 'string',
216                  'required' => true,
217                ],
218              ],
219            ],
220          ]
221        ]
222    );
223    $this->edits_apks = new AndroidPublisher\Resource\EditsApks(
224        $this,
225        $this->serviceName,
226        'apks',
227        [
228          'methods' => [
229            'addexternallyhosted' => [
230              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/externallyHosted',
231              'httpMethod' => 'POST',
232              'parameters' => [
233                'packageName' => [
234                  'location' => 'path',
235                  'type' => 'string',
236                  'required' => true,
237                ],
238                'editId' => [
239                  'location' => 'path',
240                  'type' => 'string',
241                  'required' => true,
242                ],
243              ],
244            ],'list' => [
245              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/apks',
246              'httpMethod' => 'GET',
247              'parameters' => [
248                'packageName' => [
249                  'location' => 'path',
250                  'type' => 'string',
251                  'required' => true,
252                ],
253                'editId' => [
254                  'location' => 'path',
255                  'type' => 'string',
256                  'required' => true,
257                ],
258              ],
259            ],'upload' => [
260              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/apks',
261              'httpMethod' => 'POST',
262              'parameters' => [
263                'packageName' => [
264                  'location' => 'path',
265                  'type' => 'string',
266                  'required' => true,
267                ],
268                'editId' => [
269                  'location' => 'path',
270                  'type' => 'string',
271                  'required' => true,
272                ],
273              ],
274            ],
275          ]
276        ]
277    );
278    $this->edits_bundles = new AndroidPublisher\Resource\EditsBundles(
279        $this,
280        $this->serviceName,
281        'bundles',
282        [
283          'methods' => [
284            'list' => [
285              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/bundles',
286              'httpMethod' => 'GET',
287              'parameters' => [
288                'packageName' => [
289                  'location' => 'path',
290                  'type' => 'string',
291                  'required' => true,
292                ],
293                'editId' => [
294                  'location' => 'path',
295                  'type' => 'string',
296                  'required' => true,
297                ],
298              ],
299            ],'upload' => [
300              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/bundles',
301              'httpMethod' => 'POST',
302              'parameters' => [
303                'packageName' => [
304                  'location' => 'path',
305                  'type' => 'string',
306                  'required' => true,
307                ],
308                'editId' => [
309                  'location' => 'path',
310                  'type' => 'string',
311                  'required' => true,
312                ],
313                'ackBundleInstallationWarning' => [
314                  'location' => 'query',
315                  'type' => 'boolean',
316                ],
317              ],
318            ],
319          ]
320        ]
321    );
322    $this->edits_countryavailability = new AndroidPublisher\Resource\EditsCountryavailability(
323        $this,
324        $this->serviceName,
325        'countryavailability',
326        [
327          'methods' => [
328            'get' => [
329              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/countryAvailability/{track}',
330              'httpMethod' => 'GET',
331              'parameters' => [
332                'packageName' => [
333                  'location' => 'path',
334                  'type' => 'string',
335                  'required' => true,
336                ],
337                'editId' => [
338                  'location' => 'path',
339                  'type' => 'string',
340                  'required' => true,
341                ],
342                'track' => [
343                  'location' => 'path',
344                  'type' => 'string',
345                  'required' => true,
346                ],
347              ],
348            ],
349          ]
350        ]
351    );
352    $this->edits_deobfuscationfiles = new AndroidPublisher\Resource\EditsDeobfuscationfiles(
353        $this,
354        $this->serviceName,
355        'deobfuscationfiles',
356        [
357          'methods' => [
358            'upload' => [
359              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/deobfuscationFiles/{deobfuscationFileType}',
360              'httpMethod' => 'POST',
361              'parameters' => [
362                'packageName' => [
363                  'location' => 'path',
364                  'type' => 'string',
365                  'required' => true,
366                ],
367                'editId' => [
368                  'location' => 'path',
369                  'type' => 'string',
370                  'required' => true,
371                ],
372                'apkVersionCode' => [
373                  'location' => 'path',
374                  'type' => 'integer',
375                  'required' => true,
376                ],
377                'deobfuscationFileType' => [
378                  'location' => 'path',
379                  'type' => 'string',
380                  'required' => true,
381                ],
382              ],
383            ],
384          ]
385        ]
386    );
387    $this->edits_details = new AndroidPublisher\Resource\EditsDetails(
388        $this,
389        $this->serviceName,
390        'details',
391        [
392          'methods' => [
393            'get' => [
394              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/details',
395              'httpMethod' => 'GET',
396              'parameters' => [
397                'packageName' => [
398                  'location' => 'path',
399                  'type' => 'string',
400                  'required' => true,
401                ],
402                'editId' => [
403                  'location' => 'path',
404                  'type' => 'string',
405                  'required' => true,
406                ],
407              ],
408            ],'patch' => [
409              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/details',
410              'httpMethod' => 'PATCH',
411              'parameters' => [
412                'packageName' => [
413                  'location' => 'path',
414                  'type' => 'string',
415                  'required' => true,
416                ],
417                'editId' => [
418                  'location' => 'path',
419                  'type' => 'string',
420                  'required' => true,
421                ],
422              ],
423            ],'update' => [
424              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/details',
425              'httpMethod' => 'PUT',
426              'parameters' => [
427                'packageName' => [
428                  'location' => 'path',
429                  'type' => 'string',
430                  'required' => true,
431                ],
432                'editId' => [
433                  'location' => 'path',
434                  'type' => 'string',
435                  'required' => true,
436                ],
437              ],
438            ],
439          ]
440        ]
441    );
442    $this->edits_expansionfiles = new AndroidPublisher\Resource\EditsExpansionfiles(
443        $this,
444        $this->serviceName,
445        'expansionfiles',
446        [
447          'methods' => [
448            'get' => [
449              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}',
450              'httpMethod' => 'GET',
451              'parameters' => [
452                'packageName' => [
453                  'location' => 'path',
454                  'type' => 'string',
455                  'required' => true,
456                ],
457                'editId' => [
458                  'location' => 'path',
459                  'type' => 'string',
460                  'required' => true,
461                ],
462                'apkVersionCode' => [
463                  'location' => 'path',
464                  'type' => 'integer',
465                  'required' => true,
466                ],
467                'expansionFileType' => [
468                  'location' => 'path',
469                  'type' => 'string',
470                  'required' => true,
471                ],
472              ],
473            ],'patch' => [
474              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}',
475              'httpMethod' => 'PATCH',
476              'parameters' => [
477                'packageName' => [
478                  'location' => 'path',
479                  'type' => 'string',
480                  'required' => true,
481                ],
482                'editId' => [
483                  'location' => 'path',
484                  'type' => 'string',
485                  'required' => true,
486                ],
487                'apkVersionCode' => [
488                  'location' => 'path',
489                  'type' => 'integer',
490                  'required' => true,
491                ],
492                'expansionFileType' => [
493                  'location' => 'path',
494                  'type' => 'string',
495                  'required' => true,
496                ],
497              ],
498            ],'update' => [
499              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}',
500              'httpMethod' => 'PUT',
501              'parameters' => [
502                'packageName' => [
503                  'location' => 'path',
504                  'type' => 'string',
505                  'required' => true,
506                ],
507                'editId' => [
508                  'location' => 'path',
509                  'type' => 'string',
510                  'required' => true,
511                ],
512                'apkVersionCode' => [
513                  'location' => 'path',
514                  'type' => 'integer',
515                  'required' => true,
516                ],
517                'expansionFileType' => [
518                  'location' => 'path',
519                  'type' => 'string',
520                  'required' => true,
521                ],
522              ],
523            ],'upload' => [
524              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/apks/{apkVersionCode}/expansionFiles/{expansionFileType}',
525              'httpMethod' => 'POST',
526              'parameters' => [
527                'packageName' => [
528                  'location' => 'path',
529                  'type' => 'string',
530                  'required' => true,
531                ],
532                'editId' => [
533                  'location' => 'path',
534                  'type' => 'string',
535                  'required' => true,
536                ],
537                'apkVersionCode' => [
538                  'location' => 'path',
539                  'type' => 'integer',
540                  'required' => true,
541                ],
542                'expansionFileType' => [
543                  'location' => 'path',
544                  'type' => 'string',
545                  'required' => true,
546                ],
547              ],
548            ],
549          ]
550        ]
551    );
552    $this->edits_images = new AndroidPublisher\Resource\EditsImages(
553        $this,
554        $this->serviceName,
555        'images',
556        [
557          'methods' => [
558            'delete' => [
559              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}/{imageId}',
560              'httpMethod' => 'DELETE',
561              'parameters' => [
562                'packageName' => [
563                  'location' => 'path',
564                  'type' => 'string',
565                  'required' => true,
566                ],
567                'editId' => [
568                  'location' => 'path',
569                  'type' => 'string',
570                  'required' => true,
571                ],
572                'language' => [
573                  'location' => 'path',
574                  'type' => 'string',
575                  'required' => true,
576                ],
577                'imageType' => [
578                  'location' => 'path',
579                  'type' => 'string',
580                  'required' => true,
581                ],
582                'imageId' => [
583                  'location' => 'path',
584                  'type' => 'string',
585                  'required' => true,
586                ],
587              ],
588            ],'deleteall' => [
589              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}',
590              'httpMethod' => 'DELETE',
591              'parameters' => [
592                'packageName' => [
593                  'location' => 'path',
594                  'type' => 'string',
595                  'required' => true,
596                ],
597                'editId' => [
598                  'location' => 'path',
599                  'type' => 'string',
600                  'required' => true,
601                ],
602                'language' => [
603                  'location' => 'path',
604                  'type' => 'string',
605                  'required' => true,
606                ],
607                'imageType' => [
608                  'location' => 'path',
609                  'type' => 'string',
610                  'required' => true,
611                ],
612              ],
613            ],'list' => [
614              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}',
615              'httpMethod' => 'GET',
616              'parameters' => [
617                'packageName' => [
618                  'location' => 'path',
619                  'type' => 'string',
620                  'required' => true,
621                ],
622                'editId' => [
623                  'location' => 'path',
624                  'type' => 'string',
625                  'required' => true,
626                ],
627                'language' => [
628                  'location' => 'path',
629                  'type' => 'string',
630                  'required' => true,
631                ],
632                'imageType' => [
633                  'location' => 'path',
634                  'type' => 'string',
635                  'required' => true,
636                ],
637              ],
638            ],'upload' => [
639              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}/{imageType}',
640              'httpMethod' => 'POST',
641              'parameters' => [
642                'packageName' => [
643                  'location' => 'path',
644                  'type' => 'string',
645                  'required' => true,
646                ],
647                'editId' => [
648                  'location' => 'path',
649                  'type' => 'string',
650                  'required' => true,
651                ],
652                'language' => [
653                  'location' => 'path',
654                  'type' => 'string',
655                  'required' => true,
656                ],
657                'imageType' => [
658                  'location' => 'path',
659                  'type' => 'string',
660                  'required' => true,
661                ],
662              ],
663            ],
664          ]
665        ]
666    );
667    $this->edits_listings = new AndroidPublisher\Resource\EditsListings(
668        $this,
669        $this->serviceName,
670        'listings',
671        [
672          'methods' => [
673            'delete' => [
674              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}',
675              'httpMethod' => 'DELETE',
676              'parameters' => [
677                'packageName' => [
678                  'location' => 'path',
679                  'type' => 'string',
680                  'required' => true,
681                ],
682                'editId' => [
683                  'location' => 'path',
684                  'type' => 'string',
685                  'required' => true,
686                ],
687                'language' => [
688                  'location' => 'path',
689                  'type' => 'string',
690                  'required' => true,
691                ],
692              ],
693            ],'deleteall' => [
694              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/listings',
695              'httpMethod' => 'DELETE',
696              'parameters' => [
697                'packageName' => [
698                  'location' => 'path',
699                  'type' => 'string',
700                  'required' => true,
701                ],
702                'editId' => [
703                  'location' => 'path',
704                  'type' => 'string',
705                  'required' => true,
706                ],
707              ],
708            ],'get' => [
709              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}',
710              'httpMethod' => 'GET',
711              'parameters' => [
712                'packageName' => [
713                  'location' => 'path',
714                  'type' => 'string',
715                  'required' => true,
716                ],
717                'editId' => [
718                  'location' => 'path',
719                  'type' => 'string',
720                  'required' => true,
721                ],
722                'language' => [
723                  'location' => 'path',
724                  'type' => 'string',
725                  'required' => true,
726                ],
727              ],
728            ],'list' => [
729              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/listings',
730              'httpMethod' => 'GET',
731              'parameters' => [
732                'packageName' => [
733                  'location' => 'path',
734                  'type' => 'string',
735                  'required' => true,
736                ],
737                'editId' => [
738                  'location' => 'path',
739                  'type' => 'string',
740                  'required' => true,
741                ],
742              ],
743            ],'patch' => [
744              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}',
745              'httpMethod' => 'PATCH',
746              'parameters' => [
747                'packageName' => [
748                  'location' => 'path',
749                  'type' => 'string',
750                  'required' => true,
751                ],
752                'editId' => [
753                  'location' => 'path',
754                  'type' => 'string',
755                  'required' => true,
756                ],
757                'language' => [
758                  'location' => 'path',
759                  'type' => 'string',
760                  'required' => true,
761                ],
762              ],
763            ],'update' => [
764              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/listings/{language}',
765              'httpMethod' => 'PUT',
766              'parameters' => [
767                'packageName' => [
768                  'location' => 'path',
769                  'type' => 'string',
770                  'required' => true,
771                ],
772                'editId' => [
773                  'location' => 'path',
774                  'type' => 'string',
775                  'required' => true,
776                ],
777                'language' => [
778                  'location' => 'path',
779                  'type' => 'string',
780                  'required' => true,
781                ],
782              ],
783            ],
784          ]
785        ]
786    );
787    $this->edits_testers = new AndroidPublisher\Resource\EditsTesters(
788        $this,
789        $this->serviceName,
790        'testers',
791        [
792          'methods' => [
793            'get' => [
794              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/testers/{track}',
795              'httpMethod' => 'GET',
796              'parameters' => [
797                'packageName' => [
798                  'location' => 'path',
799                  'type' => 'string',
800                  'required' => true,
801                ],
802                'editId' => [
803                  'location' => 'path',
804                  'type' => 'string',
805                  'required' => true,
806                ],
807                'track' => [
808                  'location' => 'path',
809                  'type' => 'string',
810                  'required' => true,
811                ],
812              ],
813            ],'patch' => [
814              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/testers/{track}',
815              'httpMethod' => 'PATCH',
816              'parameters' => [
817                'packageName' => [
818                  'location' => 'path',
819                  'type' => 'string',
820                  'required' => true,
821                ],
822                'editId' => [
823                  'location' => 'path',
824                  'type' => 'string',
825                  'required' => true,
826                ],
827                'track' => [
828                  'location' => 'path',
829                  'type' => 'string',
830                  'required' => true,
831                ],
832              ],
833            ],'update' => [
834              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/testers/{track}',
835              'httpMethod' => 'PUT',
836              'parameters' => [
837                'packageName' => [
838                  'location' => 'path',
839                  'type' => 'string',
840                  'required' => true,
841                ],
842                'editId' => [
843                  'location' => 'path',
844                  'type' => 'string',
845                  'required' => true,
846                ],
847                'track' => [
848                  'location' => 'path',
849                  'type' => 'string',
850                  'required' => true,
851                ],
852              ],
853            ],
854          ]
855        ]
856    );
857    $this->edits_tracks = new AndroidPublisher\Resource\EditsTracks(
858        $this,
859        $this->serviceName,
860        'tracks',
861        [
862          'methods' => [
863            'get' => [
864              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/tracks/{track}',
865              'httpMethod' => 'GET',
866              'parameters' => [
867                'packageName' => [
868                  'location' => 'path',
869                  'type' => 'string',
870                  'required' => true,
871                ],
872                'editId' => [
873                  'location' => 'path',
874                  'type' => 'string',
875                  'required' => true,
876                ],
877                'track' => [
878                  'location' => 'path',
879                  'type' => 'string',
880                  'required' => true,
881                ],
882              ],
883            ],'list' => [
884              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/tracks',
885              'httpMethod' => 'GET',
886              'parameters' => [
887                'packageName' => [
888                  'location' => 'path',
889                  'type' => 'string',
890                  'required' => true,
891                ],
892                'editId' => [
893                  'location' => 'path',
894                  'type' => 'string',
895                  'required' => true,
896                ],
897              ],
898            ],'patch' => [
899              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/tracks/{track}',
900              'httpMethod' => 'PATCH',
901              'parameters' => [
902                'packageName' => [
903                  'location' => 'path',
904                  'type' => 'string',
905                  'required' => true,
906                ],
907                'editId' => [
908                  'location' => 'path',
909                  'type' => 'string',
910                  'required' => true,
911                ],
912                'track' => [
913                  'location' => 'path',
914                  'type' => 'string',
915                  'required' => true,
916                ],
917              ],
918            ],'update' => [
919              'path' => 'androidpublisher/v3/applications/{packageName}/edits/{editId}/tracks/{track}',
920              'httpMethod' => 'PUT',
921              'parameters' => [
922                'packageName' => [
923                  'location' => 'path',
924                  'type' => 'string',
925                  'required' => true,
926                ],
927                'editId' => [
928                  'location' => 'path',
929                  'type' => 'string',
930                  'required' => true,
931                ],
932                'track' => [
933                  'location' => 'path',
934                  'type' => 'string',
935                  'required' => true,
936                ],
937              ],
938            ],
939          ]
940        ]
941    );
942    $this->generatedapks = new AndroidPublisher\Resource\Generatedapks(
943        $this,
944        $this->serviceName,
945        'generatedapks',
946        [
947          'methods' => [
948            'download' => [
949              'path' => 'androidpublisher/v3/applications/{packageName}/generatedApks/{versionCode}/downloads/{downloadId}:download',
950              'httpMethod' => 'GET',
951              'parameters' => [
952                'packageName' => [
953                  'location' => 'path',
954                  'type' => 'string',
955                  'required' => true,
956                ],
957                'versionCode' => [
958                  'location' => 'path',
959                  'type' => 'integer',
960                  'required' => true,
961                ],
962                'downloadId' => [
963                  'location' => 'path',
964                  'type' => 'string',
965                  'required' => true,
966                ],
967              ],
968            ],'list' => [
969              'path' => 'androidpublisher/v3/applications/{packageName}/generatedApks/{versionCode}',
970              'httpMethod' => 'GET',
971              'parameters' => [
972                'packageName' => [
973                  'location' => 'path',
974                  'type' => 'string',
975                  'required' => true,
976                ],
977                'versionCode' => [
978                  'location' => 'path',
979                  'type' => 'integer',
980                  'required' => true,
981                ],
982              ],
983            ],
984          ]
985        ]
986    );
987    $this->grants = new AndroidPublisher\Resource\Grants(
988        $this,
989        $this->serviceName,
990        'grants',
991        [
992          'methods' => [
993            'create' => [
994              'path' => 'androidpublisher/v3/{+parent}/grants',
995              'httpMethod' => 'POST',
996              'parameters' => [
997                'parent' => [
998                  'location' => 'path',
999                  'type' => 'string',
1000                  'required' => true,
1001                ],
1002              ],
1003            ],'delete' => [
1004              'path' => 'androidpublisher/v3/{+name}',
1005              'httpMethod' => 'DELETE',
1006              'parameters' => [
1007                'name' => [
1008                  'location' => 'path',
1009                  'type' => 'string',
1010                  'required' => true,
1011                ],
1012              ],
1013            ],'patch' => [
1014              'path' => 'androidpublisher/v3/{+name}',
1015              'httpMethod' => 'PATCH',
1016              'parameters' => [
1017                'name' => [
1018                  'location' => 'path',
1019                  'type' => 'string',
1020                  'required' => true,
1021                ],
1022                'updateMask' => [
1023                  'location' => 'query',
1024                  'type' => 'string',
1025                ],
1026              ],
1027            ],
1028          ]
1029        ]
1030    );
1031    $this->inappproducts = new AndroidPublisher\Resource\Inappproducts(
1032        $this,
1033        $this->serviceName,
1034        'inappproducts',
1035        [
1036          'methods' => [
1037            'delete' => [
1038              'path' => 'androidpublisher/v3/applications/{packageName}/inappproducts/{sku}',
1039              'httpMethod' => 'DELETE',
1040              'parameters' => [
1041                'packageName' => [
1042                  'location' => 'path',
1043                  'type' => 'string',
1044                  'required' => true,
1045                ],
1046                'sku' => [
1047                  'location' => 'path',
1048                  'type' => 'string',
1049                  'required' => true,
1050                ],
1051              ],
1052            ],'get' => [
1053              'path' => 'androidpublisher/v3/applications/{packageName}/inappproducts/{sku}',
1054              'httpMethod' => 'GET',
1055              'parameters' => [
1056                'packageName' => [
1057                  'location' => 'path',
1058                  'type' => 'string',
1059                  'required' => true,
1060                ],
1061                'sku' => [
1062                  'location' => 'path',
1063                  'type' => 'string',
1064                  'required' => true,
1065                ],
1066              ],
1067            ],'insert' => [
1068              'path' => 'androidpublisher/v3/applications/{packageName}/inappproducts',
1069              'httpMethod' => 'POST',
1070              'parameters' => [
1071                'packageName' => [
1072                  'location' => 'path',
1073                  'type' => 'string',
1074                  'required' => true,
1075                ],
1076                'autoConvertMissingPrices' => [
1077                  'location' => 'query',
1078                  'type' => 'boolean',
1079                ],
1080              ],
1081            ],'list' => [
1082              'path' => 'androidpublisher/v3/applications/{packageName}/inappproducts',
1083              'httpMethod' => 'GET',
1084              'parameters' => [
1085                'packageName' => [
1086                  'location' => 'path',
1087                  'type' => 'string',
1088                  'required' => true,
1089                ],
1090                'maxResults' => [
1091                  'location' => 'query',
1092                  'type' => 'integer',
1093                ],
1094                'startIndex' => [
1095                  'location' => 'query',
1096                  'type' => 'integer',
1097                ],
1098                'token' => [
1099                  'location' => 'query',
1100                  'type' => 'string',
1101                ],
1102              ],
1103            ],'patch' => [
1104              'path' => 'androidpublisher/v3/applications/{packageName}/inappproducts/{sku}',
1105              'httpMethod' => 'PATCH',
1106              'parameters' => [
1107                'packageName' => [
1108                  'location' => 'path',
1109                  'type' => 'string',
1110                  'required' => true,
1111                ],
1112                'sku' => [
1113                  'location' => 'path',
1114                  'type' => 'string',
1115                  'required' => true,
1116                ],
1117                'autoConvertMissingPrices' => [
1118                  'location' => 'query',
1119                  'type' => 'boolean',
1120                ],
1121              ],
1122            ],'update' => [
1123              'path' => 'androidpublisher/v3/applications/{packageName}/inappproducts/{sku}',
1124              'httpMethod' => 'PUT',
1125              'parameters' => [
1126                'packageName' => [
1127                  'location' => 'path',
1128                  'type' => 'string',
1129                  'required' => true,
1130                ],
1131                'sku' => [
1132                  'location' => 'path',
1133                  'type' => 'string',
1134                  'required' => true,
1135                ],
1136                'allowMissing' => [
1137                  'location' => 'query',
1138                  'type' => 'boolean',
1139                ],
1140                'autoConvertMissingPrices' => [
1141                  'location' => 'query',
1142                  'type' => 'boolean',
1143                ],
1144              ],
1145            ],
1146          ]
1147        ]
1148    );
1149    $this->internalappsharingartifacts = new AndroidPublisher\Resource\Internalappsharingartifacts(
1150        $this,
1151        $this->serviceName,
1152        'internalappsharingartifacts',
1153        [
1154          'methods' => [
1155            'uploadapk' => [
1156              'path' => 'androidpublisher/v3/applications/internalappsharing/{packageName}/artifacts/apk',
1157              'httpMethod' => 'POST',
1158              'parameters' => [
1159                'packageName' => [
1160                  'location' => 'path',
1161                  'type' => 'string',
1162                  'required' => true,
1163                ],
1164              ],
1165            ],'uploadbundle' => [
1166              'path' => 'androidpublisher/v3/applications/internalappsharing/{packageName}/artifacts/bundle',
1167              'httpMethod' => 'POST',
1168              'parameters' => [
1169                'packageName' => [
1170                  'location' => 'path',
1171                  'type' => 'string',
1172                  'required' => true,
1173                ],
1174              ],
1175            ],
1176          ]
1177        ]
1178    );
1179    $this->monetization = new AndroidPublisher\Resource\Monetization(
1180        $this,
1181        $this->serviceName,
1182        'monetization',
1183        [
1184          'methods' => [
1185            'convertRegionPrices' => [
1186              'path' => 'androidpublisher/v3/applications/{packageName}/pricing:convertRegionPrices',
1187              'httpMethod' => 'POST',
1188              'parameters' => [
1189                'packageName' => [
1190                  'location' => 'path',
1191                  'type' => 'string',
1192                  'required' => true,
1193                ],
1194              ],
1195            ],
1196          ]
1197        ]
1198    );
1199    $this->orders = new AndroidPublisher\Resource\Orders(
1200        $this,
1201        $this->serviceName,
1202        'orders',
1203        [
1204          'methods' => [
1205            'refund' => [
1206              'path' => 'androidpublisher/v3/applications/{packageName}/orders/{orderId}:refund',
1207              'httpMethod' => 'POST',
1208              'parameters' => [
1209                'packageName' => [
1210                  'location' => 'path',
1211                  'type' => 'string',
1212                  'required' => true,
1213                ],
1214                'orderId' => [
1215                  'location' => 'path',
1216                  'type' => 'string',
1217                  'required' => true,
1218                ],
1219                'revoke' => [
1220                  'location' => 'query',
1221                  'type' => 'boolean',
1222                ],
1223              ],
1224            ],
1225          ]
1226        ]
1227    );
1228    $this->purchases_products = new AndroidPublisher\Resource\PurchasesProducts(
1229        $this,
1230        $this->serviceName,
1231        'products',
1232        [
1233          'methods' => [
1234            'acknowledge' => [
1235              'path' => 'androidpublisher/v3/applications/{packageName}/purchases/products/{productId}/tokens/{token}:acknowledge',
1236              'httpMethod' => 'POST',
1237              'parameters' => [
1238                'packageName' => [
1239                  'location' => 'path',
1240                  'type' => 'string',
1241                  'required' => true,
1242                ],
1243                'productId' => [
1244                  'location' => 'path',
1245                  'type' => 'string',
1246                  'required' => true,
1247                ],
1248                'token' => [
1249                  'location' => 'path',
1250                  'type' => 'string',
1251                  'required' => true,
1252                ],
1253              ],
1254            ],'get' => [
1255              'path' => 'androidpublisher/v3/applications/{packageName}/purchases/products/{productId}/tokens/{token}',
1256              'httpMethod' => 'GET',
1257              'parameters' => [
1258                'packageName' => [
1259                  'location' => 'path',
1260                  'type' => 'string',
1261                  'required' => true,
1262                ],
1263                'productId' => [
1264                  'location' => 'path',
1265                  'type' => 'string',
1266                  'required' => true,
1267                ],
1268                'token' => [
1269                  'location' => 'path',
1270                  'type' => 'string',
1271                  'required' => true,
1272                ],
1273              ],
1274            ],
1275          ]
1276        ]
1277    );
1278    $this->purchases_subscriptions = new AndroidPublisher\Resource\PurchasesSubscriptions(
1279        $this,
1280        $this->serviceName,
1281        'subscriptions',
1282        [
1283          'methods' => [
1284            'acknowledge' => [
1285              'path' => 'androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:acknowledge',
1286              'httpMethod' => 'POST',
1287              'parameters' => [
1288                'packageName' => [
1289                  'location' => 'path',
1290                  'type' => 'string',
1291                  'required' => true,
1292                ],
1293                'subscriptionId' => [
1294                  'location' => 'path',
1295                  'type' => 'string',
1296                  'required' => true,
1297                ],
1298                'token' => [
1299                  'location' => 'path',
1300                  'type' => 'string',
1301                  'required' => true,
1302                ],
1303              ],
1304            ],'cancel' => [
1305              'path' => 'androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:cancel',
1306              'httpMethod' => 'POST',
1307              'parameters' => [
1308                'packageName' => [
1309                  'location' => 'path',
1310                  'type' => 'string',
1311                  'required' => true,
1312                ],
1313                'subscriptionId' => [
1314                  'location' => 'path',
1315                  'type' => 'string',
1316                  'required' => true,
1317                ],
1318                'token' => [
1319                  'location' => 'path',
1320                  'type' => 'string',
1321                  'required' => true,
1322                ],
1323              ],
1324            ],'defer' => [
1325              'path' => 'androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:defer',
1326              'httpMethod' => 'POST',
1327              'parameters' => [
1328                'packageName' => [
1329                  'location' => 'path',
1330                  'type' => 'string',
1331                  'required' => true,
1332                ],
1333                'subscriptionId' => [
1334                  'location' => 'path',
1335                  'type' => 'string',
1336                  'required' => true,
1337                ],
1338                'token' => [
1339                  'location' => 'path',
1340                  'type' => 'string',
1341                  'required' => true,
1342                ],
1343              ],
1344            ],'get' => [
1345              'path' => 'androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}',
1346              'httpMethod' => 'GET',
1347              'parameters' => [
1348                'packageName' => [
1349                  'location' => 'path',
1350                  'type' => 'string',
1351                  'required' => true,
1352                ],
1353                'subscriptionId' => [
1354                  'location' => 'path',
1355                  'type' => 'string',
1356                  'required' => true,
1357                ],
1358                'token' => [
1359                  'location' => 'path',
1360                  'type' => 'string',
1361                  'required' => true,
1362                ],
1363              ],
1364            ],'refund' => [
1365              'path' => 'androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:refund',
1366              'httpMethod' => 'POST',
1367              'parameters' => [
1368                'packageName' => [
1369                  'location' => 'path',
1370                  'type' => 'string',
1371                  'required' => true,
1372                ],
1373                'subscriptionId' => [
1374                  'location' => 'path',
1375                  'type' => 'string',
1376                  'required' => true,
1377                ],
1378                'token' => [
1379                  'location' => 'path',
1380                  'type' => 'string',
1381                  'required' => true,
1382                ],
1383              ],
1384            ],'revoke' => [
1385              'path' => 'androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:revoke',
1386              'httpMethod' => 'POST',
1387              'parameters' => [
1388                'packageName' => [
1389                  'location' => 'path',
1390                  'type' => 'string',
1391                  'required' => true,
1392                ],
1393                'subscriptionId' => [
1394                  'location' => 'path',
1395                  'type' => 'string',
1396                  'required' => true,
1397                ],
1398                'token' => [
1399                  'location' => 'path',
1400                  'type' => 'string',
1401                  'required' => true,
1402                ],
1403              ],
1404            ],
1405          ]
1406        ]
1407    );
1408    $this->purchases_voidedpurchases = new AndroidPublisher\Resource\PurchasesVoidedpurchases(
1409        $this,
1410        $this->serviceName,
1411        'voidedpurchases',
1412        [
1413          'methods' => [
1414            'list' => [
1415              'path' => 'androidpublisher/v3/applications/{packageName}/purchases/voidedpurchases',
1416              'httpMethod' => 'GET',
1417              'parameters' => [
1418                'packageName' => [
1419                  'location' => 'path',
1420                  'type' => 'string',
1421                  'required' => true,
1422                ],
1423                'endTime' => [
1424                  'location' => 'query',
1425                  'type' => 'string',
1426                ],
1427                'maxResults' => [
1428                  'location' => 'query',
1429                  'type' => 'integer',
1430                ],
1431                'startIndex' => [
1432                  'location' => 'query',
1433                  'type' => 'integer',
1434                ],
1435                'startTime' => [
1436                  'location' => 'query',
1437                  'type' => 'string',
1438                ],
1439                'token' => [
1440                  'location' => 'query',
1441                  'type' => 'string',
1442                ],
1443                'type' => [
1444                  'location' => 'query',
1445                  'type' => 'integer',
1446                ],
1447              ],
1448            ],
1449          ]
1450        ]
1451    );
1452    $this->reviews = new AndroidPublisher\Resource\Reviews(
1453        $this,
1454        $this->serviceName,
1455        'reviews',
1456        [
1457          'methods' => [
1458            'get' => [
1459              'path' => 'androidpublisher/v3/applications/{packageName}/reviews/{reviewId}',
1460              'httpMethod' => 'GET',
1461              'parameters' => [
1462                'packageName' => [
1463                  'location' => 'path',
1464                  'type' => 'string',
1465                  'required' => true,
1466                ],
1467                'reviewId' => [
1468                  'location' => 'path',
1469                  'type' => 'string',
1470                  'required' => true,
1471                ],
1472                'translationLanguage' => [
1473                  'location' => 'query',
1474                  'type' => 'string',
1475                ],
1476              ],
1477            ],'list' => [
1478              'path' => 'androidpublisher/v3/applications/{packageName}/reviews',
1479              'httpMethod' => 'GET',
1480              'parameters' => [
1481                'packageName' => [
1482                  'location' => 'path',
1483                  'type' => 'string',
1484                  'required' => true,
1485                ],
1486                'maxResults' => [
1487                  'location' => 'query',
1488                  'type' => 'integer',
1489                ],
1490                'startIndex' => [
1491                  'location' => 'query',
1492                  'type' => 'integer',
1493                ],
1494                'token' => [
1495                  'location' => 'query',
1496                  'type' => 'string',
1497                ],
1498                'translationLanguage' => [
1499                  'location' => 'query',
1500                  'type' => 'string',
1501                ],
1502              ],
1503            ],'reply' => [
1504              'path' => 'androidpublisher/v3/applications/{packageName}/reviews/{reviewId}:reply',
1505              'httpMethod' => 'POST',
1506              'parameters' => [
1507                'packageName' => [
1508                  'location' => 'path',
1509                  'type' => 'string',
1510                  'required' => true,
1511                ],
1512                'reviewId' => [
1513                  'location' => 'path',
1514                  'type' => 'string',
1515                  'required' => true,
1516                ],
1517              ],
1518            ],
1519          ]
1520        ]
1521    );
1522    $this->systemapks_variants = new AndroidPublisher\Resource\SystemapksVariants(
1523        $this,
1524        $this->serviceName,
1525        'variants',
1526        [
1527          'methods' => [
1528            'create' => [
1529              'path' => 'androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants',
1530              'httpMethod' => 'POST',
1531              'parameters' => [
1532                'packageName' => [
1533                  'location' => 'path',
1534                  'type' => 'string',
1535                  'required' => true,
1536                ],
1537                'versionCode' => [
1538                  'location' => 'path',
1539                  'type' => 'string',
1540                  'required' => true,
1541                ],
1542              ],
1543            ],'download' => [
1544              'path' => 'androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants/{variantId}:download',
1545              'httpMethod' => 'GET',
1546              'parameters' => [
1547                'packageName' => [
1548                  'location' => 'path',
1549                  'type' => 'string',
1550                  'required' => true,
1551                ],
1552                'versionCode' => [
1553                  'location' => 'path',
1554                  'type' => 'string',
1555                  'required' => true,
1556                ],
1557                'variantId' => [
1558                  'location' => 'path',
1559                  'type' => 'integer',
1560                  'required' => true,
1561                ],
1562              ],
1563            ],'get' => [
1564              'path' => 'androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants/{variantId}',
1565              'httpMethod' => 'GET',
1566              'parameters' => [
1567                'packageName' => [
1568                  'location' => 'path',
1569                  'type' => 'string',
1570                  'required' => true,
1571                ],
1572                'versionCode' => [
1573                  'location' => 'path',
1574                  'type' => 'string',
1575                  'required' => true,
1576                ],
1577                'variantId' => [
1578                  'location' => 'path',
1579                  'type' => 'integer',
1580                  'required' => true,
1581                ],
1582              ],
1583            ],'list' => [
1584              'path' => 'androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants',
1585              'httpMethod' => 'GET',
1586              'parameters' => [
1587                'packageName' => [
1588                  'location' => 'path',
1589                  'type' => 'string',
1590                  'required' => true,
1591                ],
1592                'versionCode' => [
1593                  'location' => 'path',
1594                  'type' => 'string',
1595                  'required' => true,
1596                ],
1597              ],
1598            ],
1599          ]
1600        ]
1601    );
1602    $this->users = new AndroidPublisher\Resource\Users(
1603        $this,
1604        $this->serviceName,
1605        'users',
1606        [
1607          'methods' => [
1608            'create' => [
1609              'path' => 'androidpublisher/v3/{+parent}/users',
1610              'httpMethod' => 'POST',
1611              'parameters' => [
1612                'parent' => [
1613                  'location' => 'path',
1614                  'type' => 'string',
1615                  'required' => true,
1616                ],
1617              ],
1618            ],'delete' => [
1619              'path' => 'androidpublisher/v3/{+name}',
1620              'httpMethod' => 'DELETE',
1621              'parameters' => [
1622                'name' => [
1623                  'location' => 'path',
1624                  'type' => 'string',
1625                  'required' => true,
1626                ],
1627              ],
1628            ],'list' => [
1629              'path' => 'androidpublisher/v3/{+parent}/users',
1630              'httpMethod' => 'GET',
1631              'parameters' => [
1632                'parent' => [
1633                  'location' => 'path',
1634                  'type' => 'string',
1635                  'required' => true,
1636                ],
1637                'pageSize' => [
1638                  'location' => 'query',
1639                  'type' => 'integer',
1640                ],
1641                'pageToken' => [
1642                  'location' => 'query',
1643                  'type' => 'string',
1644                ],
1645              ],
1646            ],'patch' => [
1647              'path' => 'androidpublisher/v3/{+name}',
1648              'httpMethod' => 'PATCH',
1649              'parameters' => [
1650                'name' => [
1651                  'location' => 'path',
1652                  'type' => 'string',
1653                  'required' => true,
1654                ],
1655                'updateMask' => [
1656                  'location' => 'query',
1657                  'type' => 'string',
1658                ],
1659              ],
1660            ],
1661          ]
1662        ]
1663    );
1664  }
1665}
1666
1667// Adding a class alias for backwards compatibility with the previous class name.
1668class_alias(AndroidPublisher::class, 'Google_Service_AndroidPublisher');
1669