Calendar.php 33 KB

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