google-api-client 0.8.6 → 0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (497) hide show
  1. checksums.yaml +4 -4
  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 +22 -0
  7. data/.yardopts +12 -0
  8. data/CHANGELOG.md +41 -2
  9. data/CONTRIBUTING.md +31 -0
  10. data/Gemfile +32 -2
  11. data/MIGRATING.md +171 -0
  12. data/README.md +181 -148
  13. data/Rakefile +1 -40
  14. data/api_names.yaml +1036 -0
  15. data/api_names_out.yaml +26053 -0
  16. data/bin/generate-api +95 -0
  17. data/generated/google/apis/adexchangebuyer_v1_3.rb +35 -0
  18. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +1335 -0
  19. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +446 -0
  20. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +872 -0
  21. data/generated/google/apis/adexchangeseller_v2_0.rb +38 -0
  22. data/generated/google/apis/adexchangeseller_v2_0/classes.rb +792 -0
  23. data/generated/google/apis/adexchangeseller_v2_0/representations.rb +309 -0
  24. data/generated/google/apis/adexchangeseller_v2_0/service.rb +668 -0
  25. data/generated/google/apis/admin_datatransfer_v1.rb +37 -0
  26. data/generated/google/apis/admin_datatransfer_v1/classes.rb +267 -0
  27. data/generated/google/apis/admin_datatransfer_v1/representations.rb +118 -0
  28. data/generated/google/apis/admin_datatransfer_v1/service.rb +262 -0
  29. data/generated/google/apis/admin_directory_v1.rb +113 -0
  30. data/generated/google/apis/admin_directory_v1/classes.rb +3141 -0
  31. data/generated/google/apis/admin_directory_v1/representations.rb +1029 -0
  32. data/generated/google/apis/admin_directory_v1/service.rb +3818 -0
  33. data/generated/google/apis/admin_reports_v1.rb +38 -0
  34. data/generated/google/apis/admin_reports_v1/classes.rb +582 -0
  35. data/generated/google/apis/admin_reports_v1/representations.rb +231 -0
  36. data/generated/google/apis/admin_reports_v1/service.rb +336 -0
  37. data/generated/google/apis/adsense_v1_4.rb +38 -0
  38. data/generated/google/apis/adsense_v1_4/classes.rb +1285 -0
  39. data/generated/google/apis/adsense_v1_4/representations.rb +494 -0
  40. data/generated/google/apis/adsense_v1_4/service.rb +1714 -0
  41. data/generated/google/apis/adsensehost_v4_1.rb +35 -0
  42. data/generated/google/apis/adsensehost_v4_1/classes.rb +834 -0
  43. data/generated/google/apis/adsensehost_v4_1/representations.rb +327 -0
  44. data/generated/google/apis/adsensehost_v4_1/service.rb +1164 -0
  45. data/generated/google/apis/analytics_v3.rb +49 -0
  46. data/generated/google/apis/analytics_v3/classes.rb +5118 -0
  47. data/generated/google/apis/analytics_v3/representations.rb +1662 -0
  48. data/generated/google/apis/analytics_v3/service.rb +3568 -0
  49. data/generated/google/apis/androidenterprise_v1.rb +35 -0
  50. data/generated/google/apis/androidenterprise_v1/classes.rb +1443 -0
  51. data/generated/google/apis/androidenterprise_v1/representations.rb +538 -0
  52. data/generated/google/apis/androidenterprise_v1/service.rb +2602 -0
  53. data/generated/google/apis/androidpublisher_v2.rb +34 -0
  54. data/generated/google/apis/androidpublisher_v2/classes.rb +1411 -0
  55. data/generated/google/apis/androidpublisher_v2/representations.rb +646 -0
  56. data/generated/google/apis/androidpublisher_v2/service.rb +2338 -0
  57. data/generated/google/apis/appengine_v1beta4.rb +35 -0
  58. data/generated/google/apis/appengine_v1beta4/classes.rb +1532 -0
  59. data/generated/google/apis/appengine_v1beta4/representations.rb +526 -0
  60. data/generated/google/apis/appengine_v1beta4/service.rb +476 -0
  61. data/generated/google/apis/appsactivity_v1.rb +46 -0
  62. data/generated/google/apis/appsactivity_v1/classes.rb +392 -0
  63. data/generated/google/apis/appsactivity_v1/representations.rb +184 -0
  64. data/generated/google/apis/appsactivity_v1/service.rb +128 -0
  65. data/generated/google/apis/appstate_v1.rb +34 -0
  66. data/generated/google/apis/appstate_v1/classes.rb +154 -0
  67. data/generated/google/apis/appstate_v1/representations.rb +79 -0
  68. data/generated/google/apis/appstate_v1/service.rb +260 -0
  69. data/generated/google/apis/autoscaler_v1beta2.rb +38 -0
  70. data/generated/google/apis/autoscaler_v1beta2/classes.rb +747 -0
  71. data/generated/google/apis/autoscaler_v1beta2/representations.rb +281 -0
  72. data/generated/google/apis/autoscaler_v1beta2/service.rb +478 -0
  73. data/generated/google/apis/bigquery_v2.rb +52 -0
  74. data/generated/google/apis/bigquery_v2/classes.rb +2471 -0
  75. data/generated/google/apis/bigquery_v2/representations.rb +816 -0
  76. data/generated/google/apis/bigquery_v2/service.rb +982 -0
  77. data/generated/google/apis/blogger_v3.rb +37 -0
  78. data/generated/google/apis/blogger_v3/classes.rb +1354 -0
  79. data/generated/google/apis/blogger_v3/representations.rb +562 -0
  80. data/generated/google/apis/blogger_v3/service.rb +1587 -0
  81. data/generated/google/apis/books_v1.rb +34 -0
  82. data/generated/google/apis/books_v1/classes.rb +3956 -0
  83. data/generated/google/apis/books_v1/representations.rb +1538 -0
  84. data/generated/google/apis/books_v1/service.rb +2290 -0
  85. data/generated/google/apis/calendar_v3.rb +37 -0
  86. data/generated/google/apis/calendar_v3/classes.rb +1742 -0
  87. data/generated/google/apis/calendar_v3/representations.rb +567 -0
  88. data/generated/google/apis/calendar_v3/service.rb +1968 -0
  89. data/{lib/google/api_client/service_account.rb → generated/google/apis/civicinfo_v2.rb} +18 -8
  90. data/generated/google/apis/civicinfo_v2/classes.rb +1127 -0
  91. data/generated/google/apis/civicinfo_v2/representations.rb +383 -0
  92. data/generated/google/apis/civicinfo_v2/service.rb +279 -0
  93. data/generated/google/apis/classroom_v1.rb +49 -0
  94. data/generated/google/apis/classroom_v1/classes.rb +512 -0
  95. data/generated/google/apis/classroom_v1/representations.rb +217 -0
  96. data/generated/google/apis/classroom_v1/service.rb +970 -0
  97. data/generated/google/apis/classroom_v1beta1.rb +49 -0
  98. data/generated/google/apis/classroom_v1beta1/classes.rb +447 -0
  99. data/generated/google/apis/classroom_v1beta1/representations.rb +190 -0
  100. data/generated/google/apis/classroom_v1beta1/service.rb +791 -0
  101. data/generated/google/apis/cloudbilling_v1.rb +35 -0
  102. data/generated/google/apis/cloudbilling_v1/classes.rb +169 -0
  103. data/generated/google/apis/cloudbilling_v1/representations.rb +79 -0
  104. data/generated/google/apis/cloudbilling_v1/service.rb +258 -0
  105. data/generated/google/apis/clouddebugger_v2.rb +41 -0
  106. data/generated/google/apis/clouddebugger_v2/classes.rb +1004 -0
  107. data/generated/google/apis/clouddebugger_v2/representations.rb +410 -0
  108. data/generated/google/apis/clouddebugger_v2/service.rb +370 -0
  109. data/generated/google/apis/cloudmonitoring_v2beta2.rb +37 -0
  110. data/generated/google/apis/cloudmonitoring_v2beta2/classes.rb +679 -0
  111. data/generated/google/apis/cloudmonitoring_v2beta2/representations.rb +311 -0
  112. data/generated/google/apis/cloudmonitoring_v2beta2/service.rb +452 -0
  113. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +38 -0
  114. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +437 -0
  115. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +188 -0
  116. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +623 -0
  117. data/generated/google/apis/cloudtrace_v1.rb +35 -0
  118. data/generated/google/apis/cloudtrace_v1/classes.rb +188 -0
  119. data/generated/google/apis/cloudtrace_v1/representations.rb +92 -0
  120. data/generated/google/apis/cloudtrace_v1/service.rb +190 -0
  121. data/generated/google/apis/clouduseraccounts_beta.rb +43 -0
  122. data/generated/google/apis/clouduseraccounts_beta/classes.rb +823 -0
  123. data/generated/google/apis/clouduseraccounts_beta/representations.rb +313 -0
  124. data/generated/google/apis/clouduseraccounts_beta/service.rb +854 -0
  125. data/generated/google/apis/compute_beta.rb +49 -0
  126. data/generated/google/apis/compute_beta/classes.rb +9128 -0
  127. data/generated/google/apis/compute_beta/representations.rb +3048 -0
  128. data/generated/google/apis/compute_beta/service.rb +10154 -0
  129. data/generated/google/apis/compute_v1.rb +49 -0
  130. data/generated/google/apis/compute_v1/classes.rb +8681 -0
  131. data/generated/google/apis/compute_v1/representations.rb +2895 -0
  132. data/generated/google/apis/compute_v1/service.rb +9252 -0
  133. data/generated/google/apis/container_v1.rb +35 -0
  134. data/generated/google/apis/container_v1/classes.rb +463 -0
  135. data/generated/google/apis/container_v1/representations.rb +175 -0
  136. data/generated/google/apis/container_v1/service.rb +367 -0
  137. data/generated/google/apis/container_v1beta1.rb +35 -0
  138. data/generated/google/apis/container_v1beta1/classes.rb +466 -0
  139. data/generated/google/apis/container_v1beta1/representations.rb +177 -0
  140. data/generated/google/apis/container_v1beta1/service.rb +394 -0
  141. data/generated/google/apis/content_v2.rb +35 -0
  142. data/generated/google/apis/content_v2/classes.rb +5986 -0
  143. data/generated/google/apis/content_v2/representations.rb +2288 -0
  144. data/generated/google/apis/content_v2/service.rb +2338 -0
  145. data/generated/google/apis/coordinate_v1.rb +37 -0
  146. data/generated/google/apis/coordinate_v1/classes.rb +669 -0
  147. data/generated/google/apis/coordinate_v1/representations.rb +285 -0
  148. data/generated/google/apis/coordinate_v1/service.rb +678 -0
  149. data/{lib/google/api_client/auth/compute_service_account.rb → generated/google/apis/customsearch_v1.rb} +13 -10
  150. data/generated/google/apis/customsearch_v1/classes.rb +771 -0
  151. data/generated/google/apis/customsearch_v1/representations.rb +276 -0
  152. data/generated/google/apis/customsearch_v1/service.rb +207 -0
  153. data/generated/google/apis/datastore_v1beta2.rb +40 -0
  154. data/generated/google/apis/datastore_v1beta2/classes.rb +1186 -0
  155. data/generated/google/apis/datastore_v1beta2/representations.rb +526 -0
  156. data/generated/google/apis/datastore_v1beta2/service.rb +294 -0
  157. data/generated/google/apis/deploymentmanager_v2.rb +44 -0
  158. data/generated/google/apis/deploymentmanager_v2/classes.rb +1091 -0
  159. data/generated/google/apis/deploymentmanager_v2/representations.rb +422 -0
  160. data/generated/google/apis/deploymentmanager_v2/service.rb +857 -0
  161. data/generated/google/apis/deploymentmanager_v2beta2.rb +44 -0
  162. data/generated/google/apis/deploymentmanager_v2beta2/classes.rb +843 -0
  163. data/generated/google/apis/deploymentmanager_v2beta2/representations.rb +306 -0
  164. data/generated/google/apis/deploymentmanager_v2beta2/service.rb +689 -0
  165. data/generated/google/apis/dfareporting_v2_1.rb +37 -0
  166. data/generated/google/apis/dfareporting_v2_1/classes.rb +10770 -0
  167. data/generated/google/apis/dfareporting_v2_1/representations.rb +3438 -0
  168. data/generated/google/apis/dfareporting_v2_1/service.rb +8585 -0
  169. data/generated/google/apis/discovery_v1.rb +32 -0
  170. data/generated/google/apis/discovery_v1/classes.rb +961 -0
  171. data/generated/google/apis/discovery_v1/representations.rb +357 -0
  172. data/generated/google/apis/discovery_v1/service.rb +142 -0
  173. data/generated/google/apis/dns_v1.rb +44 -0
  174. data/generated/google/apis/dns_v1/classes.rb +406 -0
  175. data/generated/google/apis/dns_v1/representations.rb +151 -0
  176. data/generated/google/apis/dns_v1/service.rb +454 -0
  177. data/generated/google/apis/doubleclickbidmanager_v1.rb +31 -0
  178. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +716 -0
  179. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +298 -0
  180. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +341 -0
  181. data/generated/google/apis/doubleclicksearch_v2.rb +35 -0
  182. data/generated/google/apis/doubleclicksearch_v2/classes.rb +956 -0
  183. data/generated/google/apis/doubleclicksearch_v2/representations.rb +316 -0
  184. data/generated/google/apis/doubleclicksearch_v2/service.rb +480 -0
  185. data/generated/google/apis/drive_v2.rb +58 -0
  186. data/generated/google/apis/drive_v2/classes.rb +2562 -0
  187. data/generated/google/apis/drive_v2/representations.rb +795 -0
  188. data/generated/google/apis/drive_v2/service.rb +2696 -0
  189. data/generated/google/apis/drive_v3.rb +55 -0
  190. data/generated/google/apis/drive_v3/classes.rb +1534 -0
  191. data/generated/google/apis/drive_v3/representations.rb +497 -0
  192. data/generated/google/apis/drive_v3/service.rb +1541 -0
  193. data/generated/google/apis/fitness_v1.rb +49 -0
  194. data/generated/google/apis/fitness_v1/classes.rb +885 -0
  195. data/generated/google/apis/fitness_v1/representations.rb +320 -0
  196. data/generated/google/apis/fitness_v1/service.rb +675 -0
  197. data/generated/google/apis/fusiontables_v2.rb +37 -0
  198. data/generated/google/apis/fusiontables_v2/classes.rb +1048 -0
  199. data/generated/google/apis/fusiontables_v2/representations.rb +409 -0
  200. data/generated/google/apis/fusiontables_v2/service.rb +1463 -0
  201. data/generated/google/apis/games_configuration_v1configuration.rb +34 -0
  202. data/generated/google/apis/games_configuration_v1configuration/classes.rb +506 -0
  203. data/generated/google/apis/games_configuration_v1configuration/representations.rb +206 -0
  204. data/generated/google/apis/games_configuration_v1configuration/service.rb +565 -0
  205. data/generated/google/apis/games_management_v1management.rb +37 -0
  206. data/generated/google/apis/games_management_v1management/classes.rb +524 -0
  207. data/generated/google/apis/games_management_v1management/representations.rb +231 -0
  208. data/generated/google/apis/games_management_v1management/service.rb +994 -0
  209. data/generated/google/apis/games_v1.rb +40 -0
  210. data/generated/google/apis/games_v1/classes.rb +4617 -0
  211. data/generated/google/apis/games_v1/representations.rb +1584 -0
  212. data/generated/google/apis/games_v1/service.rb +2290 -0
  213. data/generated/google/apis/gan_v1beta1.rb +31 -0
  214. data/generated/google/apis/gan_v1beta1/classes.rb +1428 -0
  215. data/generated/google/apis/gan_v1beta1/representations.rb +428 -0
  216. data/generated/google/apis/gan_v1beta1/service.rb +682 -0
  217. data/generated/google/apis/genomics_v1.rb +49 -0
  218. data/generated/google/apis/genomics_v1/classes.rb +2609 -0
  219. data/generated/google/apis/genomics_v1/representations.rb +909 -0
  220. data/generated/google/apis/genomics_v1/service.rb +1676 -0
  221. data/generated/google/apis/genomics_v1beta2.rb +46 -0
  222. data/generated/google/apis/genomics_v1beta2/classes.rb +3288 -0
  223. data/generated/google/apis/genomics_v1beta2/representations.rb +1194 -0
  224. data/generated/google/apis/genomics_v1beta2/service.rb +2392 -0
  225. data/generated/google/apis/gmail_v1.rb +52 -0
  226. data/generated/google/apis/gmail_v1/classes.rb +794 -0
  227. data/generated/google/apis/gmail_v1/representations.rb +339 -0
  228. data/generated/google/apis/gmail_v1/service.rb +1470 -0
  229. data/generated/google/apis/groupsmigration_v1.rb +34 -0
  230. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  231. data/generated/google/apis/groupsmigration_v1/representations.rb +38 -0
  232. data/generated/google/apis/groupsmigration_v1/service.rb +110 -0
  233. data/generated/google/apis/groupssettings_v1.rb +34 -0
  234. data/generated/google/apis/groupssettings_v1/classes.rb +221 -0
  235. data/generated/google/apis/groupssettings_v1/representations.rb +64 -0
  236. data/generated/google/apis/groupssettings_v1/service.rb +179 -0
  237. data/generated/google/apis/identitytoolkit_v3.rb +31 -0
  238. data/generated/google/apis/identitytoolkit_v3/classes.rb +1466 -0
  239. data/generated/google/apis/identitytoolkit_v3/representations.rb +509 -0
  240. data/generated/google/apis/identitytoolkit_v3/service.rb +581 -0
  241. data/{spec/google/api_client/request_spec.rb → generated/google/apis/kgsearch_v1.rb} +16 -13
  242. data/generated/google/apis/kgsearch_v1/classes.rb +59 -0
  243. data/generated/google/apis/kgsearch_v1/representations.rb +39 -0
  244. data/generated/google/apis/kgsearch_v1/service.rb +111 -0
  245. data/generated/google/apis/licensing_v1.rb +34 -0
  246. data/generated/google/apis/licensing_v1/classes.rb +132 -0
  247. data/generated/google/apis/licensing_v1/representations.rb +68 -0
  248. data/generated/google/apis/licensing_v1/service.rb +369 -0
  249. data/generated/google/apis/logging_v1beta3.rb +47 -0
  250. data/generated/google/apis/logging_v1beta3/classes.rb +1079 -0
  251. data/generated/google/apis/logging_v1beta3/representations.rb +366 -0
  252. data/generated/google/apis/logging_v1beta3/service.rb +1001 -0
  253. data/generated/google/apis/manager_v1beta2.rb +53 -0
  254. data/generated/google/apis/manager_v1beta2/classes.rb +1287 -0
  255. data/generated/google/apis/manager_v1beta2/representations.rb +536 -0
  256. data/generated/google/apis/manager_v1beta2/service.rb +372 -0
  257. data/generated/google/apis/mapsengine_v1.rb +38 -0
  258. data/generated/google/apis/mapsengine_v1/classes.rb +2873 -0
  259. data/generated/google/apis/mapsengine_v1/representations.rb +1235 -0
  260. data/generated/google/apis/mapsengine_v1/service.rb +3388 -0
  261. data/generated/google/apis/mirror_v1.rb +37 -0
  262. data/generated/google/apis/mirror_v1/classes.rb +1072 -0
  263. data/generated/google/apis/mirror_v1/representations.rb +350 -0
  264. data/generated/google/apis/mirror_v1/service.rb +977 -0
  265. data/generated/google/apis/oauth2_v2.rb +43 -0
  266. data/generated/google/apis/oauth2_v2/classes.rb +245 -0
  267. data/generated/google/apis/oauth2_v2/representations.rb +94 -0
  268. data/generated/google/apis/oauth2_v2/service.rb +199 -0
  269. data/generated/google/apis/pagespeedonline_v2.rb +32 -0
  270. data/generated/google/apis/pagespeedonline_v2/classes.rb +614 -0
  271. data/generated/google/apis/pagespeedonline_v2/representations.rb +244 -0
  272. data/generated/google/apis/pagespeedonline_v2/service.rb +119 -0
  273. data/generated/google/apis/partners_v2.rb +32 -0
  274. data/generated/google/apis/partners_v2/classes.rb +942 -0
  275. data/generated/google/apis/partners_v2/representations.rb +402 -0
  276. data/generated/google/apis/partners_v2/service.rb +400 -0
  277. data/generated/google/apis/plus_domains_v1.rb +61 -0
  278. data/generated/google/apis/plus_domains_v1/classes.rb +2609 -0
  279. data/generated/google/apis/plus_domains_v1/representations.rb +987 -0
  280. data/generated/google/apis/plus_domains_v1/service.rb +904 -0
  281. data/generated/google/apis/plus_v1.rb +43 -0
  282. data/generated/google/apis/plus_v1/classes.rb +2094 -0
  283. data/generated/google/apis/plus_v1/representations.rb +805 -0
  284. data/generated/google/apis/plus_v1/service.rb +470 -0
  285. data/generated/google/apis/prediction_v1_6.rb +44 -0
  286. data/generated/google/apis/prediction_v1_6/classes.rb +751 -0
  287. data/generated/google/apis/prediction_v1_6/representations.rb +327 -0
  288. data/generated/google/apis/prediction_v1_6/service.rb +380 -0
  289. data/generated/google/apis/proximitybeacon_v1beta1.rb +31 -0
  290. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +639 -0
  291. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +274 -0
  292. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +591 -0
  293. data/generated/google/apis/pubsub_v1.rb +37 -0
  294. data/generated/google/apis/pubsub_v1/classes.rb +614 -0
  295. data/generated/google/apis/pubsub_v1/representations.rb +281 -0
  296. data/generated/google/apis/pubsub_v1/service.rb +774 -0
  297. data/generated/google/apis/pubsub_v1beta2.rb +37 -0
  298. data/generated/google/apis/pubsub_v1beta2/classes.rb +620 -0
  299. data/generated/google/apis/pubsub_v1beta2/representations.rb +282 -0
  300. data/generated/google/apis/pubsub_v1beta2/service.rb +774 -0
  301. data/generated/google/apis/qpx_express_v1.rb +31 -0
  302. data/generated/google/apis/qpx_express_v1/classes.rb +1268 -0
  303. data/generated/google/apis/qpx_express_v1/representations.rb +424 -0
  304. data/generated/google/apis/qpx_express_v1/service.rb +100 -0
  305. data/generated/google/apis/replicapool_v1beta2.rb +44 -0
  306. data/generated/google/apis/replicapool_v1beta2/classes.rb +631 -0
  307. data/generated/google/apis/replicapool_v1beta2/representations.rb +236 -0
  308. data/generated/google/apis/replicapool_v1beta2/service.rb +608 -0
  309. data/generated/google/apis/replicapoolupdater_v1beta1.rb +44 -0
  310. data/generated/google/apis/replicapoolupdater_v1beta1/classes.rb +733 -0
  311. data/generated/google/apis/replicapoolupdater_v1beta1/representations.rb +264 -0
  312. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +508 -0
  313. data/generated/google/apis/reseller_v1.rb +37 -0
  314. data/generated/google/apis/reseller_v1/classes.rb +520 -0
  315. data/generated/google/apis/reseller_v1/representations.rb +200 -0
  316. data/generated/google/apis/reseller_v1/service.rb +623 -0
  317. data/generated/google/apis/resourceviews_v1beta2.rb +50 -0
  318. data/generated/google/apis/resourceviews_v1beta2/classes.rb +660 -0
  319. data/generated/google/apis/resourceviews_v1beta2/representations.rb +269 -0
  320. data/generated/google/apis/resourceviews_v1beta2/service.rb +563 -0
  321. data/generated/google/apis/script_v1.rb +61 -0
  322. data/generated/google/apis/script_v1/classes.rb +259 -0
  323. data/generated/google/apis/script_v1/representations.rb +106 -0
  324. data/generated/google/apis/script_v1/service.rb +98 -0
  325. data/generated/google/apis/site_verification_v1.rb +37 -0
  326. data/generated/google/apis/site_verification_v1/classes.rb +185 -0
  327. data/generated/google/apis/site_verification_v1/representations.rb +101 -0
  328. data/generated/google/apis/site_verification_v1/service.rb +315 -0
  329. data/generated/google/apis/sqladmin_v1beta4.rb +37 -0
  330. data/generated/google/apis/sqladmin_v1beta4/classes.rb +2001 -0
  331. data/generated/google/apis/sqladmin_v1beta4/representations.rb +758 -0
  332. data/generated/google/apis/sqladmin_v1beta4/service.rb +1625 -0
  333. data/generated/google/apis/storage_v1.rb +46 -0
  334. data/generated/google/apis/storage_v1/classes.rb +1222 -0
  335. data/generated/google/apis/storage_v1/representations.rb +445 -0
  336. data/generated/google/apis/storage_v1/service.rb +1903 -0
  337. data/generated/google/apis/storagetransfer_v1.rb +35 -0
  338. data/generated/google/apis/storagetransfer_v1/classes.rb +1046 -0
  339. data/generated/google/apis/storagetransfer_v1/representations.rb +370 -0
  340. data/generated/google/apis/storagetransfer_v1/service.rb +473 -0
  341. data/generated/google/apis/tagmanager_v1.rb +52 -0
  342. data/generated/google/apis/tagmanager_v1/classes.rb +1384 -0
  343. data/generated/google/apis/tagmanager_v1/representations.rb +515 -0
  344. data/generated/google/apis/tagmanager_v1/service.rb +1817 -0
  345. data/generated/google/apis/taskqueue_v1beta2.rb +37 -0
  346. data/generated/google/apis/taskqueue_v1beta2/classes.rb +254 -0
  347. data/generated/google/apis/taskqueue_v1beta2/representations.rb +114 -0
  348. data/generated/google/apis/taskqueue_v1beta2/service.rb +408 -0
  349. data/generated/google/apis/tasks_v1.rb +37 -0
  350. data/generated/google/apis/tasks_v1/classes.rb +296 -0
  351. data/generated/google/apis/tasks_v1/representations.rb +115 -0
  352. data/generated/google/apis/tasks_v1/service.rb +643 -0
  353. data/generated/google/apis/translate_v2.rb +31 -0
  354. data/generated/google/apis/translate_v2/classes.rb +168 -0
  355. data/generated/google/apis/translate_v2/representations.rb +109 -0
  356. data/generated/google/apis/translate_v2/service.rb +182 -0
  357. data/generated/google/apis/urlshortener_v1.rb +34 -0
  358. data/generated/google/apis/urlshortener_v1/classes.rb +246 -0
  359. data/generated/google/apis/urlshortener_v1/representations.rb +111 -0
  360. data/generated/google/apis/urlshortener_v1/service.rb +176 -0
  361. data/generated/google/apis/webmasters_v3.rb +37 -0
  362. data/generated/google/apis/webmasters_v3/classes.rb +563 -0
  363. data/generated/google/apis/webmasters_v3/representations.rb +250 -0
  364. data/generated/google/apis/webmasters_v3/service.rb +573 -0
  365. data/generated/google/apis/youtube_analytics_v1.rb +46 -0
  366. data/generated/google/apis/youtube_analytics_v1/classes.rb +546 -0
  367. data/generated/google/apis/youtube_analytics_v1/representations.rb +243 -0
  368. data/generated/google/apis/youtube_analytics_v1/service.rb +562 -0
  369. data/generated/google/apis/youtube_v3.rb +49 -0
  370. data/generated/google/apis/youtube_v3/classes.rb +8136 -0
  371. data/generated/google/apis/youtube_v3/representations.rb +2838 -0
  372. data/generated/google/apis/youtube_v3/service.rb +4403 -0
  373. data/generated/google/apis/youtubereporting_v1.rb +38 -0
  374. data/generated/google/apis/youtubereporting_v1/classes.rb +258 -0
  375. data/generated/google/apis/youtubereporting_v1/representations.rb +128 -0
  376. data/generated/google/apis/youtubereporting_v1/service.rb +364 -0
  377. data/google-api-client.gemspec +27 -39
  378. data/lib/google/api_client/auth/installed_app.rb +7 -5
  379. data/lib/google/api_client/auth/key_utils.rb +1 -0
  380. data/lib/google/api_client/auth/storage.rb +4 -2
  381. data/lib/google/api_client/auth/storages/file_store.rb +2 -3
  382. data/lib/google/api_client/auth/storages/redis_store.rb +7 -2
  383. data/lib/google/api_client/client_secrets.rb +4 -5
  384. data/lib/google/apis.rb +48 -0
  385. data/lib/google/apis/core/api_command.rb +135 -0
  386. data/lib/google/apis/core/base_service.rb +317 -0
  387. data/lib/google/apis/core/batch.rb +239 -0
  388. data/lib/google/apis/core/download.rb +94 -0
  389. data/lib/google/apis/core/hashable.rb +44 -0
  390. data/lib/google/apis/core/http_client_adapter.rb +82 -0
  391. data/lib/google/apis/core/http_command.rb +312 -0
  392. data/lib/google/apis/core/json_representation.rb +127 -0
  393. data/lib/google/{api_client/version.rb → apis/core/logging.rb} +12 -8
  394. data/lib/google/apis/core/multipart.rb +187 -0
  395. data/lib/google/apis/core/upload.rb +288 -0
  396. data/lib/google/{api_client → apis}/errors.rb +39 -28
  397. data/lib/google/apis/generator.rb +70 -0
  398. data/lib/google/apis/generator/annotator.rb +295 -0
  399. data/lib/google/apis/generator/helpers.rb +74 -0
  400. data/lib/google/apis/generator/model.rb +143 -0
  401. data/lib/google/apis/generator/template.rb +124 -0
  402. data/lib/google/apis/generator/templates/_class.tmpl +40 -0
  403. data/lib/google/apis/generator/templates/_method.tmpl +92 -0
  404. data/lib/google/apis/generator/templates/_representation.tmpl +51 -0
  405. data/lib/google/apis/generator/templates/_representation_stub.tmpl +15 -0
  406. data/lib/google/apis/generator/templates/_representation_type.tmpl +10 -0
  407. data/lib/google/{api_client/reference.rb → apis/generator/templates/classes.rb.tmpl} +11 -9
  408. data/lib/google/apis/generator/templates/module.rb.tmpl +40 -0
  409. data/lib/google/apis/generator/templates/representations.rb.tmpl +32 -0
  410. data/lib/google/apis/generator/templates/service.rb.tmpl +60 -0
  411. data/lib/google/apis/options.rb +85 -0
  412. data/lib/google/apis/version.rb +39 -0
  413. data/rakelib/metrics.rake +22 -0
  414. data/rakelib/rubocop.rake +10 -0
  415. data/rakelib/spec.rake +11 -0
  416. data/rakelib/yard.rake +11 -0
  417. data/samples/Gemfile +7 -0
  418. data/samples/README.md +51 -0
  419. data/samples/google-api-samples +32 -0
  420. data/samples/lib/base_cli.rb +94 -0
  421. data/samples/lib/samples/analytics.rb +62 -0
  422. data/samples/lib/samples/calendar.rb +83 -0
  423. data/samples/lib/samples/drive.rb +82 -0
  424. data/samples/lib/samples/gmail.rb +50 -0
  425. data/samples/lib/samples/pubsub.rb +114 -0
  426. data/samples/lib/samples/translate.rb +44 -0
  427. data/samples/lib/samples/you_tube.rb +44 -0
  428. data/script/generate +95 -0
  429. data/script/package +8 -0
  430. data/script/release +15 -0
  431. data/spec/fixtures/files/api_names.yaml +3 -0
  432. data/spec/fixtures/files/auth_stored_credentials.json +8 -0
  433. data/spec/fixtures/files/child/.gitignore +0 -0
  434. data/spec/fixtures/files/client_secrets.json +1 -0
  435. data/spec/fixtures/files/invalid.json +1 -0
  436. data/spec/fixtures/files/test.blah +1 -0
  437. data/spec/fixtures/files/test.txt +1 -0
  438. data/spec/fixtures/files/test_api.json +440 -0
  439. data/spec/google/api_client/auth/storage_spec.rb +1 -3
  440. data/spec/google/api_client/auth/storages/file_store_spec.rb +1 -2
  441. data/spec/google/api_client/auth/storages/redis_store_spec.rb +1 -3
  442. data/spec/google/api_client/client_secrets_spec.rb +38 -1
  443. data/spec/google/apis/core/api_command_spec.rb +209 -0
  444. data/spec/google/apis/core/batch_spec.rb +142 -0
  445. data/spec/google/apis/core/download_spec.rb +103 -0
  446. data/spec/google/apis/core/hashable_spec.rb +60 -0
  447. data/spec/google/apis/core/http_command_spec.rb +284 -0
  448. data/spec/google/apis/core/json_representation_spec.rb +192 -0
  449. data/spec/google/apis/core/service_spec.rb +247 -0
  450. data/spec/google/apis/core/upload_spec.rb +300 -0
  451. data/{lib/google/api_client/discovery.rb → spec/google/apis/generated_spec.rb} +13 -5
  452. data/spec/google/apis/generator/generator_spec.rb +272 -0
  453. data/spec/google/apis/logging_spec.rb +45 -0
  454. data/spec/google/apis/options_spec.rb +40 -0
  455. data/spec/integration_tests/adsense_spec.rb +29 -0
  456. data/spec/integration_tests/drive_spec.rb +35 -0
  457. data/spec/integration_tests/pubsub_spec.rb +48 -0
  458. data/spec/integration_tests/url_shortener_spec.rb +45 -0
  459. data/spec/spec_helper.rb +131 -44
  460. data/spec/spec_helper/load_path_spec.rb +33 -0
  461. data/third_party/hurley_patches.rb +103 -0
  462. metadata +533 -170
  463. data/lib/compat/multi_json.rb +0 -19
  464. data/lib/google/api_client.rb +0 -750
  465. data/lib/google/api_client/auth/file_storage.rb +0 -59
  466. data/lib/google/api_client/auth/jwt_asserter.rb +0 -126
  467. data/lib/google/api_client/auth/pkcs12.rb +0 -41
  468. data/lib/google/api_client/batch.rb +0 -326
  469. data/lib/google/api_client/charset.rb +0 -33
  470. data/lib/google/api_client/discovery/api.rb +0 -310
  471. data/lib/google/api_client/discovery/media.rb +0 -77
  472. data/lib/google/api_client/discovery/method.rb +0 -363
  473. data/lib/google/api_client/discovery/resource.rb +0 -156
  474. data/lib/google/api_client/discovery/schema.rb +0 -117
  475. data/lib/google/api_client/environment.rb +0 -42
  476. data/lib/google/api_client/gzip.rb +0 -28
  477. data/lib/google/api_client/logging.rb +0 -32
  478. data/lib/google/api_client/media.rb +0 -259
  479. data/lib/google/api_client/railtie.rb +0 -18
  480. data/lib/google/api_client/request.rb +0 -350
  481. data/lib/google/api_client/result.rb +0 -255
  482. data/lib/google/api_client/service.rb +0 -233
  483. data/lib/google/api_client/service/batch.rb +0 -110
  484. data/lib/google/api_client/service/request.rb +0 -144
  485. data/lib/google/api_client/service/resource.rb +0 -40
  486. data/lib/google/api_client/service/result.rb +0 -162
  487. data/lib/google/api_client/service/simple_file_store.rb +0 -151
  488. data/lib/google/api_client/service/stub_generator.rb +0 -61
  489. data/spec/google/api_client/batch_spec.rb +0 -248
  490. data/spec/google/api_client/discovery_spec.rb +0 -708
  491. data/spec/google/api_client/gzip_spec.rb +0 -98
  492. data/spec/google/api_client/media_spec.rb +0 -178
  493. data/spec/google/api_client/result_spec.rb +0 -207
  494. data/spec/google/api_client/service_account_spec.rb +0 -169
  495. data/spec/google/api_client/service_spec.rb +0 -618
  496. data/spec/google/api_client/simple_file_store_spec.rb +0 -133
  497. data/spec/google/api_client_spec.rb +0 -352
@@ -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
+ # Lets you manipulate events and other calendar data.
24
+ #
25
+ # @see https://developers.google.com/google-apps/calendar/firstapp
26
+ module CalendarV3
27
+ VERSION = 'V3'
28
+ REVISION = '20151206'
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] unless args[:etag].nil?
64
+ @items = args[:items] unless args[:items].nil?
65
+ @kind = args[:kind] unless args[:kind].nil?
66
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
67
+ @next_sync_token = args[:next_sync_token] unless args[:next_sync_token].nil?
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] unless args[:etag].nil?
116
+ @id = args[:id] unless args[:id].nil?
117
+ @kind = args[:kind] unless args[:kind].nil?
118
+ @role = args[:role] unless args[:role].nil?
119
+ @scope = args[:scope] unless args[:scope].nil?
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] unless args[:type].nil?
149
+ @value = args[:value] unless args[:value].nil?
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] unless args[:description].nil?
202
+ @etag = args[:etag] unless args[:etag].nil?
203
+ @id = args[:id] unless args[:id].nil?
204
+ @kind = args[:kind] unless args[:kind].nil?
205
+ @location = args[:location] unless args[:location].nil?
206
+ @summary = args[:summary] unless args[:summary].nil?
207
+ @time_zone = args[:time_zone] unless args[:time_zone].nil?
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] unless args[:etag].nil?
250
+ @items = args[:items] unless args[:items].nil?
251
+ @kind = args[:kind] unless args[:kind].nil?
252
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
253
+ @next_sync_token = args[:next_sync_token] unless args[:next_sync_token].nil?
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] unless args[:access_role].nil?
384
+ @background_color = args[:background_color] unless args[:background_color].nil?
385
+ @color_id = args[:color_id] unless args[:color_id].nil?
386
+ @default_reminders = args[:default_reminders] unless args[:default_reminders].nil?
387
+ @deleted = args[:deleted] unless args[:deleted].nil?
388
+ @description = args[:description] unless args[:description].nil?
389
+ @etag = args[:etag] unless args[:etag].nil?
390
+ @foreground_color = args[:foreground_color] unless args[:foreground_color].nil?
391
+ @hidden = args[:hidden] unless args[:hidden].nil?
392
+ @id = args[:id] unless args[:id].nil?
393
+ @kind = args[:kind] unless args[:kind].nil?
394
+ @location = args[:location] unless args[:location].nil?
395
+ @notification_settings = args[:notification_settings] unless args[:notification_settings].nil?
396
+ @primary = args[:primary] unless args[:primary].nil?
397
+ @selected = args[:selected] unless args[:selected].nil?
398
+ @summary = args[:summary] unless args[:summary].nil?
399
+ @summary_override = args[:summary_override] unless args[:summary_override].nil?
400
+ @time_zone = args[:time_zone] unless args[:time_zone].nil?
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] unless args[:notifications].nil?
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] unless args[:delivery_method].nil?
453
+ @type = args[:type] unless args[:type].nil?
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] unless args[:address].nil?
523
+ @expiration = args[:expiration] unless args[:expiration].nil?
524
+ @id = args[:id] unless args[:id].nil?
525
+ @kind = args[:kind] unless args[:kind].nil?
526
+ @params = args[:params] unless args[:params].nil?
527
+ @payload = args[:payload] unless args[:payload].nil?
528
+ @resource_id = args[:resource_id] unless args[:resource_id].nil?
529
+ @resource_uri = args[:resource_uri] unless args[:resource_uri].nil?
530
+ @token = args[:token] unless args[:token].nil?
531
+ @type = args[:type] unless args[:type].nil?
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] unless args[:background].nil?
557
+ @foreground = args[:foreground] unless args[:foreground].nil?
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] unless args[:calendar].nil?
597
+ @event = args[:event] unless args[:event].nil?
598
+ @kind = args[:kind] unless args[:kind].nil?
599
+ @updated = args[:updated] unless args[:updated].nil?
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] unless args[:domain].nil?
632
+ @reason = args[:reason] unless args[:reason].nil?
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] unless args[:anyone_can_add_self].nil?
904
+ @attachments = args[:attachments] unless args[:attachments].nil?
905
+ @attendees = args[:attendees] unless args[:attendees].nil?
906
+ @attendees_omitted = args[:attendees_omitted] unless args[:attendees_omitted].nil?
907
+ @color_id = args[:color_id] unless args[:color_id].nil?
908
+ @created = args[:created] unless args[:created].nil?
909
+ @creator = args[:creator] unless args[:creator].nil?
910
+ @description = args[:description] unless args[:description].nil?
911
+ @end = args[:end] unless args[:end].nil?
912
+ @end_time_unspecified = args[:end_time_unspecified] unless args[:end_time_unspecified].nil?
913
+ @etag = args[:etag] unless args[:etag].nil?
914
+ @extended_properties = args[:extended_properties] unless args[:extended_properties].nil?
915
+ @gadget = args[:gadget] unless args[:gadget].nil?
916
+ @guests_can_invite_others = args[:guests_can_invite_others] unless args[:guests_can_invite_others].nil?
917
+ @guests_can_modify = args[:guests_can_modify] unless args[:guests_can_modify].nil?
918
+ @guests_can_see_other_guests = args[:guests_can_see_other_guests] unless args[:guests_can_see_other_guests].nil?
919
+ @hangout_link = args[:hangout_link] unless args[:hangout_link].nil?
920
+ @html_link = args[:html_link] unless args[:html_link].nil?
921
+ @i_cal_uid = args[:i_cal_uid] unless args[:i_cal_uid].nil?
922
+ @id = args[:id] unless args[:id].nil?
923
+ @kind = args[:kind] unless args[:kind].nil?
924
+ @location = args[:location] unless args[:location].nil?
925
+ @locked = args[:locked] unless args[:locked].nil?
926
+ @organizer = args[:organizer] unless args[:organizer].nil?
927
+ @original_start_time = args[:original_start_time] unless args[:original_start_time].nil?
928
+ @private_copy = args[:private_copy] unless args[:private_copy].nil?
929
+ @recurrence = args[:recurrence] unless args[:recurrence].nil?
930
+ @recurring_event_id = args[:recurring_event_id] unless args[:recurring_event_id].nil?
931
+ @reminders = args[:reminders] unless args[:reminders].nil?
932
+ @sequence = args[:sequence] unless args[:sequence].nil?
933
+ @source = args[:source] unless args[:source].nil?
934
+ @start = args[:start] unless args[:start].nil?
935
+ @status = args[:status] unless args[:status].nil?
936
+ @summary = args[:summary] unless args[:summary].nil?
937
+ @transparency = args[:transparency] unless args[:transparency].nil?
938
+ @updated = args[:updated] unless args[:updated].nil?
939
+ @visibility = args[:visibility] unless args[:visibility].nil?
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] unless args[:display_name].nil?
976
+ @email = args[:email] unless args[:email].nil?
977
+ @id = args[:id] unless args[:id].nil?
978
+ @self = args[:self] unless args[:self].nil?
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] unless args[:private].nil?
1005
+ @shared = args[:shared] unless args[:shared].nil?
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] unless args[:display_mode].nil?
1064
+ @height = args[:height] unless args[:height].nil?
1065
+ @icon_link = args[:icon_link] unless args[:icon_link].nil?
1066
+ @link = args[:link] unless args[:link].nil?
1067
+ @preferences = args[:preferences] unless args[:preferences].nil?
1068
+ @title = args[:title] unless args[:title].nil?
1069
+ @type = args[:type] unless args[:type].nil?
1070
+ @width = args[:width] unless args[:width].nil?
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] unless args[:display_name].nil?
1112
+ @email = args[:email] unless args[:email].nil?
1113
+ @id = args[:id] unless args[:id].nil?
1114
+ @self = args[:self] unless args[:self].nil?
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] unless args[:overrides].nil?
1142
+ @use_default = args[:use_default] unless args[:use_default].nil?
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] unless args[:title].nil?
1169
+ @url = args[:url] unless args[:url].nil?
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] unless args[:file_id].nil?
1214
+ @file_url = args[:file_url] unless args[:file_url].nil?
1215
+ @icon_link = args[:icon_link] unless args[:icon_link].nil?
1216
+ @mime_type = args[:mime_type] unless args[:mime_type].nil?
1217
+ @title = args[:title] unless args[:title].nil?
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] unless args[:additional_guests].nil?
1294
+ @comment = args[:comment] unless args[:comment].nil?
1295
+ @display_name = args[:display_name] unless args[:display_name].nil?
1296
+ @email = args[:email] unless args[:email].nil?
1297
+ @id = args[:id] unless args[:id].nil?
1298
+ @optional = args[:optional] unless args[:optional].nil?
1299
+ @organizer = args[:organizer] unless args[:organizer].nil?
1300
+ @resource = args[:resource] unless args[:resource].nil?
1301
+ @response_status = args[:response_status] unless args[:response_status].nil?
1302
+ @self = args[:self] unless args[:self].nil?
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] unless args[:date].nil?
1338
+ @date_time = args[:date_time] unless args[:date_time].nil?
1339
+ @time_zone = args[:time_zone] unless args[:time_zone].nil?
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] unless args[:reminder_method].nil?
1370
+ @minutes = args[:minutes] unless args[:minutes].nil?
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] unless args[:access_role].nil?
1455
+ @default_reminders = args[:default_reminders] unless args[:default_reminders].nil?
1456
+ @description = args[:description] unless args[:description].nil?
1457
+ @etag = args[:etag] unless args[:etag].nil?
1458
+ @items = args[:items] unless args[:items].nil?
1459
+ @kind = args[:kind] unless args[:kind].nil?
1460
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1461
+ @next_sync_token = args[:next_sync_token] unless args[:next_sync_token].nil?
1462
+ @summary = args[:summary] unless args[:summary].nil?
1463
+ @time_zone = args[:time_zone] unless args[:time_zone].nil?
1464
+ @updated = args[:updated] unless args[:updated].nil?
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] unless args[:busy].nil?
1489
+ @errors = args[:errors] unless args[:errors].nil?
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] unless args[:calendars].nil?
1514
+ @errors = args[:errors] unless args[:errors].nil?
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] unless args[:calendar_expansion_max].nil?
1562
+ @group_expansion_max = args[:group_expansion_max] unless args[:group_expansion_max].nil?
1563
+ @items = args[:items] unless args[:items].nil?
1564
+ @time_max = args[:time_max] unless args[:time_max].nil?
1565
+ @time_min = args[:time_min] unless args[:time_min].nil?
1566
+ @time_zone = args[:time_zone] unless args[:time_zone].nil?
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] unless args[:id].nil?
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] unless args[:calendars].nil?
1625
+ @groups = args[:groups] unless args[:groups].nil?
1626
+ @kind = args[:kind] unless args[:kind].nil?
1627
+ @time_max = args[:time_max] unless args[:time_max].nil?
1628
+ @time_min = args[:time_min] unless args[:time_min].nil?
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] unless args[:etag].nil?
1664
+ @id = args[:id] unless args[:id].nil?
1665
+ @kind = args[:kind] unless args[:kind].nil?
1666
+ @value = args[:value] unless args[:value].nil?
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] unless args[:etag].nil?
1709
+ @items = args[:items] unless args[:items].nil?
1710
+ @kind = args[:kind] unless args[:kind].nil?
1711
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1712
+ @next_sync_token = args[:next_sync_token] unless args[:next_sync_token].nil?
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] unless args[:end].nil?
1737
+ @start = args[:start] unless args[:start].nil?
1738
+ end
1739
+ end
1740
+ end
1741
+ end
1742
+ end