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 AndroidEnterprise (v1).
24 *
25 * <p>
26 * Manages the deployment of apps to Android Enterprise devices.</p>
27 *
28 * <p>
29 * For more information about this service, see the API
30 * <a href="https://developers.google.com/android/work/play/emm-api" target="_blank">Documentation</a>
31 * </p>
32 *
33 * @author Google, Inc.
34 */
35class AndroidEnterprise extends \Google\Service
36{
37  /** Manage corporate Android devices. */
38  const ANDROIDENTERPRISE =
39      "https://www.googleapis.com/auth/androidenterprise";
40
41  public $devices;
42  public $enterprises;
43  public $entitlements;
44  public $grouplicenses;
45  public $grouplicenseusers;
46  public $installs;
47  public $managedconfigurationsfordevice;
48  public $managedconfigurationsforuser;
49  public $managedconfigurationssettings;
50  public $permissions;
51  public $products;
52  public $serviceaccountkeys;
53  public $storelayoutclusters;
54  public $storelayoutpages;
55  public $users;
56  public $webapps;
57
58  /**
59   * Constructs the internal representation of the AndroidEnterprise service.
60   *
61   * @param Client|array $clientOrConfig The client used to deliver requests, or a
62   *                                     config array to pass to a new Client instance.
63   * @param string $rootUrl The root URL used for requests to the service.
64   */
65  public function __construct($clientOrConfig = [], $rootUrl = null)
66  {
67    parent::__construct($clientOrConfig);
68    $this->rootUrl = $rootUrl ?: 'https://androidenterprise.googleapis.com/';
69    $this->servicePath = '';
70    $this->batchPath = 'batch';
71    $this->version = 'v1';
72    $this->serviceName = 'androidenterprise';
73
74    $this->devices = new AndroidEnterprise\Resource\Devices(
75        $this,
76        $this->serviceName,
77        'devices',
78        [
79          'methods' => [
80            'forceReportUpload' => [
81              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/forceReportUpload',
82              'httpMethod' => 'POST',
83              'parameters' => [
84                'enterpriseId' => [
85                  'location' => 'path',
86                  'type' => 'string',
87                  'required' => true,
88                ],
89                'userId' => [
90                  'location' => 'path',
91                  'type' => 'string',
92                  'required' => true,
93                ],
94                'deviceId' => [
95                  'location' => 'path',
96                  'type' => 'string',
97                  'required' => true,
98                ],
99              ],
100            ],'get' => [
101              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}',
102              'httpMethod' => 'GET',
103              'parameters' => [
104                'enterpriseId' => [
105                  'location' => 'path',
106                  'type' => 'string',
107                  'required' => true,
108                ],
109                'userId' => [
110                  'location' => 'path',
111                  'type' => 'string',
112                  'required' => true,
113                ],
114                'deviceId' => [
115                  'location' => 'path',
116                  'type' => 'string',
117                  'required' => true,
118                ],
119              ],
120            ],'getState' => [
121              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/state',
122              'httpMethod' => 'GET',
123              'parameters' => [
124                'enterpriseId' => [
125                  'location' => 'path',
126                  'type' => 'string',
127                  'required' => true,
128                ],
129                'userId' => [
130                  'location' => 'path',
131                  'type' => 'string',
132                  'required' => true,
133                ],
134                'deviceId' => [
135                  'location' => 'path',
136                  'type' => 'string',
137                  'required' => true,
138                ],
139              ],
140            ],'list' => [
141              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/devices',
142              'httpMethod' => 'GET',
143              'parameters' => [
144                'enterpriseId' => [
145                  'location' => 'path',
146                  'type' => 'string',
147                  'required' => true,
148                ],
149                'userId' => [
150                  'location' => 'path',
151                  'type' => 'string',
152                  'required' => true,
153                ],
154              ],
155            ],'setState' => [
156              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/state',
157              'httpMethod' => 'PUT',
158              'parameters' => [
159                'enterpriseId' => [
160                  'location' => 'path',
161                  'type' => 'string',
162                  'required' => true,
163                ],
164                'userId' => [
165                  'location' => 'path',
166                  'type' => 'string',
167                  'required' => true,
168                ],
169                'deviceId' => [
170                  'location' => 'path',
171                  'type' => 'string',
172                  'required' => true,
173                ],
174              ],
175            ],'update' => [
176              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}',
177              'httpMethod' => 'PUT',
178              'parameters' => [
179                'enterpriseId' => [
180                  'location' => 'path',
181                  'type' => 'string',
182                  'required' => true,
183                ],
184                'userId' => [
185                  'location' => 'path',
186                  'type' => 'string',
187                  'required' => true,
188                ],
189                'deviceId' => [
190                  'location' => 'path',
191                  'type' => 'string',
192                  'required' => true,
193                ],
194                'updateMask' => [
195                  'location' => 'query',
196                  'type' => 'string',
197                ],
198              ],
199            ],
200          ]
201        ]
202    );
203    $this->enterprises = new AndroidEnterprise\Resource\Enterprises(
204        $this,
205        $this->serviceName,
206        'enterprises',
207        [
208          'methods' => [
209            'acknowledgeNotificationSet' => [
210              'path' => 'androidenterprise/v1/enterprises/acknowledgeNotificationSet',
211              'httpMethod' => 'POST',
212              'parameters' => [
213                'notificationSetId' => [
214                  'location' => 'query',
215                  'type' => 'string',
216                ],
217              ],
218            ],'completeSignup' => [
219              'path' => 'androidenterprise/v1/enterprises/completeSignup',
220              'httpMethod' => 'POST',
221              'parameters' => [
222                'completionToken' => [
223                  'location' => 'query',
224                  'type' => 'string',
225                ],
226                'enterpriseToken' => [
227                  'location' => 'query',
228                  'type' => 'string',
229                ],
230              ],
231            ],'createWebToken' => [
232              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/createWebToken',
233              'httpMethod' => 'POST',
234              'parameters' => [
235                'enterpriseId' => [
236                  'location' => 'path',
237                  'type' => 'string',
238                  'required' => true,
239                ],
240              ],
241            ],'enroll' => [
242              'path' => 'androidenterprise/v1/enterprises/enroll',
243              'httpMethod' => 'POST',
244              'parameters' => [
245                'token' => [
246                  'location' => 'query',
247                  'type' => 'string',
248                  'required' => true,
249                ],
250              ],
251            ],'generateSignupUrl' => [
252              'path' => 'androidenterprise/v1/enterprises/signupUrl',
253              'httpMethod' => 'POST',
254              'parameters' => [
255                'callbackUrl' => [
256                  'location' => 'query',
257                  'type' => 'string',
258                ],
259              ],
260            ],'get' => [
261              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}',
262              'httpMethod' => 'GET',
263              'parameters' => [
264                'enterpriseId' => [
265                  'location' => 'path',
266                  'type' => 'string',
267                  'required' => true,
268                ],
269              ],
270            ],'getServiceAccount' => [
271              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/serviceAccount',
272              'httpMethod' => 'GET',
273              'parameters' => [
274                'enterpriseId' => [
275                  'location' => 'path',
276                  'type' => 'string',
277                  'required' => true,
278                ],
279                'keyType' => [
280                  'location' => 'query',
281                  'type' => 'string',
282                ],
283              ],
284            ],'getStoreLayout' => [
285              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/storeLayout',
286              'httpMethod' => 'GET',
287              'parameters' => [
288                'enterpriseId' => [
289                  'location' => 'path',
290                  'type' => 'string',
291                  'required' => true,
292                ],
293              ],
294            ],'list' => [
295              'path' => 'androidenterprise/v1/enterprises',
296              'httpMethod' => 'GET',
297              'parameters' => [
298                'domain' => [
299                  'location' => 'query',
300                  'type' => 'string',
301                  'required' => true,
302                ],
303              ],
304            ],'pullNotificationSet' => [
305              'path' => 'androidenterprise/v1/enterprises/pullNotificationSet',
306              'httpMethod' => 'POST',
307              'parameters' => [
308                'requestMode' => [
309                  'location' => 'query',
310                  'type' => 'string',
311                ],
312              ],
313            ],'sendTestPushNotification' => [
314              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/sendTestPushNotification',
315              'httpMethod' => 'POST',
316              'parameters' => [
317                'enterpriseId' => [
318                  'location' => 'path',
319                  'type' => 'string',
320                  'required' => true,
321                ],
322              ],
323            ],'setAccount' => [
324              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/account',
325              'httpMethod' => 'PUT',
326              'parameters' => [
327                'enterpriseId' => [
328                  'location' => 'path',
329                  'type' => 'string',
330                  'required' => true,
331                ],
332              ],
333            ],'setStoreLayout' => [
334              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/storeLayout',
335              'httpMethod' => 'PUT',
336              'parameters' => [
337                'enterpriseId' => [
338                  'location' => 'path',
339                  'type' => 'string',
340                  'required' => true,
341                ],
342              ],
343            ],'unenroll' => [
344              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/unenroll',
345              'httpMethod' => 'POST',
346              'parameters' => [
347                'enterpriseId' => [
348                  'location' => 'path',
349                  'type' => 'string',
350                  'required' => true,
351                ],
352              ],
353            ],
354          ]
355        ]
356    );
357    $this->entitlements = new AndroidEnterprise\Resource\Entitlements(
358        $this,
359        $this->serviceName,
360        'entitlements',
361        [
362          'methods' => [
363            'delete' => [
364              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/entitlements/{entitlementId}',
365              'httpMethod' => 'DELETE',
366              'parameters' => [
367                'enterpriseId' => [
368                  'location' => 'path',
369                  'type' => 'string',
370                  'required' => true,
371                ],
372                'userId' => [
373                  'location' => 'path',
374                  'type' => 'string',
375                  'required' => true,
376                ],
377                'entitlementId' => [
378                  'location' => 'path',
379                  'type' => 'string',
380                  'required' => true,
381                ],
382              ],
383            ],'get' => [
384              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/entitlements/{entitlementId}',
385              'httpMethod' => 'GET',
386              'parameters' => [
387                'enterpriseId' => [
388                  'location' => 'path',
389                  'type' => 'string',
390                  'required' => true,
391                ],
392                'userId' => [
393                  'location' => 'path',
394                  'type' => 'string',
395                  'required' => true,
396                ],
397                'entitlementId' => [
398                  'location' => 'path',
399                  'type' => 'string',
400                  'required' => true,
401                ],
402              ],
403            ],'list' => [
404              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/entitlements',
405              'httpMethod' => 'GET',
406              'parameters' => [
407                'enterpriseId' => [
408                  'location' => 'path',
409                  'type' => 'string',
410                  'required' => true,
411                ],
412                'userId' => [
413                  'location' => 'path',
414                  'type' => 'string',
415                  'required' => true,
416                ],
417              ],
418            ],'update' => [
419              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/entitlements/{entitlementId}',
420              'httpMethod' => 'PUT',
421              'parameters' => [
422                'enterpriseId' => [
423                  'location' => 'path',
424                  'type' => 'string',
425                  'required' => true,
426                ],
427                'userId' => [
428                  'location' => 'path',
429                  'type' => 'string',
430                  'required' => true,
431                ],
432                'entitlementId' => [
433                  'location' => 'path',
434                  'type' => 'string',
435                  'required' => true,
436                ],
437                'install' => [
438                  'location' => 'query',
439                  'type' => 'boolean',
440                ],
441              ],
442            ],
443          ]
444        ]
445    );
446    $this->grouplicenses = new AndroidEnterprise\Resource\Grouplicenses(
447        $this,
448        $this->serviceName,
449        'grouplicenses',
450        [
451          'methods' => [
452            'get' => [
453              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/groupLicenses/{groupLicenseId}',
454              'httpMethod' => 'GET',
455              'parameters' => [
456                'enterpriseId' => [
457                  'location' => 'path',
458                  'type' => 'string',
459                  'required' => true,
460                ],
461                'groupLicenseId' => [
462                  'location' => 'path',
463                  'type' => 'string',
464                  'required' => true,
465                ],
466              ],
467            ],'list' => [
468              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/groupLicenses',
469              'httpMethod' => 'GET',
470              'parameters' => [
471                'enterpriseId' => [
472                  'location' => 'path',
473                  'type' => 'string',
474                  'required' => true,
475                ],
476              ],
477            ],
478          ]
479        ]
480    );
481    $this->grouplicenseusers = new AndroidEnterprise\Resource\Grouplicenseusers(
482        $this,
483        $this->serviceName,
484        'grouplicenseusers',
485        [
486          'methods' => [
487            'list' => [
488              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/groupLicenses/{groupLicenseId}/users',
489              'httpMethod' => 'GET',
490              'parameters' => [
491                'enterpriseId' => [
492                  'location' => 'path',
493                  'type' => 'string',
494                  'required' => true,
495                ],
496                'groupLicenseId' => [
497                  'location' => 'path',
498                  'type' => 'string',
499                  'required' => true,
500                ],
501              ],
502            ],
503          ]
504        ]
505    );
506    $this->installs = new AndroidEnterprise\Resource\Installs(
507        $this,
508        $this->serviceName,
509        'installs',
510        [
511          'methods' => [
512            'delete' => [
513              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs/{installId}',
514              'httpMethod' => 'DELETE',
515              'parameters' => [
516                'enterpriseId' => [
517                  'location' => 'path',
518                  'type' => 'string',
519                  'required' => true,
520                ],
521                'userId' => [
522                  'location' => 'path',
523                  'type' => 'string',
524                  'required' => true,
525                ],
526                'deviceId' => [
527                  'location' => 'path',
528                  'type' => 'string',
529                  'required' => true,
530                ],
531                'installId' => [
532                  'location' => 'path',
533                  'type' => 'string',
534                  'required' => true,
535                ],
536              ],
537            ],'get' => [
538              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs/{installId}',
539              'httpMethod' => 'GET',
540              'parameters' => [
541                'enterpriseId' => [
542                  'location' => 'path',
543                  'type' => 'string',
544                  'required' => true,
545                ],
546                'userId' => [
547                  'location' => 'path',
548                  'type' => 'string',
549                  'required' => true,
550                ],
551                'deviceId' => [
552                  'location' => 'path',
553                  'type' => 'string',
554                  'required' => true,
555                ],
556                'installId' => [
557                  'location' => 'path',
558                  'type' => 'string',
559                  'required' => true,
560                ],
561              ],
562            ],'list' => [
563              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs',
564              'httpMethod' => 'GET',
565              'parameters' => [
566                'enterpriseId' => [
567                  'location' => 'path',
568                  'type' => 'string',
569                  'required' => true,
570                ],
571                'userId' => [
572                  'location' => 'path',
573                  'type' => 'string',
574                  'required' => true,
575                ],
576                'deviceId' => [
577                  'location' => 'path',
578                  'type' => 'string',
579                  'required' => true,
580                ],
581              ],
582            ],'update' => [
583              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs/{installId}',
584              'httpMethod' => 'PUT',
585              'parameters' => [
586                'enterpriseId' => [
587                  'location' => 'path',
588                  'type' => 'string',
589                  'required' => true,
590                ],
591                'userId' => [
592                  'location' => 'path',
593                  'type' => 'string',
594                  'required' => true,
595                ],
596                'deviceId' => [
597                  'location' => 'path',
598                  'type' => 'string',
599                  'required' => true,
600                ],
601                'installId' => [
602                  'location' => 'path',
603                  'type' => 'string',
604                  'required' => true,
605                ],
606              ],
607            ],
608          ]
609        ]
610    );
611    $this->managedconfigurationsfordevice = new AndroidEnterprise\Resource\Managedconfigurationsfordevice(
612        $this,
613        $this->serviceName,
614        'managedconfigurationsfordevice',
615        [
616          'methods' => [
617            'delete' => [
618              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}',
619              'httpMethod' => 'DELETE',
620              'parameters' => [
621                'enterpriseId' => [
622                  'location' => 'path',
623                  'type' => 'string',
624                  'required' => true,
625                ],
626                'userId' => [
627                  'location' => 'path',
628                  'type' => 'string',
629                  'required' => true,
630                ],
631                'deviceId' => [
632                  'location' => 'path',
633                  'type' => 'string',
634                  'required' => true,
635                ],
636                'managedConfigurationForDeviceId' => [
637                  'location' => 'path',
638                  'type' => 'string',
639                  'required' => true,
640                ],
641              ],
642            ],'get' => [
643              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}',
644              'httpMethod' => 'GET',
645              'parameters' => [
646                'enterpriseId' => [
647                  'location' => 'path',
648                  'type' => 'string',
649                  'required' => true,
650                ],
651                'userId' => [
652                  'location' => 'path',
653                  'type' => 'string',
654                  'required' => true,
655                ],
656                'deviceId' => [
657                  'location' => 'path',
658                  'type' => 'string',
659                  'required' => true,
660                ],
661                'managedConfigurationForDeviceId' => [
662                  'location' => 'path',
663                  'type' => 'string',
664                  'required' => true,
665                ],
666              ],
667            ],'list' => [
668              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice',
669              'httpMethod' => 'GET',
670              'parameters' => [
671                'enterpriseId' => [
672                  'location' => 'path',
673                  'type' => 'string',
674                  'required' => true,
675                ],
676                'userId' => [
677                  'location' => 'path',
678                  'type' => 'string',
679                  'required' => true,
680                ],
681                'deviceId' => [
682                  'location' => 'path',
683                  'type' => 'string',
684                  'required' => true,
685                ],
686              ],
687            ],'update' => [
688              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}',
689              'httpMethod' => 'PUT',
690              'parameters' => [
691                'enterpriseId' => [
692                  'location' => 'path',
693                  'type' => 'string',
694                  'required' => true,
695                ],
696                'userId' => [
697                  'location' => 'path',
698                  'type' => 'string',
699                  'required' => true,
700                ],
701                'deviceId' => [
702                  'location' => 'path',
703                  'type' => 'string',
704                  'required' => true,
705                ],
706                'managedConfigurationForDeviceId' => [
707                  'location' => 'path',
708                  'type' => 'string',
709                  'required' => true,
710                ],
711              ],
712            ],
713          ]
714        ]
715    );
716    $this->managedconfigurationsforuser = new AndroidEnterprise\Resource\Managedconfigurationsforuser(
717        $this,
718        $this->serviceName,
719        'managedconfigurationsforuser',
720        [
721          'methods' => [
722            'delete' => [
723              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}',
724              'httpMethod' => 'DELETE',
725              'parameters' => [
726                'enterpriseId' => [
727                  'location' => 'path',
728                  'type' => 'string',
729                  'required' => true,
730                ],
731                'userId' => [
732                  'location' => 'path',
733                  'type' => 'string',
734                  'required' => true,
735                ],
736                'managedConfigurationForUserId' => [
737                  'location' => 'path',
738                  'type' => 'string',
739                  'required' => true,
740                ],
741              ],
742            ],'get' => [
743              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}',
744              'httpMethod' => 'GET',
745              'parameters' => [
746                'enterpriseId' => [
747                  'location' => 'path',
748                  'type' => 'string',
749                  'required' => true,
750                ],
751                'userId' => [
752                  'location' => 'path',
753                  'type' => 'string',
754                  'required' => true,
755                ],
756                'managedConfigurationForUserId' => [
757                  'location' => 'path',
758                  'type' => 'string',
759                  'required' => true,
760                ],
761              ],
762            ],'list' => [
763              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser',
764              'httpMethod' => 'GET',
765              'parameters' => [
766                'enterpriseId' => [
767                  'location' => 'path',
768                  'type' => 'string',
769                  'required' => true,
770                ],
771                'userId' => [
772                  'location' => 'path',
773                  'type' => 'string',
774                  'required' => true,
775                ],
776              ],
777            ],'update' => [
778              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}',
779              'httpMethod' => 'PUT',
780              'parameters' => [
781                'enterpriseId' => [
782                  'location' => 'path',
783                  'type' => 'string',
784                  'required' => true,
785                ],
786                'userId' => [
787                  'location' => 'path',
788                  'type' => 'string',
789                  'required' => true,
790                ],
791                'managedConfigurationForUserId' => [
792                  'location' => 'path',
793                  'type' => 'string',
794                  'required' => true,
795                ],
796              ],
797            ],
798          ]
799        ]
800    );
801    $this->managedconfigurationssettings = new AndroidEnterprise\Resource\Managedconfigurationssettings(
802        $this,
803        $this->serviceName,
804        'managedconfigurationssettings',
805        [
806          'methods' => [
807            'list' => [
808              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/products/{productId}/managedConfigurationsSettings',
809              'httpMethod' => 'GET',
810              'parameters' => [
811                'enterpriseId' => [
812                  'location' => 'path',
813                  'type' => 'string',
814                  'required' => true,
815                ],
816                'productId' => [
817                  'location' => 'path',
818                  'type' => 'string',
819                  'required' => true,
820                ],
821              ],
822            ],
823          ]
824        ]
825    );
826    $this->permissions = new AndroidEnterprise\Resource\Permissions(
827        $this,
828        $this->serviceName,
829        'permissions',
830        [
831          'methods' => [
832            'get' => [
833              'path' => 'androidenterprise/v1/permissions/{permissionId}',
834              'httpMethod' => 'GET',
835              'parameters' => [
836                'permissionId' => [
837                  'location' => 'path',
838                  'type' => 'string',
839                  'required' => true,
840                ],
841                'language' => [
842                  'location' => 'query',
843                  'type' => 'string',
844                ],
845              ],
846            ],
847          ]
848        ]
849    );
850    $this->products = new AndroidEnterprise\Resource\Products(
851        $this,
852        $this->serviceName,
853        'products',
854        [
855          'methods' => [
856            'approve' => [
857              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/products/{productId}/approve',
858              'httpMethod' => 'POST',
859              'parameters' => [
860                'enterpriseId' => [
861                  'location' => 'path',
862                  'type' => 'string',
863                  'required' => true,
864                ],
865                'productId' => [
866                  'location' => 'path',
867                  'type' => 'string',
868                  'required' => true,
869                ],
870              ],
871            ],'generateApprovalUrl' => [
872              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/products/{productId}/generateApprovalUrl',
873              'httpMethod' => 'POST',
874              'parameters' => [
875                'enterpriseId' => [
876                  'location' => 'path',
877                  'type' => 'string',
878                  'required' => true,
879                ],
880                'productId' => [
881                  'location' => 'path',
882                  'type' => 'string',
883                  'required' => true,
884                ],
885                'languageCode' => [
886                  'location' => 'query',
887                  'type' => 'string',
888                ],
889              ],
890            ],'get' => [
891              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/products/{productId}',
892              'httpMethod' => 'GET',
893              'parameters' => [
894                'enterpriseId' => [
895                  'location' => 'path',
896                  'type' => 'string',
897                  'required' => true,
898                ],
899                'productId' => [
900                  'location' => 'path',
901                  'type' => 'string',
902                  'required' => true,
903                ],
904                'language' => [
905                  'location' => 'query',
906                  'type' => 'string',
907                ],
908              ],
909            ],'getAppRestrictionsSchema' => [
910              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/products/{productId}/appRestrictionsSchema',
911              'httpMethod' => 'GET',
912              'parameters' => [
913                'enterpriseId' => [
914                  'location' => 'path',
915                  'type' => 'string',
916                  'required' => true,
917                ],
918                'productId' => [
919                  'location' => 'path',
920                  'type' => 'string',
921                  'required' => true,
922                ],
923                'language' => [
924                  'location' => 'query',
925                  'type' => 'string',
926                ],
927              ],
928            ],'getPermissions' => [
929              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/products/{productId}/permissions',
930              'httpMethod' => 'GET',
931              'parameters' => [
932                'enterpriseId' => [
933                  'location' => 'path',
934                  'type' => 'string',
935                  'required' => true,
936                ],
937                'productId' => [
938                  'location' => 'path',
939                  'type' => 'string',
940                  'required' => true,
941                ],
942              ],
943            ],'list' => [
944              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/products',
945              'httpMethod' => 'GET',
946              'parameters' => [
947                'enterpriseId' => [
948                  'location' => 'path',
949                  'type' => 'string',
950                  'required' => true,
951                ],
952                'approved' => [
953                  'location' => 'query',
954                  'type' => 'boolean',
955                ],
956                'language' => [
957                  'location' => 'query',
958                  'type' => 'string',
959                ],
960                'maxResults' => [
961                  'location' => 'query',
962                  'type' => 'integer',
963                ],
964                'query' => [
965                  'location' => 'query',
966                  'type' => 'string',
967                ],
968                'token' => [
969                  'location' => 'query',
970                  'type' => 'string',
971                ],
972              ],
973            ],'unapprove' => [
974              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/products/{productId}/unapprove',
975              'httpMethod' => 'POST',
976              'parameters' => [
977                'enterpriseId' => [
978                  'location' => 'path',
979                  'type' => 'string',
980                  'required' => true,
981                ],
982                'productId' => [
983                  'location' => 'path',
984                  'type' => 'string',
985                  'required' => true,
986                ],
987              ],
988            ],
989          ]
990        ]
991    );
992    $this->serviceaccountkeys = new AndroidEnterprise\Resource\Serviceaccountkeys(
993        $this,
994        $this->serviceName,
995        'serviceaccountkeys',
996        [
997          'methods' => [
998            'delete' => [
999              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/serviceAccountKeys/{keyId}',
1000              'httpMethod' => 'DELETE',
1001              'parameters' => [
1002                'enterpriseId' => [
1003                  'location' => 'path',
1004                  'type' => 'string',
1005                  'required' => true,
1006                ],
1007                'keyId' => [
1008                  'location' => 'path',
1009                  'type' => 'string',
1010                  'required' => true,
1011                ],
1012              ],
1013            ],'insert' => [
1014              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/serviceAccountKeys',
1015              'httpMethod' => 'POST',
1016              'parameters' => [
1017                'enterpriseId' => [
1018                  'location' => 'path',
1019                  'type' => 'string',
1020                  'required' => true,
1021                ],
1022              ],
1023            ],'list' => [
1024              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/serviceAccountKeys',
1025              'httpMethod' => 'GET',
1026              'parameters' => [
1027                'enterpriseId' => [
1028                  'location' => 'path',
1029                  'type' => 'string',
1030                  'required' => true,
1031                ],
1032              ],
1033            ],
1034          ]
1035        ]
1036    );
1037    $this->storelayoutclusters = new AndroidEnterprise\Resource\Storelayoutclusters(
1038        $this,
1039        $this->serviceName,
1040        'storelayoutclusters',
1041        [
1042          'methods' => [
1043            'delete' => [
1044              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters/{clusterId}',
1045              'httpMethod' => 'DELETE',
1046              'parameters' => [
1047                'enterpriseId' => [
1048                  'location' => 'path',
1049                  'type' => 'string',
1050                  'required' => true,
1051                ],
1052                'pageId' => [
1053                  'location' => 'path',
1054                  'type' => 'string',
1055                  'required' => true,
1056                ],
1057                'clusterId' => [
1058                  'location' => 'path',
1059                  'type' => 'string',
1060                  'required' => true,
1061                ],
1062              ],
1063            ],'get' => [
1064              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters/{clusterId}',
1065              'httpMethod' => 'GET',
1066              'parameters' => [
1067                'enterpriseId' => [
1068                  'location' => 'path',
1069                  'type' => 'string',
1070                  'required' => true,
1071                ],
1072                'pageId' => [
1073                  'location' => 'path',
1074                  'type' => 'string',
1075                  'required' => true,
1076                ],
1077                'clusterId' => [
1078                  'location' => 'path',
1079                  'type' => 'string',
1080                  'required' => true,
1081                ],
1082              ],
1083            ],'insert' => [
1084              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters',
1085              'httpMethod' => 'POST',
1086              'parameters' => [
1087                'enterpriseId' => [
1088                  'location' => 'path',
1089                  'type' => 'string',
1090                  'required' => true,
1091                ],
1092                'pageId' => [
1093                  'location' => 'path',
1094                  'type' => 'string',
1095                  'required' => true,
1096                ],
1097              ],
1098            ],'list' => [
1099              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters',
1100              'httpMethod' => 'GET',
1101              'parameters' => [
1102                'enterpriseId' => [
1103                  'location' => 'path',
1104                  'type' => 'string',
1105                  'required' => true,
1106                ],
1107                'pageId' => [
1108                  'location' => 'path',
1109                  'type' => 'string',
1110                  'required' => true,
1111                ],
1112              ],
1113            ],'update' => [
1114              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters/{clusterId}',
1115              'httpMethod' => 'PUT',
1116              'parameters' => [
1117                'enterpriseId' => [
1118                  'location' => 'path',
1119                  'type' => 'string',
1120                  'required' => true,
1121                ],
1122                'pageId' => [
1123                  'location' => 'path',
1124                  'type' => 'string',
1125                  'required' => true,
1126                ],
1127                'clusterId' => [
1128                  'location' => 'path',
1129                  'type' => 'string',
1130                  'required' => true,
1131                ],
1132              ],
1133            ],
1134          ]
1135        ]
1136    );
1137    $this->storelayoutpages = new AndroidEnterprise\Resource\Storelayoutpages(
1138        $this,
1139        $this->serviceName,
1140        'storelayoutpages',
1141        [
1142          'methods' => [
1143            'delete' => [
1144              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/storeLayout/pages/{pageId}',
1145              'httpMethod' => 'DELETE',
1146              'parameters' => [
1147                'enterpriseId' => [
1148                  'location' => 'path',
1149                  'type' => 'string',
1150                  'required' => true,
1151                ],
1152                'pageId' => [
1153                  'location' => 'path',
1154                  'type' => 'string',
1155                  'required' => true,
1156                ],
1157              ],
1158            ],'get' => [
1159              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/storeLayout/pages/{pageId}',
1160              'httpMethod' => 'GET',
1161              'parameters' => [
1162                'enterpriseId' => [
1163                  'location' => 'path',
1164                  'type' => 'string',
1165                  'required' => true,
1166                ],
1167                'pageId' => [
1168                  'location' => 'path',
1169                  'type' => 'string',
1170                  'required' => true,
1171                ],
1172              ],
1173            ],'insert' => [
1174              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/storeLayout/pages',
1175              'httpMethod' => 'POST',
1176              'parameters' => [
1177                'enterpriseId' => [
1178                  'location' => 'path',
1179                  'type' => 'string',
1180                  'required' => true,
1181                ],
1182              ],
1183            ],'list' => [
1184              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/storeLayout/pages',
1185              'httpMethod' => 'GET',
1186              'parameters' => [
1187                'enterpriseId' => [
1188                  'location' => 'path',
1189                  'type' => 'string',
1190                  'required' => true,
1191                ],
1192              ],
1193            ],'update' => [
1194              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/storeLayout/pages/{pageId}',
1195              'httpMethod' => 'PUT',
1196              'parameters' => [
1197                'enterpriseId' => [
1198                  'location' => 'path',
1199                  'type' => 'string',
1200                  'required' => true,
1201                ],
1202                'pageId' => [
1203                  'location' => 'path',
1204                  'type' => 'string',
1205                  'required' => true,
1206                ],
1207              ],
1208            ],
1209          ]
1210        ]
1211    );
1212    $this->users = new AndroidEnterprise\Resource\Users(
1213        $this,
1214        $this->serviceName,
1215        'users',
1216        [
1217          'methods' => [
1218            'delete' => [
1219              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}',
1220              'httpMethod' => 'DELETE',
1221              'parameters' => [
1222                'enterpriseId' => [
1223                  'location' => 'path',
1224                  'type' => 'string',
1225                  'required' => true,
1226                ],
1227                'userId' => [
1228                  'location' => 'path',
1229                  'type' => 'string',
1230                  'required' => true,
1231                ],
1232              ],
1233            ],'generateAuthenticationToken' => [
1234              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/authenticationToken',
1235              'httpMethod' => 'POST',
1236              'parameters' => [
1237                'enterpriseId' => [
1238                  'location' => 'path',
1239                  'type' => 'string',
1240                  'required' => true,
1241                ],
1242                'userId' => [
1243                  'location' => 'path',
1244                  'type' => 'string',
1245                  'required' => true,
1246                ],
1247              ],
1248            ],'get' => [
1249              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}',
1250              'httpMethod' => 'GET',
1251              'parameters' => [
1252                'enterpriseId' => [
1253                  'location' => 'path',
1254                  'type' => 'string',
1255                  'required' => true,
1256                ],
1257                'userId' => [
1258                  'location' => 'path',
1259                  'type' => 'string',
1260                  'required' => true,
1261                ],
1262              ],
1263            ],'getAvailableProductSet' => [
1264              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/availableProductSet',
1265              'httpMethod' => 'GET',
1266              'parameters' => [
1267                'enterpriseId' => [
1268                  'location' => 'path',
1269                  'type' => 'string',
1270                  'required' => true,
1271                ],
1272                'userId' => [
1273                  'location' => 'path',
1274                  'type' => 'string',
1275                  'required' => true,
1276                ],
1277              ],
1278            ],'insert' => [
1279              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users',
1280              'httpMethod' => 'POST',
1281              'parameters' => [
1282                'enterpriseId' => [
1283                  'location' => 'path',
1284                  'type' => 'string',
1285                  'required' => true,
1286                ],
1287              ],
1288            ],'list' => [
1289              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users',
1290              'httpMethod' => 'GET',
1291              'parameters' => [
1292                'enterpriseId' => [
1293                  'location' => 'path',
1294                  'type' => 'string',
1295                  'required' => true,
1296                ],
1297                'email' => [
1298                  'location' => 'query',
1299                  'type' => 'string',
1300                  'required' => true,
1301                ],
1302              ],
1303            ],'revokeDeviceAccess' => [
1304              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/deviceAccess',
1305              'httpMethod' => 'DELETE',
1306              'parameters' => [
1307                'enterpriseId' => [
1308                  'location' => 'path',
1309                  'type' => 'string',
1310                  'required' => true,
1311                ],
1312                'userId' => [
1313                  'location' => 'path',
1314                  'type' => 'string',
1315                  'required' => true,
1316                ],
1317              ],
1318            ],'setAvailableProductSet' => [
1319              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}/availableProductSet',
1320              'httpMethod' => 'PUT',
1321              'parameters' => [
1322                'enterpriseId' => [
1323                  'location' => 'path',
1324                  'type' => 'string',
1325                  'required' => true,
1326                ],
1327                'userId' => [
1328                  'location' => 'path',
1329                  'type' => 'string',
1330                  'required' => true,
1331                ],
1332              ],
1333            ],'update' => [
1334              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/users/{userId}',
1335              'httpMethod' => 'PUT',
1336              'parameters' => [
1337                'enterpriseId' => [
1338                  'location' => 'path',
1339                  'type' => 'string',
1340                  'required' => true,
1341                ],
1342                'userId' => [
1343                  'location' => 'path',
1344                  'type' => 'string',
1345                  'required' => true,
1346                ],
1347              ],
1348            ],
1349          ]
1350        ]
1351    );
1352    $this->webapps = new AndroidEnterprise\Resource\Webapps(
1353        $this,
1354        $this->serviceName,
1355        'webapps',
1356        [
1357          'methods' => [
1358            'delete' => [
1359              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/webApps/{webAppId}',
1360              'httpMethod' => 'DELETE',
1361              'parameters' => [
1362                'enterpriseId' => [
1363                  'location' => 'path',
1364                  'type' => 'string',
1365                  'required' => true,
1366                ],
1367                'webAppId' => [
1368                  'location' => 'path',
1369                  'type' => 'string',
1370                  'required' => true,
1371                ],
1372              ],
1373            ],'get' => [
1374              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/webApps/{webAppId}',
1375              'httpMethod' => 'GET',
1376              'parameters' => [
1377                'enterpriseId' => [
1378                  'location' => 'path',
1379                  'type' => 'string',
1380                  'required' => true,
1381                ],
1382                'webAppId' => [
1383                  'location' => 'path',
1384                  'type' => 'string',
1385                  'required' => true,
1386                ],
1387              ],
1388            ],'insert' => [
1389              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/webApps',
1390              'httpMethod' => 'POST',
1391              'parameters' => [
1392                'enterpriseId' => [
1393                  'location' => 'path',
1394                  'type' => 'string',
1395                  'required' => true,
1396                ],
1397              ],
1398            ],'list' => [
1399              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/webApps',
1400              'httpMethod' => 'GET',
1401              'parameters' => [
1402                'enterpriseId' => [
1403                  'location' => 'path',
1404                  'type' => 'string',
1405                  'required' => true,
1406                ],
1407              ],
1408            ],'update' => [
1409              'path' => 'androidenterprise/v1/enterprises/{enterpriseId}/webApps/{webAppId}',
1410              'httpMethod' => 'PUT',
1411              'parameters' => [
1412                'enterpriseId' => [
1413                  'location' => 'path',
1414                  'type' => 'string',
1415                  'required' => true,
1416                ],
1417                'webAppId' => [
1418                  'location' => 'path',
1419                  'type' => 'string',
1420                  'required' => true,
1421                ],
1422              ],
1423            ],
1424          ]
1425        ]
1426    );
1427  }
1428}
1429
1430// Adding a class alias for backwards compatibility with the previous class name.
1431class_alias(AndroidEnterprise::class, 'Google_Service_AndroidEnterprise');
1432