lemboy-google-api-client 0.9.26

Sign up to get free protection for your applications and to get access to all the features.
Files changed (555) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +20 -0
  3. data/.rspec +2 -0
  4. data/.rubocop.yml +7 -0
  5. data/.rubocop_todo.yml +63 -0
  6. data/.travis.yml +27 -0
  7. data/.yardopts +12 -0
  8. data/CHANGELOG.md +309 -0
  9. data/CONTRIBUTING.md +31 -0
  10. data/Gemfile +53 -0
  11. data/LICENSE +202 -0
  12. data/MIGRATING.md +171 -0
  13. data/README.md +327 -0
  14. data/Rakefile +2 -0
  15. data/api_names.yaml +36215 -0
  16. data/bin/generate-api +109 -0
  17. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +35 -0
  18. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +298 -0
  19. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +122 -0
  20. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +458 -0
  21. data/generated/google/apis/adexchangebuyer_v1_3.rb +35 -0
  22. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +1335 -0
  23. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +446 -0
  24. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +872 -0
  25. data/generated/google/apis/adexchangebuyer_v1_4.rb +35 -0
  26. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +3550 -0
  27. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +1421 -0
  28. data/generated/google/apis/adexchangebuyer_v1_4/service.rb +1538 -0
  29. data/generated/google/apis/adexchangeseller_v2_0.rb +37 -0
  30. data/generated/google/apis/adexchangeseller_v2_0/classes.rb +792 -0
  31. data/generated/google/apis/adexchangeseller_v2_0/representations.rb +347 -0
  32. data/generated/google/apis/adexchangeseller_v2_0/service.rb +667 -0
  33. data/generated/google/apis/admin_datatransfer_v1.rb +37 -0
  34. data/generated/google/apis/admin_datatransfer_v1/classes.rb +267 -0
  35. data/generated/google/apis/admin_datatransfer_v1/representations.rb +130 -0
  36. data/generated/google/apis/admin_datatransfer_v1/service.rb +262 -0
  37. data/generated/google/apis/admin_directory_v1.rb +113 -0
  38. data/generated/google/apis/admin_directory_v1/classes.rb +3241 -0
  39. data/generated/google/apis/admin_directory_v1/representations.rb +1172 -0
  40. data/generated/google/apis/admin_directory_v1/service.rb +3857 -0
  41. data/generated/google/apis/admin_reports_v1.rb +38 -0
  42. data/generated/google/apis/admin_reports_v1/classes.rb +582 -0
  43. data/generated/google/apis/admin_reports_v1/representations.rb +257 -0
  44. data/generated/google/apis/admin_reports_v1/service.rb +336 -0
  45. data/generated/google/apis/adsense_v1_4.rb +37 -0
  46. data/generated/google/apis/adsense_v1_4/classes.rb +1280 -0
  47. data/generated/google/apis/adsense_v1_4/representations.rb +555 -0
  48. data/generated/google/apis/adsense_v1_4/service.rb +1713 -0
  49. data/generated/google/apis/adsensehost_v4_1.rb +35 -0
  50. data/generated/google/apis/adsensehost_v4_1/classes.rb +836 -0
  51. data/generated/google/apis/adsensehost_v4_1/representations.rb +367 -0
  52. data/generated/google/apis/adsensehost_v4_1/service.rb +1164 -0
  53. data/generated/google/apis/analytics_v3.rb +49 -0
  54. data/generated/google/apis/analytics_v3/classes.rb +5536 -0
  55. data/generated/google/apis/analytics_v3/representations.rb +1992 -0
  56. data/generated/google/apis/analytics_v3/service.rb +3785 -0
  57. data/generated/google/apis/analyticsreporting_v4.rb +37 -0
  58. data/generated/google/apis/analyticsreporting_v4/classes.rb +1420 -0
  59. data/generated/google/apis/analyticsreporting_v4/representations.rb +598 -0
  60. data/generated/google/apis/analyticsreporting_v4/service.rb +88 -0
  61. data/generated/google/apis/androidenterprise_v1.rb +34 -0
  62. data/generated/google/apis/androidenterprise_v1/classes.rb +2250 -0
  63. data/generated/google/apis/androidenterprise_v1/representations.rb +970 -0
  64. data/generated/google/apis/androidenterprise_v1/service.rb +3267 -0
  65. data/generated/google/apis/androidpublisher_v2.rb +34 -0
  66. data/generated/google/apis/androidpublisher_v2/classes.rb +1941 -0
  67. data/generated/google/apis/androidpublisher_v2/representations.rb +975 -0
  68. data/generated/google/apis/androidpublisher_v2/service.rb +2572 -0
  69. data/generated/google/apis/appengine_v1beta4.rb +35 -0
  70. data/generated/google/apis/appengine_v1beta4/classes.rb +1585 -0
  71. data/generated/google/apis/appengine_v1beta4/representations.rb +542 -0
  72. data/generated/google/apis/appengine_v1beta4/service.rb +477 -0
  73. data/generated/google/apis/appengine_v1beta5.rb +40 -0
  74. data/generated/google/apis/appengine_v1beta5/classes.rb +1984 -0
  75. data/generated/google/apis/appengine_v1beta5/representations.rb +765 -0
  76. data/generated/google/apis/appengine_v1beta5/service.rb +864 -0
  77. data/generated/google/apis/appsactivity_v1.rb +46 -0
  78. data/generated/google/apis/appsactivity_v1/classes.rb +415 -0
  79. data/generated/google/apis/appsactivity_v1/representations.rb +209 -0
  80. data/generated/google/apis/appsactivity_v1/service.rb +128 -0
  81. data/generated/google/apis/appstate_v1.rb +34 -0
  82. data/generated/google/apis/appstate_v1/classes.rb +154 -0
  83. data/generated/google/apis/appstate_v1/representations.rb +87 -0
  84. data/generated/google/apis/appstate_v1/service.rb +260 -0
  85. data/generated/google/apis/autoscaler_v1beta2.rb +38 -0
  86. data/generated/google/apis/autoscaler_v1beta2/classes.rb +710 -0
  87. data/generated/google/apis/autoscaler_v1beta2/representations.rb +296 -0
  88. data/generated/google/apis/autoscaler_v1beta2/service.rb +478 -0
  89. data/generated/google/apis/bigquery_v2.rb +52 -0
  90. data/generated/google/apis/bigquery_v2/classes.rb +3081 -0
  91. data/generated/google/apis/bigquery_v2/representations.rb +1094 -0
  92. data/generated/google/apis/bigquery_v2/service.rb +988 -0
  93. data/generated/google/apis/blogger_v3.rb +37 -0
  94. data/generated/google/apis/blogger_v3/classes.rb +1354 -0
  95. data/generated/google/apis/blogger_v3/representations.rb +632 -0
  96. data/generated/google/apis/blogger_v3/service.rb +1587 -0
  97. data/generated/google/apis/books_v1.rb +34 -0
  98. data/generated/google/apis/books_v1/classes.rb +4160 -0
  99. data/generated/google/apis/books_v1/representations.rb +1799 -0
  100. data/generated/google/apis/books_v1/service.rb +2300 -0
  101. data/generated/google/apis/calendar_v3.rb +37 -0
  102. data/generated/google/apis/calendar_v3/classes.rb +1742 -0
  103. data/generated/google/apis/calendar_v3/representations.rb +631 -0
  104. data/generated/google/apis/calendar_v3/service.rb +1968 -0
  105. data/generated/google/apis/civicinfo_v2.rb +32 -0
  106. data/generated/google/apis/civicinfo_v2/classes.rb +1499 -0
  107. data/generated/google/apis/civicinfo_v2/representations.rb +572 -0
  108. data/generated/google/apis/civicinfo_v2/service.rb +300 -0
  109. data/generated/google/apis/classroom_v1.rb +70 -0
  110. data/generated/google/apis/classroom_v1/classes.rb +1572 -0
  111. data/generated/google/apis/classroom_v1/representations.rb +729 -0
  112. data/generated/google/apis/classroom_v1/service.rb +1945 -0
  113. data/generated/google/apis/classroom_v1beta1.rb +49 -0
  114. data/generated/google/apis/classroom_v1beta1/classes.rb +447 -0
  115. data/generated/google/apis/classroom_v1beta1/representations.rb +190 -0
  116. data/generated/google/apis/classroom_v1beta1/service.rb +791 -0
  117. data/generated/google/apis/cloudbilling_v1.rb +35 -0
  118. data/generated/google/apis/cloudbilling_v1/classes.rb +169 -0
  119. data/generated/google/apis/cloudbilling_v1/representations.rb +87 -0
  120. data/generated/google/apis/cloudbilling_v1/service.rb +258 -0
  121. data/generated/google/apis/cloudbuild_v1.rb +34 -0
  122. data/generated/google/apis/cloudbuild_v1/classes.rb +919 -0
  123. data/generated/google/apis/cloudbuild_v1/representations.rb +364 -0
  124. data/generated/google/apis/cloudbuild_v1/service.rb +492 -0
  125. data/generated/google/apis/clouddebugger_v2.rb +38 -0
  126. data/generated/google/apis/clouddebugger_v2/classes.rb +1081 -0
  127. data/generated/google/apis/clouddebugger_v2/representations.rb +465 -0
  128. data/generated/google/apis/clouddebugger_v2/service.rb +396 -0
  129. data/generated/google/apis/cloudkms_v1beta1.rb +34 -0
  130. data/generated/google/apis/cloudkms_v1beta1/classes.rb +999 -0
  131. data/generated/google/apis/cloudkms_v1beta1/representations.rb +448 -0
  132. data/generated/google/apis/cloudkms_v1beta1/service.rb +932 -0
  133. data/generated/google/apis/cloudlatencytest_v2.rb +34 -0
  134. data/generated/google/apis/cloudlatencytest_v2/classes.rb +195 -0
  135. data/generated/google/apis/cloudlatencytest_v2/representations.rb +127 -0
  136. data/generated/google/apis/cloudlatencytest_v2/service.rb +135 -0
  137. data/generated/google/apis/cloudmonitoring_v2beta2.rb +37 -0
  138. data/generated/google/apis/cloudmonitoring_v2beta2/classes.rb +679 -0
  139. data/generated/google/apis/cloudmonitoring_v2beta2/representations.rb +353 -0
  140. data/generated/google/apis/cloudmonitoring_v2beta2/service.rb +452 -0
  141. data/generated/google/apis/cloudresourcemanager_v1.rb +38 -0
  142. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +886 -0
  143. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +359 -0
  144. data/generated/google/apis/cloudresourcemanager_v1/service.rb +686 -0
  145. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +38 -0
  146. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +682 -0
  147. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +312 -0
  148. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +710 -0
  149. data/generated/google/apis/cloudtrace_v1.rb +43 -0
  150. data/generated/google/apis/cloudtrace_v1/classes.rb +188 -0
  151. data/generated/google/apis/cloudtrace_v1/representations.rb +102 -0
  152. data/generated/google/apis/cloudtrace_v1/service.rb +192 -0
  153. data/generated/google/apis/clouduseraccounts_beta.rb +44 -0
  154. data/generated/google/apis/clouduseraccounts_beta/classes.rb +845 -0
  155. data/generated/google/apis/clouduseraccounts_beta/representations.rb +352 -0
  156. data/generated/google/apis/clouduseraccounts_beta/service.rb +907 -0
  157. data/generated/google/apis/compute_beta.rb +49 -0
  158. data/generated/google/apis/compute_beta/classes.rb +12261 -0
  159. data/generated/google/apis/compute_beta/representations.rb +4615 -0
  160. data/generated/google/apis/compute_beta/service.rb +15330 -0
  161. data/generated/google/apis/compute_v1.rb +49 -0
  162. data/generated/google/apis/compute_v1/classes.rb +11179 -0
  163. data/generated/google/apis/compute_v1/representations.rb +4203 -0
  164. data/generated/google/apis/compute_v1/service.rb +12937 -0
  165. data/generated/google/apis/container_v1.rb +35 -0
  166. data/generated/google/apis/container_v1/classes.rb +1040 -0
  167. data/generated/google/apis/container_v1/representations.rb +415 -0
  168. data/generated/google/apis/container_v1/service.rb +659 -0
  169. data/generated/google/apis/container_v1beta1.rb +35 -0
  170. data/generated/google/apis/container_v1beta1/classes.rb +466 -0
  171. data/generated/google/apis/container_v1beta1/representations.rb +177 -0
  172. data/generated/google/apis/container_v1beta1/service.rb +394 -0
  173. data/generated/google/apis/content_v2.rb +35 -0
  174. data/generated/google/apis/content_v2/classes.rb +6887 -0
  175. data/generated/google/apis/content_v2/representations.rb +2963 -0
  176. data/generated/google/apis/content_v2/service.rb +2653 -0
  177. data/generated/google/apis/coordinate_v1.rb +37 -0
  178. data/generated/google/apis/coordinate_v1/classes.rb +669 -0
  179. data/generated/google/apis/coordinate_v1/representations.rb +321 -0
  180. data/generated/google/apis/coordinate_v1/service.rb +678 -0
  181. data/generated/google/apis/customsearch_v1.rb +31 -0
  182. data/generated/google/apis/customsearch_v1/classes.rb +771 -0
  183. data/generated/google/apis/customsearch_v1/representations.rb +302 -0
  184. data/generated/google/apis/customsearch_v1/service.rb +207 -0
  185. data/generated/google/apis/dataflow_v1b3.rb +37 -0
  186. data/generated/google/apis/dataflow_v1b3/classes.rb +4225 -0
  187. data/generated/google/apis/dataflow_v1b3/representations.rb +1809 -0
  188. data/generated/google/apis/dataflow_v1b3/service.rb +874 -0
  189. data/generated/google/apis/dataproc_v1.rb +34 -0
  190. data/generated/google/apis/dataproc_v1/classes.rb +1716 -0
  191. data/generated/google/apis/dataproc_v1/representations.rb +678 -0
  192. data/generated/google/apis/dataproc_v1/service.rb +670 -0
  193. data/generated/google/apis/datastore_v1.rb +38 -0
  194. data/generated/google/apis/datastore_v1/classes.rb +1289 -0
  195. data/generated/google/apis/datastore_v1/representations.rb +572 -0
  196. data/generated/google/apis/datastore_v1/service.rb +259 -0
  197. data/generated/google/apis/datastore_v1beta2.rb +40 -0
  198. data/generated/google/apis/datastore_v1beta2/classes.rb +1186 -0
  199. data/generated/google/apis/datastore_v1beta2/representations.rb +594 -0
  200. data/generated/google/apis/datastore_v1beta2/service.rb +294 -0
  201. data/generated/google/apis/datastore_v1beta3.rb +38 -0
  202. data/generated/google/apis/datastore_v1beta3/classes.rb +1284 -0
  203. data/generated/google/apis/datastore_v1beta3/representations.rb +572 -0
  204. data/generated/google/apis/datastore_v1beta3/service.rb +259 -0
  205. data/generated/google/apis/deploymentmanager_v2.rb +43 -0
  206. data/generated/google/apis/deploymentmanager_v2/classes.rb +1582 -0
  207. data/generated/google/apis/deploymentmanager_v2/representations.rb +686 -0
  208. data/generated/google/apis/deploymentmanager_v2/service.rb +1026 -0
  209. data/generated/google/apis/deploymentmanager_v2beta2.rb +44 -0
  210. data/generated/google/apis/deploymentmanager_v2beta2/classes.rb +843 -0
  211. data/generated/google/apis/deploymentmanager_v2beta2/representations.rb +306 -0
  212. data/generated/google/apis/deploymentmanager_v2beta2/service.rb +689 -0
  213. data/generated/google/apis/dfareporting_v2_1.rb +37 -0
  214. data/generated/google/apis/dfareporting_v2_1/classes.rb +10770 -0
  215. data/generated/google/apis/dfareporting_v2_1/representations.rb +3438 -0
  216. data/generated/google/apis/dfareporting_v2_1/service.rb +8585 -0
  217. data/generated/google/apis/dfareporting_v2_3.rb +37 -0
  218. data/generated/google/apis/dfareporting_v2_3/classes.rb +10839 -0
  219. data/generated/google/apis/dfareporting_v2_3/representations.rb +3829 -0
  220. data/generated/google/apis/dfareporting_v2_3/service.rb +8581 -0
  221. data/generated/google/apis/dfareporting_v2_5.rb +40 -0
  222. data/generated/google/apis/dfareporting_v2_5/classes.rb +11225 -0
  223. data/generated/google/apis/dfareporting_v2_5/representations.rb +3982 -0
  224. data/generated/google/apis/dfareporting_v2_5/service.rb +8755 -0
  225. data/generated/google/apis/dfareporting_v2_6.rb +40 -0
  226. data/generated/google/apis/dfareporting_v2_6/classes.rb +11586 -0
  227. data/generated/google/apis/dfareporting_v2_6/representations.rb +4119 -0
  228. data/generated/google/apis/dfareporting_v2_6/service.rb +9025 -0
  229. data/generated/google/apis/dfareporting_v2_7.rb +40 -0
  230. data/generated/google/apis/dfareporting_v2_7/classes.rb +11876 -0
  231. data/generated/google/apis/dfareporting_v2_7/representations.rb +4243 -0
  232. data/generated/google/apis/dfareporting_v2_7/service.rb +9095 -0
  233. data/generated/google/apis/discovery_v1.rb +32 -0
  234. data/generated/google/apis/discovery_v1/classes.rb +961 -0
  235. data/generated/google/apis/discovery_v1/representations.rb +397 -0
  236. data/generated/google/apis/discovery_v1/service.rb +142 -0
  237. data/generated/google/apis/dns_v1.rb +43 -0
  238. data/generated/google/apis/dns_v1/classes.rb +406 -0
  239. data/generated/google/apis/dns_v1/representations.rb +167 -0
  240. data/generated/google/apis/dns_v1/service.rb +453 -0
  241. data/generated/google/apis/dns_v2beta1.rb +43 -0
  242. data/generated/google/apis/dns_v2beta1/classes.rb +915 -0
  243. data/generated/google/apis/dns_v2beta1/representations.rb +368 -0
  244. data/generated/google/apis/dns_v2beta1/service.rb +768 -0
  245. data/generated/google/apis/doubleclickbidmanager_v1.rb +31 -0
  246. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +795 -0
  247. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +368 -0
  248. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +376 -0
  249. data/generated/google/apis/doubleclicksearch_v2.rb +35 -0
  250. data/generated/google/apis/doubleclicksearch_v2/classes.rb +960 -0
  251. data/generated/google/apis/doubleclicksearch_v2/representations.rb +350 -0
  252. data/generated/google/apis/doubleclicksearch_v2/service.rb +480 -0
  253. data/generated/google/apis/drive_v2.rb +59 -0
  254. data/generated/google/apis/drive_v2/classes.rb +2633 -0
  255. data/generated/google/apis/drive_v2/representations.rb +885 -0
  256. data/generated/google/apis/drive_v2/service.rb +2754 -0
  257. data/generated/google/apis/drive_v3.rb +56 -0
  258. data/generated/google/apis/drive_v3/classes.rb +1611 -0
  259. data/generated/google/apis/drive_v3/representations.rb +555 -0
  260. data/generated/google/apis/drive_v3/service.rb +1553 -0
  261. data/generated/google/apis/fitness_v1.rb +85 -0
  262. data/generated/google/apis/fitness_v1/classes.rb +943 -0
  263. data/generated/google/apis/fitness_v1/representations.rb +380 -0
  264. data/generated/google/apis/fitness_v1/service.rb +674 -0
  265. data/generated/google/apis/fusiontables_v2.rb +37 -0
  266. data/generated/google/apis/fusiontables_v2/classes.rb +1049 -0
  267. data/generated/google/apis/fusiontables_v2/representations.rb +457 -0
  268. data/generated/google/apis/fusiontables_v2/service.rb +1463 -0
  269. data/generated/google/apis/games_configuration_v1configuration.rb +34 -0
  270. data/generated/google/apis/games_configuration_v1configuration/classes.rb +506 -0
  271. data/generated/google/apis/games_configuration_v1configuration/representations.rb +228 -0
  272. data/generated/google/apis/games_configuration_v1configuration/service.rb +565 -0
  273. data/generated/google/apis/games_management_v1management.rb +37 -0
  274. data/generated/google/apis/games_management_v1management/classes.rb +567 -0
  275. data/generated/google/apis/games_management_v1management/representations.rb +278 -0
  276. data/generated/google/apis/games_management_v1management/service.rb +994 -0
  277. data/generated/google/apis/games_v1.rb +40 -0
  278. data/generated/google/apis/games_v1/classes.rb +4667 -0
  279. data/generated/google/apis/games_v1/representations.rb +1800 -0
  280. data/generated/google/apis/games_v1/service.rb +2449 -0
  281. data/generated/google/apis/gan_v1beta1.rb +31 -0
  282. data/generated/google/apis/gan_v1beta1/classes.rb +1428 -0
  283. data/generated/google/apis/gan_v1beta1/representations.rb +462 -0
  284. data/generated/google/apis/gan_v1beta1/service.rb +682 -0
  285. data/generated/google/apis/genomics_v1.rb +46 -0
  286. data/generated/google/apis/genomics_v1/classes.rb +3477 -0
  287. data/generated/google/apis/genomics_v1/representations.rb +1284 -0
  288. data/generated/google/apis/genomics_v1/service.rb +2207 -0
  289. data/generated/google/apis/genomics_v1beta2.rb +46 -0
  290. data/generated/google/apis/genomics_v1beta2/classes.rb +3288 -0
  291. data/generated/google/apis/genomics_v1beta2/representations.rb +1194 -0
  292. data/generated/google/apis/genomics_v1beta2/service.rb +2392 -0
  293. data/generated/google/apis/gmail_v1.rb +61 -0
  294. data/generated/google/apis/gmail_v1/classes.rb +1382 -0
  295. data/generated/google/apis/gmail_v1/representations.rb +624 -0
  296. data/generated/google/apis/gmail_v1/service.rb +2447 -0
  297. data/generated/google/apis/groupsmigration_v1.rb +34 -0
  298. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  299. data/generated/google/apis/groupsmigration_v1/representations.rb +40 -0
  300. data/generated/google/apis/groupsmigration_v1/service.rb +110 -0
  301. data/generated/google/apis/groupssettings_v1.rb +34 -0
  302. data/generated/google/apis/groupssettings_v1/classes.rb +240 -0
  303. data/generated/google/apis/groupssettings_v1/representations.rb +69 -0
  304. data/generated/google/apis/groupssettings_v1/service.rb +179 -0
  305. data/generated/google/apis/iam_v1.rb +36 -0
  306. data/generated/google/apis/iam_v1/classes.rb +640 -0
  307. data/generated/google/apis/iam_v1/representations.rb +316 -0
  308. data/generated/google/apis/iam_v1/service.rb +554 -0
  309. data/generated/google/apis/identitytoolkit_v3.rb +37 -0
  310. data/generated/google/apis/identitytoolkit_v3/classes.rb +2182 -0
  311. data/generated/google/apis/identitytoolkit_v3/representations.rb +742 -0
  312. data/generated/google/apis/identitytoolkit_v3/service.rb +657 -0
  313. data/generated/google/apis/kgsearch_v1.rb +31 -0
  314. data/generated/google/apis/kgsearch_v1/classes.rb +59 -0
  315. data/generated/google/apis/kgsearch_v1/representations.rb +41 -0
  316. data/generated/google/apis/kgsearch_v1/service.rb +113 -0
  317. data/generated/google/apis/language_v1beta1.rb +36 -0
  318. data/generated/google/apis/language_v1beta1/classes.rb +757 -0
  319. data/generated/google/apis/language_v1beta1/representations.rb +339 -0
  320. data/generated/google/apis/language_v1beta1/service.rb +184 -0
  321. data/generated/google/apis/licensing_v1.rb +34 -0
  322. data/generated/google/apis/licensing_v1/classes.rb +132 -0
  323. data/generated/google/apis/licensing_v1/representations.rb +74 -0
  324. data/generated/google/apis/licensing_v1/service.rb +369 -0
  325. data/generated/google/apis/logging_v1beta3.rb +47 -0
  326. data/generated/google/apis/logging_v1beta3/classes.rb +1079 -0
  327. data/generated/google/apis/logging_v1beta3/representations.rb +366 -0
  328. data/generated/google/apis/logging_v1beta3/service.rb +1001 -0
  329. data/generated/google/apis/logging_v2beta1.rb +46 -0
  330. data/generated/google/apis/logging_v2beta1/classes.rb +1254 -0
  331. data/generated/google/apis/logging_v2beta1/representations.rb +421 -0
  332. data/generated/google/apis/logging_v2beta1/service.rb +788 -0
  333. data/generated/google/apis/manager_v1beta2.rb +53 -0
  334. data/generated/google/apis/manager_v1beta2/classes.rb +1287 -0
  335. data/generated/google/apis/manager_v1beta2/representations.rb +606 -0
  336. data/generated/google/apis/manager_v1beta2/service.rb +372 -0
  337. data/generated/google/apis/manufacturers_v1.rb +34 -0
  338. data/generated/google/apis/manufacturers_v1/classes.rb +258 -0
  339. data/generated/google/apis/manufacturers_v1/representations.rb +103 -0
  340. data/generated/google/apis/manufacturers_v1/service.rb +138 -0
  341. data/generated/google/apis/mirror_v1.rb +37 -0
  342. data/generated/google/apis/mirror_v1/classes.rb +1072 -0
  343. data/generated/google/apis/mirror_v1/representations.rb +390 -0
  344. data/generated/google/apis/mirror_v1/service.rb +977 -0
  345. data/generated/google/apis/monitoring_v3.rb +45 -0
  346. data/generated/google/apis/monitoring_v3/classes.rb +1335 -0
  347. data/generated/google/apis/monitoring_v3/representations.rb +516 -0
  348. data/generated/google/apis/monitoring_v3/service.rb +706 -0
  349. data/generated/google/apis/mybusiness_v3.rb +32 -0
  350. data/generated/google/apis/mybusiness_v3/classes.rb +1864 -0
  351. data/generated/google/apis/mybusiness_v3/representations.rb +741 -0
  352. data/generated/google/apis/mybusiness_v3/service.rb +960 -0
  353. data/generated/google/apis/oauth2_v2.rb +43 -0
  354. data/generated/google/apis/oauth2_v2/classes.rb +245 -0
  355. data/generated/google/apis/oauth2_v2/representations.rb +102 -0
  356. data/generated/google/apis/oauth2_v2/service.rb +199 -0
  357. data/generated/google/apis/pagespeedonline_v2.rb +32 -0
  358. data/generated/google/apis/pagespeedonline_v2/classes.rb +614 -0
  359. data/generated/google/apis/pagespeedonline_v2/representations.rb +272 -0
  360. data/generated/google/apis/pagespeedonline_v2/service.rb +119 -0
  361. data/generated/google/apis/partners_v2.rb +32 -0
  362. data/generated/google/apis/partners_v2/classes.rb +942 -0
  363. data/generated/google/apis/partners_v2/representations.rb +454 -0
  364. data/generated/google/apis/partners_v2/service.rb +400 -0
  365. data/generated/google/apis/people_v1.rb +59 -0
  366. data/generated/google/apis/people_v1/classes.rb +1521 -0
  367. data/generated/google/apis/people_v1/representations.rb +663 -0
  368. data/generated/google/apis/people_v1/service.rb +189 -0
  369. data/generated/google/apis/plus_domains_v1.rb +61 -0
  370. data/generated/google/apis/plus_domains_v1/classes.rb +2609 -0
  371. data/generated/google/apis/plus_domains_v1/representations.rb +1111 -0
  372. data/generated/google/apis/plus_domains_v1/service.rb +904 -0
  373. data/generated/google/apis/plus_v1.rb +43 -0
  374. data/generated/google/apis/plus_v1/classes.rb +2094 -0
  375. data/generated/google/apis/plus_v1/representations.rb +907 -0
  376. data/generated/google/apis/plus_v1/service.rb +470 -0
  377. data/generated/google/apis/prediction_v1_6.rb +47 -0
  378. data/generated/google/apis/prediction_v1_6/classes.rb +751 -0
  379. data/generated/google/apis/prediction_v1_6/representations.rb +369 -0
  380. data/generated/google/apis/prediction_v1_6/service.rb +380 -0
  381. data/generated/google/apis/proximitybeacon_v1beta1.rb +34 -0
  382. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +786 -0
  383. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +347 -0
  384. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +806 -0
  385. data/generated/google/apis/pubsub_v1.rb +37 -0
  386. data/generated/google/apis/pubsub_v1/classes.rb +676 -0
  387. data/generated/google/apis/pubsub_v1/representations.rb +323 -0
  388. data/generated/google/apis/pubsub_v1/service.rb +900 -0
  389. data/generated/google/apis/pubsub_v1beta2.rb +37 -0
  390. data/generated/google/apis/pubsub_v1beta2/classes.rb +620 -0
  391. data/generated/google/apis/pubsub_v1beta2/representations.rb +282 -0
  392. data/generated/google/apis/pubsub_v1beta2/service.rb +774 -0
  393. data/generated/google/apis/qpx_express_v1.rb +31 -0
  394. data/generated/google/apis/qpx_express_v1/classes.rb +1274 -0
  395. data/generated/google/apis/qpx_express_v1/representations.rb +473 -0
  396. data/generated/google/apis/qpx_express_v1/service.rb +100 -0
  397. data/generated/google/apis/replicapool_v1beta2.rb +44 -0
  398. data/generated/google/apis/replicapool_v1beta2/classes.rb +631 -0
  399. data/generated/google/apis/replicapool_v1beta2/representations.rb +264 -0
  400. data/generated/google/apis/replicapool_v1beta2/service.rb +608 -0
  401. data/generated/google/apis/replicapoolupdater_v1beta1.rb +45 -0
  402. data/generated/google/apis/replicapoolupdater_v1beta1/classes.rb +733 -0
  403. data/generated/google/apis/replicapoolupdater_v1beta1/representations.rb +294 -0
  404. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +509 -0
  405. data/generated/google/apis/reseller_v1.rb +37 -0
  406. data/generated/google/apis/reseller_v1/classes.rb +540 -0
  407. data/generated/google/apis/reseller_v1/representations.rb +225 -0
  408. data/generated/google/apis/reseller_v1/service.rb +623 -0
  409. data/generated/google/apis/resourceviews_v1beta2.rb +50 -0
  410. data/generated/google/apis/resourceviews_v1beta2/classes.rb +660 -0
  411. data/generated/google/apis/resourceviews_v1beta2/representations.rb +301 -0
  412. data/generated/google/apis/resourceviews_v1beta2/service.rb +563 -0
  413. data/generated/google/apis/script_v1.rb +64 -0
  414. data/generated/google/apis/script_v1/classes.rb +265 -0
  415. data/generated/google/apis/script_v1/representations.rb +119 -0
  416. data/generated/google/apis/script_v1/service.rb +98 -0
  417. data/generated/google/apis/sheets_v4.rb +43 -0
  418. data/generated/google/apis/sheets_v4/classes.rb +6368 -0
  419. data/generated/google/apis/sheets_v4/representations.rb +2289 -0
  420. data/generated/google/apis/sheets_v4/service.rb +569 -0
  421. data/generated/google/apis/site_verification_v1.rb +37 -0
  422. data/generated/google/apis/site_verification_v1/classes.rb +185 -0
  423. data/generated/google/apis/site_verification_v1/representations.rb +113 -0
  424. data/generated/google/apis/site_verification_v1/service.rb +315 -0
  425. data/generated/google/apis/slides_v1.rb +49 -0
  426. data/generated/google/apis/slides_v1/classes.rb +4044 -0
  427. data/generated/google/apis/slides_v1/representations.rb +1765 -0
  428. data/generated/google/apis/slides_v1/service.rb +202 -0
  429. data/generated/google/apis/speech_v1beta1.rb +34 -0
  430. data/generated/google/apis/speech_v1beta1/classes.rb +513 -0
  431. data/generated/google/apis/speech_v1beta1/representations.rb +218 -0
  432. data/generated/google/apis/speech_v1beta1/service.rb +273 -0
  433. data/generated/google/apis/sqladmin_v1beta4.rb +38 -0
  434. data/generated/google/apis/sqladmin_v1beta4/classes.rb +2142 -0
  435. data/generated/google/apis/sqladmin_v1beta4/representations.rb +893 -0
  436. data/generated/google/apis/sqladmin_v1beta4/service.rb +1709 -0
  437. data/generated/google/apis/storage_v1.rb +46 -0
  438. data/generated/google/apis/storage_v1/classes.rb +1255 -0
  439. data/generated/google/apis/storage_v1/representations.rb +502 -0
  440. data/generated/google/apis/storage_v1/service.rb +1906 -0
  441. data/generated/google/apis/storagetransfer_v1.rb +35 -0
  442. data/generated/google/apis/storagetransfer_v1/classes.rb +1046 -0
  443. data/generated/google/apis/storagetransfer_v1/representations.rb +418 -0
  444. data/generated/google/apis/storagetransfer_v1/service.rb +473 -0
  445. data/generated/google/apis/tagmanager_v1.rb +52 -0
  446. data/generated/google/apis/tagmanager_v1/classes.rb +1494 -0
  447. data/generated/google/apis/tagmanager_v1/representations.rb +611 -0
  448. data/generated/google/apis/tagmanager_v1/service.rb +2119 -0
  449. data/generated/google/apis/taskqueue_v1beta2.rb +37 -0
  450. data/generated/google/apis/taskqueue_v1beta2/classes.rb +254 -0
  451. data/generated/google/apis/taskqueue_v1beta2/representations.rb +126 -0
  452. data/generated/google/apis/taskqueue_v1beta2/service.rb +408 -0
  453. data/generated/google/apis/tasks_v1.rb +37 -0
  454. data/generated/google/apis/tasks_v1/classes.rb +296 -0
  455. data/generated/google/apis/tasks_v1/representations.rb +125 -0
  456. data/generated/google/apis/tasks_v1/service.rb +643 -0
  457. data/generated/google/apis/translate_v2.rb +31 -0
  458. data/generated/google/apis/translate_v2/classes.rb +168 -0
  459. data/generated/google/apis/translate_v2/representations.rb +121 -0
  460. data/generated/google/apis/translate_v2/service.rb +182 -0
  461. data/generated/google/apis/urlshortener_v1.rb +34 -0
  462. data/generated/google/apis/urlshortener_v1/classes.rb +246 -0
  463. data/generated/google/apis/urlshortener_v1/representations.rb +121 -0
  464. data/generated/google/apis/urlshortener_v1/service.rb +176 -0
  465. data/generated/google/apis/vision_v1.rb +36 -0
  466. data/generated/google/apis/vision_v1/classes.rb +1267 -0
  467. data/generated/google/apis/vision_v1/representations.rb +418 -0
  468. data/generated/google/apis/vision_v1/service.rb +90 -0
  469. data/generated/google/apis/webmasters_v3.rb +37 -0
  470. data/generated/google/apis/webmasters_v3/classes.rb +570 -0
  471. data/generated/google/apis/webmasters_v3/representations.rb +283 -0
  472. data/generated/google/apis/webmasters_v3/service.rb +573 -0
  473. data/generated/google/apis/youtube_analytics_v1.rb +46 -0
  474. data/generated/google/apis/youtube_analytics_v1/classes.rb +337 -0
  475. data/generated/google/apis/youtube_analytics_v1/representations.rb +174 -0
  476. data/generated/google/apis/youtube_analytics_v1/service.rb +486 -0
  477. data/generated/google/apis/youtube_partner_v1.rb +37 -0
  478. data/generated/google/apis/youtube_partner_v1/classes.rb +3854 -0
  479. data/generated/google/apis/youtube_partner_v1/representations.rb +1537 -0
  480. data/generated/google/apis/youtube_partner_v1/service.rb +3269 -0
  481. data/generated/google/apis/youtube_v3.rb +50 -0
  482. data/generated/google/apis/youtube_v3/classes.rb +8375 -0
  483. data/generated/google/apis/youtube_v3/representations.rb +3273 -0
  484. data/generated/google/apis/youtube_v3/service.rb +4440 -0
  485. data/generated/google/apis/youtubereporting_v1.rb +38 -0
  486. data/generated/google/apis/youtubereporting_v1/classes.rb +302 -0
  487. data/generated/google/apis/youtubereporting_v1/representations.rb +149 -0
  488. data/generated/google/apis/youtubereporting_v1/service.rb +385 -0
  489. data/google-api-client.gemspec +33 -0
  490. data/lib/cacerts.pem +2183 -0
  491. data/lib/google/api_client/auth/installed_app.rb +128 -0
  492. data/lib/google/api_client/auth/key_utils.rb +94 -0
  493. data/lib/google/api_client/auth/storage.rb +104 -0
  494. data/lib/google/api_client/auth/storages/file_store.rb +57 -0
  495. data/lib/google/api_client/auth/storages/redis_store.rb +59 -0
  496. data/lib/google/api_client/client_secrets.rb +177 -0
  497. data/lib/google/apis.rb +58 -0
  498. data/lib/google/apis/core/api_command.rb +146 -0
  499. data/lib/google/apis/core/base_service.rb +401 -0
  500. data/lib/google/apis/core/batch.rb +239 -0
  501. data/lib/google/apis/core/download.rb +108 -0
  502. data/lib/google/apis/core/hashable.rb +44 -0
  503. data/lib/google/apis/core/http_client_adapter.rb +82 -0
  504. data/lib/google/apis/core/http_command.rb +332 -0
  505. data/lib/google/apis/core/json_representation.rb +145 -0
  506. data/lib/google/apis/core/logging.rb +30 -0
  507. data/lib/google/apis/core/multipart.rb +187 -0
  508. data/lib/google/apis/core/upload.rb +295 -0
  509. data/lib/google/apis/errors.rb +80 -0
  510. data/lib/google/apis/generator.rb +70 -0
  511. data/lib/google/apis/generator/annotator.rb +301 -0
  512. data/lib/google/apis/generator/helpers.rb +74 -0
  513. data/lib/google/apis/generator/model.rb +143 -0
  514. data/lib/google/apis/generator/template.rb +124 -0
  515. data/lib/google/apis/generator/templates/_class.tmpl +40 -0
  516. data/lib/google/apis/generator/templates/_method.tmpl +92 -0
  517. data/lib/google/apis/generator/templates/_representation.tmpl +51 -0
  518. data/lib/google/apis/generator/templates/_representation_stub.tmpl +17 -0
  519. data/lib/google/apis/generator/templates/_representation_type.tmpl +10 -0
  520. data/lib/google/apis/generator/templates/classes.rb.tmpl +29 -0
  521. data/lib/google/apis/generator/templates/module.rb.tmpl +40 -0
  522. data/lib/google/apis/generator/templates/representations.rb.tmpl +32 -0
  523. data/lib/google/apis/generator/templates/service.rb.tmpl +60 -0
  524. data/lib/google/apis/options.rb +85 -0
  525. data/lib/google/apis/version.rb +39 -0
  526. data/rakelib/metrics.rake +22 -0
  527. data/rakelib/rubocop.rake +10 -0
  528. data/rakelib/spec.rake +11 -0
  529. data/rakelib/yard.rake +11 -0
  530. data/samples/cli/.env +4 -0
  531. data/samples/cli/Gemfile +7 -0
  532. data/samples/cli/README.md +51 -0
  533. data/samples/cli/google-api-samples +32 -0
  534. data/samples/cli/lib/base_cli.rb +95 -0
  535. data/samples/cli/lib/samples/analytics.rb +62 -0
  536. data/samples/cli/lib/samples/androidpublisher.rb +47 -0
  537. data/samples/cli/lib/samples/bigquery.rb +101 -0
  538. data/samples/cli/lib/samples/calendar.rb +83 -0
  539. data/samples/cli/lib/samples/drive.rb +82 -0
  540. data/samples/cli/lib/samples/gmail.rb +124 -0
  541. data/samples/cli/lib/samples/pubsub.rb +114 -0
  542. data/samples/cli/lib/samples/sheets.rb +61 -0
  543. data/samples/cli/lib/samples/translate.rb +44 -0
  544. data/samples/cli/lib/samples/you_tube.rb +44 -0
  545. data/samples/web/.env +2 -0
  546. data/samples/web/Gemfile +7 -0
  547. data/samples/web/README.md +44 -0
  548. data/samples/web/app.rb +120 -0
  549. data/samples/web/views/calendar.erb +34 -0
  550. data/samples/web/views/drive.erb +33 -0
  551. data/samples/web/views/home.erb +34 -0
  552. data/samples/web/views/layout.erb +40 -0
  553. data/sync.rb +71 -0
  554. data/third_party/hurley_patches.rb +103 -0
  555. metadata +735 -0
@@ -0,0 +1,37 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'google/apis/calendar_v3/service.rb'
16
+ require 'google/apis/calendar_v3/classes.rb'
17
+ require 'google/apis/calendar_v3/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Calendar API
22
+ #
23
+ # Manipulates events and other calendar data.
24
+ #
25
+ # @see https://developers.google.com/google-apps/calendar/firstapp
26
+ module CalendarV3
27
+ VERSION = 'V3'
28
+ REVISION = '20170124'
29
+
30
+ # Manage your calendars
31
+ AUTH_CALENDAR = 'https://www.googleapis.com/auth/calendar'
32
+
33
+ # View your calendars
34
+ AUTH_CALENDAR_READONLY = 'https://www.googleapis.com/auth/calendar.readonly'
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,1742 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module CalendarV3
24
+
25
+ #
26
+ class Acl
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # ETag of the collection.
30
+ # Corresponds to the JSON property `etag`
31
+ # @return [String]
32
+ attr_accessor :etag
33
+
34
+ # List of rules on the access control list.
35
+ # Corresponds to the JSON property `items`
36
+ # @return [Array<Google::Apis::CalendarV3::AclRule>]
37
+ attr_accessor :items
38
+
39
+ # Type of the collection ("calendar#acl").
40
+ # Corresponds to the JSON property `kind`
41
+ # @return [String]
42
+ attr_accessor :kind
43
+
44
+ # Token used to access the next page of this result. Omitted if no further
45
+ # results are available, in which case nextSyncToken is provided.
46
+ # Corresponds to the JSON property `nextPageToken`
47
+ # @return [String]
48
+ attr_accessor :next_page_token
49
+
50
+ # Token used at a later point in time to retrieve only the entries that have
51
+ # changed since this result was returned. Omitted if further results are
52
+ # available, in which case nextPageToken is provided.
53
+ # Corresponds to the JSON property `nextSyncToken`
54
+ # @return [String]
55
+ attr_accessor :next_sync_token
56
+
57
+ def initialize(**args)
58
+ update!(**args)
59
+ end
60
+
61
+ # Update properties of this object
62
+ def update!(**args)
63
+ @etag = args[:etag] if args.key?(:etag)
64
+ @items = args[:items] if args.key?(:items)
65
+ @kind = args[:kind] if args.key?(:kind)
66
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
67
+ @next_sync_token = args[:next_sync_token] if args.key?(:next_sync_token)
68
+ end
69
+ end
70
+
71
+ #
72
+ class AclRule
73
+ include Google::Apis::Core::Hashable
74
+
75
+ # ETag of the resource.
76
+ # Corresponds to the JSON property `etag`
77
+ # @return [String]
78
+ attr_accessor :etag
79
+
80
+ # Identifier of the ACL rule.
81
+ # Corresponds to the JSON property `id`
82
+ # @return [String]
83
+ attr_accessor :id
84
+
85
+ # Type of the resource ("calendar#aclRule").
86
+ # Corresponds to the JSON property `kind`
87
+ # @return [String]
88
+ attr_accessor :kind
89
+
90
+ # The role assigned to the scope. Possible values are:
91
+ # - "none" - Provides no access.
92
+ # - "freeBusyReader" - Provides read access to free/busy information.
93
+ # - "reader" - Provides read access to the calendar. Private events will appear
94
+ # to users with reader access, but event details will be hidden.
95
+ # - "writer" - Provides read and write access to the calendar. Private events
96
+ # will appear to users with writer access, and event details will be visible.
97
+ # - "owner" - Provides ownership of the calendar. This role has all of the
98
+ # permissions of the writer role with the additional ability to see and
99
+ # manipulate ACLs.
100
+ # Corresponds to the JSON property `role`
101
+ # @return [String]
102
+ attr_accessor :role
103
+
104
+ # The scope of the rule.
105
+ # Corresponds to the JSON property `scope`
106
+ # @return [Google::Apis::CalendarV3::AclRule::Scope]
107
+ attr_accessor :scope
108
+
109
+ def initialize(**args)
110
+ update!(**args)
111
+ end
112
+
113
+ # Update properties of this object
114
+ def update!(**args)
115
+ @etag = args[:etag] if args.key?(:etag)
116
+ @id = args[:id] if args.key?(:id)
117
+ @kind = args[:kind] if args.key?(:kind)
118
+ @role = args[:role] if args.key?(:role)
119
+ @scope = args[:scope] if args.key?(:scope)
120
+ end
121
+
122
+ # The scope of the rule.
123
+ class Scope
124
+ include Google::Apis::Core::Hashable
125
+
126
+ # The type of the scope. Possible values are:
127
+ # - "default" - The public scope. This is the default value.
128
+ # - "user" - Limits the scope to a single user.
129
+ # - "group" - Limits the scope to a group.
130
+ # - "domain" - Limits the scope to a domain. Note: The permissions granted to
131
+ # the "default", or public, scope apply to any user, authenticated or not.
132
+ # Corresponds to the JSON property `type`
133
+ # @return [String]
134
+ attr_accessor :type
135
+
136
+ # The email address of a user or group, or the name of a domain, depending on
137
+ # the scope type. Omitted for type "default".
138
+ # Corresponds to the JSON property `value`
139
+ # @return [String]
140
+ attr_accessor :value
141
+
142
+ def initialize(**args)
143
+ update!(**args)
144
+ end
145
+
146
+ # Update properties of this object
147
+ def update!(**args)
148
+ @type = args[:type] if args.key?(:type)
149
+ @value = args[:value] if args.key?(:value)
150
+ end
151
+ end
152
+ end
153
+
154
+ #
155
+ class Calendar
156
+ include Google::Apis::Core::Hashable
157
+
158
+ # Description of the calendar. Optional.
159
+ # Corresponds to the JSON property `description`
160
+ # @return [String]
161
+ attr_accessor :description
162
+
163
+ # ETag of the resource.
164
+ # Corresponds to the JSON property `etag`
165
+ # @return [String]
166
+ attr_accessor :etag
167
+
168
+ # Identifier of the calendar. To retrieve IDs call the calendarList.list()
169
+ # method.
170
+ # Corresponds to the JSON property `id`
171
+ # @return [String]
172
+ attr_accessor :id
173
+
174
+ # Type of the resource ("calendar#calendar").
175
+ # Corresponds to the JSON property `kind`
176
+ # @return [String]
177
+ attr_accessor :kind
178
+
179
+ # Geographic location of the calendar as free-form text. Optional.
180
+ # Corresponds to the JSON property `location`
181
+ # @return [String]
182
+ attr_accessor :location
183
+
184
+ # Title of the calendar.
185
+ # Corresponds to the JSON property `summary`
186
+ # @return [String]
187
+ attr_accessor :summary
188
+
189
+ # The time zone of the calendar. (Formatted as an IANA Time Zone Database name,
190
+ # e.g. "Europe/Zurich".) Optional.
191
+ # Corresponds to the JSON property `timeZone`
192
+ # @return [String]
193
+ attr_accessor :time_zone
194
+
195
+ def initialize(**args)
196
+ update!(**args)
197
+ end
198
+
199
+ # Update properties of this object
200
+ def update!(**args)
201
+ @description = args[:description] if args.key?(:description)
202
+ @etag = args[:etag] if args.key?(:etag)
203
+ @id = args[:id] if args.key?(:id)
204
+ @kind = args[:kind] if args.key?(:kind)
205
+ @location = args[:location] if args.key?(:location)
206
+ @summary = args[:summary] if args.key?(:summary)
207
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
208
+ end
209
+ end
210
+
211
+ #
212
+ class CalendarList
213
+ include Google::Apis::Core::Hashable
214
+
215
+ # ETag of the collection.
216
+ # Corresponds to the JSON property `etag`
217
+ # @return [String]
218
+ attr_accessor :etag
219
+
220
+ # Calendars that are present on the user's calendar list.
221
+ # Corresponds to the JSON property `items`
222
+ # @return [Array<Google::Apis::CalendarV3::CalendarListEntry>]
223
+ attr_accessor :items
224
+
225
+ # Type of the collection ("calendar#calendarList").
226
+ # Corresponds to the JSON property `kind`
227
+ # @return [String]
228
+ attr_accessor :kind
229
+
230
+ # Token used to access the next page of this result. Omitted if no further
231
+ # results are available, in which case nextSyncToken is provided.
232
+ # Corresponds to the JSON property `nextPageToken`
233
+ # @return [String]
234
+ attr_accessor :next_page_token
235
+
236
+ # Token used at a later point in time to retrieve only the entries that have
237
+ # changed since this result was returned. Omitted if further results are
238
+ # available, in which case nextPageToken is provided.
239
+ # Corresponds to the JSON property `nextSyncToken`
240
+ # @return [String]
241
+ attr_accessor :next_sync_token
242
+
243
+ def initialize(**args)
244
+ update!(**args)
245
+ end
246
+
247
+ # Update properties of this object
248
+ def update!(**args)
249
+ @etag = args[:etag] if args.key?(:etag)
250
+ @items = args[:items] if args.key?(:items)
251
+ @kind = args[:kind] if args.key?(:kind)
252
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
253
+ @next_sync_token = args[:next_sync_token] if args.key?(:next_sync_token)
254
+ end
255
+ end
256
+
257
+ #
258
+ class CalendarListEntry
259
+ include Google::Apis::Core::Hashable
260
+
261
+ # The effective access role that the authenticated user has on the calendar.
262
+ # Read-only. Possible values are:
263
+ # - "freeBusyReader" - Provides read access to free/busy information.
264
+ # - "reader" - Provides read access to the calendar. Private events will appear
265
+ # to users with reader access, but event details will be hidden.
266
+ # - "writer" - Provides read and write access to the calendar. Private events
267
+ # will appear to users with writer access, and event details will be visible.
268
+ # - "owner" - Provides ownership of the calendar. This role has all of the
269
+ # permissions of the writer role with the additional ability to see and
270
+ # manipulate ACLs.
271
+ # Corresponds to the JSON property `accessRole`
272
+ # @return [String]
273
+ attr_accessor :access_role
274
+
275
+ # The main color of the calendar in the hexadecimal format "#0088aa". This
276
+ # property supersedes the index-based colorId property. To set or change this
277
+ # property, you need to specify colorRgbFormat=true in the parameters of the
278
+ # insert, update and patch methods. Optional.
279
+ # Corresponds to the JSON property `backgroundColor`
280
+ # @return [String]
281
+ attr_accessor :background_color
282
+
283
+ # The color of the calendar. This is an ID referring to an entry in the calendar
284
+ # section of the colors definition (see the colors endpoint). This property is
285
+ # superseded by the backgroundColor and foregroundColor properties and can be
286
+ # ignored when using these properties. Optional.
287
+ # Corresponds to the JSON property `colorId`
288
+ # @return [String]
289
+ attr_accessor :color_id
290
+
291
+ # The default reminders that the authenticated user has for this calendar.
292
+ # Corresponds to the JSON property `defaultReminders`
293
+ # @return [Array<Google::Apis::CalendarV3::EventReminder>]
294
+ attr_accessor :default_reminders
295
+
296
+ # Whether this calendar list entry has been deleted from the calendar list. Read-
297
+ # only. Optional. The default is False.
298
+ # Corresponds to the JSON property `deleted`
299
+ # @return [Boolean]
300
+ attr_accessor :deleted
301
+ alias_method :deleted?, :deleted
302
+
303
+ # Description of the calendar. Optional. Read-only.
304
+ # Corresponds to the JSON property `description`
305
+ # @return [String]
306
+ attr_accessor :description
307
+
308
+ # ETag of the resource.
309
+ # Corresponds to the JSON property `etag`
310
+ # @return [String]
311
+ attr_accessor :etag
312
+
313
+ # The foreground color of the calendar in the hexadecimal format "#ffffff". This
314
+ # property supersedes the index-based colorId property. To set or change this
315
+ # property, you need to specify colorRgbFormat=true in the parameters of the
316
+ # insert, update and patch methods. Optional.
317
+ # Corresponds to the JSON property `foregroundColor`
318
+ # @return [String]
319
+ attr_accessor :foreground_color
320
+
321
+ # Whether the calendar has been hidden from the list. Optional. The default is
322
+ # False.
323
+ # Corresponds to the JSON property `hidden`
324
+ # @return [Boolean]
325
+ attr_accessor :hidden
326
+ alias_method :hidden?, :hidden
327
+
328
+ # Identifier of the calendar.
329
+ # Corresponds to the JSON property `id`
330
+ # @return [String]
331
+ attr_accessor :id
332
+
333
+ # Type of the resource ("calendar#calendarListEntry").
334
+ # Corresponds to the JSON property `kind`
335
+ # @return [String]
336
+ attr_accessor :kind
337
+
338
+ # Geographic location of the calendar as free-form text. Optional. Read-only.
339
+ # Corresponds to the JSON property `location`
340
+ # @return [String]
341
+ attr_accessor :location
342
+
343
+ # The notifications that the authenticated user is receiving for this calendar.
344
+ # Corresponds to the JSON property `notificationSettings`
345
+ # @return [Google::Apis::CalendarV3::CalendarListEntry::NotificationSettings]
346
+ attr_accessor :notification_settings
347
+
348
+ # Whether the calendar is the primary calendar of the authenticated user. Read-
349
+ # only. Optional. The default is False.
350
+ # Corresponds to the JSON property `primary`
351
+ # @return [Boolean]
352
+ attr_accessor :primary
353
+ alias_method :primary?, :primary
354
+
355
+ # Whether the calendar content shows up in the calendar UI. Optional. The
356
+ # default is False.
357
+ # Corresponds to the JSON property `selected`
358
+ # @return [Boolean]
359
+ attr_accessor :selected
360
+ alias_method :selected?, :selected
361
+
362
+ # Title of the calendar. Read-only.
363
+ # Corresponds to the JSON property `summary`
364
+ # @return [String]
365
+ attr_accessor :summary
366
+
367
+ # The summary that the authenticated user has set for this calendar. Optional.
368
+ # Corresponds to the JSON property `summaryOverride`
369
+ # @return [String]
370
+ attr_accessor :summary_override
371
+
372
+ # The time zone of the calendar. Optional. Read-only.
373
+ # Corresponds to the JSON property `timeZone`
374
+ # @return [String]
375
+ attr_accessor :time_zone
376
+
377
+ def initialize(**args)
378
+ update!(**args)
379
+ end
380
+
381
+ # Update properties of this object
382
+ def update!(**args)
383
+ @access_role = args[:access_role] if args.key?(:access_role)
384
+ @background_color = args[:background_color] if args.key?(:background_color)
385
+ @color_id = args[:color_id] if args.key?(:color_id)
386
+ @default_reminders = args[:default_reminders] if args.key?(:default_reminders)
387
+ @deleted = args[:deleted] if args.key?(:deleted)
388
+ @description = args[:description] if args.key?(:description)
389
+ @etag = args[:etag] if args.key?(:etag)
390
+ @foreground_color = args[:foreground_color] if args.key?(:foreground_color)
391
+ @hidden = args[:hidden] if args.key?(:hidden)
392
+ @id = args[:id] if args.key?(:id)
393
+ @kind = args[:kind] if args.key?(:kind)
394
+ @location = args[:location] if args.key?(:location)
395
+ @notification_settings = args[:notification_settings] if args.key?(:notification_settings)
396
+ @primary = args[:primary] if args.key?(:primary)
397
+ @selected = args[:selected] if args.key?(:selected)
398
+ @summary = args[:summary] if args.key?(:summary)
399
+ @summary_override = args[:summary_override] if args.key?(:summary_override)
400
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
401
+ end
402
+
403
+ # The notifications that the authenticated user is receiving for this calendar.
404
+ class NotificationSettings
405
+ include Google::Apis::Core::Hashable
406
+
407
+ # The list of notifications set for this calendar.
408
+ # Corresponds to the JSON property `notifications`
409
+ # @return [Array<Google::Apis::CalendarV3::CalendarNotification>]
410
+ attr_accessor :notifications
411
+
412
+ def initialize(**args)
413
+ update!(**args)
414
+ end
415
+
416
+ # Update properties of this object
417
+ def update!(**args)
418
+ @notifications = args[:notifications] if args.key?(:notifications)
419
+ end
420
+ end
421
+ end
422
+
423
+ #
424
+ class CalendarNotification
425
+ include Google::Apis::Core::Hashable
426
+
427
+ # The method used to deliver the notification. Possible values are:
428
+ # - "email" - Reminders are sent via email.
429
+ # - "sms" - Reminders are sent via SMS. This value is read-only and is ignored
430
+ # on inserts and updates. SMS reminders are only available for Google Apps for
431
+ # Work, Education, and Government customers.
432
+ # Corresponds to the JSON property `method`
433
+ # @return [String]
434
+ attr_accessor :delivery_method
435
+
436
+ # The type of notification. Possible values are:
437
+ # - "eventCreation" - Notification sent when a new event is put on the calendar.
438
+ # - "eventChange" - Notification sent when an event is changed.
439
+ # - "eventCancellation" - Notification sent when an event is cancelled.
440
+ # - "eventResponse" - Notification sent when an event is changed.
441
+ # - "agenda" - An agenda with the events of the day (sent out in the morning).
442
+ # Corresponds to the JSON property `type`
443
+ # @return [String]
444
+ attr_accessor :type
445
+
446
+ def initialize(**args)
447
+ update!(**args)
448
+ end
449
+
450
+ # Update properties of this object
451
+ def update!(**args)
452
+ @delivery_method = args[:delivery_method] if args.key?(:delivery_method)
453
+ @type = args[:type] if args.key?(:type)
454
+ end
455
+ end
456
+
457
+ #
458
+ class Channel
459
+ include Google::Apis::Core::Hashable
460
+
461
+ # The address where notifications are delivered for this channel.
462
+ # Corresponds to the JSON property `address`
463
+ # @return [String]
464
+ attr_accessor :address
465
+
466
+ # Date and time of notification channel expiration, expressed as a Unix
467
+ # timestamp, in milliseconds. Optional.
468
+ # Corresponds to the JSON property `expiration`
469
+ # @return [String]
470
+ attr_accessor :expiration
471
+
472
+ # A UUID or similar unique string that identifies this channel.
473
+ # Corresponds to the JSON property `id`
474
+ # @return [String]
475
+ attr_accessor :id
476
+
477
+ # Identifies this as a notification channel used to watch for changes to a
478
+ # resource. Value: the fixed string "api#channel".
479
+ # Corresponds to the JSON property `kind`
480
+ # @return [String]
481
+ attr_accessor :kind
482
+
483
+ # Additional parameters controlling delivery channel behavior. Optional.
484
+ # Corresponds to the JSON property `params`
485
+ # @return [Hash<String,String>]
486
+ attr_accessor :params
487
+
488
+ # A Boolean value to indicate whether payload is wanted. Optional.
489
+ # Corresponds to the JSON property `payload`
490
+ # @return [Boolean]
491
+ attr_accessor :payload
492
+ alias_method :payload?, :payload
493
+
494
+ # An opaque ID that identifies the resource being watched on this channel.
495
+ # Stable across different API versions.
496
+ # Corresponds to the JSON property `resourceId`
497
+ # @return [String]
498
+ attr_accessor :resource_id
499
+
500
+ # A version-specific identifier for the watched resource.
501
+ # Corresponds to the JSON property `resourceUri`
502
+ # @return [String]
503
+ attr_accessor :resource_uri
504
+
505
+ # An arbitrary string delivered to the target address with each notification
506
+ # delivered over this channel. Optional.
507
+ # Corresponds to the JSON property `token`
508
+ # @return [String]
509
+ attr_accessor :token
510
+
511
+ # The type of delivery mechanism used for this channel.
512
+ # Corresponds to the JSON property `type`
513
+ # @return [String]
514
+ attr_accessor :type
515
+
516
+ def initialize(**args)
517
+ update!(**args)
518
+ end
519
+
520
+ # Update properties of this object
521
+ def update!(**args)
522
+ @address = args[:address] if args.key?(:address)
523
+ @expiration = args[:expiration] if args.key?(:expiration)
524
+ @id = args[:id] if args.key?(:id)
525
+ @kind = args[:kind] if args.key?(:kind)
526
+ @params = args[:params] if args.key?(:params)
527
+ @payload = args[:payload] if args.key?(:payload)
528
+ @resource_id = args[:resource_id] if args.key?(:resource_id)
529
+ @resource_uri = args[:resource_uri] if args.key?(:resource_uri)
530
+ @token = args[:token] if args.key?(:token)
531
+ @type = args[:type] if args.key?(:type)
532
+ end
533
+ end
534
+
535
+ #
536
+ class ColorDefinition
537
+ include Google::Apis::Core::Hashable
538
+
539
+ # The background color associated with this color definition.
540
+ # Corresponds to the JSON property `background`
541
+ # @return [String]
542
+ attr_accessor :background
543
+
544
+ # The foreground color that can be used to write on top of a background with '
545
+ # background' color.
546
+ # Corresponds to the JSON property `foreground`
547
+ # @return [String]
548
+ attr_accessor :foreground
549
+
550
+ def initialize(**args)
551
+ update!(**args)
552
+ end
553
+
554
+ # Update properties of this object
555
+ def update!(**args)
556
+ @background = args[:background] if args.key?(:background)
557
+ @foreground = args[:foreground] if args.key?(:foreground)
558
+ end
559
+ end
560
+
561
+ #
562
+ class Colors
563
+ include Google::Apis::Core::Hashable
564
+
565
+ # A global palette of calendar colors, mapping from the color ID to its
566
+ # definition. A calendarListEntry resource refers to one of these color IDs in
567
+ # its color field. Read-only.
568
+ # Corresponds to the JSON property `calendar`
569
+ # @return [Hash<String,Google::Apis::CalendarV3::ColorDefinition>]
570
+ attr_accessor :calendar
571
+
572
+ # A global palette of event colors, mapping from the color ID to its definition.
573
+ # An event resource may refer to one of these color IDs in its color field. Read-
574
+ # only.
575
+ # Corresponds to the JSON property `event`
576
+ # @return [Hash<String,Google::Apis::CalendarV3::ColorDefinition>]
577
+ attr_accessor :event
578
+
579
+ # Type of the resource ("calendar#colors").
580
+ # Corresponds to the JSON property `kind`
581
+ # @return [String]
582
+ attr_accessor :kind
583
+
584
+ # Last modification time of the color palette (as a RFC3339 timestamp). Read-
585
+ # only.
586
+ # Corresponds to the JSON property `updated`
587
+ # @return [DateTime]
588
+ attr_accessor :updated
589
+
590
+ def initialize(**args)
591
+ update!(**args)
592
+ end
593
+
594
+ # Update properties of this object
595
+ def update!(**args)
596
+ @calendar = args[:calendar] if args.key?(:calendar)
597
+ @event = args[:event] if args.key?(:event)
598
+ @kind = args[:kind] if args.key?(:kind)
599
+ @updated = args[:updated] if args.key?(:updated)
600
+ end
601
+ end
602
+
603
+ #
604
+ class Error
605
+ include Google::Apis::Core::Hashable
606
+
607
+ # Domain, or broad category, of the error.
608
+ # Corresponds to the JSON property `domain`
609
+ # @return [String]
610
+ attr_accessor :domain
611
+
612
+ # Specific reason for the error. Some of the possible values are:
613
+ # - "groupTooBig" - The group of users requested is too large for a single query.
614
+ #
615
+ # - "tooManyCalendarsRequested" - The number of calendars requested is too large
616
+ # for a single query.
617
+ # - "notFound" - The requested resource was not found.
618
+ # - "internalError" - The API service has encountered an internal error.
619
+ # Additional error types may be added in the future, so clients should
620
+ # gracefully handle additional error statuses not included in this list.
621
+ # Corresponds to the JSON property `reason`
622
+ # @return [String]
623
+ attr_accessor :reason
624
+
625
+ def initialize(**args)
626
+ update!(**args)
627
+ end
628
+
629
+ # Update properties of this object
630
+ def update!(**args)
631
+ @domain = args[:domain] if args.key?(:domain)
632
+ @reason = args[:reason] if args.key?(:reason)
633
+ end
634
+ end
635
+
636
+ #
637
+ class Event
638
+ include Google::Apis::Core::Hashable
639
+
640
+ # Whether anyone can invite themselves to the event (currently works for Google+
641
+ # events only). Optional. The default is False.
642
+ # Corresponds to the JSON property `anyoneCanAddSelf`
643
+ # @return [Boolean]
644
+ attr_accessor :anyone_can_add_self
645
+ alias_method :anyone_can_add_self?, :anyone_can_add_self
646
+
647
+ # File attachments for the event. Currently only Google Drive attachments are
648
+ # supported.
649
+ # In order to modify attachments the supportsAttachments request parameter
650
+ # should be set to true.
651
+ # There can be at most 25 attachments per event,
652
+ # Corresponds to the JSON property `attachments`
653
+ # @return [Array<Google::Apis::CalendarV3::EventAttachment>]
654
+ attr_accessor :attachments
655
+
656
+ # The attendees of the event. See the Events with attendees guide for more
657
+ # information on scheduling events with other calendar users.
658
+ # Corresponds to the JSON property `attendees`
659
+ # @return [Array<Google::Apis::CalendarV3::EventAttendee>]
660
+ attr_accessor :attendees
661
+
662
+ # Whether attendees may have been omitted from the event's representation. When
663
+ # retrieving an event, this may be due to a restriction specified by the
664
+ # maxAttendee query parameter. When updating an event, this can be used to only
665
+ # update the participant's response. Optional. The default is False.
666
+ # Corresponds to the JSON property `attendeesOmitted`
667
+ # @return [Boolean]
668
+ attr_accessor :attendees_omitted
669
+ alias_method :attendees_omitted?, :attendees_omitted
670
+
671
+ # The color of the event. This is an ID referring to an entry in the event
672
+ # section of the colors definition (see the colors endpoint). Optional.
673
+ # Corresponds to the JSON property `colorId`
674
+ # @return [String]
675
+ attr_accessor :color_id
676
+
677
+ # Creation time of the event (as a RFC3339 timestamp). Read-only.
678
+ # Corresponds to the JSON property `created`
679
+ # @return [DateTime]
680
+ attr_accessor :created
681
+
682
+ # The creator of the event. Read-only.
683
+ # Corresponds to the JSON property `creator`
684
+ # @return [Google::Apis::CalendarV3::Event::Creator]
685
+ attr_accessor :creator
686
+
687
+ # Description of the event. Optional.
688
+ # Corresponds to the JSON property `description`
689
+ # @return [String]
690
+ attr_accessor :description
691
+
692
+ # The (exclusive) end time of the event. For a recurring event, this is the end
693
+ # time of the first instance.
694
+ # Corresponds to the JSON property `end`
695
+ # @return [Google::Apis::CalendarV3::EventDateTime]
696
+ attr_accessor :end
697
+
698
+ # Whether the end time is actually unspecified. An end time is still provided
699
+ # for compatibility reasons, even if this attribute is set to True. The default
700
+ # is False.
701
+ # Corresponds to the JSON property `endTimeUnspecified`
702
+ # @return [Boolean]
703
+ attr_accessor :end_time_unspecified
704
+ alias_method :end_time_unspecified?, :end_time_unspecified
705
+
706
+ # ETag of the resource.
707
+ # Corresponds to the JSON property `etag`
708
+ # @return [String]
709
+ attr_accessor :etag
710
+
711
+ # Extended properties of the event.
712
+ # Corresponds to the JSON property `extendedProperties`
713
+ # @return [Google::Apis::CalendarV3::Event::ExtendedProperties]
714
+ attr_accessor :extended_properties
715
+
716
+ # A gadget that extends this event.
717
+ # Corresponds to the JSON property `gadget`
718
+ # @return [Google::Apis::CalendarV3::Event::Gadget]
719
+ attr_accessor :gadget
720
+
721
+ # Whether attendees other than the organizer can invite others to the event.
722
+ # Optional. The default is True.
723
+ # Corresponds to the JSON property `guestsCanInviteOthers`
724
+ # @return [Boolean]
725
+ attr_accessor :guests_can_invite_others
726
+ alias_method :guests_can_invite_others?, :guests_can_invite_others
727
+
728
+ # Whether attendees other than the organizer can modify the event. Optional. The
729
+ # default is False.
730
+ # Corresponds to the JSON property `guestsCanModify`
731
+ # @return [Boolean]
732
+ attr_accessor :guests_can_modify
733
+ alias_method :guests_can_modify?, :guests_can_modify
734
+
735
+ # Whether attendees other than the organizer can see who the event's attendees
736
+ # are. Optional. The default is True.
737
+ # Corresponds to the JSON property `guestsCanSeeOtherGuests`
738
+ # @return [Boolean]
739
+ attr_accessor :guests_can_see_other_guests
740
+ alias_method :guests_can_see_other_guests?, :guests_can_see_other_guests
741
+
742
+ # An absolute link to the Google+ hangout associated with this event. Read-only.
743
+ # Corresponds to the JSON property `hangoutLink`
744
+ # @return [String]
745
+ attr_accessor :hangout_link
746
+
747
+ # An absolute link to this event in the Google Calendar Web UI. Read-only.
748
+ # Corresponds to the JSON property `htmlLink`
749
+ # @return [String]
750
+ attr_accessor :html_link
751
+
752
+ # Event unique identifier as defined in RFC5545. It is used to uniquely identify
753
+ # events accross calendaring systems and must be supplied when importing events
754
+ # via the import method.
755
+ # Note that the icalUID and the id are not identical and only one of them should
756
+ # be supplied at event creation time. One difference in their semantics is that
757
+ # in recurring events, all occurrences of one event have different ids while
758
+ # they all share the same icalUIDs.
759
+ # Corresponds to the JSON property `iCalUID`
760
+ # @return [String]
761
+ attr_accessor :i_cal_uid
762
+
763
+ # Opaque identifier of the event. When creating new single or recurring events,
764
+ # you can specify their IDs. Provided IDs must follow these rules:
765
+ # - characters allowed in the ID are those used in base32hex encoding, i.e.
766
+ # lowercase letters a-v and digits 0-9, see section 3.1.2 in RFC2938
767
+ # - the length of the ID must be between 5 and 1024 characters
768
+ # - the ID must be unique per calendar Due to the globally distributed nature
769
+ # of the system, we cannot guarantee that ID collisions will be detected at
770
+ # event creation time. To minimize the risk of collisions we recommend using an
771
+ # established UUID algorithm such as one described in RFC4122.
772
+ # If you do not specify an ID, it will be automatically generated by the server.
773
+ # Note that the icalUID and the id are not identical and only one of them should
774
+ # be supplied at event creation time. One difference in their semantics is that
775
+ # in recurring events, all occurrences of one event have different ids while
776
+ # they all share the same icalUIDs.
777
+ # Corresponds to the JSON property `id`
778
+ # @return [String]
779
+ attr_accessor :id
780
+
781
+ # Type of the resource ("calendar#event").
782
+ # Corresponds to the JSON property `kind`
783
+ # @return [String]
784
+ attr_accessor :kind
785
+
786
+ # Geographic location of the event as free-form text. Optional.
787
+ # Corresponds to the JSON property `location`
788
+ # @return [String]
789
+ attr_accessor :location
790
+
791
+ # Whether this is a locked event copy where no changes can be made to the main
792
+ # event fields "summary", "description", "location", "start", "end" or "
793
+ # recurrence". The default is False. Read-Only.
794
+ # Corresponds to the JSON property `locked`
795
+ # @return [Boolean]
796
+ attr_accessor :locked
797
+ alias_method :locked?, :locked
798
+
799
+ # The organizer of the event. If the organizer is also an attendee, this is
800
+ # indicated with a separate entry in attendees with the organizer field set to
801
+ # True. To change the organizer, use the move operation. Read-only, except when
802
+ # importing an event.
803
+ # Corresponds to the JSON property `organizer`
804
+ # @return [Google::Apis::CalendarV3::Event::Organizer]
805
+ attr_accessor :organizer
806
+
807
+ # For an instance of a recurring event, this is the time at which this event
808
+ # would start according to the recurrence data in the recurring event identified
809
+ # by recurringEventId. Immutable.
810
+ # Corresponds to the JSON property `originalStartTime`
811
+ # @return [Google::Apis::CalendarV3::EventDateTime]
812
+ attr_accessor :original_start_time
813
+
814
+ # Whether this is a private event copy where changes are not shared with other
815
+ # copies on other calendars. Optional. Immutable. The default is False.
816
+ # Corresponds to the JSON property `privateCopy`
817
+ # @return [Boolean]
818
+ attr_accessor :private_copy
819
+ alias_method :private_copy?, :private_copy
820
+
821
+ # List of RRULE, EXRULE, RDATE and EXDATE lines for a recurring event, as
822
+ # specified in RFC5545. Note that DTSTART and DTEND lines are not allowed in
823
+ # this field; event start and end times are specified in the start and end
824
+ # fields. This field is omitted for single events or instances of recurring
825
+ # events.
826
+ # Corresponds to the JSON property `recurrence`
827
+ # @return [Array<String>]
828
+ attr_accessor :recurrence
829
+
830
+ # For an instance of a recurring event, this is the id of the recurring event to
831
+ # which this instance belongs. Immutable.
832
+ # Corresponds to the JSON property `recurringEventId`
833
+ # @return [String]
834
+ attr_accessor :recurring_event_id
835
+
836
+ # Information about the event's reminders for the authenticated user.
837
+ # Corresponds to the JSON property `reminders`
838
+ # @return [Google::Apis::CalendarV3::Event::Reminders]
839
+ attr_accessor :reminders
840
+
841
+ # Sequence number as per iCalendar.
842
+ # Corresponds to the JSON property `sequence`
843
+ # @return [Fixnum]
844
+ attr_accessor :sequence
845
+
846
+ # Source from which the event was created. For example, a web page, an email
847
+ # message or any document identifiable by an URL with HTTP or HTTPS scheme. Can
848
+ # only be seen or modified by the creator of the event.
849
+ # Corresponds to the JSON property `source`
850
+ # @return [Google::Apis::CalendarV3::Event::Source]
851
+ attr_accessor :source
852
+
853
+ # The (inclusive) start time of the event. For a recurring event, this is the
854
+ # start time of the first instance.
855
+ # Corresponds to the JSON property `start`
856
+ # @return [Google::Apis::CalendarV3::EventDateTime]
857
+ attr_accessor :start
858
+
859
+ # Status of the event. Optional. Possible values are:
860
+ # - "confirmed" - The event is confirmed. This is the default status.
861
+ # - "tentative" - The event is tentatively confirmed.
862
+ # - "cancelled" - The event is cancelled.
863
+ # Corresponds to the JSON property `status`
864
+ # @return [String]
865
+ attr_accessor :status
866
+
867
+ # Title of the event.
868
+ # Corresponds to the JSON property `summary`
869
+ # @return [String]
870
+ attr_accessor :summary
871
+
872
+ # Whether the event blocks time on the calendar. Optional. Possible values are:
873
+ # - "opaque" - The event blocks time on the calendar. This is the default value.
874
+ # - "transparent" - The event does not block time on the calendar.
875
+ # Corresponds to the JSON property `transparency`
876
+ # @return [String]
877
+ attr_accessor :transparency
878
+
879
+ # Last modification time of the event (as a RFC3339 timestamp). Read-only.
880
+ # Corresponds to the JSON property `updated`
881
+ # @return [DateTime]
882
+ attr_accessor :updated
883
+
884
+ # Visibility of the event. Optional. Possible values are:
885
+ # - "default" - Uses the default visibility for events on the calendar. This is
886
+ # the default value.
887
+ # - "public" - The event is public and event details are visible to all readers
888
+ # of the calendar.
889
+ # - "private" - The event is private and only event attendees may view event
890
+ # details.
891
+ # - "confidential" - The event is private. This value is provided for
892
+ # compatibility reasons.
893
+ # Corresponds to the JSON property `visibility`
894
+ # @return [String]
895
+ attr_accessor :visibility
896
+
897
+ def initialize(**args)
898
+ update!(**args)
899
+ end
900
+
901
+ # Update properties of this object
902
+ def update!(**args)
903
+ @anyone_can_add_self = args[:anyone_can_add_self] if args.key?(:anyone_can_add_self)
904
+ @attachments = args[:attachments] if args.key?(:attachments)
905
+ @attendees = args[:attendees] if args.key?(:attendees)
906
+ @attendees_omitted = args[:attendees_omitted] if args.key?(:attendees_omitted)
907
+ @color_id = args[:color_id] if args.key?(:color_id)
908
+ @created = args[:created] if args.key?(:created)
909
+ @creator = args[:creator] if args.key?(:creator)
910
+ @description = args[:description] if args.key?(:description)
911
+ @end = args[:end] if args.key?(:end)
912
+ @end_time_unspecified = args[:end_time_unspecified] if args.key?(:end_time_unspecified)
913
+ @etag = args[:etag] if args.key?(:etag)
914
+ @extended_properties = args[:extended_properties] if args.key?(:extended_properties)
915
+ @gadget = args[:gadget] if args.key?(:gadget)
916
+ @guests_can_invite_others = args[:guests_can_invite_others] if args.key?(:guests_can_invite_others)
917
+ @guests_can_modify = args[:guests_can_modify] if args.key?(:guests_can_modify)
918
+ @guests_can_see_other_guests = args[:guests_can_see_other_guests] if args.key?(:guests_can_see_other_guests)
919
+ @hangout_link = args[:hangout_link] if args.key?(:hangout_link)
920
+ @html_link = args[:html_link] if args.key?(:html_link)
921
+ @i_cal_uid = args[:i_cal_uid] if args.key?(:i_cal_uid)
922
+ @id = args[:id] if args.key?(:id)
923
+ @kind = args[:kind] if args.key?(:kind)
924
+ @location = args[:location] if args.key?(:location)
925
+ @locked = args[:locked] if args.key?(:locked)
926
+ @organizer = args[:organizer] if args.key?(:organizer)
927
+ @original_start_time = args[:original_start_time] if args.key?(:original_start_time)
928
+ @private_copy = args[:private_copy] if args.key?(:private_copy)
929
+ @recurrence = args[:recurrence] if args.key?(:recurrence)
930
+ @recurring_event_id = args[:recurring_event_id] if args.key?(:recurring_event_id)
931
+ @reminders = args[:reminders] if args.key?(:reminders)
932
+ @sequence = args[:sequence] if args.key?(:sequence)
933
+ @source = args[:source] if args.key?(:source)
934
+ @start = args[:start] if args.key?(:start)
935
+ @status = args[:status] if args.key?(:status)
936
+ @summary = args[:summary] if args.key?(:summary)
937
+ @transparency = args[:transparency] if args.key?(:transparency)
938
+ @updated = args[:updated] if args.key?(:updated)
939
+ @visibility = args[:visibility] if args.key?(:visibility)
940
+ end
941
+
942
+ # The creator of the event. Read-only.
943
+ class Creator
944
+ include Google::Apis::Core::Hashable
945
+
946
+ # The creator's name, if available.
947
+ # Corresponds to the JSON property `displayName`
948
+ # @return [String]
949
+ attr_accessor :display_name
950
+
951
+ # The creator's email address, if available.
952
+ # Corresponds to the JSON property `email`
953
+ # @return [String]
954
+ attr_accessor :email
955
+
956
+ # The creator's Profile ID, if available. It corresponds to theid field in the
957
+ # People collection of the Google+ API
958
+ # Corresponds to the JSON property `id`
959
+ # @return [String]
960
+ attr_accessor :id
961
+
962
+ # Whether the creator corresponds to the calendar on which this copy of the
963
+ # event appears. Read-only. The default is False.
964
+ # Corresponds to the JSON property `self`
965
+ # @return [Boolean]
966
+ attr_accessor :self
967
+ alias_method :self?, :self
968
+
969
+ def initialize(**args)
970
+ update!(**args)
971
+ end
972
+
973
+ # Update properties of this object
974
+ def update!(**args)
975
+ @display_name = args[:display_name] if args.key?(:display_name)
976
+ @email = args[:email] if args.key?(:email)
977
+ @id = args[:id] if args.key?(:id)
978
+ @self = args[:self] if args.key?(:self)
979
+ end
980
+ end
981
+
982
+ # Extended properties of the event.
983
+ class ExtendedProperties
984
+ include Google::Apis::Core::Hashable
985
+
986
+ # Properties that are private to the copy of the event that appears on this
987
+ # calendar.
988
+ # Corresponds to the JSON property `private`
989
+ # @return [Hash<String,String>]
990
+ attr_accessor :private
991
+
992
+ # Properties that are shared between copies of the event on other attendees'
993
+ # calendars.
994
+ # Corresponds to the JSON property `shared`
995
+ # @return [Hash<String,String>]
996
+ attr_accessor :shared
997
+
998
+ def initialize(**args)
999
+ update!(**args)
1000
+ end
1001
+
1002
+ # Update properties of this object
1003
+ def update!(**args)
1004
+ @private = args[:private] if args.key?(:private)
1005
+ @shared = args[:shared] if args.key?(:shared)
1006
+ end
1007
+ end
1008
+
1009
+ # A gadget that extends this event.
1010
+ class Gadget
1011
+ include Google::Apis::Core::Hashable
1012
+
1013
+ # The gadget's display mode. Optional. Possible values are:
1014
+ # - "icon" - The gadget displays next to the event's title in the calendar view.
1015
+ # - "chip" - The gadget displays when the event is clicked.
1016
+ # Corresponds to the JSON property `display`
1017
+ # @return [String]
1018
+ attr_accessor :display_mode
1019
+
1020
+ # The gadget's height in pixels. The height must be an integer greater than 0.
1021
+ # Optional.
1022
+ # Corresponds to the JSON property `height`
1023
+ # @return [Fixnum]
1024
+ attr_accessor :height
1025
+
1026
+ # The gadget's icon URL. The URL scheme must be HTTPS.
1027
+ # Corresponds to the JSON property `iconLink`
1028
+ # @return [String]
1029
+ attr_accessor :icon_link
1030
+
1031
+ # The gadget's URL. The URL scheme must be HTTPS.
1032
+ # Corresponds to the JSON property `link`
1033
+ # @return [String]
1034
+ attr_accessor :link
1035
+
1036
+ # Preferences.
1037
+ # Corresponds to the JSON property `preferences`
1038
+ # @return [Hash<String,String>]
1039
+ attr_accessor :preferences
1040
+
1041
+ # The gadget's title.
1042
+ # Corresponds to the JSON property `title`
1043
+ # @return [String]
1044
+ attr_accessor :title
1045
+
1046
+ # The gadget's type.
1047
+ # Corresponds to the JSON property `type`
1048
+ # @return [String]
1049
+ attr_accessor :type
1050
+
1051
+ # The gadget's width in pixels. The width must be an integer greater than 0.
1052
+ # Optional.
1053
+ # Corresponds to the JSON property `width`
1054
+ # @return [Fixnum]
1055
+ attr_accessor :width
1056
+
1057
+ def initialize(**args)
1058
+ update!(**args)
1059
+ end
1060
+
1061
+ # Update properties of this object
1062
+ def update!(**args)
1063
+ @display_mode = args[:display_mode] if args.key?(:display_mode)
1064
+ @height = args[:height] if args.key?(:height)
1065
+ @icon_link = args[:icon_link] if args.key?(:icon_link)
1066
+ @link = args[:link] if args.key?(:link)
1067
+ @preferences = args[:preferences] if args.key?(:preferences)
1068
+ @title = args[:title] if args.key?(:title)
1069
+ @type = args[:type] if args.key?(:type)
1070
+ @width = args[:width] if args.key?(:width)
1071
+ end
1072
+ end
1073
+
1074
+ # The organizer of the event. If the organizer is also an attendee, this is
1075
+ # indicated with a separate entry in attendees with the organizer field set to
1076
+ # True. To change the organizer, use the move operation. Read-only, except when
1077
+ # importing an event.
1078
+ class Organizer
1079
+ include Google::Apis::Core::Hashable
1080
+
1081
+ # The organizer's name, if available.
1082
+ # Corresponds to the JSON property `displayName`
1083
+ # @return [String]
1084
+ attr_accessor :display_name
1085
+
1086
+ # The organizer's email address, if available. It must be a valid email address
1087
+ # as per RFC5322.
1088
+ # Corresponds to the JSON property `email`
1089
+ # @return [String]
1090
+ attr_accessor :email
1091
+
1092
+ # The organizer's Profile ID, if available. It corresponds to theid field in the
1093
+ # People collection of the Google+ API
1094
+ # Corresponds to the JSON property `id`
1095
+ # @return [String]
1096
+ attr_accessor :id
1097
+
1098
+ # Whether the organizer corresponds to the calendar on which this copy of the
1099
+ # event appears. Read-only. The default is False.
1100
+ # Corresponds to the JSON property `self`
1101
+ # @return [Boolean]
1102
+ attr_accessor :self
1103
+ alias_method :self?, :self
1104
+
1105
+ def initialize(**args)
1106
+ update!(**args)
1107
+ end
1108
+
1109
+ # Update properties of this object
1110
+ def update!(**args)
1111
+ @display_name = args[:display_name] if args.key?(:display_name)
1112
+ @email = args[:email] if args.key?(:email)
1113
+ @id = args[:id] if args.key?(:id)
1114
+ @self = args[:self] if args.key?(:self)
1115
+ end
1116
+ end
1117
+
1118
+ # Information about the event's reminders for the authenticated user.
1119
+ class Reminders
1120
+ include Google::Apis::Core::Hashable
1121
+
1122
+ # If the event doesn't use the default reminders, this lists the reminders
1123
+ # specific to the event, or, if not set, indicates that no reminders are set for
1124
+ # this event. The maximum number of override reminders is 5.
1125
+ # Corresponds to the JSON property `overrides`
1126
+ # @return [Array<Google::Apis::CalendarV3::EventReminder>]
1127
+ attr_accessor :overrides
1128
+
1129
+ # Whether the default reminders of the calendar apply to the event.
1130
+ # Corresponds to the JSON property `useDefault`
1131
+ # @return [Boolean]
1132
+ attr_accessor :use_default
1133
+ alias_method :use_default?, :use_default
1134
+
1135
+ def initialize(**args)
1136
+ update!(**args)
1137
+ end
1138
+
1139
+ # Update properties of this object
1140
+ def update!(**args)
1141
+ @overrides = args[:overrides] if args.key?(:overrides)
1142
+ @use_default = args[:use_default] if args.key?(:use_default)
1143
+ end
1144
+ end
1145
+
1146
+ # Source from which the event was created. For example, a web page, an email
1147
+ # message or any document identifiable by an URL with HTTP or HTTPS scheme. Can
1148
+ # only be seen or modified by the creator of the event.
1149
+ class Source
1150
+ include Google::Apis::Core::Hashable
1151
+
1152
+ # Title of the source; for example a title of a web page or an email subject.
1153
+ # Corresponds to the JSON property `title`
1154
+ # @return [String]
1155
+ attr_accessor :title
1156
+
1157
+ # URL of the source pointing to a resource. The URL scheme must be HTTP or HTTPS.
1158
+ # Corresponds to the JSON property `url`
1159
+ # @return [String]
1160
+ attr_accessor :url
1161
+
1162
+ def initialize(**args)
1163
+ update!(**args)
1164
+ end
1165
+
1166
+ # Update properties of this object
1167
+ def update!(**args)
1168
+ @title = args[:title] if args.key?(:title)
1169
+ @url = args[:url] if args.key?(:url)
1170
+ end
1171
+ end
1172
+ end
1173
+
1174
+ #
1175
+ class EventAttachment
1176
+ include Google::Apis::Core::Hashable
1177
+
1178
+ # ID of the attached file. Read-only.
1179
+ # For Google Drive files, this is the ID of the corresponding Files resource
1180
+ # entry in the Drive API.
1181
+ # Corresponds to the JSON property `fileId`
1182
+ # @return [String]
1183
+ attr_accessor :file_id
1184
+
1185
+ # URL link to the attachment.
1186
+ # For adding Google Drive file attachments use the same format as in
1187
+ # alternateLink property of the Files resource in the Drive API.
1188
+ # Corresponds to the JSON property `fileUrl`
1189
+ # @return [String]
1190
+ attr_accessor :file_url
1191
+
1192
+ # URL link to the attachment's icon. Read-only.
1193
+ # Corresponds to the JSON property `iconLink`
1194
+ # @return [String]
1195
+ attr_accessor :icon_link
1196
+
1197
+ # Internet media type (MIME type) of the attachment.
1198
+ # Corresponds to the JSON property `mimeType`
1199
+ # @return [String]
1200
+ attr_accessor :mime_type
1201
+
1202
+ # Attachment title.
1203
+ # Corresponds to the JSON property `title`
1204
+ # @return [String]
1205
+ attr_accessor :title
1206
+
1207
+ def initialize(**args)
1208
+ update!(**args)
1209
+ end
1210
+
1211
+ # Update properties of this object
1212
+ def update!(**args)
1213
+ @file_id = args[:file_id] if args.key?(:file_id)
1214
+ @file_url = args[:file_url] if args.key?(:file_url)
1215
+ @icon_link = args[:icon_link] if args.key?(:icon_link)
1216
+ @mime_type = args[:mime_type] if args.key?(:mime_type)
1217
+ @title = args[:title] if args.key?(:title)
1218
+ end
1219
+ end
1220
+
1221
+ #
1222
+ class EventAttendee
1223
+ include Google::Apis::Core::Hashable
1224
+
1225
+ # Number of additional guests. Optional. The default is 0.
1226
+ # Corresponds to the JSON property `additionalGuests`
1227
+ # @return [Fixnum]
1228
+ attr_accessor :additional_guests
1229
+
1230
+ # The attendee's response comment. Optional.
1231
+ # Corresponds to the JSON property `comment`
1232
+ # @return [String]
1233
+ attr_accessor :comment
1234
+
1235
+ # The attendee's name, if available. Optional.
1236
+ # Corresponds to the JSON property `displayName`
1237
+ # @return [String]
1238
+ attr_accessor :display_name
1239
+
1240
+ # The attendee's email address, if available. This field must be present when
1241
+ # adding an attendee. It must be a valid email address as per RFC5322.
1242
+ # Corresponds to the JSON property `email`
1243
+ # @return [String]
1244
+ attr_accessor :email
1245
+
1246
+ # The attendee's Profile ID, if available. It corresponds to theid field in the
1247
+ # People collection of the Google+ API
1248
+ # Corresponds to the JSON property `id`
1249
+ # @return [String]
1250
+ attr_accessor :id
1251
+
1252
+ # Whether this is an optional attendee. Optional. The default is False.
1253
+ # Corresponds to the JSON property `optional`
1254
+ # @return [Boolean]
1255
+ attr_accessor :optional
1256
+ alias_method :optional?, :optional
1257
+
1258
+ # Whether the attendee is the organizer of the event. Read-only. The default is
1259
+ # False.
1260
+ # Corresponds to the JSON property `organizer`
1261
+ # @return [Boolean]
1262
+ attr_accessor :organizer
1263
+ alias_method :organizer?, :organizer
1264
+
1265
+ # Whether the attendee is a resource. Read-only. The default is False.
1266
+ # Corresponds to the JSON property `resource`
1267
+ # @return [Boolean]
1268
+ attr_accessor :resource
1269
+ alias_method :resource?, :resource
1270
+
1271
+ # The attendee's response status. Possible values are:
1272
+ # - "needsAction" - The attendee has not responded to the invitation.
1273
+ # - "declined" - The attendee has declined the invitation.
1274
+ # - "tentative" - The attendee has tentatively accepted the invitation.
1275
+ # - "accepted" - The attendee has accepted the invitation.
1276
+ # Corresponds to the JSON property `responseStatus`
1277
+ # @return [String]
1278
+ attr_accessor :response_status
1279
+
1280
+ # Whether this entry represents the calendar on which this copy of the event
1281
+ # appears. Read-only. The default is False.
1282
+ # Corresponds to the JSON property `self`
1283
+ # @return [Boolean]
1284
+ attr_accessor :self
1285
+ alias_method :self?, :self
1286
+
1287
+ def initialize(**args)
1288
+ update!(**args)
1289
+ end
1290
+
1291
+ # Update properties of this object
1292
+ def update!(**args)
1293
+ @additional_guests = args[:additional_guests] if args.key?(:additional_guests)
1294
+ @comment = args[:comment] if args.key?(:comment)
1295
+ @display_name = args[:display_name] if args.key?(:display_name)
1296
+ @email = args[:email] if args.key?(:email)
1297
+ @id = args[:id] if args.key?(:id)
1298
+ @optional = args[:optional] if args.key?(:optional)
1299
+ @organizer = args[:organizer] if args.key?(:organizer)
1300
+ @resource = args[:resource] if args.key?(:resource)
1301
+ @response_status = args[:response_status] if args.key?(:response_status)
1302
+ @self = args[:self] if args.key?(:self)
1303
+ end
1304
+ end
1305
+
1306
+ #
1307
+ class EventDateTime
1308
+ include Google::Apis::Core::Hashable
1309
+
1310
+ # The date, in the format "yyyy-mm-dd", if this is an all-day event.
1311
+ # Corresponds to the JSON property `date`
1312
+ # @return [Date]
1313
+ attr_accessor :date
1314
+
1315
+ # The time, as a combined date-time value (formatted according to RFC3339). A
1316
+ # time zone offset is required unless a time zone is explicitly specified in
1317
+ # timeZone.
1318
+ # Corresponds to the JSON property `dateTime`
1319
+ # @return [DateTime]
1320
+ attr_accessor :date_time
1321
+
1322
+ # The time zone in which the time is specified. (Formatted as an IANA Time Zone
1323
+ # Database name, e.g. "Europe/Zurich".) For recurring events this field is
1324
+ # required and specifies the time zone in which the recurrence is expanded. For
1325
+ # single events this field is optional and indicates a custom time zone for the
1326
+ # event start/end.
1327
+ # Corresponds to the JSON property `timeZone`
1328
+ # @return [String]
1329
+ attr_accessor :time_zone
1330
+
1331
+ def initialize(**args)
1332
+ update!(**args)
1333
+ end
1334
+
1335
+ # Update properties of this object
1336
+ def update!(**args)
1337
+ @date = args[:date] if args.key?(:date)
1338
+ @date_time = args[:date_time] if args.key?(:date_time)
1339
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
1340
+ end
1341
+ end
1342
+
1343
+ #
1344
+ class EventReminder
1345
+ include Google::Apis::Core::Hashable
1346
+
1347
+ # The method used by this reminder. Possible values are:
1348
+ # - "email" - Reminders are sent via email.
1349
+ # - "sms" - Reminders are sent via SMS. These are only available for Google Apps
1350
+ # for Work, Education, and Government customers. Requests to set SMS reminders
1351
+ # for other account types are ignored.
1352
+ # - "popup" - Reminders are sent via a UI popup.
1353
+ # Corresponds to the JSON property `method`
1354
+ # @return [String]
1355
+ attr_accessor :reminder_method
1356
+
1357
+ # Number of minutes before the start of the event when the reminder should
1358
+ # trigger. Valid values are between 0 and 40320 (4 weeks in minutes).
1359
+ # Corresponds to the JSON property `minutes`
1360
+ # @return [Fixnum]
1361
+ attr_accessor :minutes
1362
+
1363
+ def initialize(**args)
1364
+ update!(**args)
1365
+ end
1366
+
1367
+ # Update properties of this object
1368
+ def update!(**args)
1369
+ @reminder_method = args[:reminder_method] if args.key?(:reminder_method)
1370
+ @minutes = args[:minutes] if args.key?(:minutes)
1371
+ end
1372
+ end
1373
+
1374
+ #
1375
+ class Events
1376
+ include Google::Apis::Core::Hashable
1377
+
1378
+ # The user's access role for this calendar. Read-only. Possible values are:
1379
+ # - "none" - The user has no access.
1380
+ # - "freeBusyReader" - The user has read access to free/busy information.
1381
+ # - "reader" - The user has read access to the calendar. Private events will
1382
+ # appear to users with reader access, but event details will be hidden.
1383
+ # - "writer" - The user has read and write access to the calendar. Private
1384
+ # events will appear to users with writer access, and event details will be
1385
+ # visible.
1386
+ # - "owner" - The user has ownership of the calendar. This role has all of the
1387
+ # permissions of the writer role with the additional ability to see and
1388
+ # manipulate ACLs.
1389
+ # Corresponds to the JSON property `accessRole`
1390
+ # @return [String]
1391
+ attr_accessor :access_role
1392
+
1393
+ # The default reminders on the calendar for the authenticated user. These
1394
+ # reminders apply to all events on this calendar that do not explicitly override
1395
+ # them (i.e. do not have reminders.useDefault set to True).
1396
+ # Corresponds to the JSON property `defaultReminders`
1397
+ # @return [Array<Google::Apis::CalendarV3::EventReminder>]
1398
+ attr_accessor :default_reminders
1399
+
1400
+ # Description of the calendar. Read-only.
1401
+ # Corresponds to the JSON property `description`
1402
+ # @return [String]
1403
+ attr_accessor :description
1404
+
1405
+ # ETag of the collection.
1406
+ # Corresponds to the JSON property `etag`
1407
+ # @return [String]
1408
+ attr_accessor :etag
1409
+
1410
+ # List of events on the calendar.
1411
+ # Corresponds to the JSON property `items`
1412
+ # @return [Array<Google::Apis::CalendarV3::Event>]
1413
+ attr_accessor :items
1414
+
1415
+ # Type of the collection ("calendar#events").
1416
+ # Corresponds to the JSON property `kind`
1417
+ # @return [String]
1418
+ attr_accessor :kind
1419
+
1420
+ # Token used to access the next page of this result. Omitted if no further
1421
+ # results are available, in which case nextSyncToken is provided.
1422
+ # Corresponds to the JSON property `nextPageToken`
1423
+ # @return [String]
1424
+ attr_accessor :next_page_token
1425
+
1426
+ # Token used at a later point in time to retrieve only the entries that have
1427
+ # changed since this result was returned. Omitted if further results are
1428
+ # available, in which case nextPageToken is provided.
1429
+ # Corresponds to the JSON property `nextSyncToken`
1430
+ # @return [String]
1431
+ attr_accessor :next_sync_token
1432
+
1433
+ # Title of the calendar. Read-only.
1434
+ # Corresponds to the JSON property `summary`
1435
+ # @return [String]
1436
+ attr_accessor :summary
1437
+
1438
+ # The time zone of the calendar. Read-only.
1439
+ # Corresponds to the JSON property `timeZone`
1440
+ # @return [String]
1441
+ attr_accessor :time_zone
1442
+
1443
+ # Last modification time of the calendar (as a RFC3339 timestamp). Read-only.
1444
+ # Corresponds to the JSON property `updated`
1445
+ # @return [DateTime]
1446
+ attr_accessor :updated
1447
+
1448
+ def initialize(**args)
1449
+ update!(**args)
1450
+ end
1451
+
1452
+ # Update properties of this object
1453
+ def update!(**args)
1454
+ @access_role = args[:access_role] if args.key?(:access_role)
1455
+ @default_reminders = args[:default_reminders] if args.key?(:default_reminders)
1456
+ @description = args[:description] if args.key?(:description)
1457
+ @etag = args[:etag] if args.key?(:etag)
1458
+ @items = args[:items] if args.key?(:items)
1459
+ @kind = args[:kind] if args.key?(:kind)
1460
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1461
+ @next_sync_token = args[:next_sync_token] if args.key?(:next_sync_token)
1462
+ @summary = args[:summary] if args.key?(:summary)
1463
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
1464
+ @updated = args[:updated] if args.key?(:updated)
1465
+ end
1466
+ end
1467
+
1468
+ #
1469
+ class FreeBusyCalendar
1470
+ include Google::Apis::Core::Hashable
1471
+
1472
+ # List of time ranges during which this calendar should be regarded as busy.
1473
+ # Corresponds to the JSON property `busy`
1474
+ # @return [Array<Google::Apis::CalendarV3::TimePeriod>]
1475
+ attr_accessor :busy
1476
+
1477
+ # Optional error(s) (if computation for the calendar failed).
1478
+ # Corresponds to the JSON property `errors`
1479
+ # @return [Array<Google::Apis::CalendarV3::Error>]
1480
+ attr_accessor :errors
1481
+
1482
+ def initialize(**args)
1483
+ update!(**args)
1484
+ end
1485
+
1486
+ # Update properties of this object
1487
+ def update!(**args)
1488
+ @busy = args[:busy] if args.key?(:busy)
1489
+ @errors = args[:errors] if args.key?(:errors)
1490
+ end
1491
+ end
1492
+
1493
+ #
1494
+ class FreeBusyGroup
1495
+ include Google::Apis::Core::Hashable
1496
+
1497
+ # List of calendars' identifiers within a group.
1498
+ # Corresponds to the JSON property `calendars`
1499
+ # @return [Array<String>]
1500
+ attr_accessor :calendars
1501
+
1502
+ # Optional error(s) (if computation for the group failed).
1503
+ # Corresponds to the JSON property `errors`
1504
+ # @return [Array<Google::Apis::CalendarV3::Error>]
1505
+ attr_accessor :errors
1506
+
1507
+ def initialize(**args)
1508
+ update!(**args)
1509
+ end
1510
+
1511
+ # Update properties of this object
1512
+ def update!(**args)
1513
+ @calendars = args[:calendars] if args.key?(:calendars)
1514
+ @errors = args[:errors] if args.key?(:errors)
1515
+ end
1516
+ end
1517
+
1518
+ #
1519
+ class FreeBusyRequest
1520
+ include Google::Apis::Core::Hashable
1521
+
1522
+ # Maximal number of calendars for which FreeBusy information is to be provided.
1523
+ # Optional.
1524
+ # Corresponds to the JSON property `calendarExpansionMax`
1525
+ # @return [Fixnum]
1526
+ attr_accessor :calendar_expansion_max
1527
+
1528
+ # Maximal number of calendar identifiers to be provided for a single group.
1529
+ # Optional. An error will be returned for a group with more members than this
1530
+ # value.
1531
+ # Corresponds to the JSON property `groupExpansionMax`
1532
+ # @return [Fixnum]
1533
+ attr_accessor :group_expansion_max
1534
+
1535
+ # List of calendars and/or groups to query.
1536
+ # Corresponds to the JSON property `items`
1537
+ # @return [Array<Google::Apis::CalendarV3::FreeBusyRequestItem>]
1538
+ attr_accessor :items
1539
+
1540
+ # The end of the interval for the query.
1541
+ # Corresponds to the JSON property `timeMax`
1542
+ # @return [DateTime]
1543
+ attr_accessor :time_max
1544
+
1545
+ # The start of the interval for the query.
1546
+ # Corresponds to the JSON property `timeMin`
1547
+ # @return [DateTime]
1548
+ attr_accessor :time_min
1549
+
1550
+ # Time zone used in the response. Optional. The default is UTC.
1551
+ # Corresponds to the JSON property `timeZone`
1552
+ # @return [String]
1553
+ attr_accessor :time_zone
1554
+
1555
+ def initialize(**args)
1556
+ update!(**args)
1557
+ end
1558
+
1559
+ # Update properties of this object
1560
+ def update!(**args)
1561
+ @calendar_expansion_max = args[:calendar_expansion_max] if args.key?(:calendar_expansion_max)
1562
+ @group_expansion_max = args[:group_expansion_max] if args.key?(:group_expansion_max)
1563
+ @items = args[:items] if args.key?(:items)
1564
+ @time_max = args[:time_max] if args.key?(:time_max)
1565
+ @time_min = args[:time_min] if args.key?(:time_min)
1566
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
1567
+ end
1568
+ end
1569
+
1570
+ #
1571
+ class FreeBusyRequestItem
1572
+ include Google::Apis::Core::Hashable
1573
+
1574
+ # The identifier of a calendar or a group.
1575
+ # Corresponds to the JSON property `id`
1576
+ # @return [String]
1577
+ attr_accessor :id
1578
+
1579
+ def initialize(**args)
1580
+ update!(**args)
1581
+ end
1582
+
1583
+ # Update properties of this object
1584
+ def update!(**args)
1585
+ @id = args[:id] if args.key?(:id)
1586
+ end
1587
+ end
1588
+
1589
+ #
1590
+ class FreeBusyResponse
1591
+ include Google::Apis::Core::Hashable
1592
+
1593
+ # List of free/busy information for calendars.
1594
+ # Corresponds to the JSON property `calendars`
1595
+ # @return [Hash<String,Google::Apis::CalendarV3::FreeBusyCalendar>]
1596
+ attr_accessor :calendars
1597
+
1598
+ # Expansion of groups.
1599
+ # Corresponds to the JSON property `groups`
1600
+ # @return [Hash<String,Google::Apis::CalendarV3::FreeBusyGroup>]
1601
+ attr_accessor :groups
1602
+
1603
+ # Type of the resource ("calendar#freeBusy").
1604
+ # Corresponds to the JSON property `kind`
1605
+ # @return [String]
1606
+ attr_accessor :kind
1607
+
1608
+ # The end of the interval.
1609
+ # Corresponds to the JSON property `timeMax`
1610
+ # @return [DateTime]
1611
+ attr_accessor :time_max
1612
+
1613
+ # The start of the interval.
1614
+ # Corresponds to the JSON property `timeMin`
1615
+ # @return [DateTime]
1616
+ attr_accessor :time_min
1617
+
1618
+ def initialize(**args)
1619
+ update!(**args)
1620
+ end
1621
+
1622
+ # Update properties of this object
1623
+ def update!(**args)
1624
+ @calendars = args[:calendars] if args.key?(:calendars)
1625
+ @groups = args[:groups] if args.key?(:groups)
1626
+ @kind = args[:kind] if args.key?(:kind)
1627
+ @time_max = args[:time_max] if args.key?(:time_max)
1628
+ @time_min = args[:time_min] if args.key?(:time_min)
1629
+ end
1630
+ end
1631
+
1632
+ #
1633
+ class Setting
1634
+ include Google::Apis::Core::Hashable
1635
+
1636
+ # ETag of the resource.
1637
+ # Corresponds to the JSON property `etag`
1638
+ # @return [String]
1639
+ attr_accessor :etag
1640
+
1641
+ # The id of the user setting.
1642
+ # Corresponds to the JSON property `id`
1643
+ # @return [String]
1644
+ attr_accessor :id
1645
+
1646
+ # Type of the resource ("calendar#setting").
1647
+ # Corresponds to the JSON property `kind`
1648
+ # @return [String]
1649
+ attr_accessor :kind
1650
+
1651
+ # Value of the user setting. The format of the value depends on the ID of the
1652
+ # setting. It must always be a UTF-8 string of length up to 1024 characters.
1653
+ # Corresponds to the JSON property `value`
1654
+ # @return [String]
1655
+ attr_accessor :value
1656
+
1657
+ def initialize(**args)
1658
+ update!(**args)
1659
+ end
1660
+
1661
+ # Update properties of this object
1662
+ def update!(**args)
1663
+ @etag = args[:etag] if args.key?(:etag)
1664
+ @id = args[:id] if args.key?(:id)
1665
+ @kind = args[:kind] if args.key?(:kind)
1666
+ @value = args[:value] if args.key?(:value)
1667
+ end
1668
+ end
1669
+
1670
+ #
1671
+ class Settings
1672
+ include Google::Apis::Core::Hashable
1673
+
1674
+ # Etag of the collection.
1675
+ # Corresponds to the JSON property `etag`
1676
+ # @return [String]
1677
+ attr_accessor :etag
1678
+
1679
+ # List of user settings.
1680
+ # Corresponds to the JSON property `items`
1681
+ # @return [Array<Google::Apis::CalendarV3::Setting>]
1682
+ attr_accessor :items
1683
+
1684
+ # Type of the collection ("calendar#settings").
1685
+ # Corresponds to the JSON property `kind`
1686
+ # @return [String]
1687
+ attr_accessor :kind
1688
+
1689
+ # Token used to access the next page of this result. Omitted if no further
1690
+ # results are available, in which case nextSyncToken is provided.
1691
+ # Corresponds to the JSON property `nextPageToken`
1692
+ # @return [String]
1693
+ attr_accessor :next_page_token
1694
+
1695
+ # Token used at a later point in time to retrieve only the entries that have
1696
+ # changed since this result was returned. Omitted if further results are
1697
+ # available, in which case nextPageToken is provided.
1698
+ # Corresponds to the JSON property `nextSyncToken`
1699
+ # @return [String]
1700
+ attr_accessor :next_sync_token
1701
+
1702
+ def initialize(**args)
1703
+ update!(**args)
1704
+ end
1705
+
1706
+ # Update properties of this object
1707
+ def update!(**args)
1708
+ @etag = args[:etag] if args.key?(:etag)
1709
+ @items = args[:items] if args.key?(:items)
1710
+ @kind = args[:kind] if args.key?(:kind)
1711
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1712
+ @next_sync_token = args[:next_sync_token] if args.key?(:next_sync_token)
1713
+ end
1714
+ end
1715
+
1716
+ #
1717
+ class TimePeriod
1718
+ include Google::Apis::Core::Hashable
1719
+
1720
+ # The (exclusive) end of the time period.
1721
+ # Corresponds to the JSON property `end`
1722
+ # @return [DateTime]
1723
+ attr_accessor :end
1724
+
1725
+ # The (inclusive) start of the time period.
1726
+ # Corresponds to the JSON property `start`
1727
+ # @return [DateTime]
1728
+ attr_accessor :start
1729
+
1730
+ def initialize(**args)
1731
+ update!(**args)
1732
+ end
1733
+
1734
+ # Update properties of this object
1735
+ def update!(**args)
1736
+ @end = args[:end] if args.key?(:end)
1737
+ @start = args[:start] if args.key?(:start)
1738
+ end
1739
+ end
1740
+ end
1741
+ end
1742
+ end