google-api-client 0.8.3 → 0.9

Sign up to get free protection for your applications and to get access to all the features.
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 +52 -2
  9. data/CONTRIBUTING.md +31 -0
  10. data/Gemfile +35 -1
  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/classes.rb +1335 -0
  18. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +446 -0
  19. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +872 -0
  20. data/generated/google/apis/adexchangebuyer_v1_3.rb +35 -0
  21. data/generated/google/apis/adexchangeseller_v2_0/classes.rb +792 -0
  22. data/generated/google/apis/adexchangeseller_v2_0/representations.rb +309 -0
  23. data/generated/google/apis/adexchangeseller_v2_0/service.rb +668 -0
  24. data/generated/google/apis/adexchangeseller_v2_0.rb +38 -0
  25. data/generated/google/apis/admin_datatransfer_v1/classes.rb +267 -0
  26. data/generated/google/apis/admin_datatransfer_v1/representations.rb +118 -0
  27. data/generated/google/apis/admin_datatransfer_v1/service.rb +262 -0
  28. data/generated/google/apis/admin_datatransfer_v1.rb +37 -0
  29. data/generated/google/apis/admin_directory_v1/classes.rb +3141 -0
  30. data/generated/google/apis/admin_directory_v1/representations.rb +1029 -0
  31. data/generated/google/apis/admin_directory_v1/service.rb +3818 -0
  32. data/generated/google/apis/admin_directory_v1.rb +113 -0
  33. data/generated/google/apis/admin_reports_v1/classes.rb +582 -0
  34. data/generated/google/apis/admin_reports_v1/representations.rb +231 -0
  35. data/generated/google/apis/admin_reports_v1/service.rb +336 -0
  36. data/generated/google/apis/admin_reports_v1.rb +38 -0
  37. data/generated/google/apis/adsense_v1_4/classes.rb +1285 -0
  38. data/generated/google/apis/adsense_v1_4/representations.rb +494 -0
  39. data/generated/google/apis/adsense_v1_4/service.rb +1714 -0
  40. data/generated/google/apis/adsense_v1_4.rb +38 -0
  41. data/generated/google/apis/adsensehost_v4_1/classes.rb +834 -0
  42. data/generated/google/apis/adsensehost_v4_1/representations.rb +327 -0
  43. data/generated/google/apis/adsensehost_v4_1/service.rb +1164 -0
  44. data/generated/google/apis/adsensehost_v4_1.rb +35 -0
  45. data/generated/google/apis/analytics_v3/classes.rb +5118 -0
  46. data/generated/google/apis/analytics_v3/representations.rb +1662 -0
  47. data/generated/google/apis/analytics_v3/service.rb +3568 -0
  48. data/generated/google/apis/analytics_v3.rb +49 -0
  49. data/generated/google/apis/androidenterprise_v1/classes.rb +1443 -0
  50. data/generated/google/apis/androidenterprise_v1/representations.rb +538 -0
  51. data/generated/google/apis/androidenterprise_v1/service.rb +2602 -0
  52. data/generated/google/apis/androidenterprise_v1.rb +35 -0
  53. data/generated/google/apis/androidpublisher_v2/classes.rb +1411 -0
  54. data/generated/google/apis/androidpublisher_v2/representations.rb +646 -0
  55. data/generated/google/apis/androidpublisher_v2/service.rb +2338 -0
  56. data/generated/google/apis/androidpublisher_v2.rb +34 -0
  57. data/generated/google/apis/appengine_v1beta4/classes.rb +1532 -0
  58. data/generated/google/apis/appengine_v1beta4/representations.rb +526 -0
  59. data/generated/google/apis/appengine_v1beta4/service.rb +476 -0
  60. data/generated/google/apis/appengine_v1beta4.rb +35 -0
  61. data/generated/google/apis/appsactivity_v1/classes.rb +392 -0
  62. data/generated/google/apis/appsactivity_v1/representations.rb +184 -0
  63. data/generated/google/apis/appsactivity_v1/service.rb +128 -0
  64. data/generated/google/apis/appsactivity_v1.rb +46 -0
  65. data/generated/google/apis/appstate_v1/classes.rb +154 -0
  66. data/generated/google/apis/appstate_v1/representations.rb +79 -0
  67. data/generated/google/apis/appstate_v1/service.rb +260 -0
  68. data/generated/google/apis/appstate_v1.rb +34 -0
  69. data/generated/google/apis/autoscaler_v1beta2/classes.rb +747 -0
  70. data/generated/google/apis/autoscaler_v1beta2/representations.rb +281 -0
  71. data/generated/google/apis/autoscaler_v1beta2/service.rb +478 -0
  72. data/generated/google/apis/autoscaler_v1beta2.rb +38 -0
  73. data/generated/google/apis/bigquery_v2/classes.rb +2471 -0
  74. data/generated/google/apis/bigquery_v2/representations.rb +816 -0
  75. data/generated/google/apis/bigquery_v2/service.rb +982 -0
  76. data/generated/google/apis/bigquery_v2.rb +52 -0
  77. data/generated/google/apis/blogger_v3/classes.rb +1354 -0
  78. data/generated/google/apis/blogger_v3/representations.rb +562 -0
  79. data/generated/google/apis/blogger_v3/service.rb +1587 -0
  80. data/generated/google/apis/blogger_v3.rb +37 -0
  81. data/generated/google/apis/books_v1/classes.rb +3956 -0
  82. data/generated/google/apis/books_v1/representations.rb +1538 -0
  83. data/generated/google/apis/books_v1/service.rb +2290 -0
  84. data/generated/google/apis/books_v1.rb +34 -0
  85. data/generated/google/apis/calendar_v3/classes.rb +1742 -0
  86. data/generated/google/apis/calendar_v3/representations.rb +567 -0
  87. data/generated/google/apis/calendar_v3/service.rb +1968 -0
  88. data/generated/google/apis/calendar_v3.rb +37 -0
  89. data/generated/google/apis/civicinfo_v2/classes.rb +1127 -0
  90. data/generated/google/apis/civicinfo_v2/representations.rb +383 -0
  91. data/generated/google/apis/civicinfo_v2/service.rb +279 -0
  92. data/{lib/google/api_client/service_account.rb → generated/google/apis/civicinfo_v2.rb} +18 -8
  93. data/generated/google/apis/classroom_v1/classes.rb +512 -0
  94. data/generated/google/apis/classroom_v1/representations.rb +217 -0
  95. data/generated/google/apis/classroom_v1/service.rb +970 -0
  96. data/generated/google/apis/classroom_v1.rb +49 -0
  97. data/generated/google/apis/classroom_v1beta1/classes.rb +447 -0
  98. data/generated/google/apis/classroom_v1beta1/representations.rb +190 -0
  99. data/generated/google/apis/classroom_v1beta1/service.rb +791 -0
  100. data/generated/google/apis/classroom_v1beta1.rb +49 -0
  101. data/generated/google/apis/cloudbilling_v1/classes.rb +169 -0
  102. data/generated/google/apis/cloudbilling_v1/representations.rb +79 -0
  103. data/generated/google/apis/cloudbilling_v1/service.rb +258 -0
  104. data/generated/google/apis/cloudbilling_v1.rb +35 -0
  105. data/generated/google/apis/clouddebugger_v2/classes.rb +1004 -0
  106. data/generated/google/apis/clouddebugger_v2/representations.rb +410 -0
  107. data/generated/google/apis/clouddebugger_v2/service.rb +370 -0
  108. data/generated/google/apis/clouddebugger_v2.rb +41 -0
  109. data/generated/google/apis/cloudmonitoring_v2beta2/classes.rb +679 -0
  110. data/generated/google/apis/cloudmonitoring_v2beta2/representations.rb +311 -0
  111. data/generated/google/apis/cloudmonitoring_v2beta2/service.rb +452 -0
  112. data/generated/google/apis/cloudmonitoring_v2beta2.rb +37 -0
  113. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +437 -0
  114. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +188 -0
  115. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +623 -0
  116. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +38 -0
  117. data/generated/google/apis/cloudtrace_v1/classes.rb +188 -0
  118. data/generated/google/apis/cloudtrace_v1/representations.rb +92 -0
  119. data/generated/google/apis/cloudtrace_v1/service.rb +190 -0
  120. data/generated/google/apis/cloudtrace_v1.rb +35 -0
  121. data/generated/google/apis/clouduseraccounts_beta/classes.rb +823 -0
  122. data/generated/google/apis/clouduseraccounts_beta/representations.rb +313 -0
  123. data/generated/google/apis/clouduseraccounts_beta/service.rb +854 -0
  124. data/generated/google/apis/clouduseraccounts_beta.rb +43 -0
  125. data/generated/google/apis/compute_beta/classes.rb +9128 -0
  126. data/generated/google/apis/compute_beta/representations.rb +3048 -0
  127. data/generated/google/apis/compute_beta/service.rb +10154 -0
  128. data/generated/google/apis/compute_beta.rb +49 -0
  129. data/generated/google/apis/compute_v1/classes.rb +8681 -0
  130. data/generated/google/apis/compute_v1/representations.rb +2895 -0
  131. data/generated/google/apis/compute_v1/service.rb +9252 -0
  132. data/generated/google/apis/compute_v1.rb +49 -0
  133. data/generated/google/apis/container_v1/classes.rb +463 -0
  134. data/generated/google/apis/container_v1/representations.rb +175 -0
  135. data/generated/google/apis/container_v1/service.rb +367 -0
  136. data/generated/google/apis/container_v1.rb +35 -0
  137. data/generated/google/apis/container_v1beta1/classes.rb +466 -0
  138. data/generated/google/apis/container_v1beta1/representations.rb +177 -0
  139. data/generated/google/apis/container_v1beta1/service.rb +394 -0
  140. data/generated/google/apis/container_v1beta1.rb +35 -0
  141. data/generated/google/apis/content_v2/classes.rb +5986 -0
  142. data/generated/google/apis/content_v2/representations.rb +2288 -0
  143. data/generated/google/apis/content_v2/service.rb +2338 -0
  144. data/generated/google/apis/content_v2.rb +35 -0
  145. data/generated/google/apis/coordinate_v1/classes.rb +669 -0
  146. data/generated/google/apis/coordinate_v1/representations.rb +285 -0
  147. data/generated/google/apis/coordinate_v1/service.rb +678 -0
  148. data/generated/google/apis/coordinate_v1.rb +37 -0
  149. data/generated/google/apis/customsearch_v1/classes.rb +771 -0
  150. data/generated/google/apis/customsearch_v1/representations.rb +276 -0
  151. data/generated/google/apis/customsearch_v1/service.rb +207 -0
  152. data/{lib/google/api_client/auth/compute_service_account.rb → generated/google/apis/customsearch_v1.rb} +13 -10
  153. data/generated/google/apis/datastore_v1beta2/classes.rb +1186 -0
  154. data/generated/google/apis/datastore_v1beta2/representations.rb +526 -0
  155. data/generated/google/apis/datastore_v1beta2/service.rb +294 -0
  156. data/generated/google/apis/datastore_v1beta2.rb +40 -0
  157. data/generated/google/apis/deploymentmanager_v2/classes.rb +1091 -0
  158. data/generated/google/apis/deploymentmanager_v2/representations.rb +422 -0
  159. data/generated/google/apis/deploymentmanager_v2/service.rb +857 -0
  160. data/generated/google/apis/deploymentmanager_v2.rb +44 -0
  161. data/generated/google/apis/deploymentmanager_v2beta2/classes.rb +843 -0
  162. data/generated/google/apis/deploymentmanager_v2beta2/representations.rb +306 -0
  163. data/generated/google/apis/deploymentmanager_v2beta2/service.rb +689 -0
  164. data/generated/google/apis/deploymentmanager_v2beta2.rb +44 -0
  165. data/generated/google/apis/dfareporting_v2_1/classes.rb +10770 -0
  166. data/generated/google/apis/dfareporting_v2_1/representations.rb +3438 -0
  167. data/generated/google/apis/dfareporting_v2_1/service.rb +8585 -0
  168. data/generated/google/apis/dfareporting_v2_1.rb +37 -0
  169. data/generated/google/apis/discovery_v1/classes.rb +961 -0
  170. data/generated/google/apis/discovery_v1/representations.rb +357 -0
  171. data/generated/google/apis/discovery_v1/service.rb +142 -0
  172. data/generated/google/apis/discovery_v1.rb +32 -0
  173. data/generated/google/apis/dns_v1/classes.rb +406 -0
  174. data/generated/google/apis/dns_v1/representations.rb +151 -0
  175. data/generated/google/apis/dns_v1/service.rb +454 -0
  176. data/generated/google/apis/dns_v1.rb +44 -0
  177. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +716 -0
  178. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +298 -0
  179. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +341 -0
  180. data/generated/google/apis/doubleclickbidmanager_v1.rb +31 -0
  181. data/generated/google/apis/doubleclicksearch_v2/classes.rb +956 -0
  182. data/generated/google/apis/doubleclicksearch_v2/representations.rb +316 -0
  183. data/generated/google/apis/doubleclicksearch_v2/service.rb +480 -0
  184. data/generated/google/apis/doubleclicksearch_v2.rb +35 -0
  185. data/generated/google/apis/drive_v2/classes.rb +2562 -0
  186. data/generated/google/apis/drive_v2/representations.rb +795 -0
  187. data/generated/google/apis/drive_v2/service.rb +2696 -0
  188. data/generated/google/apis/drive_v2.rb +58 -0
  189. data/generated/google/apis/drive_v3/classes.rb +1534 -0
  190. data/generated/google/apis/drive_v3/representations.rb +497 -0
  191. data/generated/google/apis/drive_v3/service.rb +1541 -0
  192. data/generated/google/apis/drive_v3.rb +55 -0
  193. data/generated/google/apis/fitness_v1/classes.rb +885 -0
  194. data/generated/google/apis/fitness_v1/representations.rb +320 -0
  195. data/generated/google/apis/fitness_v1/service.rb +675 -0
  196. data/generated/google/apis/fitness_v1.rb +49 -0
  197. data/generated/google/apis/fusiontables_v2/classes.rb +1048 -0
  198. data/generated/google/apis/fusiontables_v2/representations.rb +409 -0
  199. data/generated/google/apis/fusiontables_v2/service.rb +1463 -0
  200. data/generated/google/apis/fusiontables_v2.rb +37 -0
  201. data/generated/google/apis/games_configuration_v1configuration/classes.rb +506 -0
  202. data/generated/google/apis/games_configuration_v1configuration/representations.rb +206 -0
  203. data/generated/google/apis/games_configuration_v1configuration/service.rb +565 -0
  204. data/generated/google/apis/games_configuration_v1configuration.rb +34 -0
  205. data/generated/google/apis/games_management_v1management/classes.rb +524 -0
  206. data/generated/google/apis/games_management_v1management/representations.rb +231 -0
  207. data/generated/google/apis/games_management_v1management/service.rb +994 -0
  208. data/generated/google/apis/games_management_v1management.rb +37 -0
  209. data/generated/google/apis/games_v1/classes.rb +4617 -0
  210. data/generated/google/apis/games_v1/representations.rb +1584 -0
  211. data/generated/google/apis/games_v1/service.rb +2290 -0
  212. data/generated/google/apis/games_v1.rb +40 -0
  213. data/generated/google/apis/gan_v1beta1/classes.rb +1428 -0
  214. data/generated/google/apis/gan_v1beta1/representations.rb +428 -0
  215. data/generated/google/apis/gan_v1beta1/service.rb +682 -0
  216. data/generated/google/apis/gan_v1beta1.rb +31 -0
  217. data/generated/google/apis/genomics_v1/classes.rb +2609 -0
  218. data/generated/google/apis/genomics_v1/representations.rb +909 -0
  219. data/generated/google/apis/genomics_v1/service.rb +1676 -0
  220. data/generated/google/apis/genomics_v1.rb +49 -0
  221. data/generated/google/apis/genomics_v1beta2/classes.rb +3288 -0
  222. data/generated/google/apis/genomics_v1beta2/representations.rb +1194 -0
  223. data/generated/google/apis/genomics_v1beta2/service.rb +2392 -0
  224. data/generated/google/apis/genomics_v1beta2.rb +46 -0
  225. data/generated/google/apis/gmail_v1/classes.rb +794 -0
  226. data/generated/google/apis/gmail_v1/representations.rb +339 -0
  227. data/generated/google/apis/gmail_v1/service.rb +1470 -0
  228. data/generated/google/apis/gmail_v1.rb +52 -0
  229. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  230. data/generated/google/apis/groupsmigration_v1/representations.rb +38 -0
  231. data/generated/google/apis/groupsmigration_v1/service.rb +110 -0
  232. data/generated/google/apis/groupsmigration_v1.rb +34 -0
  233. data/generated/google/apis/groupssettings_v1/classes.rb +221 -0
  234. data/generated/google/apis/groupssettings_v1/representations.rb +64 -0
  235. data/generated/google/apis/groupssettings_v1/service.rb +179 -0
  236. data/generated/google/apis/groupssettings_v1.rb +34 -0
  237. data/generated/google/apis/identitytoolkit_v3/classes.rb +1466 -0
  238. data/generated/google/apis/identitytoolkit_v3/representations.rb +509 -0
  239. data/generated/google/apis/identitytoolkit_v3/service.rb +581 -0
  240. data/generated/google/apis/identitytoolkit_v3.rb +31 -0
  241. data/generated/google/apis/kgsearch_v1/classes.rb +59 -0
  242. data/generated/google/apis/kgsearch_v1/representations.rb +39 -0
  243. data/generated/google/apis/kgsearch_v1/service.rb +111 -0
  244. data/{spec/google/api_client/request_spec.rb → generated/google/apis/kgsearch_v1.rb} +16 -13
  245. data/generated/google/apis/licensing_v1/classes.rb +132 -0
  246. data/generated/google/apis/licensing_v1/representations.rb +68 -0
  247. data/generated/google/apis/licensing_v1/service.rb +369 -0
  248. data/generated/google/apis/licensing_v1.rb +34 -0
  249. data/generated/google/apis/logging_v1beta3/classes.rb +1079 -0
  250. data/generated/google/apis/logging_v1beta3/representations.rb +366 -0
  251. data/generated/google/apis/logging_v1beta3/service.rb +1001 -0
  252. data/generated/google/apis/logging_v1beta3.rb +47 -0
  253. data/generated/google/apis/manager_v1beta2/classes.rb +1287 -0
  254. data/generated/google/apis/manager_v1beta2/representations.rb +536 -0
  255. data/generated/google/apis/manager_v1beta2/service.rb +372 -0
  256. data/generated/google/apis/manager_v1beta2.rb +53 -0
  257. data/generated/google/apis/mapsengine_v1/classes.rb +2873 -0
  258. data/generated/google/apis/mapsengine_v1/representations.rb +1235 -0
  259. data/generated/google/apis/mapsengine_v1/service.rb +3388 -0
  260. data/generated/google/apis/mapsengine_v1.rb +38 -0
  261. data/generated/google/apis/mirror_v1/classes.rb +1072 -0
  262. data/generated/google/apis/mirror_v1/representations.rb +350 -0
  263. data/generated/google/apis/mirror_v1/service.rb +977 -0
  264. data/generated/google/apis/mirror_v1.rb +37 -0
  265. data/generated/google/apis/oauth2_v2/classes.rb +245 -0
  266. data/generated/google/apis/oauth2_v2/representations.rb +94 -0
  267. data/generated/google/apis/oauth2_v2/service.rb +199 -0
  268. data/generated/google/apis/oauth2_v2.rb +43 -0
  269. data/generated/google/apis/pagespeedonline_v2/classes.rb +614 -0
  270. data/generated/google/apis/pagespeedonline_v2/representations.rb +244 -0
  271. data/generated/google/apis/pagespeedonline_v2/service.rb +119 -0
  272. data/generated/google/apis/pagespeedonline_v2.rb +32 -0
  273. data/generated/google/apis/partners_v2/classes.rb +942 -0
  274. data/generated/google/apis/partners_v2/representations.rb +402 -0
  275. data/generated/google/apis/partners_v2/service.rb +400 -0
  276. data/generated/google/apis/partners_v2.rb +32 -0
  277. data/generated/google/apis/plus_domains_v1/classes.rb +2609 -0
  278. data/generated/google/apis/plus_domains_v1/representations.rb +987 -0
  279. data/generated/google/apis/plus_domains_v1/service.rb +904 -0
  280. data/generated/google/apis/plus_domains_v1.rb +61 -0
  281. data/generated/google/apis/plus_v1/classes.rb +2094 -0
  282. data/generated/google/apis/plus_v1/representations.rb +805 -0
  283. data/generated/google/apis/plus_v1/service.rb +470 -0
  284. data/generated/google/apis/plus_v1.rb +43 -0
  285. data/generated/google/apis/prediction_v1_6/classes.rb +751 -0
  286. data/generated/google/apis/prediction_v1_6/representations.rb +327 -0
  287. data/generated/google/apis/prediction_v1_6/service.rb +380 -0
  288. data/generated/google/apis/prediction_v1_6.rb +44 -0
  289. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +639 -0
  290. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +274 -0
  291. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +591 -0
  292. data/generated/google/apis/proximitybeacon_v1beta1.rb +31 -0
  293. data/generated/google/apis/pubsub_v1/classes.rb +614 -0
  294. data/generated/google/apis/pubsub_v1/representations.rb +281 -0
  295. data/generated/google/apis/pubsub_v1/service.rb +774 -0
  296. data/generated/google/apis/pubsub_v1.rb +37 -0
  297. data/generated/google/apis/pubsub_v1beta2/classes.rb +620 -0
  298. data/generated/google/apis/pubsub_v1beta2/representations.rb +282 -0
  299. data/generated/google/apis/pubsub_v1beta2/service.rb +774 -0
  300. data/generated/google/apis/pubsub_v1beta2.rb +37 -0
  301. data/generated/google/apis/qpx_express_v1/classes.rb +1268 -0
  302. data/generated/google/apis/qpx_express_v1/representations.rb +424 -0
  303. data/generated/google/apis/qpx_express_v1/service.rb +100 -0
  304. data/generated/google/apis/qpx_express_v1.rb +31 -0
  305. data/generated/google/apis/replicapool_v1beta2/classes.rb +631 -0
  306. data/generated/google/apis/replicapool_v1beta2/representations.rb +236 -0
  307. data/generated/google/apis/replicapool_v1beta2/service.rb +608 -0
  308. data/generated/google/apis/replicapool_v1beta2.rb +44 -0
  309. data/generated/google/apis/replicapoolupdater_v1beta1/classes.rb +733 -0
  310. data/generated/google/apis/replicapoolupdater_v1beta1/representations.rb +264 -0
  311. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +508 -0
  312. data/generated/google/apis/replicapoolupdater_v1beta1.rb +44 -0
  313. data/generated/google/apis/reseller_v1/classes.rb +520 -0
  314. data/generated/google/apis/reseller_v1/representations.rb +200 -0
  315. data/generated/google/apis/reseller_v1/service.rb +623 -0
  316. data/generated/google/apis/reseller_v1.rb +37 -0
  317. data/generated/google/apis/resourceviews_v1beta2/classes.rb +660 -0
  318. data/generated/google/apis/resourceviews_v1beta2/representations.rb +269 -0
  319. data/generated/google/apis/resourceviews_v1beta2/service.rb +563 -0
  320. data/generated/google/apis/resourceviews_v1beta2.rb +50 -0
  321. data/generated/google/apis/script_v1/classes.rb +259 -0
  322. data/generated/google/apis/script_v1/representations.rb +106 -0
  323. data/generated/google/apis/script_v1/service.rb +98 -0
  324. data/generated/google/apis/script_v1.rb +61 -0
  325. data/generated/google/apis/site_verification_v1/classes.rb +185 -0
  326. data/generated/google/apis/site_verification_v1/representations.rb +101 -0
  327. data/generated/google/apis/site_verification_v1/service.rb +315 -0
  328. data/generated/google/apis/site_verification_v1.rb +37 -0
  329. data/generated/google/apis/sqladmin_v1beta4/classes.rb +2001 -0
  330. data/generated/google/apis/sqladmin_v1beta4/representations.rb +758 -0
  331. data/generated/google/apis/sqladmin_v1beta4/service.rb +1625 -0
  332. data/generated/google/apis/sqladmin_v1beta4.rb +37 -0
  333. data/generated/google/apis/storage_v1/classes.rb +1222 -0
  334. data/generated/google/apis/storage_v1/representations.rb +445 -0
  335. data/generated/google/apis/storage_v1/service.rb +1903 -0
  336. data/generated/google/apis/storage_v1.rb +46 -0
  337. data/generated/google/apis/storagetransfer_v1/classes.rb +1046 -0
  338. data/generated/google/apis/storagetransfer_v1/representations.rb +370 -0
  339. data/generated/google/apis/storagetransfer_v1/service.rb +473 -0
  340. data/generated/google/apis/storagetransfer_v1.rb +35 -0
  341. data/generated/google/apis/tagmanager_v1/classes.rb +1384 -0
  342. data/generated/google/apis/tagmanager_v1/representations.rb +515 -0
  343. data/generated/google/apis/tagmanager_v1/service.rb +1817 -0
  344. data/generated/google/apis/tagmanager_v1.rb +52 -0
  345. data/generated/google/apis/taskqueue_v1beta2/classes.rb +254 -0
  346. data/generated/google/apis/taskqueue_v1beta2/representations.rb +114 -0
  347. data/generated/google/apis/taskqueue_v1beta2/service.rb +408 -0
  348. data/generated/google/apis/taskqueue_v1beta2.rb +37 -0
  349. data/generated/google/apis/tasks_v1/classes.rb +296 -0
  350. data/generated/google/apis/tasks_v1/representations.rb +115 -0
  351. data/generated/google/apis/tasks_v1/service.rb +643 -0
  352. data/generated/google/apis/tasks_v1.rb +37 -0
  353. data/generated/google/apis/translate_v2/classes.rb +168 -0
  354. data/generated/google/apis/translate_v2/representations.rb +109 -0
  355. data/generated/google/apis/translate_v2/service.rb +182 -0
  356. data/generated/google/apis/translate_v2.rb +31 -0
  357. data/generated/google/apis/urlshortener_v1/classes.rb +246 -0
  358. data/generated/google/apis/urlshortener_v1/representations.rb +111 -0
  359. data/generated/google/apis/urlshortener_v1/service.rb +176 -0
  360. data/generated/google/apis/urlshortener_v1.rb +34 -0
  361. data/generated/google/apis/webmasters_v3/classes.rb +563 -0
  362. data/generated/google/apis/webmasters_v3/representations.rb +250 -0
  363. data/generated/google/apis/webmasters_v3/service.rb +573 -0
  364. data/generated/google/apis/webmasters_v3.rb +37 -0
  365. data/generated/google/apis/youtube_analytics_v1/classes.rb +546 -0
  366. data/generated/google/apis/youtube_analytics_v1/representations.rb +243 -0
  367. data/generated/google/apis/youtube_analytics_v1/service.rb +562 -0
  368. data/generated/google/apis/youtube_analytics_v1.rb +46 -0
  369. data/generated/google/apis/youtube_v3/classes.rb +8136 -0
  370. data/generated/google/apis/youtube_v3/representations.rb +2838 -0
  371. data/generated/google/apis/youtube_v3/service.rb +4403 -0
  372. data/generated/google/apis/youtube_v3.rb +49 -0
  373. data/generated/google/apis/youtubereporting_v1/classes.rb +258 -0
  374. data/generated/google/apis/youtubereporting_v1/representations.rb +128 -0
  375. data/generated/google/apis/youtubereporting_v1/service.rb +364 -0
  376. data/generated/google/apis/youtubereporting_v1.rb +38 -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 +12 -11
  380. data/lib/google/api_client/auth/storage.rb +5 -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/core/api_command.rb +135 -0
  385. data/lib/google/apis/core/base_service.rb +317 -0
  386. data/lib/google/apis/core/batch.rb +239 -0
  387. data/lib/google/apis/core/download.rb +94 -0
  388. data/lib/google/apis/core/hashable.rb +44 -0
  389. data/lib/google/apis/core/http_client_adapter.rb +82 -0
  390. data/lib/google/apis/core/http_command.rb +312 -0
  391. data/lib/google/apis/core/json_representation.rb +127 -0
  392. data/lib/google/{api_client/version.rb → apis/core/logging.rb} +12 -8
  393. data/lib/google/apis/core/multipart.rb +187 -0
  394. data/lib/google/apis/core/upload.rb +288 -0
  395. data/lib/google/{api_client → apis}/errors.rb +39 -28
  396. data/lib/google/apis/generator/annotator.rb +295 -0
  397. data/lib/google/apis/generator/helpers.rb +74 -0
  398. data/lib/google/apis/generator/model.rb +143 -0
  399. data/lib/google/apis/generator/template.rb +124 -0
  400. data/lib/google/apis/generator/templates/_class.tmpl +40 -0
  401. data/lib/google/apis/generator/templates/_method.tmpl +92 -0
  402. data/lib/google/apis/generator/templates/_representation.tmpl +51 -0
  403. data/lib/google/apis/generator/templates/_representation_stub.tmpl +15 -0
  404. data/lib/google/apis/generator/templates/_representation_type.tmpl +10 -0
  405. data/lib/google/{api_client/reference.rb → apis/generator/templates/classes.rb.tmpl} +11 -9
  406. data/lib/google/apis/generator/templates/module.rb.tmpl +40 -0
  407. data/lib/google/apis/generator/templates/representations.rb.tmpl +32 -0
  408. data/lib/google/apis/generator/templates/service.rb.tmpl +60 -0
  409. data/lib/google/apis/generator.rb +70 -0
  410. data/lib/google/apis/options.rb +85 -0
  411. data/lib/google/apis/version.rb +39 -0
  412. data/lib/google/apis.rb +48 -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/load_path_spec.rb +33 -0
  460. data/spec/spec_helper.rb +131 -44
  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/auth/file_storage.rb +0 -59
  465. data/lib/google/api_client/auth/jwt_asserter.rb +0 -126
  466. data/lib/google/api_client/auth/pkcs12.rb +0 -41
  467. data/lib/google/api_client/batch.rb +0 -325
  468. data/lib/google/api_client/charset.rb +0 -33
  469. data/lib/google/api_client/discovery/api.rb +0 -300
  470. data/lib/google/api_client/discovery/media.rb +0 -77
  471. data/lib/google/api_client/discovery/method.rb +0 -363
  472. data/lib/google/api_client/discovery/resource.rb +0 -156
  473. data/lib/google/api_client/discovery/schema.rb +0 -119
  474. data/lib/google/api_client/environment.rb +0 -42
  475. data/lib/google/api_client/gzip.rb +0 -28
  476. data/lib/google/api_client/logging.rb +0 -32
  477. data/lib/google/api_client/media.rb +0 -259
  478. data/lib/google/api_client/railtie.rb +0 -18
  479. data/lib/google/api_client/request.rb +0 -350
  480. data/lib/google/api_client/result.rb +0 -255
  481. data/lib/google/api_client/service/batch.rb +0 -110
  482. data/lib/google/api_client/service/request.rb +0 -144
  483. data/lib/google/api_client/service/resource.rb +0 -40
  484. data/lib/google/api_client/service/result.rb +0 -162
  485. data/lib/google/api_client/service/simple_file_store.rb +0 -151
  486. data/lib/google/api_client/service/stub_generator.rb +0 -61
  487. data/lib/google/api_client/service.rb +0 -233
  488. data/lib/google/api_client.rb +0 -750
  489. data/spec/google/api_client/batch_spec.rb +0 -248
  490. data/spec/google/api_client/discovery_spec.rb +0 -662
  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,1072 @@
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 MirrorV1
24
+
25
+ # Represents an account passed into the Account Manager on Glass.
26
+ class Account
27
+ include Google::Apis::Core::Hashable
28
+
29
+ #
30
+ # Corresponds to the JSON property `authTokens`
31
+ # @return [Array<Google::Apis::MirrorV1::AuthToken>]
32
+ attr_accessor :auth_tokens
33
+
34
+ #
35
+ # Corresponds to the JSON property `features`
36
+ # @return [Array<String>]
37
+ attr_accessor :features
38
+
39
+ #
40
+ # Corresponds to the JSON property `password`
41
+ # @return [String]
42
+ attr_accessor :password
43
+
44
+ #
45
+ # Corresponds to the JSON property `userData`
46
+ # @return [Array<Google::Apis::MirrorV1::UserData>]
47
+ attr_accessor :user_data
48
+
49
+ def initialize(**args)
50
+ update!(**args)
51
+ end
52
+
53
+ # Update properties of this object
54
+ def update!(**args)
55
+ @auth_tokens = args[:auth_tokens] unless args[:auth_tokens].nil?
56
+ @features = args[:features] unless args[:features].nil?
57
+ @password = args[:password] unless args[:password].nil?
58
+ @user_data = args[:user_data] unless args[:user_data].nil?
59
+ end
60
+ end
61
+
62
+ # Represents media content, such as a photo, that can be attached to a timeline
63
+ # item.
64
+ class Attachment
65
+ include Google::Apis::Core::Hashable
66
+
67
+ # The MIME type of the attachment.
68
+ # Corresponds to the JSON property `contentType`
69
+ # @return [String]
70
+ attr_accessor :content_type
71
+
72
+ # The URL for the content.
73
+ # Corresponds to the JSON property `contentUrl`
74
+ # @return [String]
75
+ attr_accessor :content_url
76
+
77
+ # The ID of the attachment.
78
+ # Corresponds to the JSON property `id`
79
+ # @return [String]
80
+ attr_accessor :id
81
+
82
+ # Indicates that the contentUrl is not available because the attachment content
83
+ # is still being processed. If the caller wishes to retrieve the content, it
84
+ # should try again later.
85
+ # Corresponds to the JSON property `isProcessingContent`
86
+ # @return [Boolean]
87
+ attr_accessor :is_processing_content
88
+ alias_method :is_processing_content?, :is_processing_content
89
+
90
+ def initialize(**args)
91
+ update!(**args)
92
+ end
93
+
94
+ # Update properties of this object
95
+ def update!(**args)
96
+ @content_type = args[:content_type] unless args[:content_type].nil?
97
+ @content_url = args[:content_url] unless args[:content_url].nil?
98
+ @id = args[:id] unless args[:id].nil?
99
+ @is_processing_content = args[:is_processing_content] unless args[:is_processing_content].nil?
100
+ end
101
+ end
102
+
103
+ # A list of Attachments. This is the response from the server to GET requests on
104
+ # the attachments collection.
105
+ class ListAttachmentsResponse
106
+ include Google::Apis::Core::Hashable
107
+
108
+ # The list of attachments.
109
+ # Corresponds to the JSON property `items`
110
+ # @return [Array<Google::Apis::MirrorV1::Attachment>]
111
+ attr_accessor :items
112
+
113
+ # The type of resource. This is always mirror#attachmentsList.
114
+ # Corresponds to the JSON property `kind`
115
+ # @return [String]
116
+ attr_accessor :kind
117
+
118
+ def initialize(**args)
119
+ update!(**args)
120
+ end
121
+
122
+ # Update properties of this object
123
+ def update!(**args)
124
+ @items = args[:items] unless args[:items].nil?
125
+ @kind = args[:kind] unless args[:kind].nil?
126
+ end
127
+ end
128
+
129
+ #
130
+ class AuthToken
131
+ include Google::Apis::Core::Hashable
132
+
133
+ #
134
+ # Corresponds to the JSON property `authToken`
135
+ # @return [String]
136
+ attr_accessor :auth_token
137
+
138
+ #
139
+ # Corresponds to the JSON property `type`
140
+ # @return [String]
141
+ attr_accessor :type
142
+
143
+ def initialize(**args)
144
+ update!(**args)
145
+ end
146
+
147
+ # Update properties of this object
148
+ def update!(**args)
149
+ @auth_token = args[:auth_token] unless args[:auth_token].nil?
150
+ @type = args[:type] unless args[:type].nil?
151
+ end
152
+ end
153
+
154
+ # A single menu command that is part of a Contact.
155
+ class Command
156
+ include Google::Apis::Core::Hashable
157
+
158
+ # The type of operation this command corresponds to. Allowed values are:
159
+ # - TAKE_A_NOTE - Shares a timeline item with the transcription of user speech
160
+ # from the "Take a note" voice menu command.
161
+ # - POST_AN_UPDATE - Shares a timeline item with the transcription of user
162
+ # speech from the "Post an update" voice menu command.
163
+ # Corresponds to the JSON property `type`
164
+ # @return [String]
165
+ attr_accessor :type
166
+
167
+ def initialize(**args)
168
+ update!(**args)
169
+ end
170
+
171
+ # Update properties of this object
172
+ def update!(**args)
173
+ @type = args[:type] unless args[:type].nil?
174
+ end
175
+ end
176
+
177
+ # A person or group that can be used as a creator or a contact.
178
+ class Contact
179
+ include Google::Apis::Core::Hashable
180
+
181
+ # A list of voice menu commands that a contact can handle. Glass shows up to
182
+ # three contacts for each voice menu command. If there are more than that, the
183
+ # three contacts with the highest priority are shown for that particular command.
184
+ # Corresponds to the JSON property `acceptCommands`
185
+ # @return [Array<Google::Apis::MirrorV1::Command>]
186
+ attr_accessor :accept_commands
187
+
188
+ # A list of MIME types that a contact supports. The contact will be shown to the
189
+ # user if any of its acceptTypes matches any of the types of the attachments on
190
+ # the item. If no acceptTypes are given, the contact will be shown for all items.
191
+ # Corresponds to the JSON property `acceptTypes`
192
+ # @return [Array<String>]
193
+ attr_accessor :accept_types
194
+
195
+ # The name to display for this contact.
196
+ # Corresponds to the JSON property `displayName`
197
+ # @return [String]
198
+ attr_accessor :display_name
199
+
200
+ # An ID for this contact. This is generated by the application and is treated as
201
+ # an opaque token.
202
+ # Corresponds to the JSON property `id`
203
+ # @return [String]
204
+ attr_accessor :id
205
+
206
+ # Set of image URLs to display for a contact. Most contacts will have a single
207
+ # image, but a "group" contact may include up to 8 image URLs and they will be
208
+ # resized and cropped into a mosaic on the client.
209
+ # Corresponds to the JSON property `imageUrls`
210
+ # @return [Array<String>]
211
+ attr_accessor :image_urls
212
+
213
+ # The type of resource. This is always mirror#contact.
214
+ # Corresponds to the JSON property `kind`
215
+ # @return [String]
216
+ attr_accessor :kind
217
+
218
+ # Primary phone number for the contact. This can be a fully-qualified number,
219
+ # with country calling code and area code, or a local number.
220
+ # Corresponds to the JSON property `phoneNumber`
221
+ # @return [String]
222
+ attr_accessor :phone_number
223
+
224
+ # Priority for the contact to determine ordering in a list of contacts. Contacts
225
+ # with higher priorities will be shown before ones with lower priorities.
226
+ # Corresponds to the JSON property `priority`
227
+ # @return [Fixnum]
228
+ attr_accessor :priority
229
+
230
+ # A list of sharing features that a contact can handle. Allowed values are:
231
+ # - ADD_CAPTION
232
+ # Corresponds to the JSON property `sharingFeatures`
233
+ # @return [Array<String>]
234
+ attr_accessor :sharing_features
235
+
236
+ # The ID of the application that created this contact. This is populated by the
237
+ # API
238
+ # Corresponds to the JSON property `source`
239
+ # @return [String]
240
+ attr_accessor :source
241
+
242
+ # Name of this contact as it should be pronounced. If this contact's name must
243
+ # be spoken as part of a voice disambiguation menu, this name is used as the
244
+ # expected pronunciation. This is useful for contact names with unpronounceable
245
+ # characters or whose display spelling is otherwise not phonetic.
246
+ # Corresponds to the JSON property `speakableName`
247
+ # @return [String]
248
+ attr_accessor :speakable_name
249
+
250
+ # The type for this contact. This is used for sorting in UIs. Allowed values are:
251
+ #
252
+ # - INDIVIDUAL - Represents a single person. This is the default.
253
+ # - GROUP - Represents more than a single person.
254
+ # Corresponds to the JSON property `type`
255
+ # @return [String]
256
+ attr_accessor :type
257
+
258
+ def initialize(**args)
259
+ update!(**args)
260
+ end
261
+
262
+ # Update properties of this object
263
+ def update!(**args)
264
+ @accept_commands = args[:accept_commands] unless args[:accept_commands].nil?
265
+ @accept_types = args[:accept_types] unless args[:accept_types].nil?
266
+ @display_name = args[:display_name] unless args[:display_name].nil?
267
+ @id = args[:id] unless args[:id].nil?
268
+ @image_urls = args[:image_urls] unless args[:image_urls].nil?
269
+ @kind = args[:kind] unless args[:kind].nil?
270
+ @phone_number = args[:phone_number] unless args[:phone_number].nil?
271
+ @priority = args[:priority] unless args[:priority].nil?
272
+ @sharing_features = args[:sharing_features] unless args[:sharing_features].nil?
273
+ @source = args[:source] unless args[:source].nil?
274
+ @speakable_name = args[:speakable_name] unless args[:speakable_name].nil?
275
+ @type = args[:type] unless args[:type].nil?
276
+ end
277
+ end
278
+
279
+ # A list of Contacts representing contacts. This is the response from the server
280
+ # to GET requests on the contacts collection.
281
+ class ListContactsResponse
282
+ include Google::Apis::Core::Hashable
283
+
284
+ # Contact list.
285
+ # Corresponds to the JSON property `items`
286
+ # @return [Array<Google::Apis::MirrorV1::Contact>]
287
+ attr_accessor :items
288
+
289
+ # The type of resource. This is always mirror#contacts.
290
+ # Corresponds to the JSON property `kind`
291
+ # @return [String]
292
+ attr_accessor :kind
293
+
294
+ def initialize(**args)
295
+ update!(**args)
296
+ end
297
+
298
+ # Update properties of this object
299
+ def update!(**args)
300
+ @items = args[:items] unless args[:items].nil?
301
+ @kind = args[:kind] unless args[:kind].nil?
302
+ end
303
+ end
304
+
305
+ # A geographic location that can be associated with a timeline item.
306
+ class Location
307
+ include Google::Apis::Core::Hashable
308
+
309
+ # The accuracy of the location fix in meters.
310
+ # Corresponds to the JSON property `accuracy`
311
+ # @return [Float]
312
+ attr_accessor :accuracy
313
+
314
+ # The full address of the location.
315
+ # Corresponds to the JSON property `address`
316
+ # @return [String]
317
+ attr_accessor :address
318
+
319
+ # The name to be displayed. This may be a business name or a user-defined place,
320
+ # such as "Home".
321
+ # Corresponds to the JSON property `displayName`
322
+ # @return [String]
323
+ attr_accessor :display_name
324
+
325
+ # The ID of the location.
326
+ # Corresponds to the JSON property `id`
327
+ # @return [String]
328
+ attr_accessor :id
329
+
330
+ # The type of resource. This is always mirror#location.
331
+ # Corresponds to the JSON property `kind`
332
+ # @return [String]
333
+ attr_accessor :kind
334
+
335
+ # The latitude, in degrees.
336
+ # Corresponds to the JSON property `latitude`
337
+ # @return [Float]
338
+ attr_accessor :latitude
339
+
340
+ # The longitude, in degrees.
341
+ # Corresponds to the JSON property `longitude`
342
+ # @return [Float]
343
+ attr_accessor :longitude
344
+
345
+ # The time at which this location was captured, formatted according to RFC 3339.
346
+ # Corresponds to the JSON property `timestamp`
347
+ # @return [DateTime]
348
+ attr_accessor :timestamp
349
+
350
+ def initialize(**args)
351
+ update!(**args)
352
+ end
353
+
354
+ # Update properties of this object
355
+ def update!(**args)
356
+ @accuracy = args[:accuracy] unless args[:accuracy].nil?
357
+ @address = args[:address] unless args[:address].nil?
358
+ @display_name = args[:display_name] unless args[:display_name].nil?
359
+ @id = args[:id] unless args[:id].nil?
360
+ @kind = args[:kind] unless args[:kind].nil?
361
+ @latitude = args[:latitude] unless args[:latitude].nil?
362
+ @longitude = args[:longitude] unless args[:longitude].nil?
363
+ @timestamp = args[:timestamp] unless args[:timestamp].nil?
364
+ end
365
+ end
366
+
367
+ # A list of Locations. This is the response from the server to GET requests on
368
+ # the locations collection.
369
+ class ListLocationsResponse
370
+ include Google::Apis::Core::Hashable
371
+
372
+ # The list of locations.
373
+ # Corresponds to the JSON property `items`
374
+ # @return [Array<Google::Apis::MirrorV1::Location>]
375
+ attr_accessor :items
376
+
377
+ # The type of resource. This is always mirror#locationsList.
378
+ # Corresponds to the JSON property `kind`
379
+ # @return [String]
380
+ attr_accessor :kind
381
+
382
+ def initialize(**args)
383
+ update!(**args)
384
+ end
385
+
386
+ # Update properties of this object
387
+ def update!(**args)
388
+ @items = args[:items] unless args[:items].nil?
389
+ @kind = args[:kind] unless args[:kind].nil?
390
+ end
391
+ end
392
+
393
+ # A custom menu item that can be presented to the user by a timeline item.
394
+ class MenuItem
395
+ include Google::Apis::Core::Hashable
396
+
397
+ # Controls the behavior when the user picks the menu option. Allowed values are:
398
+ #
399
+ # - CUSTOM - Custom action set by the service. When the user selects this
400
+ # menuItem, the API triggers a notification to your callbackUrl with the
401
+ # userActions.type set to CUSTOM and the userActions.payload set to the ID of
402
+ # this menu item. This is the default value.
403
+ # - Built-in actions:
404
+ # - REPLY - Initiate a reply to the timeline item using the voice recording UI.
405
+ # The creator attribute must be set in the timeline item for this menu to be
406
+ # available.
407
+ # - REPLY_ALL - Same behavior as REPLY. The original timeline item's recipients
408
+ # will be added to the reply item.
409
+ # - DELETE - Delete the timeline item.
410
+ # - SHARE - Share the timeline item with the available contacts.
411
+ # - READ_ALOUD - Read the timeline item's speakableText aloud; if this field is
412
+ # not set, read the text field; if none of those fields are set, this menu item
413
+ # is ignored.
414
+ # - GET_MEDIA_INPUT - Allow users to provide media payloads to Glassware from a
415
+ # menu item (currently, only transcribed text from voice input is supported).
416
+ # Subscribe to notifications when users invoke this menu item to receive the
417
+ # timeline item ID. Retrieve the media from the timeline item in the payload
418
+ # property.
419
+ # - VOICE_CALL - Initiate a phone call using the timeline item's creator.
420
+ # phoneNumber attribute as recipient.
421
+ # - NAVIGATE - Navigate to the timeline item's location.
422
+ # - TOGGLE_PINNED - Toggle the isPinned state of the timeline item.
423
+ # - OPEN_URI - Open the payload of the menu item in the browser.
424
+ # - PLAY_VIDEO - Open the payload of the menu item in the Glass video player.
425
+ # - SEND_MESSAGE - Initiate sending a message to the timeline item's creator:
426
+ # - If the creator.phoneNumber is set and Glass is connected to an Android phone,
427
+ # the message is an SMS.
428
+ # - Otherwise, if the creator.email is set, the message is an email.
429
+ # Corresponds to the JSON property `action`
430
+ # @return [String]
431
+ attr_accessor :action
432
+
433
+ # The ContextualMenus.Command associated with this MenuItem (e.g. READ_ALOUD).
434
+ # The voice label for this command will be displayed in the voice menu and the
435
+ # touch label will be displayed in the touch menu. Note that the default menu
436
+ # value's display name will be overriden if you specify this property. Values
437
+ # that do not correspond to a ContextualMenus.Command name will be ignored.
438
+ # Corresponds to the JSON property `contextual_command`
439
+ # @return [String]
440
+ attr_accessor :contextual_command
441
+
442
+ # The ID for this menu item. This is generated by the application and is treated
443
+ # as an opaque token.
444
+ # Corresponds to the JSON property `id`
445
+ # @return [String]
446
+ attr_accessor :id
447
+
448
+ # A generic payload whose meaning changes depending on this MenuItem's action.
449
+ # - When the action is OPEN_URI, the payload is the URL of the website to view.
450
+ # - When the action is PLAY_VIDEO, the payload is the streaming URL of the video
451
+ # - When the action is GET_MEDIA_INPUT, the payload is the text transcription of
452
+ # a user's speech input
453
+ # Corresponds to the JSON property `payload`
454
+ # @return [String]
455
+ attr_accessor :payload
456
+
457
+ # If set to true on a CUSTOM menu item, that item will be removed from the menu
458
+ # after it is selected.
459
+ # Corresponds to the JSON property `removeWhenSelected`
460
+ # @return [Boolean]
461
+ attr_accessor :remove_when_selected
462
+ alias_method :remove_when_selected?, :remove_when_selected
463
+
464
+ # For CUSTOM items, a list of values controlling the appearance of the menu item
465
+ # in each of its states. A value for the DEFAULT state must be provided. If the
466
+ # PENDING or CONFIRMED states are missing, they will not be shown.
467
+ # Corresponds to the JSON property `values`
468
+ # @return [Array<Google::Apis::MirrorV1::MenuValue>]
469
+ attr_accessor :values
470
+
471
+ def initialize(**args)
472
+ update!(**args)
473
+ end
474
+
475
+ # Update properties of this object
476
+ def update!(**args)
477
+ @action = args[:action] unless args[:action].nil?
478
+ @contextual_command = args[:contextual_command] unless args[:contextual_command].nil?
479
+ @id = args[:id] unless args[:id].nil?
480
+ @payload = args[:payload] unless args[:payload].nil?
481
+ @remove_when_selected = args[:remove_when_selected] unless args[:remove_when_selected].nil?
482
+ @values = args[:values] unless args[:values].nil?
483
+ end
484
+ end
485
+
486
+ # A single value that is part of a MenuItem.
487
+ class MenuValue
488
+ include Google::Apis::Core::Hashable
489
+
490
+ # The name to display for the menu item. If you specify this property for a
491
+ # built-in menu item, the default contextual voice command for that menu item is
492
+ # not shown.
493
+ # Corresponds to the JSON property `displayName`
494
+ # @return [String]
495
+ attr_accessor :display_name
496
+
497
+ # URL of an icon to display with the menu item.
498
+ # Corresponds to the JSON property `iconUrl`
499
+ # @return [String]
500
+ attr_accessor :icon_url
501
+
502
+ # The state that this value applies to. Allowed values are:
503
+ # - DEFAULT - Default value shown when displayed in the menuItems list.
504
+ # - PENDING - Value shown when the menuItem has been selected by the user but
505
+ # can still be cancelled.
506
+ # - CONFIRMED - Value shown when the menuItem has been selected by the user and
507
+ # can no longer be cancelled.
508
+ # Corresponds to the JSON property `state`
509
+ # @return [String]
510
+ attr_accessor :state
511
+
512
+ def initialize(**args)
513
+ update!(**args)
514
+ end
515
+
516
+ # Update properties of this object
517
+ def update!(**args)
518
+ @display_name = args[:display_name] unless args[:display_name].nil?
519
+ @icon_url = args[:icon_url] unless args[:icon_url].nil?
520
+ @state = args[:state] unless args[:state].nil?
521
+ end
522
+ end
523
+
524
+ # A notification delivered by the API.
525
+ class Notification
526
+ include Google::Apis::Core::Hashable
527
+
528
+ # The collection that generated the notification.
529
+ # Corresponds to the JSON property `collection`
530
+ # @return [String]
531
+ attr_accessor :collection
532
+
533
+ # The ID of the item that generated the notification.
534
+ # Corresponds to the JSON property `itemId`
535
+ # @return [String]
536
+ attr_accessor :item_id
537
+
538
+ # The type of operation that generated the notification.
539
+ # Corresponds to the JSON property `operation`
540
+ # @return [String]
541
+ attr_accessor :operation
542
+
543
+ # A list of actions taken by the user that triggered the notification.
544
+ # Corresponds to the JSON property `userActions`
545
+ # @return [Array<Google::Apis::MirrorV1::UserAction>]
546
+ attr_accessor :user_actions
547
+
548
+ # The user token provided by the service when it subscribed for notifications.
549
+ # Corresponds to the JSON property `userToken`
550
+ # @return [String]
551
+ attr_accessor :user_token
552
+
553
+ # The secret verify token provided by the service when it subscribed for
554
+ # notifications.
555
+ # Corresponds to the JSON property `verifyToken`
556
+ # @return [String]
557
+ attr_accessor :verify_token
558
+
559
+ def initialize(**args)
560
+ update!(**args)
561
+ end
562
+
563
+ # Update properties of this object
564
+ def update!(**args)
565
+ @collection = args[:collection] unless args[:collection].nil?
566
+ @item_id = args[:item_id] unless args[:item_id].nil?
567
+ @operation = args[:operation] unless args[:operation].nil?
568
+ @user_actions = args[:user_actions] unless args[:user_actions].nil?
569
+ @user_token = args[:user_token] unless args[:user_token].nil?
570
+ @verify_token = args[:verify_token] unless args[:verify_token].nil?
571
+ end
572
+ end
573
+
574
+ # Controls how notifications for a timeline item are presented to the user.
575
+ class NotificationConfig
576
+ include Google::Apis::Core::Hashable
577
+
578
+ # The time at which the notification should be delivered.
579
+ # Corresponds to the JSON property `deliveryTime`
580
+ # @return [DateTime]
581
+ attr_accessor :delivery_time
582
+
583
+ # Describes how important the notification is. Allowed values are:
584
+ # - DEFAULT - Notifications of default importance. A chime will be played to
585
+ # alert users.
586
+ # Corresponds to the JSON property `level`
587
+ # @return [String]
588
+ attr_accessor :level
589
+
590
+ def initialize(**args)
591
+ update!(**args)
592
+ end
593
+
594
+ # Update properties of this object
595
+ def update!(**args)
596
+ @delivery_time = args[:delivery_time] unless args[:delivery_time].nil?
597
+ @level = args[:level] unless args[:level].nil?
598
+ end
599
+ end
600
+
601
+ # A setting for Glass.
602
+ class Setting
603
+ include Google::Apis::Core::Hashable
604
+
605
+ # The setting's ID. The following IDs are valid:
606
+ # - locale - The key to the user’s language/locale (BCP 47 identifier) that
607
+ # Glassware should use to render localized content.
608
+ # - timezone - The key to the user’s current time zone region as defined in the
609
+ # tz database. Example: America/Los_Angeles.
610
+ # Corresponds to the JSON property `id`
611
+ # @return [String]
612
+ attr_accessor :id
613
+
614
+ # The type of resource. This is always mirror#setting.
615
+ # Corresponds to the JSON property `kind`
616
+ # @return [String]
617
+ attr_accessor :kind
618
+
619
+ # The setting value, as a string.
620
+ # Corresponds to the JSON property `value`
621
+ # @return [String]
622
+ attr_accessor :value
623
+
624
+ def initialize(**args)
625
+ update!(**args)
626
+ end
627
+
628
+ # Update properties of this object
629
+ def update!(**args)
630
+ @id = args[:id] unless args[:id].nil?
631
+ @kind = args[:kind] unless args[:kind].nil?
632
+ @value = args[:value] unless args[:value].nil?
633
+ end
634
+ end
635
+
636
+ # A subscription to events on a collection.
637
+ class Subscription
638
+ include Google::Apis::Core::Hashable
639
+
640
+ # The URL where notifications should be delivered (must start with https://).
641
+ # Corresponds to the JSON property `callbackUrl`
642
+ # @return [String]
643
+ attr_accessor :callback_url
644
+
645
+ # The collection to subscribe to. Allowed values are:
646
+ # - timeline - Changes in the timeline including insertion, deletion, and
647
+ # updates.
648
+ # - locations - Location updates.
649
+ # - settings - Settings updates.
650
+ # Corresponds to the JSON property `collection`
651
+ # @return [String]
652
+ attr_accessor :collection
653
+
654
+ # The ID of the subscription.
655
+ # Corresponds to the JSON property `id`
656
+ # @return [String]
657
+ attr_accessor :id
658
+
659
+ # The type of resource. This is always mirror#subscription.
660
+ # Corresponds to the JSON property `kind`
661
+ # @return [String]
662
+ attr_accessor :kind
663
+
664
+ # A notification delivered by the API.
665
+ # Corresponds to the JSON property `notification`
666
+ # @return [Google::Apis::MirrorV1::Notification]
667
+ attr_accessor :notification
668
+
669
+ # A list of operations that should be subscribed to. An empty list indicates
670
+ # that all operations on the collection should be subscribed to. Allowed values
671
+ # are:
672
+ # - UPDATE - The item has been updated.
673
+ # - INSERT - A new item has been inserted.
674
+ # - DELETE - The item has been deleted.
675
+ # - MENU_ACTION - A custom menu item has been triggered by the user.
676
+ # Corresponds to the JSON property `operation`
677
+ # @return [Array<String>]
678
+ attr_accessor :operation
679
+
680
+ # The time at which this subscription was last modified, formatted according to
681
+ # RFC 3339.
682
+ # Corresponds to the JSON property `updated`
683
+ # @return [DateTime]
684
+ attr_accessor :updated
685
+
686
+ # An opaque token sent to the subscriber in notifications so that it can
687
+ # determine the ID of the user.
688
+ # Corresponds to the JSON property `userToken`
689
+ # @return [String]
690
+ attr_accessor :user_token
691
+
692
+ # A secret token sent to the subscriber in notifications so that it can verify
693
+ # that the notification was generated by Google.
694
+ # Corresponds to the JSON property `verifyToken`
695
+ # @return [String]
696
+ attr_accessor :verify_token
697
+
698
+ def initialize(**args)
699
+ update!(**args)
700
+ end
701
+
702
+ # Update properties of this object
703
+ def update!(**args)
704
+ @callback_url = args[:callback_url] unless args[:callback_url].nil?
705
+ @collection = args[:collection] unless args[:collection].nil?
706
+ @id = args[:id] unless args[:id].nil?
707
+ @kind = args[:kind] unless args[:kind].nil?
708
+ @notification = args[:notification] unless args[:notification].nil?
709
+ @operation = args[:operation] unless args[:operation].nil?
710
+ @updated = args[:updated] unless args[:updated].nil?
711
+ @user_token = args[:user_token] unless args[:user_token].nil?
712
+ @verify_token = args[:verify_token] unless args[:verify_token].nil?
713
+ end
714
+ end
715
+
716
+ # A list of Subscriptions. This is the response from the server to GET requests
717
+ # on the subscription collection.
718
+ class ListSubscriptionsResponse
719
+ include Google::Apis::Core::Hashable
720
+
721
+ # The list of subscriptions.
722
+ # Corresponds to the JSON property `items`
723
+ # @return [Array<Google::Apis::MirrorV1::Subscription>]
724
+ attr_accessor :items
725
+
726
+ # The type of resource. This is always mirror#subscriptionsList.
727
+ # Corresponds to the JSON property `kind`
728
+ # @return [String]
729
+ attr_accessor :kind
730
+
731
+ def initialize(**args)
732
+ update!(**args)
733
+ end
734
+
735
+ # Update properties of this object
736
+ def update!(**args)
737
+ @items = args[:items] unless args[:items].nil?
738
+ @kind = args[:kind] unless args[:kind].nil?
739
+ end
740
+ end
741
+
742
+ # Each item in the user's timeline is represented as a TimelineItem JSON
743
+ # structure, described below.
744
+ class TimelineItem
745
+ include Google::Apis::Core::Hashable
746
+
747
+ # A list of media attachments associated with this item. As a convenience, you
748
+ # can refer to attachments in your HTML payloads with the attachment or cid
749
+ # scheme. For example:
750
+ # - attachment: <img src="attachment:attachment_index"> where attachment_index
751
+ # is the 0-based index of this array.
752
+ # - cid: <img src="cid:attachment_id"> where attachment_id is the ID of the
753
+ # attachment.
754
+ # Corresponds to the JSON property `attachments`
755
+ # @return [Array<Google::Apis::MirrorV1::Attachment>]
756
+ attr_accessor :attachments
757
+
758
+ # The bundle ID for this item. Services can specify a bundleId to group many
759
+ # items together. They appear under a single top-level item on the device.
760
+ # Corresponds to the JSON property `bundleId`
761
+ # @return [String]
762
+ attr_accessor :bundle_id
763
+
764
+ # A canonical URL pointing to the canonical/high quality version of the data
765
+ # represented by the timeline item.
766
+ # Corresponds to the JSON property `canonicalUrl`
767
+ # @return [String]
768
+ attr_accessor :canonical_url
769
+
770
+ # The time at which this item was created, formatted according to RFC 3339.
771
+ # Corresponds to the JSON property `created`
772
+ # @return [DateTime]
773
+ attr_accessor :created
774
+
775
+ # A person or group that can be used as a creator or a contact.
776
+ # Corresponds to the JSON property `creator`
777
+ # @return [Google::Apis::MirrorV1::Contact]
778
+ attr_accessor :creator
779
+
780
+ # The time that should be displayed when this item is viewed in the timeline,
781
+ # formatted according to RFC 3339. This user's timeline is sorted
782
+ # chronologically on display time, so this will also determine where the item is
783
+ # displayed in the timeline. If not set by the service, the display time
784
+ # defaults to the updated time.
785
+ # Corresponds to the JSON property `displayTime`
786
+ # @return [DateTime]
787
+ attr_accessor :display_time
788
+
789
+ # ETag for this item.
790
+ # Corresponds to the JSON property `etag`
791
+ # @return [String]
792
+ attr_accessor :etag
793
+
794
+ # HTML content for this item. If both text and html are provided for an item,
795
+ # the html will be rendered in the timeline.
796
+ # Allowed HTML elements - You can use these elements in your timeline cards.
797
+ #
798
+ # - Headers: h1, h2, h3, h4, h5, h6
799
+ # - Images: img
800
+ # - Lists: li, ol, ul
801
+ # - HTML5 semantics: article, aside, details, figure, figcaption, footer, header,
802
+ # nav, section, summary, time
803
+ # - Structural: blockquote, br, div, hr, p, span
804
+ # - Style: b, big, center, em, i, u, s, small, strike, strong, style, sub, sup
805
+ # - Tables: table, tbody, td, tfoot, th, thead, tr
806
+ # Blocked HTML elements: These elements and their contents are removed from HTML
807
+ # payloads.
808
+ #
809
+ # - Document headers: head, title
810
+ # - Embeds: audio, embed, object, source, video
811
+ # - Frames: frame, frameset
812
+ # - Scripting: applet, script
813
+ # Other elements: Any elements that aren't listed are removed, but their
814
+ # contents are preserved.
815
+ # Corresponds to the JSON property `html`
816
+ # @return [String]
817
+ attr_accessor :html
818
+
819
+ # The ID of the timeline item. This is unique within a user's timeline.
820
+ # Corresponds to the JSON property `id`
821
+ # @return [String]
822
+ attr_accessor :id
823
+
824
+ # If this item was generated as a reply to another item, this field will be set
825
+ # to the ID of the item being replied to. This can be used to attach a reply to
826
+ # the appropriate conversation or post.
827
+ # Corresponds to the JSON property `inReplyTo`
828
+ # @return [String]
829
+ attr_accessor :in_reply_to
830
+
831
+ # Whether this item is a bundle cover.
832
+ # If an item is marked as a bundle cover, it will be the entry point to the
833
+ # bundle of items that have the same bundleId as that item. It will be shown
834
+ # only on the main timeline — not within the opened bundle.
835
+ # On the main timeline, items that are shown are:
836
+ # - Items that have isBundleCover set to true
837
+ # - Items that do not have a bundleId In a bundle sub-timeline, items that are
838
+ # shown are:
839
+ # - Items that have the bundleId in question AND isBundleCover set to false
840
+ # Corresponds to the JSON property `isBundleCover`
841
+ # @return [Boolean]
842
+ attr_accessor :is_bundle_cover
843
+ alias_method :is_bundle_cover?, :is_bundle_cover
844
+
845
+ # When true, indicates this item is deleted, and only the ID property is set.
846
+ # Corresponds to the JSON property `isDeleted`
847
+ # @return [Boolean]
848
+ attr_accessor :is_deleted
849
+ alias_method :is_deleted?, :is_deleted
850
+
851
+ # When true, indicates this item is pinned, which means it's grouped alongside "
852
+ # active" items like navigation and hangouts, on the opposite side of the home
853
+ # screen from historical (non-pinned) timeline items. You can allow the user to
854
+ # toggle the value of this property with the TOGGLE_PINNED built-in menu item.
855
+ # Corresponds to the JSON property `isPinned`
856
+ # @return [Boolean]
857
+ attr_accessor :is_pinned
858
+ alias_method :is_pinned?, :is_pinned
859
+
860
+ # The type of resource. This is always mirror#timelineItem.
861
+ # Corresponds to the JSON property `kind`
862
+ # @return [String]
863
+ attr_accessor :kind
864
+
865
+ # A geographic location that can be associated with a timeline item.
866
+ # Corresponds to the JSON property `location`
867
+ # @return [Google::Apis::MirrorV1::Location]
868
+ attr_accessor :location
869
+
870
+ # A list of menu items that will be presented to the user when this item is
871
+ # selected in the timeline.
872
+ # Corresponds to the JSON property `menuItems`
873
+ # @return [Array<Google::Apis::MirrorV1::MenuItem>]
874
+ attr_accessor :menu_items
875
+
876
+ # Controls how notifications for a timeline item are presented to the user.
877
+ # Corresponds to the JSON property `notification`
878
+ # @return [Google::Apis::MirrorV1::NotificationConfig]
879
+ attr_accessor :notification
880
+
881
+ # For pinned items, this determines the order in which the item is displayed in
882
+ # the timeline, with a higher score appearing closer to the clock. Note: setting
883
+ # this field is currently not supported.
884
+ # Corresponds to the JSON property `pinScore`
885
+ # @return [Fixnum]
886
+ attr_accessor :pin_score
887
+
888
+ # A list of users or groups that this item has been shared with.
889
+ # Corresponds to the JSON property `recipients`
890
+ # @return [Array<Google::Apis::MirrorV1::Contact>]
891
+ attr_accessor :recipients
892
+
893
+ # A URL that can be used to retrieve this item.
894
+ # Corresponds to the JSON property `selfLink`
895
+ # @return [String]
896
+ attr_accessor :self_link
897
+
898
+ # Opaque string you can use to map a timeline item to data in your own service.
899
+ # Corresponds to the JSON property `sourceItemId`
900
+ # @return [String]
901
+ attr_accessor :source_item_id
902
+
903
+ # The speakable version of the content of this item. Along with the READ_ALOUD
904
+ # menu item, use this field to provide text that would be clearer when read
905
+ # aloud, or to provide extended information to what is displayed visually on
906
+ # Glass.
907
+ # Glassware should also specify the speakableType field, which will be spoken
908
+ # before this text in cases where the additional context is useful, for example
909
+ # when the user requests that the item be read aloud following a notification.
910
+ # Corresponds to the JSON property `speakableText`
911
+ # @return [String]
912
+ attr_accessor :speakable_text
913
+
914
+ # A speakable description of the type of this item. This will be announced to
915
+ # the user prior to reading the content of the item in cases where the
916
+ # additional context is useful, for example when the user requests that the item
917
+ # be read aloud following a notification.
918
+ # This should be a short, simple noun phrase such as "Email", "Text message", or
919
+ # "Daily Planet News Update".
920
+ # Glassware are encouraged to populate this field for every timeline item, even
921
+ # if the item does not contain speakableText or text so that the user can learn
922
+ # the type of the item without looking at the screen.
923
+ # Corresponds to the JSON property `speakableType`
924
+ # @return [String]
925
+ attr_accessor :speakable_type
926
+
927
+ # Text content of this item.
928
+ # Corresponds to the JSON property `text`
929
+ # @return [String]
930
+ attr_accessor :text
931
+
932
+ # The title of this item.
933
+ # Corresponds to the JSON property `title`
934
+ # @return [String]
935
+ attr_accessor :title
936
+
937
+ # The time at which this item was last modified, formatted according to RFC 3339.
938
+ # Corresponds to the JSON property `updated`
939
+ # @return [DateTime]
940
+ attr_accessor :updated
941
+
942
+ def initialize(**args)
943
+ update!(**args)
944
+ end
945
+
946
+ # Update properties of this object
947
+ def update!(**args)
948
+ @attachments = args[:attachments] unless args[:attachments].nil?
949
+ @bundle_id = args[:bundle_id] unless args[:bundle_id].nil?
950
+ @canonical_url = args[:canonical_url] unless args[:canonical_url].nil?
951
+ @created = args[:created] unless args[:created].nil?
952
+ @creator = args[:creator] unless args[:creator].nil?
953
+ @display_time = args[:display_time] unless args[:display_time].nil?
954
+ @etag = args[:etag] unless args[:etag].nil?
955
+ @html = args[:html] unless args[:html].nil?
956
+ @id = args[:id] unless args[:id].nil?
957
+ @in_reply_to = args[:in_reply_to] unless args[:in_reply_to].nil?
958
+ @is_bundle_cover = args[:is_bundle_cover] unless args[:is_bundle_cover].nil?
959
+ @is_deleted = args[:is_deleted] unless args[:is_deleted].nil?
960
+ @is_pinned = args[:is_pinned] unless args[:is_pinned].nil?
961
+ @kind = args[:kind] unless args[:kind].nil?
962
+ @location = args[:location] unless args[:location].nil?
963
+ @menu_items = args[:menu_items] unless args[:menu_items].nil?
964
+ @notification = args[:notification] unless args[:notification].nil?
965
+ @pin_score = args[:pin_score] unless args[:pin_score].nil?
966
+ @recipients = args[:recipients] unless args[:recipients].nil?
967
+ @self_link = args[:self_link] unless args[:self_link].nil?
968
+ @source_item_id = args[:source_item_id] unless args[:source_item_id].nil?
969
+ @speakable_text = args[:speakable_text] unless args[:speakable_text].nil?
970
+ @speakable_type = args[:speakable_type] unless args[:speakable_type].nil?
971
+ @text = args[:text] unless args[:text].nil?
972
+ @title = args[:title] unless args[:title].nil?
973
+ @updated = args[:updated] unless args[:updated].nil?
974
+ end
975
+ end
976
+
977
+ # A list of timeline items. This is the response from the server to GET requests
978
+ # on the timeline collection.
979
+ class ListTimelineResponse
980
+ include Google::Apis::Core::Hashable
981
+
982
+ # Items in the timeline.
983
+ # Corresponds to the JSON property `items`
984
+ # @return [Array<Google::Apis::MirrorV1::TimelineItem>]
985
+ attr_accessor :items
986
+
987
+ # The type of resource. This is always mirror#timeline.
988
+ # Corresponds to the JSON property `kind`
989
+ # @return [String]
990
+ attr_accessor :kind
991
+
992
+ # The next page token. Provide this as the pageToken parameter in the request to
993
+ # retrieve the next page of results.
994
+ # Corresponds to the JSON property `nextPageToken`
995
+ # @return [String]
996
+ attr_accessor :next_page_token
997
+
998
+ def initialize(**args)
999
+ update!(**args)
1000
+ end
1001
+
1002
+ # Update properties of this object
1003
+ def update!(**args)
1004
+ @items = args[:items] unless args[:items].nil?
1005
+ @kind = args[:kind] unless args[:kind].nil?
1006
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1007
+ end
1008
+ end
1009
+
1010
+ # Represents an action taken by the user that triggered a notification.
1011
+ class UserAction
1012
+ include Google::Apis::Core::Hashable
1013
+
1014
+ # An optional payload for the action.
1015
+ # For actions of type CUSTOM, this is the ID of the custom menu item that was
1016
+ # selected.
1017
+ # Corresponds to the JSON property `payload`
1018
+ # @return [String]
1019
+ attr_accessor :payload
1020
+
1021
+ # The type of action. The value of this can be:
1022
+ # - SHARE - the user shared an item.
1023
+ # - REPLY - the user replied to an item.
1024
+ # - REPLY_ALL - the user replied to all recipients of an item.
1025
+ # - CUSTOM - the user selected a custom menu item on the timeline item.
1026
+ # - DELETE - the user deleted the item.
1027
+ # - PIN - the user pinned the item.
1028
+ # - UNPIN - the user unpinned the item.
1029
+ # - LAUNCH - the user initiated a voice command. In the future, additional
1030
+ # types may be added. UserActions with unrecognized types should be ignored.
1031
+ # Corresponds to the JSON property `type`
1032
+ # @return [String]
1033
+ attr_accessor :type
1034
+
1035
+ def initialize(**args)
1036
+ update!(**args)
1037
+ end
1038
+
1039
+ # Update properties of this object
1040
+ def update!(**args)
1041
+ @payload = args[:payload] unless args[:payload].nil?
1042
+ @type = args[:type] unless args[:type].nil?
1043
+ end
1044
+ end
1045
+
1046
+ #
1047
+ class UserData
1048
+ include Google::Apis::Core::Hashable
1049
+
1050
+ #
1051
+ # Corresponds to the JSON property `key`
1052
+ # @return [String]
1053
+ attr_accessor :key
1054
+
1055
+ #
1056
+ # Corresponds to the JSON property `value`
1057
+ # @return [String]
1058
+ attr_accessor :value
1059
+
1060
+ def initialize(**args)
1061
+ update!(**args)
1062
+ end
1063
+
1064
+ # Update properties of this object
1065
+ def update!(**args)
1066
+ @key = args[:key] unless args[:key].nil?
1067
+ @value = args[:value] unless args[:value].nil?
1068
+ end
1069
+ end
1070
+ end
1071
+ end
1072
+ end