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 Calendar (v3).
24 *
25 * <p>
26 * Manipulates events and other calendar data.</p>
27 *
28 * <p>
29 * For more information about this service, see the API
30 * <a href="https://developers.google.com/google-apps/calendar/firstapp" target="_blank">Documentation</a>
31 * </p>
32 *
33 * @author Google, Inc.
34 */
35class Calendar extends \Google\Service
36{
37  /** See, edit, share, and permanently delete all the calendars you can access using Google Calendar. */
38  const CALENDAR =
39      "https://www.googleapis.com/auth/calendar";
40  /** View and edit events on all your calendars. */
41  const CALENDAR_EVENTS =
42      "https://www.googleapis.com/auth/calendar.events";
43  /** View events on all your calendars. */
44  const CALENDAR_EVENTS_READONLY =
45      "https://www.googleapis.com/auth/calendar.events.readonly";
46  /** See and download any calendar you can access using your Google Calendar. */
47  const CALENDAR_READONLY =
48      "https://www.googleapis.com/auth/calendar.readonly";
49  /** View your Calendar settings. */
50  const CALENDAR_SETTINGS_READONLY =
51      "https://www.googleapis.com/auth/calendar.settings.readonly";
52
53  public $acl;
54  public $calendarList;
55  public $calendars;
56  public $channels;
57  public $colors;
58  public $events;
59  public $freebusy;
60  public $settings;
61
62  /**
63   * Constructs the internal representation of the Calendar service.
64   *
65   * @param Client|array $clientOrConfig The client used to deliver requests, or a
66   *                                     config array to pass to a new Client instance.
67   * @param string $rootUrl The root URL used for requests to the service.
68   */
69  public function __construct($clientOrConfig = [], $rootUrl = null)
70  {
71    parent::__construct($clientOrConfig);
72    $this->rootUrl = $rootUrl ?: 'https://www.googleapis.com/';
73    $this->servicePath = 'calendar/v3/';
74    $this->batchPath = 'batch/calendar/v3';
75    $this->version = 'v3';
76    $this->serviceName = 'calendar';
77
78    $this->acl = new Calendar\Resource\Acl(
79        $this,
80        $this->serviceName,
81        'acl',
82        [
83          'methods' => [
84            'delete' => [
85              'path' => 'calendars/{calendarId}/acl/{ruleId}',
86              'httpMethod' => 'DELETE',
87              'parameters' => [
88                'calendarId' => [
89                  'location' => 'path',
90                  'type' => 'string',
91                  'required' => true,
92                ],
93                'ruleId' => [
94                  'location' => 'path',
95                  'type' => 'string',
96                  'required' => true,
97                ],
98              ],
99            ],'get' => [
100              'path' => 'calendars/{calendarId}/acl/{ruleId}',
101              'httpMethod' => 'GET',
102              'parameters' => [
103                'calendarId' => [
104                  'location' => 'path',
105                  'type' => 'string',
106                  'required' => true,
107                ],
108                'ruleId' => [
109                  'location' => 'path',
110                  'type' => 'string',
111                  'required' => true,
112                ],
113              ],
114            ],'insert' => [
115              'path' => 'calendars/{calendarId}/acl',
116              'httpMethod' => 'POST',
117              'parameters' => [
118                'calendarId' => [
119                  'location' => 'path',
120                  'type' => 'string',
121                  'required' => true,
122                ],
123                'sendNotifications' => [
124                  'location' => 'query',
125                  'type' => 'boolean',
126                ],
127              ],
128            ],'list' => [
129              'path' => 'calendars/{calendarId}/acl',
130              'httpMethod' => 'GET',
131              'parameters' => [
132                'calendarId' => [
133                  'location' => 'path',
134                  'type' => 'string',
135                  'required' => true,
136                ],
137                'maxResults' => [
138                  'location' => 'query',
139                  'type' => 'integer',
140                ],
141                'pageToken' => [
142                  'location' => 'query',
143                  'type' => 'string',
144                ],
145                'showDeleted' => [
146                  'location' => 'query',
147                  'type' => 'boolean',
148                ],
149                'syncToken' => [
150                  'location' => 'query',
151                  'type' => 'string',
152                ],
153              ],
154            ],'patch' => [
155              'path' => 'calendars/{calendarId}/acl/{ruleId}',
156              'httpMethod' => 'PATCH',
157              'parameters' => [
158                'calendarId' => [
159                  'location' => 'path',
160                  'type' => 'string',
161                  'required' => true,
162                ],
163                'ruleId' => [
164                  'location' => 'path',
165                  'type' => 'string',
166                  'required' => true,
167                ],
168                'sendNotifications' => [
169                  'location' => 'query',
170                  'type' => 'boolean',
171                ],
172              ],
173            ],'update' => [
174              'path' => 'calendars/{calendarId}/acl/{ruleId}',
175              'httpMethod' => 'PUT',
176              'parameters' => [
177                'calendarId' => [
178                  'location' => 'path',
179                  'type' => 'string',
180                  'required' => true,
181                ],
182                'ruleId' => [
183                  'location' => 'path',
184                  'type' => 'string',
185                  'required' => true,
186                ],
187                'sendNotifications' => [
188                  'location' => 'query',
189                  'type' => 'boolean',
190                ],
191              ],
192            ],'watch' => [
193              'path' => 'calendars/{calendarId}/acl/watch',
194              'httpMethod' => 'POST',
195              'parameters' => [
196                'calendarId' => [
197                  'location' => 'path',
198                  'type' => 'string',
199                  'required' => true,
200                ],
201                'maxResults' => [
202                  'location' => 'query',
203                  'type' => 'integer',
204                ],
205                'pageToken' => [
206                  'location' => 'query',
207                  'type' => 'string',
208                ],
209                'showDeleted' => [
210                  'location' => 'query',
211                  'type' => 'boolean',
212                ],
213                'syncToken' => [
214                  'location' => 'query',
215                  'type' => 'string',
216                ],
217              ],
218            ],
219          ]
220        ]
221    );
222    $this->calendarList = new Calendar\Resource\CalendarList(
223        $this,
224        $this->serviceName,
225        'calendarList',
226        [
227          'methods' => [
228            'delete' => [
229              'path' => 'users/me/calendarList/{calendarId}',
230              'httpMethod' => 'DELETE',
231              'parameters' => [
232                'calendarId' => [
233                  'location' => 'path',
234                  'type' => 'string',
235                  'required' => true,
236                ],
237              ],
238            ],'get' => [
239              'path' => 'users/me/calendarList/{calendarId}',
240              'httpMethod' => 'GET',
241              'parameters' => [
242                'calendarId' => [
243                  'location' => 'path',
244                  'type' => 'string',
245                  'required' => true,
246                ],
247              ],
248            ],'insert' => [
249              'path' => 'users/me/calendarList',
250              'httpMethod' => 'POST',
251              'parameters' => [
252                'colorRgbFormat' => [
253                  'location' => 'query',
254                  'type' => 'boolean',
255                ],
256              ],
257            ],'list' => [
258              'path' => 'users/me/calendarList',
259              'httpMethod' => 'GET',
260              'parameters' => [
261                'maxResults' => [
262                  'location' => 'query',
263                  'type' => 'integer',
264                ],
265                'minAccessRole' => [
266                  'location' => 'query',
267                  'type' => 'string',
268                ],
269                'pageToken' => [
270                  'location' => 'query',
271                  'type' => 'string',
272                ],
273                'showDeleted' => [
274                  'location' => 'query',
275                  'type' => 'boolean',
276                ],
277                'showHidden' => [
278                  'location' => 'query',
279                  'type' => 'boolean',
280                ],
281                'syncToken' => [
282                  'location' => 'query',
283                  'type' => 'string',
284                ],
285              ],
286            ],'patch' => [
287              'path' => 'users/me/calendarList/{calendarId}',
288              'httpMethod' => 'PATCH',
289              'parameters' => [
290                'calendarId' => [
291                  'location' => 'path',
292                  'type' => 'string',
293                  'required' => true,
294                ],
295                'colorRgbFormat' => [
296                  'location' => 'query',
297                  'type' => 'boolean',
298                ],
299              ],
300            ],'update' => [
301              'path' => 'users/me/calendarList/{calendarId}',
302              'httpMethod' => 'PUT',
303              'parameters' => [
304                'calendarId' => [
305                  'location' => 'path',
306                  'type' => 'string',
307                  'required' => true,
308                ],
309                'colorRgbFormat' => [
310                  'location' => 'query',
311                  'type' => 'boolean',
312                ],
313              ],
314            ],'watch' => [
315              'path' => 'users/me/calendarList/watch',
316              'httpMethod' => 'POST',
317              'parameters' => [
318                'maxResults' => [
319                  'location' => 'query',
320                  'type' => 'integer',
321                ],
322                'minAccessRole' => [
323                  'location' => 'query',
324                  'type' => 'string',
325                ],
326                'pageToken' => [
327                  'location' => 'query',
328                  'type' => 'string',
329                ],
330                'showDeleted' => [
331                  'location' => 'query',
332                  'type' => 'boolean',
333                ],
334                'showHidden' => [
335                  'location' => 'query',
336                  'type' => 'boolean',
337                ],
338                'syncToken' => [
339                  'location' => 'query',
340                  'type' => 'string',
341                ],
342              ],
343            ],
344          ]
345        ]
346    );
347    $this->calendars = new Calendar\Resource\Calendars(
348        $this,
349        $this->serviceName,
350        'calendars',
351        [
352          'methods' => [
353            'clear' => [
354              'path' => 'calendars/{calendarId}/clear',
355              'httpMethod' => 'POST',
356              'parameters' => [
357                'calendarId' => [
358                  'location' => 'path',
359                  'type' => 'string',
360                  'required' => true,
361                ],
362              ],
363            ],'delete' => [
364              'path' => 'calendars/{calendarId}',
365              'httpMethod' => 'DELETE',
366              'parameters' => [
367                'calendarId' => [
368                  'location' => 'path',
369                  'type' => 'string',
370                  'required' => true,
371                ],
372              ],
373            ],'get' => [
374              'path' => 'calendars/{calendarId}',
375              'httpMethod' => 'GET',
376              'parameters' => [
377                'calendarId' => [
378                  'location' => 'path',
379                  'type' => 'string',
380                  'required' => true,
381                ],
382              ],
383            ],'insert' => [
384              'path' => 'calendars',
385              'httpMethod' => 'POST',
386              'parameters' => [],
387            ],'patch' => [
388              'path' => 'calendars/{calendarId}',
389              'httpMethod' => 'PATCH',
390              'parameters' => [
391                'calendarId' => [
392                  'location' => 'path',
393                  'type' => 'string',
394                  'required' => true,
395                ],
396              ],
397            ],'update' => [
398              'path' => 'calendars/{calendarId}',
399              'httpMethod' => 'PUT',
400              'parameters' => [
401                'calendarId' => [
402                  'location' => 'path',
403                  'type' => 'string',
404                  'required' => true,
405                ],
406              ],
407            ],
408          ]
409        ]
410    );
411    $this->channels = new Calendar\Resource\Channels(
412        $this,
413        $this->serviceName,
414        'channels',
415        [
416          'methods' => [
417            'stop' => [
418              'path' => 'channels/stop',
419              'httpMethod' => 'POST',
420              'parameters' => [],
421            ],
422          ]
423        ]
424    );
425    $this->colors = new Calendar\Resource\Colors(
426        $this,
427        $this->serviceName,
428        'colors',
429        [
430          'methods' => [
431            'get' => [
432              'path' => 'colors',
433              'httpMethod' => 'GET',
434              'parameters' => [],
435            ],
436          ]
437        ]
438    );
439    $this->events = new Calendar\Resource\Events(
440        $this,
441        $this->serviceName,
442        'events',
443        [
444          'methods' => [
445            'delete' => [
446              'path' => 'calendars/{calendarId}/events/{eventId}',
447              'httpMethod' => 'DELETE',
448              'parameters' => [
449                'calendarId' => [
450                  'location' => 'path',
451                  'type' => 'string',
452                  'required' => true,
453                ],
454                'eventId' => [
455                  'location' => 'path',
456                  'type' => 'string',
457                  'required' => true,
458                ],
459                'sendNotifications' => [
460                  'location' => 'query',
461                  'type' => 'boolean',
462                ],
463                'sendUpdates' => [
464                  'location' => 'query',
465                  'type' => 'string',
466                ],
467              ],
468            ],'get' => [
469              'path' => 'calendars/{calendarId}/events/{eventId}',
470              'httpMethod' => 'GET',
471              'parameters' => [
472                'calendarId' => [
473                  'location' => 'path',
474                  'type' => 'string',
475                  'required' => true,
476                ],
477                'eventId' => [
478                  'location' => 'path',
479                  'type' => 'string',
480                  'required' => true,
481                ],
482                'alwaysIncludeEmail' => [
483                  'location' => 'query',
484                  'type' => 'boolean',
485                ],
486                'maxAttendees' => [
487                  'location' => 'query',
488                  'type' => 'integer',
489                ],
490                'timeZone' => [
491                  'location' => 'query',
492                  'type' => 'string',
493                ],
494              ],
495            ],'import' => [
496              'path' => 'calendars/{calendarId}/events/import',
497              'httpMethod' => 'POST',
498              'parameters' => [
499                'calendarId' => [
500                  'location' => 'path',
501                  'type' => 'string',
502                  'required' => true,
503                ],
504                'conferenceDataVersion' => [
505                  'location' => 'query',
506                  'type' => 'integer',
507                ],
508                'supportsAttachments' => [
509                  'location' => 'query',
510                  'type' => 'boolean',
511                ],
512              ],
513            ],'insert' => [
514              'path' => 'calendars/{calendarId}/events',
515              'httpMethod' => 'POST',
516              'parameters' => [
517                'calendarId' => [
518                  'location' => 'path',
519                  'type' => 'string',
520                  'required' => true,
521                ],
522                'conferenceDataVersion' => [
523                  'location' => 'query',
524                  'type' => 'integer',
525                ],
526                'maxAttendees' => [
527                  'location' => 'query',
528                  'type' => 'integer',
529                ],
530                'sendNotifications' => [
531                  'location' => 'query',
532                  'type' => 'boolean',
533                ],
534                'sendUpdates' => [
535                  'location' => 'query',
536                  'type' => 'string',
537                ],
538                'supportsAttachments' => [
539                  'location' => 'query',
540                  'type' => 'boolean',
541                ],
542              ],
543            ],'instances' => [
544              'path' => 'calendars/{calendarId}/events/{eventId}/instances',
545              'httpMethod' => 'GET',
546              'parameters' => [
547                'calendarId' => [
548                  'location' => 'path',
549                  'type' => 'string',
550                  'required' => true,
551                ],
552                'eventId' => [
553                  'location' => 'path',
554                  'type' => 'string',
555                  'required' => true,
556                ],
557                'alwaysIncludeEmail' => [
558                  'location' => 'query',
559                  'type' => 'boolean',
560                ],
561                'maxAttendees' => [
562                  'location' => 'query',
563                  'type' => 'integer',
564                ],
565                'maxResults' => [
566                  'location' => 'query',
567                  'type' => 'integer',
568                ],
569                'originalStart' => [
570                  'location' => 'query',
571                  'type' => 'string',
572                ],
573                'pageToken' => [
574                  'location' => 'query',
575                  'type' => 'string',
576                ],
577                'showDeleted' => [
578                  'location' => 'query',
579                  'type' => 'boolean',
580                ],
581                'timeMax' => [
582                  'location' => 'query',
583                  'type' => 'string',
584                ],
585                'timeMin' => [
586                  'location' => 'query',
587                  'type' => 'string',
588                ],
589                'timeZone' => [
590                  'location' => 'query',
591                  'type' => 'string',
592                ],
593              ],
594            ],'list' => [
595              'path' => 'calendars/{calendarId}/events',
596              'httpMethod' => 'GET',
597              'parameters' => [
598                'calendarId' => [
599                  'location' => 'path',
600                  'type' => 'string',
601                  'required' => true,
602                ],
603                'alwaysIncludeEmail' => [
604                  'location' => 'query',
605                  'type' => 'boolean',
606                ],
607                'iCalUID' => [
608                  'location' => 'query',
609                  'type' => 'string',
610                ],
611                'maxAttendees' => [
612                  'location' => 'query',
613                  'type' => 'integer',
614                ],
615                'maxResults' => [
616                  'location' => 'query',
617                  'type' => 'integer',
618                ],
619                'orderBy' => [
620                  'location' => 'query',
621                  'type' => 'string',
622                ],
623                'pageToken' => [
624                  'location' => 'query',
625                  'type' => 'string',
626                ],
627                'privateExtendedProperty' => [
628                  'location' => 'query',
629                  'type' => 'string',
630                  'repeated' => true,
631                ],
632                'q' => [
633                  'location' => 'query',
634                  'type' => 'string',
635                ],
636                'sharedExtendedProperty' => [
637                  'location' => 'query',
638                  'type' => 'string',
639                  'repeated' => true,
640                ],
641                'showDeleted' => [
642                  'location' => 'query',
643                  'type' => 'boolean',
644                ],
645                'showHiddenInvitations' => [
646                  'location' => 'query',
647                  'type' => 'boolean',
648                ],
649                'singleEvents' => [
650                  'location' => 'query',
651                  'type' => 'boolean',
652                ],
653                'syncToken' => [
654                  'location' => 'query',
655                  'type' => 'string',
656                ],
657                'timeMax' => [
658                  'location' => 'query',
659                  'type' => 'string',
660                ],
661                'timeMin' => [
662                  'location' => 'query',
663                  'type' => 'string',
664                ],
665                'timeZone' => [
666                  'location' => 'query',
667                  'type' => 'string',
668                ],
669                'updatedMin' => [
670                  'location' => 'query',
671                  'type' => 'string',
672                ],
673              ],
674            ],'move' => [
675              'path' => 'calendars/{calendarId}/events/{eventId}/move',
676              'httpMethod' => 'POST',
677              'parameters' => [
678                'calendarId' => [
679                  'location' => 'path',
680                  'type' => 'string',
681                  'required' => true,
682                ],
683                'eventId' => [
684                  'location' => 'path',
685                  'type' => 'string',
686                  'required' => true,
687                ],
688                'destination' => [
689                  'location' => 'query',
690                  'type' => 'string',
691                  'required' => true,
692                ],
693                'sendNotifications' => [
694                  'location' => 'query',
695                  'type' => 'boolean',
696                ],
697                'sendUpdates' => [
698                  'location' => 'query',
699                  'type' => 'string',
700                ],
701              ],
702            ],'patch' => [
703              'path' => 'calendars/{calendarId}/events/{eventId}',
704              'httpMethod' => 'PATCH',
705              'parameters' => [
706                'calendarId' => [
707                  'location' => 'path',
708                  'type' => 'string',
709                  'required' => true,
710                ],
711                'eventId' => [
712                  'location' => 'path',
713                  'type' => 'string',
714                  'required' => true,
715                ],
716                'alwaysIncludeEmail' => [
717                  'location' => 'query',
718                  'type' => 'boolean',
719                ],
720                'conferenceDataVersion' => [
721                  'location' => 'query',
722                  'type' => 'integer',
723                ],
724                'maxAttendees' => [
725                  'location' => 'query',
726                  'type' => 'integer',
727                ],
728                'sendNotifications' => [
729                  'location' => 'query',
730                  'type' => 'boolean',
731                ],
732                'sendUpdates' => [
733                  'location' => 'query',
734                  'type' => 'string',
735                ],
736                'supportsAttachments' => [
737                  'location' => 'query',
738                  'type' => 'boolean',
739                ],
740              ],
741            ],'quickAdd' => [
742              'path' => 'calendars/{calendarId}/events/quickAdd',
743              'httpMethod' => 'POST',
744              'parameters' => [
745                'calendarId' => [
746                  'location' => 'path',
747                  'type' => 'string',
748                  'required' => true,
749                ],
750                'text' => [
751                  'location' => 'query',
752                  'type' => 'string',
753                  'required' => true,
754                ],
755                'sendNotifications' => [
756                  'location' => 'query',
757                  'type' => 'boolean',
758                ],
759                'sendUpdates' => [
760                  'location' => 'query',
761                  'type' => 'string',
762                ],
763              ],
764            ],'update' => [
765              'path' => 'calendars/{calendarId}/events/{eventId}',
766              'httpMethod' => 'PUT',
767              'parameters' => [
768                'calendarId' => [
769                  'location' => 'path',
770                  'type' => 'string',
771                  'required' => true,
772                ],
773                'eventId' => [
774                  'location' => 'path',
775                  'type' => 'string',
776                  'required' => true,
777                ],
778                'alwaysIncludeEmail' => [
779                  'location' => 'query',
780                  'type' => 'boolean',
781                ],
782                'conferenceDataVersion' => [
783                  'location' => 'query',
784                  'type' => 'integer',
785                ],
786                'maxAttendees' => [
787                  'location' => 'query',
788                  'type' => 'integer',
789                ],
790                'sendNotifications' => [
791                  'location' => 'query',
792                  'type' => 'boolean',
793                ],
794                'sendUpdates' => [
795                  'location' => 'query',
796                  'type' => 'string',
797                ],
798                'supportsAttachments' => [
799                  'location' => 'query',
800                  'type' => 'boolean',
801                ],
802              ],
803            ],'watch' => [
804              'path' => 'calendars/{calendarId}/events/watch',
805              'httpMethod' => 'POST',
806              'parameters' => [
807                'calendarId' => [
808                  'location' => 'path',
809                  'type' => 'string',
810                  'required' => true,
811                ],
812                'alwaysIncludeEmail' => [
813                  'location' => 'query',
814                  'type' => 'boolean',
815                ],
816                'iCalUID' => [
817                  'location' => 'query',
818                  'type' => 'string',
819                ],
820                'maxAttendees' => [
821                  'location' => 'query',
822                  'type' => 'integer',
823                ],
824                'maxResults' => [
825                  'location' => 'query',
826                  'type' => 'integer',
827                ],
828                'orderBy' => [
829                  'location' => 'query',
830                  'type' => 'string',
831                ],
832                'pageToken' => [
833                  'location' => 'query',
834                  'type' => 'string',
835                ],
836                'privateExtendedProperty' => [
837                  'location' => 'query',
838                  'type' => 'string',
839                  'repeated' => true,
840                ],
841                'q' => [
842                  'location' => 'query',
843                  'type' => 'string',
844                ],
845                'sharedExtendedProperty' => [
846                  'location' => 'query',
847                  'type' => 'string',
848                  'repeated' => true,
849                ],
850                'showDeleted' => [
851                  'location' => 'query',
852                  'type' => 'boolean',
853                ],
854                'showHiddenInvitations' => [
855                  'location' => 'query',
856                  'type' => 'boolean',
857                ],
858                'singleEvents' => [
859                  'location' => 'query',
860                  'type' => 'boolean',
861                ],
862                'syncToken' => [
863                  'location' => 'query',
864                  'type' => 'string',
865                ],
866                'timeMax' => [
867                  'location' => 'query',
868                  'type' => 'string',
869                ],
870                'timeMin' => [
871                  'location' => 'query',
872                  'type' => 'string',
873                ],
874                'timeZone' => [
875                  'location' => 'query',
876                  'type' => 'string',
877                ],
878                'updatedMin' => [
879                  'location' => 'query',
880                  'type' => 'string',
881                ],
882              ],
883            ],
884          ]
885        ]
886    );
887    $this->freebusy = new Calendar\Resource\Freebusy(
888        $this,
889        $this->serviceName,
890        'freebusy',
891        [
892          'methods' => [
893            'query' => [
894              'path' => 'freeBusy',
895              'httpMethod' => 'POST',
896              'parameters' => [],
897            ],
898          ]
899        ]
900    );
901    $this->settings = new Calendar\Resource\Settings(
902        $this,
903        $this->serviceName,
904        'settings',
905        [
906          'methods' => [
907            'get' => [
908              'path' => 'users/me/settings/{setting}',
909              'httpMethod' => 'GET',
910              'parameters' => [
911                'setting' => [
912                  'location' => 'path',
913                  'type' => 'string',
914                  'required' => true,
915                ],
916              ],
917            ],'list' => [
918              'path' => 'users/me/settings',
919              'httpMethod' => 'GET',
920              'parameters' => [
921                'maxResults' => [
922                  'location' => 'query',
923                  'type' => 'integer',
924                ],
925                'pageToken' => [
926                  'location' => 'query',
927                  'type' => 'string',
928                ],
929                'syncToken' => [
930                  'location' => 'query',
931                  'type' => 'string',
932                ],
933              ],
934            ],'watch' => [
935              'path' => 'users/me/settings/watch',
936              'httpMethod' => 'POST',
937              'parameters' => [
938                'maxResults' => [
939                  'location' => 'query',
940                  'type' => 'integer',
941                ],
942                'pageToken' => [
943                  'location' => 'query',
944                  'type' => 'string',
945                ],
946                'syncToken' => [
947                  'location' => 'query',
948                  'type' => 'string',
949                ],
950              ],
951            ],
952          ]
953        ]
954    );
955  }
956}
957
958// Adding a class alias for backwards compatibility with the previous class name.
959class_alias(Calendar::class, 'Google_Service_Calendar');
960