google-api-client 0.8.7 → 0.9.pre1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (397) 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 +21 -0
  7. data/.yardopts +12 -0
  8. data/CHANGELOG.md +6 -3
  9. data/CONTRIBUTING.md +31 -0
  10. data/Gemfile +28 -2
  11. data/MIGRATING.md +171 -0
  12. data/README.md +158 -150
  13. data/Rakefile +1 -40
  14. data/api_names.yaml +872 -0
  15. data/api_names_out.yaml +20843 -0
  16. data/bin/generate-api +93 -0
  17. data/generated/google/apis/adexchangebuyer_v1_3.rb +35 -0
  18. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +1124 -0
  19. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +375 -0
  20. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +893 -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 +682 -0
  25. data/generated/google/apis/admin_directory_v1.rb +89 -0
  26. data/generated/google/apis/admin_directory_v1/classes.rb +2389 -0
  27. data/generated/google/apis/admin_directory_v1/representations.rb +780 -0
  28. data/generated/google/apis/admin_directory_v1/service.rb +2805 -0
  29. data/generated/google/apis/admin_reports_v1.rb +38 -0
  30. data/generated/google/apis/admin_reports_v1/classes.rb +582 -0
  31. data/generated/google/apis/admin_reports_v1/representations.rb +231 -0
  32. data/generated/google/apis/admin_reports_v1/service.rb +341 -0
  33. data/generated/google/apis/adsense_v1_4.rb +38 -0
  34. data/generated/google/apis/adsense_v1_4/classes.rb +1279 -0
  35. data/generated/google/apis/adsense_v1_4/representations.rb +493 -0
  36. data/generated/google/apis/adsense_v1_4/service.rb +1752 -0
  37. data/generated/google/apis/adsensehost_v4_1.rb +35 -0
  38. data/generated/google/apis/adsensehost_v4_1/classes.rb +834 -0
  39. data/generated/google/apis/adsensehost_v4_1/representations.rb +327 -0
  40. data/generated/google/apis/adsensehost_v4_1/service.rb +1190 -0
  41. data/generated/google/apis/analytics_v3.rb +49 -0
  42. data/generated/google/apis/analytics_v3/classes.rb +5113 -0
  43. data/generated/google/apis/analytics_v3/representations.rb +1661 -0
  44. data/generated/google/apis/analytics_v3/service.rb +3600 -0
  45. data/generated/google/apis/androidenterprise_v1.rb +34 -0
  46. data/generated/google/apis/androidenterprise_v1/classes.rb +1162 -0
  47. data/generated/google/apis/androidenterprise_v1/representations.rb +431 -0
  48. data/generated/google/apis/androidenterprise_v1/service.rb +1979 -0
  49. data/generated/google/apis/androidpublisher_v2.rb +34 -0
  50. data/generated/google/apis/androidpublisher_v2/classes.rb +1374 -0
  51. data/generated/google/apis/androidpublisher_v2/representations.rb +630 -0
  52. data/generated/google/apis/androidpublisher_v2/service.rb +2390 -0
  53. data/generated/google/apis/appsactivity_v1.rb +46 -0
  54. data/generated/google/apis/appsactivity_v1/classes.rb +392 -0
  55. data/generated/google/apis/appsactivity_v1/representations.rb +184 -0
  56. data/generated/google/apis/appsactivity_v1/service.rb +129 -0
  57. data/generated/google/apis/appstate_v1.rb +34 -0
  58. data/generated/google/apis/appstate_v1/classes.rb +154 -0
  59. data/generated/google/apis/appstate_v1/representations.rb +79 -0
  60. data/generated/google/apis/appstate_v1/service.rb +265 -0
  61. data/generated/google/apis/autoscaler_v1beta2.rb +38 -0
  62. data/generated/google/apis/autoscaler_v1beta2/classes.rb +747 -0
  63. data/generated/google/apis/autoscaler_v1beta2/representations.rb +281 -0
  64. data/generated/google/apis/autoscaler_v1beta2/service.rb +488 -0
  65. data/generated/google/apis/bigquery_v2.rb +49 -0
  66. data/generated/google/apis/bigquery_v2/classes.rb +2255 -0
  67. data/generated/google/apis/bigquery_v2/representations.rb +754 -0
  68. data/generated/google/apis/bigquery_v2/service.rb +1003 -0
  69. data/generated/google/apis/blogger_v3.rb +37 -0
  70. data/generated/google/apis/blogger_v3/classes.rb +1354 -0
  71. data/generated/google/apis/blogger_v3/representations.rb +562 -0
  72. data/generated/google/apis/blogger_v3/service.rb +1620 -0
  73. data/generated/google/apis/books_v1.rb +34 -0
  74. data/generated/google/apis/books_v1/classes.rb +3515 -0
  75. data/generated/google/apis/books_v1/representations.rb +1361 -0
  76. data/generated/google/apis/books_v1/service.rb +2170 -0
  77. data/generated/google/apis/calendar_v3.rb +37 -0
  78. data/generated/google/apis/calendar_v3/classes.rb +1702 -0
  79. data/generated/google/apis/calendar_v3/representations.rb +566 -0
  80. data/generated/google/apis/calendar_v3/service.rb +1943 -0
  81. data/generated/google/apis/civicinfo_v2.rb +31 -0
  82. data/generated/google/apis/civicinfo_v2/classes.rb +1057 -0
  83. data/generated/google/apis/civicinfo_v2/representations.rb +374 -0
  84. data/generated/google/apis/civicinfo_v2/service.rb +284 -0
  85. data/generated/google/apis/cloudmonitoring_v2beta2.rb +34 -0
  86. data/generated/google/apis/cloudmonitoring_v2beta2/classes.rb +679 -0
  87. data/generated/google/apis/cloudmonitoring_v2beta2/representations.rb +311 -0
  88. data/generated/google/apis/cloudmonitoring_v2beta2/service.rb +458 -0
  89. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +38 -0
  90. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +139 -0
  91. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +65 -0
  92. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +301 -0
  93. data/generated/google/apis/compute_v1.rb +49 -0
  94. data/generated/google/apis/compute_v1/classes.rb +6391 -0
  95. data/generated/google/apis/compute_v1/representations.rb +2209 -0
  96. data/generated/google/apis/compute_v1/service.rb +6352 -0
  97. data/generated/google/apis/container_v1beta1.rb +35 -0
  98. data/generated/google/apis/container_v1beta1/classes.rb +466 -0
  99. data/generated/google/apis/container_v1beta1/representations.rb +177 -0
  100. data/generated/google/apis/container_v1beta1/service.rb +394 -0
  101. data/generated/google/apis/content_v2.rb +35 -0
  102. data/generated/google/apis/content_v2/classes.rb +3780 -0
  103. data/generated/google/apis/content_v2/representations.rb +1456 -0
  104. data/generated/google/apis/content_v2/service.rb +1706 -0
  105. data/generated/google/apis/coordinate_v1.rb +37 -0
  106. data/generated/google/apis/coordinate_v1/classes.rb +669 -0
  107. data/generated/google/apis/coordinate_v1/representations.rb +285 -0
  108. data/generated/google/apis/coordinate_v1/service.rb +687 -0
  109. data/{lib/google/api_client/auth/compute_service_account.rb → generated/google/apis/customsearch_v1.rb} +13 -10
  110. data/generated/google/apis/customsearch_v1/classes.rb +771 -0
  111. data/generated/google/apis/customsearch_v1/representations.rb +276 -0
  112. data/generated/google/apis/customsearch_v1/service.rb +208 -0
  113. data/generated/google/apis/datastore_v1beta2.rb +40 -0
  114. data/generated/google/apis/datastore_v1beta2/classes.rb +1186 -0
  115. data/generated/google/apis/datastore_v1beta2/representations.rb +526 -0
  116. data/generated/google/apis/datastore_v1beta2/service.rb +300 -0
  117. data/generated/google/apis/deploymentmanager_v2beta2.rb +41 -0
  118. data/generated/google/apis/deploymentmanager_v2beta2/classes.rb +820 -0
  119. data/generated/google/apis/deploymentmanager_v2beta2/representations.rb +303 -0
  120. data/generated/google/apis/deploymentmanager_v2beta2/service.rb +647 -0
  121. data/generated/google/apis/dfareporting_v2_1.rb +37 -0
  122. data/generated/google/apis/dfareporting_v2_1/classes.rb +10755 -0
  123. data/generated/google/apis/dfareporting_v2_1/representations.rb +3438 -0
  124. data/generated/google/apis/dfareporting_v2_1/service.rb +8775 -0
  125. data/generated/google/apis/discovery_v1.rb +32 -0
  126. data/generated/google/apis/discovery_v1/classes.rb +947 -0
  127. data/generated/google/apis/discovery_v1/representations.rb +355 -0
  128. data/generated/google/apis/discovery_v1/service.rb +144 -0
  129. data/generated/google/apis/dns_v1.rb +41 -0
  130. data/generated/google/apis/dns_v1/classes.rb +406 -0
  131. data/generated/google/apis/dns_v1/representations.rb +151 -0
  132. data/generated/google/apis/dns_v1/service.rb +460 -0
  133. data/{spec/google/api_client/request_spec.rb → generated/google/apis/doubleclickbidmanager_v1.rb} +15 -13
  134. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +709 -0
  135. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +297 -0
  136. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +349 -0
  137. data/generated/google/apis/doubleclicksearch_v2.rb +35 -0
  138. data/generated/google/apis/doubleclicksearch_v2/classes.rb +947 -0
  139. data/generated/google/apis/doubleclicksearch_v2/representations.rb +315 -0
  140. data/generated/google/apis/doubleclicksearch_v2/service.rb +490 -0
  141. data/generated/google/apis/drive_v2.rb +55 -0
  142. data/generated/google/apis/drive_v2/classes.rb +2519 -0
  143. data/generated/google/apis/drive_v2/representations.rb +781 -0
  144. data/generated/google/apis/drive_v2/service.rb +2685 -0
  145. data/generated/google/apis/fitness_v1.rb +49 -0
  146. data/generated/google/apis/fitness_v1/classes.rb +809 -0
  147. data/generated/google/apis/fitness_v1/representations.rb +295 -0
  148. data/generated/google/apis/fitness_v1/service.rb +684 -0
  149. data/generated/google/apis/fusiontables_v2.rb +37 -0
  150. data/generated/google/apis/fusiontables_v2/classes.rb +1048 -0
  151. data/generated/google/apis/fusiontables_v2/representations.rb +409 -0
  152. data/generated/google/apis/fusiontables_v2/service.rb +1496 -0
  153. data/generated/google/apis/games_configuration_v1configuration.rb +34 -0
  154. data/generated/google/apis/games_configuration_v1configuration/classes.rb +506 -0
  155. data/generated/google/apis/games_configuration_v1configuration/representations.rb +206 -0
  156. data/generated/google/apis/games_configuration_v1configuration/service.rb +578 -0
  157. data/generated/google/apis/games_v1.rb +40 -0
  158. data/generated/google/apis/games_v1/classes.rb +4578 -0
  159. data/generated/google/apis/games_v1/representations.rb +1570 -0
  160. data/generated/google/apis/games_v1/service.rb +2306 -0
  161. data/generated/google/apis/gan_v1beta1.rb +31 -0
  162. data/generated/google/apis/gan_v1beta1/classes.rb +1428 -0
  163. data/generated/google/apis/gan_v1beta1/representations.rb +428 -0
  164. data/generated/google/apis/gan_v1beta1/service.rb +692 -0
  165. data/generated/google/apis/genomics_v1beta2.rb +46 -0
  166. data/generated/google/apis/genomics_v1beta2/classes.rb +3288 -0
  167. data/generated/google/apis/genomics_v1beta2/representations.rb +1194 -0
  168. data/generated/google/apis/genomics_v1beta2/service.rb +2356 -0
  169. data/generated/google/apis/gmail_v1.rb +49 -0
  170. data/generated/google/apis/gmail_v1/classes.rb +794 -0
  171. data/generated/google/apis/gmail_v1/representations.rb +339 -0
  172. data/generated/google/apis/gmail_v1/service.rb +1502 -0
  173. data/generated/google/apis/groupsmigration_v1.rb +34 -0
  174. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  175. data/generated/google/apis/groupsmigration_v1/representations.rb +38 -0
  176. data/generated/google/apis/groupsmigration_v1/service.rb +111 -0
  177. data/generated/google/apis/groupssettings_v1.rb +34 -0
  178. data/generated/google/apis/groupssettings_v1/classes.rb +221 -0
  179. data/generated/google/apis/groupssettings_v1/representations.rb +64 -0
  180. data/generated/google/apis/groupssettings_v1/service.rb +179 -0
  181. data/generated/google/apis/identitytoolkit_v3.rb +31 -0
  182. data/generated/google/apis/identitytoolkit_v3/classes.rb +1229 -0
  183. data/generated/google/apis/identitytoolkit_v3/representations.rb +422 -0
  184. data/generated/google/apis/identitytoolkit_v3/service.rb +491 -0
  185. data/generated/google/apis/licensing_v1.rb +34 -0
  186. data/generated/google/apis/licensing_v1/classes.rb +132 -0
  187. data/generated/google/apis/licensing_v1/representations.rb +68 -0
  188. data/generated/google/apis/licensing_v1/service.rb +376 -0
  189. data/generated/google/apis/logging_v1beta3.rb +35 -0
  190. data/generated/google/apis/logging_v1beta3/classes.rb +505 -0
  191. data/generated/google/apis/logging_v1beta3/representations.rb +222 -0
  192. data/generated/google/apis/logging_v1beta3/service.rb +670 -0
  193. data/generated/google/apis/manager_v1beta2.rb +50 -0
  194. data/generated/google/apis/manager_v1beta2/classes.rb +1287 -0
  195. data/generated/google/apis/manager_v1beta2/representations.rb +536 -0
  196. data/generated/google/apis/manager_v1beta2/service.rb +380 -0
  197. data/generated/google/apis/mapsengine_v1.rb +38 -0
  198. data/generated/google/apis/mapsengine_v1/classes.rb +2873 -0
  199. data/generated/google/apis/mapsengine_v1/representations.rb +1235 -0
  200. data/generated/google/apis/mapsengine_v1/service.rb +3465 -0
  201. data/generated/google/apis/mirror_v1.rb +37 -0
  202. data/generated/google/apis/mirror_v1/classes.rb +1072 -0
  203. data/generated/google/apis/mirror_v1/representations.rb +350 -0
  204. data/generated/google/apis/mirror_v1/service.rb +1001 -0
  205. data/generated/google/apis/oauth2_v2.rb +43 -0
  206. data/generated/google/apis/oauth2_v2/classes.rb +245 -0
  207. data/generated/google/apis/oauth2_v2/representations.rb +94 -0
  208. data/generated/google/apis/oauth2_v2/service.rb +203 -0
  209. data/generated/google/apis/pagespeedonline_v2.rb +32 -0
  210. data/generated/google/apis/pagespeedonline_v2/classes.rb +614 -0
  211. data/generated/google/apis/pagespeedonline_v2/representations.rb +244 -0
  212. data/generated/google/apis/pagespeedonline_v2/service.rb +120 -0
  213. data/generated/google/apis/plus_domains_v1.rb +61 -0
  214. data/generated/google/apis/plus_domains_v1/classes.rb +2402 -0
  215. data/generated/google/apis/plus_domains_v1/representations.rb +873 -0
  216. data/generated/google/apis/plus_domains_v1/service.rb +924 -0
  217. data/generated/google/apis/plus_v1.rb +43 -0
  218. data/generated/google/apis/plus_v1/classes.rb +2384 -0
  219. data/generated/google/apis/plus_v1/representations.rb +812 -0
  220. data/generated/google/apis/plus_v1/service.rb +616 -0
  221. data/generated/google/apis/prediction_v1_6.rb +44 -0
  222. data/generated/google/apis/prediction_v1_6/classes.rb +751 -0
  223. data/generated/google/apis/prediction_v1_6/representations.rb +327 -0
  224. data/generated/google/apis/prediction_v1_6/service.rb +388 -0
  225. data/generated/google/apis/pubsub_v1beta2.rb +37 -0
  226. data/generated/google/apis/pubsub_v1beta2/classes.rb +824 -0
  227. data/generated/google/apis/pubsub_v1beta2/representations.rb +366 -0
  228. data/generated/google/apis/pubsub_v1beta2/service.rb +778 -0
  229. data/generated/google/apis/qpx_express_v1.rb +31 -0
  230. data/generated/google/apis/qpx_express_v1/classes.rb +1268 -0
  231. data/generated/google/apis/qpx_express_v1/representations.rb +424 -0
  232. data/generated/google/apis/qpx_express_v1/service.rb +101 -0
  233. data/generated/google/apis/replicapool_v1beta2.rb +41 -0
  234. data/generated/google/apis/replicapool_v1beta2/classes.rb +621 -0
  235. data/generated/google/apis/replicapool_v1beta2/representations.rb +235 -0
  236. data/generated/google/apis/replicapool_v1beta2/service.rb +620 -0
  237. data/generated/google/apis/replicapoolupdater_v1beta1.rb +41 -0
  238. data/generated/google/apis/replicapoolupdater_v1beta1/classes.rb +682 -0
  239. data/generated/google/apis/replicapoolupdater_v1beta1/representations.rb +247 -0
  240. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +472 -0
  241. data/generated/google/apis/reseller_v1.rb +37 -0
  242. data/generated/google/apis/reseller_v1/classes.rb +502 -0
  243. data/generated/google/apis/reseller_v1/representations.rb +199 -0
  244. data/generated/google/apis/reseller_v1/service.rb +637 -0
  245. data/generated/google/apis/resourceviews_v1beta2.rb +47 -0
  246. data/generated/google/apis/resourceviews_v1beta2/classes.rb +660 -0
  247. data/generated/google/apis/resourceviews_v1beta2/representations.rb +269 -0
  248. data/generated/google/apis/resourceviews_v1beta2/service.rb +574 -0
  249. data/generated/google/apis/site_verification_v1.rb +37 -0
  250. data/generated/google/apis/site_verification_v1/classes.rb +185 -0
  251. data/generated/google/apis/site_verification_v1/representations.rb +101 -0
  252. data/generated/google/apis/site_verification_v1/service.rb +322 -0
  253. data/generated/google/apis/sqladmin_v1beta4.rb +37 -0
  254. data/generated/google/apis/sqladmin_v1beta4/classes.rb +1817 -0
  255. data/generated/google/apis/sqladmin_v1beta4/representations.rb +688 -0
  256. data/generated/google/apis/sqladmin_v1beta4/service.rb +1534 -0
  257. data/generated/google/apis/storage_v1.rb +43 -0
  258. data/generated/google/apis/storage_v1/classes.rb +1177 -0
  259. data/generated/google/apis/storage_v1/representations.rb +427 -0
  260. data/generated/google/apis/storage_v1/service.rb +1920 -0
  261. data/generated/google/apis/tagmanager_v1.rb +52 -0
  262. data/generated/google/apis/tagmanager_v1/classes.rb +1226 -0
  263. data/generated/google/apis/tagmanager_v1/representations.rb +461 -0
  264. data/generated/google/apis/tagmanager_v1/service.rb +1978 -0
  265. data/generated/google/apis/taskqueue_v1beta2.rb +37 -0
  266. data/generated/google/apis/taskqueue_v1beta2/classes.rb +254 -0
  267. data/generated/google/apis/taskqueue_v1beta2/representations.rb +114 -0
  268. data/generated/google/apis/taskqueue_v1beta2/service.rb +416 -0
  269. data/generated/google/apis/tasks_v1.rb +37 -0
  270. data/generated/google/apis/tasks_v1/classes.rb +296 -0
  271. data/generated/google/apis/tasks_v1/representations.rb +115 -0
  272. data/generated/google/apis/tasks_v1/service.rb +657 -0
  273. data/generated/google/apis/translate_v2.rb +31 -0
  274. data/generated/google/apis/translate_v2/classes.rb +168 -0
  275. data/generated/google/apis/translate_v2/representations.rb +109 -0
  276. data/generated/google/apis/translate_v2/service.rb +185 -0
  277. data/generated/google/apis/urlshortener_v1.rb +34 -0
  278. data/generated/google/apis/urlshortener_v1/classes.rb +246 -0
  279. data/generated/google/apis/urlshortener_v1/representations.rb +111 -0
  280. data/generated/google/apis/urlshortener_v1/service.rb +179 -0
  281. data/generated/google/apis/webmasters_v3.rb +37 -0
  282. data/generated/google/apis/webmasters_v3/classes.rb +563 -0
  283. data/generated/google/apis/webmasters_v3/representations.rb +250 -0
  284. data/generated/google/apis/webmasters_v3/service.rb +587 -0
  285. data/generated/google/apis/youtube_analytics_v1.rb +46 -0
  286. data/generated/google/apis/youtube_analytics_v1/classes.rb +540 -0
  287. data/generated/google/apis/youtube_analytics_v1/representations.rb +242 -0
  288. data/generated/google/apis/youtube_analytics_v1/service.rb +567 -0
  289. data/generated/google/apis/youtube_v3.rb +49 -0
  290. data/generated/google/apis/youtube_v3/classes.rb +7225 -0
  291. data/generated/google/apis/youtube_v3/representations.rb +2529 -0
  292. data/generated/google/apis/youtube_v3/service.rb +4051 -0
  293. data/google-api-client.gemspec +27 -39
  294. data/lib/google/api_client/auth/storage.rb +3 -2
  295. data/lib/google/api_client/auth/storages/file_store.rb +1 -3
  296. data/lib/google/api_client/auth/storages/redis_store.rb +6 -2
  297. data/lib/google/apis.rb +48 -0
  298. data/lib/google/apis/core/api_command.rb +128 -0
  299. data/lib/google/apis/core/base_service.rb +314 -0
  300. data/lib/google/apis/core/batch.rb +222 -0
  301. data/lib/google/apis/core/download.rb +94 -0
  302. data/lib/google/apis/core/hashable.rb +44 -0
  303. data/lib/google/apis/core/http_command.rb +275 -0
  304. data/lib/google/apis/core/json_representation.rb +122 -0
  305. data/lib/google/{api_client/version.rb → apis/core/logging.rb} +12 -8
  306. data/lib/google/apis/core/multipart.rb +173 -0
  307. data/lib/google/apis/core/upload.rb +275 -0
  308. data/lib/google/{api_client → apis}/errors.rb +32 -28
  309. data/lib/google/apis/generator.rb +70 -0
  310. data/lib/google/apis/generator/annotator.rb +271 -0
  311. data/lib/google/apis/generator/helpers.rb +74 -0
  312. data/lib/google/apis/generator/model.rb +130 -0
  313. data/lib/google/apis/generator/template.rb +124 -0
  314. data/lib/google/apis/generator/templates/_class.tmpl +40 -0
  315. data/lib/google/apis/generator/templates/_method.tmpl +90 -0
  316. data/lib/google/apis/generator/templates/_representation.tmpl +51 -0
  317. data/lib/google/apis/generator/templates/_representation_stub.tmpl +15 -0
  318. data/lib/google/apis/generator/templates/_representation_type.tmpl +10 -0
  319. data/lib/google/{api_client/reference.rb → apis/generator/templates/classes.rb.tmpl} +11 -9
  320. data/lib/google/apis/generator/templates/module.rb.tmpl +40 -0
  321. data/lib/google/apis/generator/templates/representations.rb.tmpl +32 -0
  322. data/lib/google/apis/generator/templates/service.rb.tmpl +60 -0
  323. data/lib/google/apis/options.rb +79 -0
  324. data/lib/google/apis/version.rb +39 -0
  325. data/rakelib/metrics.rake +22 -0
  326. data/rakelib/rubocop.rake +10 -0
  327. data/rakelib/spec.rake +11 -0
  328. data/rakelib/yard.rake +11 -0
  329. data/samples/calendar/calendar.rb +43 -0
  330. data/samples/drive/drive.rb +40 -0
  331. data/samples/pubsub/pubsub.rb +52 -0
  332. data/{lib/google/api_client/discovery.rb → samples/translate/translate.rb} +14 -5
  333. data/script/generate +79 -0
  334. data/script/package +8 -0
  335. data/script/release +15 -0
  336. data/spec/fixtures/files/api_names.yaml +3 -0
  337. data/spec/fixtures/files/auth_stored_credentials.json +8 -0
  338. data/spec/fixtures/files/client_secrets.json +1 -0
  339. data/spec/fixtures/files/test.blah +1 -0
  340. data/spec/fixtures/files/test.txt +1 -0
  341. data/spec/fixtures/files/test_api.json +440 -0
  342. data/spec/google/api_client/auth/storage_spec.rb +1 -3
  343. data/spec/google/api_client/auth/storages/file_store_spec.rb +1 -2
  344. data/spec/google/api_client/auth/storages/redis_store_spec.rb +1 -3
  345. data/spec/google/apis/core/api_command_spec.rb +170 -0
  346. data/spec/google/apis/core/batch_spec.rb +128 -0
  347. data/spec/google/apis/core/download_spec.rb +90 -0
  348. data/spec/google/apis/core/hashable_spec.rb +60 -0
  349. data/spec/google/apis/core/http_command_spec.rb +238 -0
  350. data/spec/google/apis/core/json_representation_spec.rb +192 -0
  351. data/spec/google/apis/core/service_spec.rb +247 -0
  352. data/spec/google/apis/core/upload_spec.rb +238 -0
  353. data/{lib/google/api_client/service_account.rb → spec/google/apis/generated_spec.rb} +14 -8
  354. data/spec/google/apis/generator/generator_spec.rb +272 -0
  355. data/spec/google/apis/logging_spec.rb +45 -0
  356. data/spec/google/apis/options_spec.rb +40 -0
  357. data/spec/integration_tests/drive_spec.rb +35 -0
  358. data/spec/integration_tests/pubsub_spec.rb +48 -0
  359. data/spec/integration_tests/url_shortener_spec.rb +31 -0
  360. data/spec/spec_helper.rb +102 -46
  361. metadata +433 -178
  362. data/lib/compat/multi_json.rb +0 -19
  363. data/lib/google/api_client.rb +0 -750
  364. data/lib/google/api_client/auth/file_storage.rb +0 -59
  365. data/lib/google/api_client/auth/jwt_asserter.rb +0 -126
  366. data/lib/google/api_client/auth/key_utils.rb +0 -93
  367. data/lib/google/api_client/auth/pkcs12.rb +0 -41
  368. data/lib/google/api_client/batch.rb +0 -326
  369. data/lib/google/api_client/charset.rb +0 -33
  370. data/lib/google/api_client/discovery/api.rb +0 -310
  371. data/lib/google/api_client/discovery/media.rb +0 -77
  372. data/lib/google/api_client/discovery/method.rb +0 -363
  373. data/lib/google/api_client/discovery/resource.rb +0 -156
  374. data/lib/google/api_client/discovery/schema.rb +0 -117
  375. data/lib/google/api_client/environment.rb +0 -42
  376. data/lib/google/api_client/gzip.rb +0 -28
  377. data/lib/google/api_client/logging.rb +0 -32
  378. data/lib/google/api_client/media.rb +0 -259
  379. data/lib/google/api_client/railtie.rb +0 -18
  380. data/lib/google/api_client/request.rb +0 -350
  381. data/lib/google/api_client/result.rb +0 -255
  382. data/lib/google/api_client/service.rb +0 -233
  383. data/lib/google/api_client/service/batch.rb +0 -110
  384. data/lib/google/api_client/service/request.rb +0 -144
  385. data/lib/google/api_client/service/resource.rb +0 -40
  386. data/lib/google/api_client/service/result.rb +0 -162
  387. data/lib/google/api_client/service/simple_file_store.rb +0 -151
  388. data/lib/google/api_client/service/stub_generator.rb +0 -61
  389. data/spec/google/api_client/batch_spec.rb +0 -248
  390. data/spec/google/api_client/discovery_spec.rb +0 -708
  391. data/spec/google/api_client/gzip_spec.rb +0 -98
  392. data/spec/google/api_client/media_spec.rb +0 -178
  393. data/spec/google/api_client/result_spec.rb +0 -207
  394. data/spec/google/api_client/service_account_spec.rb +0 -169
  395. data/spec/google/api_client/service_spec.rb +0 -618
  396. data/spec/google/api_client/simple_file_store_spec.rb +0 -133
  397. data/spec/google/api_client_spec.rb +0 -352
@@ -0,0 +1,89 @@
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/admin_directory_v1/service.rb'
16
+ require 'google/apis/admin_directory_v1/classes.rb'
17
+ require 'google/apis/admin_directory_v1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Admin Directory API
22
+ #
23
+ # The Admin SDK Directory API lets you view and manage enterprise resources such
24
+ # as users and groups, administrative notifications, security features, and more.
25
+ #
26
+ # @see https://developers.google.com/admin-sdk/directory/
27
+ module AdminDirectoryV1
28
+ VERSION = 'DirectoryV1'
29
+ REVISION = '20150326'
30
+
31
+ # View and manage your Chrome OS devices' metadata
32
+ AUTH_ADMIN_DIRECTORY_DEVICE_CHROMEOS = 'https://www.googleapis.com/auth/admin.directory.device.chromeos'
33
+
34
+ # View your Chrome OS devices' metadata
35
+ AUTH_ADMIN_DIRECTORY_DEVICE_CHROMEOS_READONLY = 'https://www.googleapis.com/auth/admin.directory.device.chromeos.readonly'
36
+
37
+ # View and manage your mobile devices' metadata
38
+ AUTH_ADMIN_DIRECTORY_DEVICE_MOBILE = 'https://www.googleapis.com/auth/admin.directory.device.mobile'
39
+
40
+ # Manage your mobile devices by performing administrative tasks
41
+ AUTH_ADMIN_DIRECTORY_DEVICE_MOBILE_ACTION = 'https://www.googleapis.com/auth/admin.directory.device.mobile.action'
42
+
43
+ # View your mobile devices' metadata
44
+ AUTH_ADMIN_DIRECTORY_DEVICE_MOBILE_READONLY = 'https://www.googleapis.com/auth/admin.directory.device.mobile.readonly'
45
+
46
+ # View and manage the provisioning of groups on your domain
47
+ AUTH_ADMIN_DIRECTORY_GROUP = 'https://www.googleapis.com/auth/admin.directory.group'
48
+
49
+ # View and manage group subscriptions on your domain
50
+ AUTH_ADMIN_DIRECTORY_GROUP_MEMBER = 'https://www.googleapis.com/auth/admin.directory.group.member'
51
+
52
+ # View group subscriptions on your domain
53
+ AUTH_ADMIN_DIRECTORY_GROUP_MEMBER_READONLY = 'https://www.googleapis.com/auth/admin.directory.group.member.readonly'
54
+
55
+ # View groups on your domain
56
+ AUTH_ADMIN_DIRECTORY_GROUP_READONLY = 'https://www.googleapis.com/auth/admin.directory.group.readonly'
57
+
58
+ # View and manage notifications received on your domain
59
+ AUTH_ADMIN_DIRECTORY_NOTIFICATIONS = 'https://www.googleapis.com/auth/admin.directory.notifications'
60
+
61
+ # View and manage organization units on your domain
62
+ AUTH_ADMIN_DIRECTORY_ORGUNIT = 'https://www.googleapis.com/auth/admin.directory.orgunit'
63
+
64
+ # View organization units on your domain
65
+ AUTH_ADMIN_DIRECTORY_ORGUNIT_READONLY = 'https://www.googleapis.com/auth/admin.directory.orgunit.readonly'
66
+
67
+ # View and manage the provisioning of users on your domain
68
+ AUTH_ADMIN_DIRECTORY_USER = 'https://www.googleapis.com/auth/admin.directory.user'
69
+
70
+ # View and manage user aliases on your domain
71
+ AUTH_ADMIN_DIRECTORY_USER_ALIAS = 'https://www.googleapis.com/auth/admin.directory.user.alias'
72
+
73
+ # View user aliases on your domain
74
+ AUTH_ADMIN_DIRECTORY_USER_ALIAS_READONLY = 'https://www.googleapis.com/auth/admin.directory.user.alias.readonly'
75
+
76
+ # View users on your domain
77
+ AUTH_ADMIN_DIRECTORY_USER_READONLY = 'https://www.googleapis.com/auth/admin.directory.user.readonly'
78
+
79
+ # Manage data access permissions for users on your domain
80
+ AUTH_ADMIN_DIRECTORY_USER_SECURITY = 'https://www.googleapis.com/auth/admin.directory.user.security'
81
+
82
+ # View and manage the provisioning of user schemas on your domain
83
+ AUTH_ADMIN_DIRECTORY_USERSCHEMA = 'https://www.googleapis.com/auth/admin.directory.userschema'
84
+
85
+ # View user schemas on your domain
86
+ AUTH_ADMIN_DIRECTORY_USERSCHEMA_READONLY = 'https://www.googleapis.com/auth/admin.directory.userschema.readonly'
87
+ end
88
+ end
89
+ end
@@ -0,0 +1,2389 @@
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 AdminDirectoryV1
24
+
25
+ # JSON template for Alias object in Directory API.
26
+ class Alias
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # A alias email
30
+ # Corresponds to the JSON property `alias`
31
+ # @return [String]
32
+ attr_accessor :alias
33
+
34
+ # ETag of the resource.
35
+ # Corresponds to the JSON property `etag`
36
+ # @return [String]
37
+ attr_accessor :etag
38
+
39
+ # Unique id of the group (Read-only) Unique id of the user (Read-only)
40
+ # Corresponds to the JSON property `id`
41
+ # @return [String]
42
+ attr_accessor :id
43
+
44
+ # Kind of resource this is.
45
+ # Corresponds to the JSON property `kind`
46
+ # @return [String]
47
+ attr_accessor :kind
48
+
49
+ # Group's primary email (Read-only) User's primary email (Read-only)
50
+ # Corresponds to the JSON property `primaryEmail`
51
+ # @return [String]
52
+ attr_accessor :primary_email
53
+
54
+ def initialize(**args)
55
+ update!(**args)
56
+ end
57
+
58
+ # Update properties of this object
59
+ def update!(**args)
60
+ @alias = args[:alias] unless args[:alias].nil?
61
+ @etag = args[:etag] unless args[:etag].nil?
62
+ @id = args[:id] unless args[:id].nil?
63
+ @kind = args[:kind] unless args[:kind].nil?
64
+ @primary_email = args[:primary_email] unless args[:primary_email].nil?
65
+ end
66
+ end
67
+
68
+ # JSON response template to list aliases in Directory API.
69
+ class Aliases
70
+ include Google::Apis::Core::Hashable
71
+
72
+ # List of alias objects.
73
+ # Corresponds to the JSON property `aliases`
74
+ # @return [Array<Google::Apis::AdminDirectoryV1::Alias>]
75
+ attr_accessor :aliases
76
+
77
+ # ETag of the resource.
78
+ # Corresponds to the JSON property `etag`
79
+ # @return [String]
80
+ attr_accessor :etag
81
+
82
+ # Kind of resource this is.
83
+ # Corresponds to the JSON property `kind`
84
+ # @return [String]
85
+ attr_accessor :kind
86
+
87
+ def initialize(**args)
88
+ update!(**args)
89
+ end
90
+
91
+ # Update properties of this object
92
+ def update!(**args)
93
+ @aliases = args[:aliases] unless args[:aliases].nil?
94
+ @etag = args[:etag] unless args[:etag].nil?
95
+ @kind = args[:kind] unless args[:kind].nil?
96
+ end
97
+ end
98
+
99
+ # The template that returns individual ASP (Access Code) data.
100
+ class Asp
101
+ include Google::Apis::Core::Hashable
102
+
103
+ # The unique ID of the ASP.
104
+ # Corresponds to the JSON property `codeId`
105
+ # @return [Fixnum]
106
+ attr_accessor :code_id
107
+
108
+ # The time when the ASP was created. Expressed in Unix time format.
109
+ # Corresponds to the JSON property `creationTime`
110
+ # @return [String]
111
+ attr_accessor :creation_time
112
+
113
+ # ETag of the ASP.
114
+ # Corresponds to the JSON property `etag`
115
+ # @return [String]
116
+ attr_accessor :etag
117
+
118
+ # The type of the API resource. This is always admin#directory#asp.
119
+ # Corresponds to the JSON property `kind`
120
+ # @return [String]
121
+ attr_accessor :kind
122
+
123
+ # The time when the ASP was last used. Expressed in Unix time format.
124
+ # Corresponds to the JSON property `lastTimeUsed`
125
+ # @return [String]
126
+ attr_accessor :last_time_used
127
+
128
+ # The name of the application that the user, represented by their userId,
129
+ # entered when the ASP was created.
130
+ # Corresponds to the JSON property `name`
131
+ # @return [String]
132
+ attr_accessor :name
133
+
134
+ # The unique ID of the user who issued the ASP.
135
+ # Corresponds to the JSON property `userKey`
136
+ # @return [String]
137
+ attr_accessor :user_key
138
+
139
+ def initialize(**args)
140
+ update!(**args)
141
+ end
142
+
143
+ # Update properties of this object
144
+ def update!(**args)
145
+ @code_id = args[:code_id] unless args[:code_id].nil?
146
+ @creation_time = args[:creation_time] unless args[:creation_time].nil?
147
+ @etag = args[:etag] unless args[:etag].nil?
148
+ @kind = args[:kind] unless args[:kind].nil?
149
+ @last_time_used = args[:last_time_used] unless args[:last_time_used].nil?
150
+ @name = args[:name] unless args[:name].nil?
151
+ @user_key = args[:user_key] unless args[:user_key].nil?
152
+ end
153
+ end
154
+
155
+ #
156
+ class Asps
157
+ include Google::Apis::Core::Hashable
158
+
159
+ # ETag of the resource.
160
+ # Corresponds to the JSON property `etag`
161
+ # @return [String]
162
+ attr_accessor :etag
163
+
164
+ # A list of ASP resources.
165
+ # Corresponds to the JSON property `items`
166
+ # @return [Array<Google::Apis::AdminDirectoryV1::Asp>]
167
+ attr_accessor :items
168
+
169
+ # The type of the API resource. This is always admin#directory#aspList.
170
+ # Corresponds to the JSON property `kind`
171
+ # @return [String]
172
+ attr_accessor :kind
173
+
174
+ def initialize(**args)
175
+ update!(**args)
176
+ end
177
+
178
+ # Update properties of this object
179
+ def update!(**args)
180
+ @etag = args[:etag] unless args[:etag].nil?
181
+ @items = args[:items] unless args[:items].nil?
182
+ @kind = args[:kind] unless args[:kind].nil?
183
+ end
184
+ end
185
+
186
+ # An notification channel used to watch for resource changes.
187
+ class Channel
188
+ include Google::Apis::Core::Hashable
189
+
190
+ # The address where notifications are delivered for this channel.
191
+ # Corresponds to the JSON property `address`
192
+ # @return [String]
193
+ attr_accessor :address
194
+
195
+ # Date and time of notification channel expiration, expressed as a Unix
196
+ # timestamp, in milliseconds. Optional.
197
+ # Corresponds to the JSON property `expiration`
198
+ # @return [String]
199
+ attr_accessor :expiration
200
+
201
+ # A UUID or similar unique string that identifies this channel.
202
+ # Corresponds to the JSON property `id`
203
+ # @return [String]
204
+ attr_accessor :id
205
+
206
+ # Identifies this as a notification channel used to watch for changes to a
207
+ # resource. Value: the fixed string "api#channel".
208
+ # Corresponds to the JSON property `kind`
209
+ # @return [String]
210
+ attr_accessor :kind
211
+
212
+ # Additional parameters controlling delivery channel behavior. Optional.
213
+ # Corresponds to the JSON property `params`
214
+ # @return [Hash<String,String>]
215
+ attr_accessor :params
216
+
217
+ # A Boolean value to indicate whether payload is wanted. Optional.
218
+ # Corresponds to the JSON property `payload`
219
+ # @return [Boolean]
220
+ attr_accessor :payload
221
+ alias_method :payload?, :payload
222
+
223
+ # An opaque ID that identifies the resource being watched on this channel.
224
+ # Stable across different API versions.
225
+ # Corresponds to the JSON property `resourceId`
226
+ # @return [String]
227
+ attr_accessor :resource_id
228
+
229
+ # A version-specific identifier for the watched resource.
230
+ # Corresponds to the JSON property `resourceUri`
231
+ # @return [String]
232
+ attr_accessor :resource_uri
233
+
234
+ # An arbitrary string delivered to the target address with each notification
235
+ # delivered over this channel. Optional.
236
+ # Corresponds to the JSON property `token`
237
+ # @return [String]
238
+ attr_accessor :token
239
+
240
+ # The type of delivery mechanism used for this channel.
241
+ # Corresponds to the JSON property `type`
242
+ # @return [String]
243
+ attr_accessor :type
244
+
245
+ def initialize(**args)
246
+ update!(**args)
247
+ end
248
+
249
+ # Update properties of this object
250
+ def update!(**args)
251
+ @address = args[:address] unless args[:address].nil?
252
+ @expiration = args[:expiration] unless args[:expiration].nil?
253
+ @id = args[:id] unless args[:id].nil?
254
+ @kind = args[:kind] unless args[:kind].nil?
255
+ @params = args[:params] unless args[:params].nil?
256
+ @payload = args[:payload] unless args[:payload].nil?
257
+ @resource_id = args[:resource_id] unless args[:resource_id].nil?
258
+ @resource_uri = args[:resource_uri] unless args[:resource_uri].nil?
259
+ @token = args[:token] unless args[:token].nil?
260
+ @type = args[:type] unless args[:type].nil?
261
+ end
262
+ end
263
+
264
+ # JSON template for Chrome Os Device resource in Directory API.
265
+ class ChromeOsDevice
266
+ include Google::Apis::Core::Hashable
267
+
268
+ # List of active time ranges (Read-only)
269
+ # Corresponds to the JSON property `activeTimeRanges`
270
+ # @return [Array<Google::Apis::AdminDirectoryV1::ChromeOsDevice::ActiveTimeRange>]
271
+ attr_accessor :active_time_ranges
272
+
273
+ # AssetId specified during enrollment or through later annotation
274
+ # Corresponds to the JSON property `annotatedAssetId`
275
+ # @return [String]
276
+ attr_accessor :annotated_asset_id
277
+
278
+ # Address or location of the device as noted by the administrator
279
+ # Corresponds to the JSON property `annotatedLocation`
280
+ # @return [String]
281
+ attr_accessor :annotated_location
282
+
283
+ # User of the device
284
+ # Corresponds to the JSON property `annotatedUser`
285
+ # @return [String]
286
+ attr_accessor :annotated_user
287
+
288
+ # Chromebook boot mode (Read-only)
289
+ # Corresponds to the JSON property `bootMode`
290
+ # @return [String]
291
+ attr_accessor :boot_mode
292
+
293
+ # Unique identifier of Chrome OS Device (Read-only)
294
+ # Corresponds to the JSON property `deviceId`
295
+ # @return [String]
296
+ attr_accessor :device_id
297
+
298
+ # ETag of the resource.
299
+ # Corresponds to the JSON property `etag`
300
+ # @return [String]
301
+ attr_accessor :etag
302
+
303
+ # Chromebook Mac Address on ethernet network interface (Read-only)
304
+ # Corresponds to the JSON property `ethernetMacAddress`
305
+ # @return [String]
306
+ attr_accessor :ethernet_mac_address
307
+
308
+ # Chromebook firmware version (Read-only)
309
+ # Corresponds to the JSON property `firmwareVersion`
310
+ # @return [String]
311
+ attr_accessor :firmware_version
312
+
313
+ # Kind of resource this is.
314
+ # Corresponds to the JSON property `kind`
315
+ # @return [String]
316
+ attr_accessor :kind
317
+
318
+ # Date and time the device was last enrolled (Read-only)
319
+ # Corresponds to the JSON property `lastEnrollmentTime`
320
+ # @return [DateTime]
321
+ attr_accessor :last_enrollment_time
322
+
323
+ # Date and time the device was last synchronized with the policy settings in the
324
+ # Google Apps administrator control panel (Read-only)
325
+ # Corresponds to the JSON property `lastSync`
326
+ # @return [DateTime]
327
+ attr_accessor :last_sync
328
+
329
+ # Chromebook Mac Address on wifi network interface (Read-only)
330
+ # Corresponds to the JSON property `macAddress`
331
+ # @return [String]
332
+ attr_accessor :mac_address
333
+
334
+ # Mobile Equipment identifier for the 3G mobile card in the Chromebook (Read-
335
+ # only)
336
+ # Corresponds to the JSON property `meid`
337
+ # @return [String]
338
+ attr_accessor :meid
339
+
340
+ # Chromebook Model (Read-only)
341
+ # Corresponds to the JSON property `model`
342
+ # @return [String]
343
+ attr_accessor :model
344
+
345
+ # Notes added by the administrator
346
+ # Corresponds to the JSON property `notes`
347
+ # @return [String]
348
+ attr_accessor :notes
349
+
350
+ # Chromebook order number (Read-only)
351
+ # Corresponds to the JSON property `orderNumber`
352
+ # @return [String]
353
+ attr_accessor :order_number
354
+
355
+ # OrgUnit of the device
356
+ # Corresponds to the JSON property `orgUnitPath`
357
+ # @return [String]
358
+ attr_accessor :org_unit_path
359
+
360
+ # Chromebook Os Version (Read-only)
361
+ # Corresponds to the JSON property `osVersion`
362
+ # @return [String]
363
+ attr_accessor :os_version
364
+
365
+ # Chromebook platform version (Read-only)
366
+ # Corresponds to the JSON property `platformVersion`
367
+ # @return [String]
368
+ attr_accessor :platform_version
369
+
370
+ # List of recent device users, in descending order by last login time (Read-only)
371
+ # Corresponds to the JSON property `recentUsers`
372
+ # @return [Array<Google::Apis::AdminDirectoryV1::ChromeOsDevice::RecentUser>]
373
+ attr_accessor :recent_users
374
+
375
+ # Chromebook serial number (Read-only)
376
+ # Corresponds to the JSON property `serialNumber`
377
+ # @return [String]
378
+ attr_accessor :serial_number
379
+
380
+ # status of the device (Read-only)
381
+ # Corresponds to the JSON property `status`
382
+ # @return [String]
383
+ attr_accessor :status
384
+
385
+ # Final date the device will be supported (Read-only)
386
+ # Corresponds to the JSON property `supportEndDate`
387
+ # @return [DateTime]
388
+ attr_accessor :support_end_date
389
+
390
+ # Will Chromebook auto renew after support end date (Read-only)
391
+ # Corresponds to the JSON property `willAutoRenew`
392
+ # @return [Boolean]
393
+ attr_accessor :will_auto_renew
394
+ alias_method :will_auto_renew?, :will_auto_renew
395
+
396
+ def initialize(**args)
397
+ update!(**args)
398
+ end
399
+
400
+ # Update properties of this object
401
+ def update!(**args)
402
+ @active_time_ranges = args[:active_time_ranges] unless args[:active_time_ranges].nil?
403
+ @annotated_asset_id = args[:annotated_asset_id] unless args[:annotated_asset_id].nil?
404
+ @annotated_location = args[:annotated_location] unless args[:annotated_location].nil?
405
+ @annotated_user = args[:annotated_user] unless args[:annotated_user].nil?
406
+ @boot_mode = args[:boot_mode] unless args[:boot_mode].nil?
407
+ @device_id = args[:device_id] unless args[:device_id].nil?
408
+ @etag = args[:etag] unless args[:etag].nil?
409
+ @ethernet_mac_address = args[:ethernet_mac_address] unless args[:ethernet_mac_address].nil?
410
+ @firmware_version = args[:firmware_version] unless args[:firmware_version].nil?
411
+ @kind = args[:kind] unless args[:kind].nil?
412
+ @last_enrollment_time = args[:last_enrollment_time] unless args[:last_enrollment_time].nil?
413
+ @last_sync = args[:last_sync] unless args[:last_sync].nil?
414
+ @mac_address = args[:mac_address] unless args[:mac_address].nil?
415
+ @meid = args[:meid] unless args[:meid].nil?
416
+ @model = args[:model] unless args[:model].nil?
417
+ @notes = args[:notes] unless args[:notes].nil?
418
+ @order_number = args[:order_number] unless args[:order_number].nil?
419
+ @org_unit_path = args[:org_unit_path] unless args[:org_unit_path].nil?
420
+ @os_version = args[:os_version] unless args[:os_version].nil?
421
+ @platform_version = args[:platform_version] unless args[:platform_version].nil?
422
+ @recent_users = args[:recent_users] unless args[:recent_users].nil?
423
+ @serial_number = args[:serial_number] unless args[:serial_number].nil?
424
+ @status = args[:status] unless args[:status].nil?
425
+ @support_end_date = args[:support_end_date] unless args[:support_end_date].nil?
426
+ @will_auto_renew = args[:will_auto_renew] unless args[:will_auto_renew].nil?
427
+ end
428
+
429
+ #
430
+ class ActiveTimeRange
431
+ include Google::Apis::Core::Hashable
432
+
433
+ # Duration in milliseconds
434
+ # Corresponds to the JSON property `activeTime`
435
+ # @return [Fixnum]
436
+ attr_accessor :active_time
437
+
438
+ # Date of usage
439
+ # Corresponds to the JSON property `date`
440
+ # @return [Date]
441
+ attr_accessor :date
442
+
443
+ def initialize(**args)
444
+ update!(**args)
445
+ end
446
+
447
+ # Update properties of this object
448
+ def update!(**args)
449
+ @active_time = args[:active_time] unless args[:active_time].nil?
450
+ @date = args[:date] unless args[:date].nil?
451
+ end
452
+ end
453
+
454
+ #
455
+ class RecentUser
456
+ include Google::Apis::Core::Hashable
457
+
458
+ # Email address of the user. Present only if the user type is managed
459
+ # Corresponds to the JSON property `email`
460
+ # @return [String]
461
+ attr_accessor :email
462
+
463
+ # The type of the user
464
+ # Corresponds to the JSON property `type`
465
+ # @return [String]
466
+ attr_accessor :type
467
+
468
+ def initialize(**args)
469
+ update!(**args)
470
+ end
471
+
472
+ # Update properties of this object
473
+ def update!(**args)
474
+ @email = args[:email] unless args[:email].nil?
475
+ @type = args[:type] unless args[:type].nil?
476
+ end
477
+ end
478
+ end
479
+
480
+ # JSON response template for List Chrome OS Devices operation in Directory API.
481
+ class ChromeOsDevices
482
+ include Google::Apis::Core::Hashable
483
+
484
+ # List of Chrome OS Device objects.
485
+ # Corresponds to the JSON property `chromeosdevices`
486
+ # @return [Array<Google::Apis::AdminDirectoryV1::ChromeOsDevice>]
487
+ attr_accessor :chromeosdevices
488
+
489
+ # ETag of the resource.
490
+ # Corresponds to the JSON property `etag`
491
+ # @return [String]
492
+ attr_accessor :etag
493
+
494
+ # Kind of resource this is.
495
+ # Corresponds to the JSON property `kind`
496
+ # @return [String]
497
+ attr_accessor :kind
498
+
499
+ # Token used to access next page of this result.
500
+ # Corresponds to the JSON property `nextPageToken`
501
+ # @return [String]
502
+ attr_accessor :next_page_token
503
+
504
+ def initialize(**args)
505
+ update!(**args)
506
+ end
507
+
508
+ # Update properties of this object
509
+ def update!(**args)
510
+ @chromeosdevices = args[:chromeosdevices] unless args[:chromeosdevices].nil?
511
+ @etag = args[:etag] unless args[:etag].nil?
512
+ @kind = args[:kind] unless args[:kind].nil?
513
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
514
+ end
515
+ end
516
+
517
+ # JSON template for Group resource in Directory API.
518
+ class Group
519
+ include Google::Apis::Core::Hashable
520
+
521
+ # Is the group created by admin (Read-only) *
522
+ # Corresponds to the JSON property `adminCreated`
523
+ # @return [Boolean]
524
+ attr_accessor :admin_created
525
+ alias_method :admin_created?, :admin_created
526
+
527
+ # List of aliases (Read-only)
528
+ # Corresponds to the JSON property `aliases`
529
+ # @return [Array<String>]
530
+ attr_accessor :aliases
531
+
532
+ # Description of the group
533
+ # Corresponds to the JSON property `description`
534
+ # @return [String]
535
+ attr_accessor :description
536
+
537
+ # Group direct members count
538
+ # Corresponds to the JSON property `directMembersCount`
539
+ # @return [String]
540
+ attr_accessor :direct_members_count
541
+
542
+ # Email of Group
543
+ # Corresponds to the JSON property `email`
544
+ # @return [String]
545
+ attr_accessor :email
546
+
547
+ # ETag of the resource.
548
+ # Corresponds to the JSON property `etag`
549
+ # @return [String]
550
+ attr_accessor :etag
551
+
552
+ # Unique identifier of Group (Read-only)
553
+ # Corresponds to the JSON property `id`
554
+ # @return [String]
555
+ attr_accessor :id
556
+
557
+ # Kind of resource this is.
558
+ # Corresponds to the JSON property `kind`
559
+ # @return [String]
560
+ attr_accessor :kind
561
+
562
+ # Group name
563
+ # Corresponds to the JSON property `name`
564
+ # @return [String]
565
+ attr_accessor :name
566
+
567
+ # List of non editable aliases (Read-only)
568
+ # Corresponds to the JSON property `nonEditableAliases`
569
+ # @return [Array<String>]
570
+ attr_accessor :non_editable_aliases
571
+
572
+ def initialize(**args)
573
+ update!(**args)
574
+ end
575
+
576
+ # Update properties of this object
577
+ def update!(**args)
578
+ @admin_created = args[:admin_created] unless args[:admin_created].nil?
579
+ @aliases = args[:aliases] unless args[:aliases].nil?
580
+ @description = args[:description] unless args[:description].nil?
581
+ @direct_members_count = args[:direct_members_count] unless args[:direct_members_count].nil?
582
+ @email = args[:email] unless args[:email].nil?
583
+ @etag = args[:etag] unless args[:etag].nil?
584
+ @id = args[:id] unless args[:id].nil?
585
+ @kind = args[:kind] unless args[:kind].nil?
586
+ @name = args[:name] unless args[:name].nil?
587
+ @non_editable_aliases = args[:non_editable_aliases] unless args[:non_editable_aliases].nil?
588
+ end
589
+ end
590
+
591
+ # JSON response template for List Groups operation in Directory API.
592
+ class Groups
593
+ include Google::Apis::Core::Hashable
594
+
595
+ # ETag of the resource.
596
+ # Corresponds to the JSON property `etag`
597
+ # @return [String]
598
+ attr_accessor :etag
599
+
600
+ # List of group objects.
601
+ # Corresponds to the JSON property `groups`
602
+ # @return [Array<Google::Apis::AdminDirectoryV1::Group>]
603
+ attr_accessor :groups
604
+
605
+ # Kind of resource this is.
606
+ # Corresponds to the JSON property `kind`
607
+ # @return [String]
608
+ attr_accessor :kind
609
+
610
+ # Token used to access next page of this result.
611
+ # Corresponds to the JSON property `nextPageToken`
612
+ # @return [String]
613
+ attr_accessor :next_page_token
614
+
615
+ def initialize(**args)
616
+ update!(**args)
617
+ end
618
+
619
+ # Update properties of this object
620
+ def update!(**args)
621
+ @etag = args[:etag] unless args[:etag].nil?
622
+ @groups = args[:groups] unless args[:groups].nil?
623
+ @kind = args[:kind] unless args[:kind].nil?
624
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
625
+ end
626
+ end
627
+
628
+ # JSON template for Member resource in Directory API.
629
+ class Member
630
+ include Google::Apis::Core::Hashable
631
+
632
+ # Email of member (Read-only)
633
+ # Corresponds to the JSON property `email`
634
+ # @return [String]
635
+ attr_accessor :email
636
+
637
+ # ETag of the resource.
638
+ # Corresponds to the JSON property `etag`
639
+ # @return [String]
640
+ attr_accessor :etag
641
+
642
+ # Unique identifier of customer member (Read-only) Unique identifier of group (
643
+ # Read-only) Unique identifier of member (Read-only)
644
+ # Corresponds to the JSON property `id`
645
+ # @return [String]
646
+ attr_accessor :id
647
+
648
+ # Kind of resource this is.
649
+ # Corresponds to the JSON property `kind`
650
+ # @return [String]
651
+ attr_accessor :kind
652
+
653
+ # Role of member
654
+ # Corresponds to the JSON property `role`
655
+ # @return [String]
656
+ attr_accessor :role
657
+
658
+ # Type of member (Immutable)
659
+ # Corresponds to the JSON property `type`
660
+ # @return [String]
661
+ attr_accessor :type
662
+
663
+ def initialize(**args)
664
+ update!(**args)
665
+ end
666
+
667
+ # Update properties of this object
668
+ def update!(**args)
669
+ @email = args[:email] unless args[:email].nil?
670
+ @etag = args[:etag] unless args[:etag].nil?
671
+ @id = args[:id] unless args[:id].nil?
672
+ @kind = args[:kind] unless args[:kind].nil?
673
+ @role = args[:role] unless args[:role].nil?
674
+ @type = args[:type] unless args[:type].nil?
675
+ end
676
+ end
677
+
678
+ # JSON response template for List Members operation in Directory API.
679
+ class Members
680
+ include Google::Apis::Core::Hashable
681
+
682
+ # ETag of the resource.
683
+ # Corresponds to the JSON property `etag`
684
+ # @return [String]
685
+ attr_accessor :etag
686
+
687
+ # Kind of resource this is.
688
+ # Corresponds to the JSON property `kind`
689
+ # @return [String]
690
+ attr_accessor :kind
691
+
692
+ # List of member objects.
693
+ # Corresponds to the JSON property `members`
694
+ # @return [Array<Google::Apis::AdminDirectoryV1::Member>]
695
+ attr_accessor :members
696
+
697
+ # Token used to access next page of this result.
698
+ # Corresponds to the JSON property `nextPageToken`
699
+ # @return [String]
700
+ attr_accessor :next_page_token
701
+
702
+ def initialize(**args)
703
+ update!(**args)
704
+ end
705
+
706
+ # Update properties of this object
707
+ def update!(**args)
708
+ @etag = args[:etag] unless args[:etag].nil?
709
+ @kind = args[:kind] unless args[:kind].nil?
710
+ @members = args[:members] unless args[:members].nil?
711
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
712
+ end
713
+ end
714
+
715
+ # JSON template for Mobile Device resource in Directory API.
716
+ class MobileDevice
717
+ include Google::Apis::Core::Hashable
718
+
719
+ # List of applications installed on Mobile Device
720
+ # Corresponds to the JSON property `applications`
721
+ # @return [Array<Google::Apis::AdminDirectoryV1::MobileDevice::Application>]
722
+ attr_accessor :applications
723
+
724
+ # Mobile Device Baseband version (Read-only)
725
+ # Corresponds to the JSON property `basebandVersion`
726
+ # @return [String]
727
+ attr_accessor :baseband_version
728
+
729
+ # Mobile Device Build number (Read-only)
730
+ # Corresponds to the JSON property `buildNumber`
731
+ # @return [String]
732
+ attr_accessor :build_number
733
+
734
+ # The default locale used on the Mobile Device (Read-only)
735
+ # Corresponds to the JSON property `defaultLanguage`
736
+ # @return [String]
737
+ attr_accessor :default_language
738
+
739
+ # Mobile Device compromised status (Read-only)
740
+ # Corresponds to the JSON property `deviceCompromisedStatus`
741
+ # @return [String]
742
+ attr_accessor :device_compromised_status
743
+
744
+ # Mobile Device serial number (Read-only)
745
+ # Corresponds to the JSON property `deviceId`
746
+ # @return [String]
747
+ attr_accessor :device_id
748
+
749
+ # List of owner user's email addresses (Read-only)
750
+ # Corresponds to the JSON property `email`
751
+ # @return [Array<String>]
752
+ attr_accessor :email
753
+
754
+ # ETag of the resource.
755
+ # Corresponds to the JSON property `etag`
756
+ # @return [String]
757
+ attr_accessor :etag
758
+
759
+ # Date and time the device was first synchronized with the policy settings in
760
+ # the Google Apps administrator control panel (Read-only)
761
+ # Corresponds to the JSON property `firstSync`
762
+ # @return [DateTime]
763
+ attr_accessor :first_sync
764
+
765
+ # Mobile Device Hardware Id (Read-only)
766
+ # Corresponds to the JSON property `hardwareId`
767
+ # @return [String]
768
+ attr_accessor :hardware_id
769
+
770
+ # Mobile Device IMEI number (Read-only)
771
+ # Corresponds to the JSON property `imei`
772
+ # @return [String]
773
+ attr_accessor :imei
774
+
775
+ # Mobile Device Kernel version (Read-only)
776
+ # Corresponds to the JSON property `kernelVersion`
777
+ # @return [String]
778
+ attr_accessor :kernel_version
779
+
780
+ # Kind of resource this is.
781
+ # Corresponds to the JSON property `kind`
782
+ # @return [String]
783
+ attr_accessor :kind
784
+
785
+ # Date and time the device was last synchronized with the policy settings in the
786
+ # Google Apps administrator control panel (Read-only)
787
+ # Corresponds to the JSON property `lastSync`
788
+ # @return [DateTime]
789
+ attr_accessor :last_sync
790
+
791
+ # Boolean indicating if this account is on owner/primary profile or not (Read-
792
+ # only)
793
+ # Corresponds to the JSON property `managedAccountIsOnOwnerProfile`
794
+ # @return [Boolean]
795
+ attr_accessor :managed_account_is_on_owner_profile
796
+ alias_method :managed_account_is_on_owner_profile?, :managed_account_is_on_owner_profile
797
+
798
+ # Mobile Device MEID number (Read-only)
799
+ # Corresponds to the JSON property `meid`
800
+ # @return [String]
801
+ attr_accessor :meid
802
+
803
+ # Name of the model of the device
804
+ # Corresponds to the JSON property `model`
805
+ # @return [String]
806
+ attr_accessor :model
807
+
808
+ # List of owner user's names (Read-only)
809
+ # Corresponds to the JSON property `name`
810
+ # @return [Array<String>]
811
+ attr_accessor :name
812
+
813
+ # Mobile Device mobile or network operator (if available) (Read-only)
814
+ # Corresponds to the JSON property `networkOperator`
815
+ # @return [String]
816
+ attr_accessor :network_operator
817
+
818
+ # Name of the mobile operating system
819
+ # Corresponds to the JSON property `os`
820
+ # @return [String]
821
+ attr_accessor :os
822
+
823
+ # Unique identifier of Mobile Device (Read-only)
824
+ # Corresponds to the JSON property `resourceId`
825
+ # @return [String]
826
+ attr_accessor :resource_id
827
+
828
+ # Mobile Device SSN or Serial Number (Read-only)
829
+ # Corresponds to the JSON property `serialNumber`
830
+ # @return [String]
831
+ attr_accessor :serial_number
832
+
833
+ # Status of the device (Read-only)
834
+ # Corresponds to the JSON property `status`
835
+ # @return [String]
836
+ attr_accessor :status
837
+
838
+ # The type of device (Read-only)
839
+ # Corresponds to the JSON property `type`
840
+ # @return [String]
841
+ attr_accessor :type
842
+
843
+ # Mobile Device user agent
844
+ # Corresponds to the JSON property `userAgent`
845
+ # @return [String]
846
+ attr_accessor :user_agent
847
+
848
+ # Mobile Device WiFi MAC address (Read-only)
849
+ # Corresponds to the JSON property `wifiMacAddress`
850
+ # @return [String]
851
+ attr_accessor :wifi_mac_address
852
+
853
+ def initialize(**args)
854
+ update!(**args)
855
+ end
856
+
857
+ # Update properties of this object
858
+ def update!(**args)
859
+ @applications = args[:applications] unless args[:applications].nil?
860
+ @baseband_version = args[:baseband_version] unless args[:baseband_version].nil?
861
+ @build_number = args[:build_number] unless args[:build_number].nil?
862
+ @default_language = args[:default_language] unless args[:default_language].nil?
863
+ @device_compromised_status = args[:device_compromised_status] unless args[:device_compromised_status].nil?
864
+ @device_id = args[:device_id] unless args[:device_id].nil?
865
+ @email = args[:email] unless args[:email].nil?
866
+ @etag = args[:etag] unless args[:etag].nil?
867
+ @first_sync = args[:first_sync] unless args[:first_sync].nil?
868
+ @hardware_id = args[:hardware_id] unless args[:hardware_id].nil?
869
+ @imei = args[:imei] unless args[:imei].nil?
870
+ @kernel_version = args[:kernel_version] unless args[:kernel_version].nil?
871
+ @kind = args[:kind] unless args[:kind].nil?
872
+ @last_sync = args[:last_sync] unless args[:last_sync].nil?
873
+ @managed_account_is_on_owner_profile = args[:managed_account_is_on_owner_profile] unless args[:managed_account_is_on_owner_profile].nil?
874
+ @meid = args[:meid] unless args[:meid].nil?
875
+ @model = args[:model] unless args[:model].nil?
876
+ @name = args[:name] unless args[:name].nil?
877
+ @network_operator = args[:network_operator] unless args[:network_operator].nil?
878
+ @os = args[:os] unless args[:os].nil?
879
+ @resource_id = args[:resource_id] unless args[:resource_id].nil?
880
+ @serial_number = args[:serial_number] unless args[:serial_number].nil?
881
+ @status = args[:status] unless args[:status].nil?
882
+ @type = args[:type] unless args[:type].nil?
883
+ @user_agent = args[:user_agent] unless args[:user_agent].nil?
884
+ @wifi_mac_address = args[:wifi_mac_address] unless args[:wifi_mac_address].nil?
885
+ end
886
+
887
+ #
888
+ class Application
889
+ include Google::Apis::Core::Hashable
890
+
891
+ # Display name of application
892
+ # Corresponds to the JSON property `displayName`
893
+ # @return [String]
894
+ attr_accessor :display_name
895
+
896
+ # Package name of application
897
+ # Corresponds to the JSON property `packageName`
898
+ # @return [String]
899
+ attr_accessor :package_name
900
+
901
+ # List of Permissions for application
902
+ # Corresponds to the JSON property `permission`
903
+ # @return [Array<String>]
904
+ attr_accessor :permission
905
+
906
+ # Version code of application
907
+ # Corresponds to the JSON property `versionCode`
908
+ # @return [Fixnum]
909
+ attr_accessor :version_code
910
+
911
+ # Version name of application
912
+ # Corresponds to the JSON property `versionName`
913
+ # @return [String]
914
+ attr_accessor :version_name
915
+
916
+ def initialize(**args)
917
+ update!(**args)
918
+ end
919
+
920
+ # Update properties of this object
921
+ def update!(**args)
922
+ @display_name = args[:display_name] unless args[:display_name].nil?
923
+ @package_name = args[:package_name] unless args[:package_name].nil?
924
+ @permission = args[:permission] unless args[:permission].nil?
925
+ @version_code = args[:version_code] unless args[:version_code].nil?
926
+ @version_name = args[:version_name] unless args[:version_name].nil?
927
+ end
928
+ end
929
+ end
930
+
931
+ # JSON request template for firing commands on Mobile Device in Directory
932
+ # Devices API.
933
+ class MobileDeviceAction
934
+ include Google::Apis::Core::Hashable
935
+
936
+ # Action to be taken on the Mobile Device
937
+ # Corresponds to the JSON property `action`
938
+ # @return [String]
939
+ attr_accessor :action
940
+
941
+ def initialize(**args)
942
+ update!(**args)
943
+ end
944
+
945
+ # Update properties of this object
946
+ def update!(**args)
947
+ @action = args[:action] unless args[:action].nil?
948
+ end
949
+ end
950
+
951
+ # JSON response template for List Mobile Devices operation in Directory API.
952
+ class MobileDevices
953
+ include Google::Apis::Core::Hashable
954
+
955
+ # ETag of the resource.
956
+ # Corresponds to the JSON property `etag`
957
+ # @return [String]
958
+ attr_accessor :etag
959
+
960
+ # Kind of resource this is.
961
+ # Corresponds to the JSON property `kind`
962
+ # @return [String]
963
+ attr_accessor :kind
964
+
965
+ # List of Mobile Device objects.
966
+ # Corresponds to the JSON property `mobiledevices`
967
+ # @return [Array<Google::Apis::AdminDirectoryV1::MobileDevice>]
968
+ attr_accessor :mobiledevices
969
+
970
+ # Token used to access next page of this result.
971
+ # Corresponds to the JSON property `nextPageToken`
972
+ # @return [String]
973
+ attr_accessor :next_page_token
974
+
975
+ def initialize(**args)
976
+ update!(**args)
977
+ end
978
+
979
+ # Update properties of this object
980
+ def update!(**args)
981
+ @etag = args[:etag] unless args[:etag].nil?
982
+ @kind = args[:kind] unless args[:kind].nil?
983
+ @mobiledevices = args[:mobiledevices] unless args[:mobiledevices].nil?
984
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
985
+ end
986
+ end
987
+
988
+ # Template for a notification resource.
989
+ class Notification
990
+ include Google::Apis::Core::Hashable
991
+
992
+ # Body of the notification (Read-only)
993
+ # Corresponds to the JSON property `body`
994
+ # @return [String]
995
+ attr_accessor :body
996
+
997
+ # ETag of the resource.
998
+ # Corresponds to the JSON property `etag`
999
+ # @return [String]
1000
+ attr_accessor :etag
1001
+
1002
+ # Address from which the notification is received (Read-only)
1003
+ # Corresponds to the JSON property `fromAddress`
1004
+ # @return [String]
1005
+ attr_accessor :from_address
1006
+
1007
+ # Boolean indicating whether the notification is unread or not.
1008
+ # Corresponds to the JSON property `isUnread`
1009
+ # @return [Boolean]
1010
+ attr_accessor :is_unread
1011
+ alias_method :is_unread?, :is_unread
1012
+
1013
+ # The type of the resource.
1014
+ # Corresponds to the JSON property `kind`
1015
+ # @return [String]
1016
+ attr_accessor :kind
1017
+
1018
+ #
1019
+ # Corresponds to the JSON property `notificationId`
1020
+ # @return [String]
1021
+ attr_accessor :notification_id
1022
+
1023
+ # Time at which notification was sent (Read-only)
1024
+ # Corresponds to the JSON property `sendTime`
1025
+ # @return [DateTime]
1026
+ attr_accessor :send_time
1027
+
1028
+ # Subject of the notification (Read-only)
1029
+ # Corresponds to the JSON property `subject`
1030
+ # @return [String]
1031
+ attr_accessor :subject
1032
+
1033
+ def initialize(**args)
1034
+ update!(**args)
1035
+ end
1036
+
1037
+ # Update properties of this object
1038
+ def update!(**args)
1039
+ @body = args[:body] unless args[:body].nil?
1040
+ @etag = args[:etag] unless args[:etag].nil?
1041
+ @from_address = args[:from_address] unless args[:from_address].nil?
1042
+ @is_unread = args[:is_unread] unless args[:is_unread].nil?
1043
+ @kind = args[:kind] unless args[:kind].nil?
1044
+ @notification_id = args[:notification_id] unless args[:notification_id].nil?
1045
+ @send_time = args[:send_time] unless args[:send_time].nil?
1046
+ @subject = args[:subject] unless args[:subject].nil?
1047
+ end
1048
+ end
1049
+
1050
+ # Template for notifications list response.
1051
+ class Notifications
1052
+ include Google::Apis::Core::Hashable
1053
+
1054
+ # ETag of the resource.
1055
+ # Corresponds to the JSON property `etag`
1056
+ # @return [String]
1057
+ attr_accessor :etag
1058
+
1059
+ # List of notifications in this page.
1060
+ # Corresponds to the JSON property `items`
1061
+ # @return [Array<Google::Apis::AdminDirectoryV1::Notification>]
1062
+ attr_accessor :items
1063
+
1064
+ # The type of the resource.
1065
+ # Corresponds to the JSON property `kind`
1066
+ # @return [String]
1067
+ attr_accessor :kind
1068
+
1069
+ # Token for fetching the next page of notifications.
1070
+ # Corresponds to the JSON property `nextPageToken`
1071
+ # @return [String]
1072
+ attr_accessor :next_page_token
1073
+
1074
+ # Number of unread notification for the domain.
1075
+ # Corresponds to the JSON property `unreadNotificationsCount`
1076
+ # @return [Fixnum]
1077
+ attr_accessor :unread_notifications_count
1078
+
1079
+ def initialize(**args)
1080
+ update!(**args)
1081
+ end
1082
+
1083
+ # Update properties of this object
1084
+ def update!(**args)
1085
+ @etag = args[:etag] unless args[:etag].nil?
1086
+ @items = args[:items] unless args[:items].nil?
1087
+ @kind = args[:kind] unless args[:kind].nil?
1088
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1089
+ @unread_notifications_count = args[:unread_notifications_count] unless args[:unread_notifications_count].nil?
1090
+ end
1091
+ end
1092
+
1093
+ # JSON template for Org Unit resource in Directory API.
1094
+ class OrgUnit
1095
+ include Google::Apis::Core::Hashable
1096
+
1097
+ # Should block inheritance
1098
+ # Corresponds to the JSON property `blockInheritance`
1099
+ # @return [Boolean]
1100
+ attr_accessor :block_inheritance
1101
+ alias_method :block_inheritance?, :block_inheritance
1102
+
1103
+ # Description of OrgUnit
1104
+ # Corresponds to the JSON property `description`
1105
+ # @return [String]
1106
+ attr_accessor :description
1107
+
1108
+ # ETag of the resource.
1109
+ # Corresponds to the JSON property `etag`
1110
+ # @return [String]
1111
+ attr_accessor :etag
1112
+
1113
+ # Kind of resource this is.
1114
+ # Corresponds to the JSON property `kind`
1115
+ # @return [String]
1116
+ attr_accessor :kind
1117
+
1118
+ # Name of OrgUnit
1119
+ # Corresponds to the JSON property `name`
1120
+ # @return [String]
1121
+ attr_accessor :name
1122
+
1123
+ # Id of OrgUnit
1124
+ # Corresponds to the JSON property `orgUnitId`
1125
+ # @return [String]
1126
+ attr_accessor :org_unit_id
1127
+
1128
+ # Path of OrgUnit
1129
+ # Corresponds to the JSON property `orgUnitPath`
1130
+ # @return [String]
1131
+ attr_accessor :org_unit_path
1132
+
1133
+ # Id of parent OrgUnit
1134
+ # Corresponds to the JSON property `parentOrgUnitId`
1135
+ # @return [String]
1136
+ attr_accessor :parent_org_unit_id
1137
+
1138
+ # Path of parent OrgUnit
1139
+ # Corresponds to the JSON property `parentOrgUnitPath`
1140
+ # @return [String]
1141
+ attr_accessor :parent_org_unit_path
1142
+
1143
+ def initialize(**args)
1144
+ update!(**args)
1145
+ end
1146
+
1147
+ # Update properties of this object
1148
+ def update!(**args)
1149
+ @block_inheritance = args[:block_inheritance] unless args[:block_inheritance].nil?
1150
+ @description = args[:description] unless args[:description].nil?
1151
+ @etag = args[:etag] unless args[:etag].nil?
1152
+ @kind = args[:kind] unless args[:kind].nil?
1153
+ @name = args[:name] unless args[:name].nil?
1154
+ @org_unit_id = args[:org_unit_id] unless args[:org_unit_id].nil?
1155
+ @org_unit_path = args[:org_unit_path] unless args[:org_unit_path].nil?
1156
+ @parent_org_unit_id = args[:parent_org_unit_id] unless args[:parent_org_unit_id].nil?
1157
+ @parent_org_unit_path = args[:parent_org_unit_path] unless args[:parent_org_unit_path].nil?
1158
+ end
1159
+ end
1160
+
1161
+ # JSON response template for List Organization Units operation in Directory API.
1162
+ class OrgUnits
1163
+ include Google::Apis::Core::Hashable
1164
+
1165
+ # ETag of the resource.
1166
+ # Corresponds to the JSON property `etag`
1167
+ # @return [String]
1168
+ attr_accessor :etag
1169
+
1170
+ # Kind of resource this is.
1171
+ # Corresponds to the JSON property `kind`
1172
+ # @return [String]
1173
+ attr_accessor :kind
1174
+
1175
+ # List of user objects.
1176
+ # Corresponds to the JSON property `organizationUnits`
1177
+ # @return [Array<Google::Apis::AdminDirectoryV1::OrgUnit>]
1178
+ attr_accessor :organization_units
1179
+
1180
+ def initialize(**args)
1181
+ update!(**args)
1182
+ end
1183
+
1184
+ # Update properties of this object
1185
+ def update!(**args)
1186
+ @etag = args[:etag] unless args[:etag].nil?
1187
+ @kind = args[:kind] unless args[:kind].nil?
1188
+ @organization_units = args[:organization_units] unless args[:organization_units].nil?
1189
+ end
1190
+ end
1191
+
1192
+ # JSON template for Schema resource in Directory API.
1193
+ class Schema
1194
+ include Google::Apis::Core::Hashable
1195
+
1196
+ # ETag of the resource.
1197
+ # Corresponds to the JSON property `etag`
1198
+ # @return [String]
1199
+ attr_accessor :etag
1200
+
1201
+ # Fields of Schema
1202
+ # Corresponds to the JSON property `fields`
1203
+ # @return [Array<Google::Apis::AdminDirectoryV1::SchemaFieldSpec>]
1204
+ attr_accessor :fields
1205
+
1206
+ # Kind of resource this is.
1207
+ # Corresponds to the JSON property `kind`
1208
+ # @return [String]
1209
+ attr_accessor :kind
1210
+
1211
+ # Unique identifier of Schema (Read-only)
1212
+ # Corresponds to the JSON property `schemaId`
1213
+ # @return [String]
1214
+ attr_accessor :schema_id
1215
+
1216
+ # Schema name
1217
+ # Corresponds to the JSON property `schemaName`
1218
+ # @return [String]
1219
+ attr_accessor :schema_name
1220
+
1221
+ def initialize(**args)
1222
+ update!(**args)
1223
+ end
1224
+
1225
+ # Update properties of this object
1226
+ def update!(**args)
1227
+ @etag = args[:etag] unless args[:etag].nil?
1228
+ @fields = args[:fields] unless args[:fields].nil?
1229
+ @kind = args[:kind] unless args[:kind].nil?
1230
+ @schema_id = args[:schema_id] unless args[:schema_id].nil?
1231
+ @schema_name = args[:schema_name] unless args[:schema_name].nil?
1232
+ end
1233
+ end
1234
+
1235
+ # JSON template for FieldSpec resource for Schemas in Directory API.
1236
+ class SchemaFieldSpec
1237
+ include Google::Apis::Core::Hashable
1238
+
1239
+ # ETag of the resource.
1240
+ # Corresponds to the JSON property `etag`
1241
+ # @return [String]
1242
+ attr_accessor :etag
1243
+
1244
+ # Unique identifier of Field (Read-only)
1245
+ # Corresponds to the JSON property `fieldId`
1246
+ # @return [String]
1247
+ attr_accessor :field_id
1248
+
1249
+ # Name of the field.
1250
+ # Corresponds to the JSON property `fieldName`
1251
+ # @return [String]
1252
+ attr_accessor :field_name
1253
+
1254
+ # Type of the field.
1255
+ # Corresponds to the JSON property `fieldType`
1256
+ # @return [String]
1257
+ attr_accessor :field_type
1258
+
1259
+ # Boolean specifying whether the field is indexed or not.
1260
+ # Corresponds to the JSON property `indexed`
1261
+ # @return [Boolean]
1262
+ attr_accessor :indexed
1263
+ alias_method :indexed?, :indexed
1264
+
1265
+ # Kind of resource this is.
1266
+ # Corresponds to the JSON property `kind`
1267
+ # @return [String]
1268
+ attr_accessor :kind
1269
+
1270
+ # Boolean specifying whether this is a multi-valued field or not.
1271
+ # Corresponds to the JSON property `multiValued`
1272
+ # @return [Boolean]
1273
+ attr_accessor :multi_valued
1274
+ alias_method :multi_valued?, :multi_valued
1275
+
1276
+ # Indexing spec for a numeric field. By default, only exact match queries will
1277
+ # be supported for numeric fields. Setting the numericIndexingSpec allows range
1278
+ # queries to be supported.
1279
+ # Corresponds to the JSON property `numericIndexingSpec`
1280
+ # @return [Google::Apis::AdminDirectoryV1::SchemaFieldSpec::NumericIndexingSpec]
1281
+ attr_accessor :numeric_indexing_spec
1282
+
1283
+ # Read ACLs on the field specifying who can view values of this field. Valid
1284
+ # values are "ALL_DOMAIN_USERS" and "ADMINS_AND_SELF".
1285
+ # Corresponds to the JSON property `readAccessType`
1286
+ # @return [String]
1287
+ attr_accessor :read_access_type
1288
+
1289
+ def initialize(**args)
1290
+ update!(**args)
1291
+ end
1292
+
1293
+ # Update properties of this object
1294
+ def update!(**args)
1295
+ @etag = args[:etag] unless args[:etag].nil?
1296
+ @field_id = args[:field_id] unless args[:field_id].nil?
1297
+ @field_name = args[:field_name] unless args[:field_name].nil?
1298
+ @field_type = args[:field_type] unless args[:field_type].nil?
1299
+ @indexed = args[:indexed] unless args[:indexed].nil?
1300
+ @kind = args[:kind] unless args[:kind].nil?
1301
+ @multi_valued = args[:multi_valued] unless args[:multi_valued].nil?
1302
+ @numeric_indexing_spec = args[:numeric_indexing_spec] unless args[:numeric_indexing_spec].nil?
1303
+ @read_access_type = args[:read_access_type] unless args[:read_access_type].nil?
1304
+ end
1305
+
1306
+ # Indexing spec for a numeric field. By default, only exact match queries will
1307
+ # be supported for numeric fields. Setting the numericIndexingSpec allows range
1308
+ # queries to be supported.
1309
+ class NumericIndexingSpec
1310
+ include Google::Apis::Core::Hashable
1311
+
1312
+ # Maximum value of this field. This is meant to be indicative rather than
1313
+ # enforced. Values outside this range will still be indexed, but search may not
1314
+ # be as performant.
1315
+ # Corresponds to the JSON property `maxValue`
1316
+ # @return [Float]
1317
+ attr_accessor :max_value
1318
+
1319
+ # Minimum value of this field. This is meant to be indicative rather than
1320
+ # enforced. Values outside this range will still be indexed, but search may not
1321
+ # be as performant.
1322
+ # Corresponds to the JSON property `minValue`
1323
+ # @return [Float]
1324
+ attr_accessor :min_value
1325
+
1326
+ def initialize(**args)
1327
+ update!(**args)
1328
+ end
1329
+
1330
+ # Update properties of this object
1331
+ def update!(**args)
1332
+ @max_value = args[:max_value] unless args[:max_value].nil?
1333
+ @min_value = args[:min_value] unless args[:min_value].nil?
1334
+ end
1335
+ end
1336
+ end
1337
+
1338
+ # JSON response template for List Schema operation in Directory API.
1339
+ class Schemas
1340
+ include Google::Apis::Core::Hashable
1341
+
1342
+ # ETag of the resource.
1343
+ # Corresponds to the JSON property `etag`
1344
+ # @return [String]
1345
+ attr_accessor :etag
1346
+
1347
+ # Kind of resource this is.
1348
+ # Corresponds to the JSON property `kind`
1349
+ # @return [String]
1350
+ attr_accessor :kind
1351
+
1352
+ # List of UserSchema objects.
1353
+ # Corresponds to the JSON property `schemas`
1354
+ # @return [Array<Google::Apis::AdminDirectoryV1::Schema>]
1355
+ attr_accessor :schemas
1356
+
1357
+ def initialize(**args)
1358
+ update!(**args)
1359
+ end
1360
+
1361
+ # Update properties of this object
1362
+ def update!(**args)
1363
+ @etag = args[:etag] unless args[:etag].nil?
1364
+ @kind = args[:kind] unless args[:kind].nil?
1365
+ @schemas = args[:schemas] unless args[:schemas].nil?
1366
+ end
1367
+ end
1368
+
1369
+ # JSON template for token resource in Directory API.
1370
+ class Token
1371
+ include Google::Apis::Core::Hashable
1372
+
1373
+ # Whether the application is registered with Google. The value is true if the
1374
+ # application has an anonymous Client ID.
1375
+ # Corresponds to the JSON property `anonymous`
1376
+ # @return [Boolean]
1377
+ attr_accessor :anonymous
1378
+ alias_method :anonymous?, :anonymous
1379
+
1380
+ # The Client ID of the application the token is issued to.
1381
+ # Corresponds to the JSON property `clientId`
1382
+ # @return [String]
1383
+ attr_accessor :client_id
1384
+
1385
+ # The displayable name of the application the token is issued to.
1386
+ # Corresponds to the JSON property `displayText`
1387
+ # @return [String]
1388
+ attr_accessor :display_text
1389
+
1390
+ # ETag of the resource.
1391
+ # Corresponds to the JSON property `etag`
1392
+ # @return [String]
1393
+ attr_accessor :etag
1394
+
1395
+ # The type of the API resource. This is always admin#directory#token.
1396
+ # Corresponds to the JSON property `kind`
1397
+ # @return [String]
1398
+ attr_accessor :kind
1399
+
1400
+ # Whether the token is issued to an installed application. The value is true if
1401
+ # the application is installed to a desktop or mobile device.
1402
+ # Corresponds to the JSON property `nativeApp`
1403
+ # @return [Boolean]
1404
+ attr_accessor :native_app
1405
+ alias_method :native_app?, :native_app
1406
+
1407
+ # A list of authorization scopes the application is granted.
1408
+ # Corresponds to the JSON property `scopes`
1409
+ # @return [Array<String>]
1410
+ attr_accessor :scopes
1411
+
1412
+ # The unique ID of the user that issued the token.
1413
+ # Corresponds to the JSON property `userKey`
1414
+ # @return [String]
1415
+ attr_accessor :user_key
1416
+
1417
+ def initialize(**args)
1418
+ update!(**args)
1419
+ end
1420
+
1421
+ # Update properties of this object
1422
+ def update!(**args)
1423
+ @anonymous = args[:anonymous] unless args[:anonymous].nil?
1424
+ @client_id = args[:client_id] unless args[:client_id].nil?
1425
+ @display_text = args[:display_text] unless args[:display_text].nil?
1426
+ @etag = args[:etag] unless args[:etag].nil?
1427
+ @kind = args[:kind] unless args[:kind].nil?
1428
+ @native_app = args[:native_app] unless args[:native_app].nil?
1429
+ @scopes = args[:scopes] unless args[:scopes].nil?
1430
+ @user_key = args[:user_key] unless args[:user_key].nil?
1431
+ end
1432
+ end
1433
+
1434
+ # JSON response template for List tokens operation in Directory API.
1435
+ class Tokens
1436
+ include Google::Apis::Core::Hashable
1437
+
1438
+ # ETag of the resource.
1439
+ # Corresponds to the JSON property `etag`
1440
+ # @return [String]
1441
+ attr_accessor :etag
1442
+
1443
+ # A list of Token resources.
1444
+ # Corresponds to the JSON property `items`
1445
+ # @return [Array<Google::Apis::AdminDirectoryV1::Token>]
1446
+ attr_accessor :items
1447
+
1448
+ # The type of the API resource. This is always admin#directory#tokenList.
1449
+ # Corresponds to the JSON property `kind`
1450
+ # @return [String]
1451
+ attr_accessor :kind
1452
+
1453
+ def initialize(**args)
1454
+ update!(**args)
1455
+ end
1456
+
1457
+ # Update properties of this object
1458
+ def update!(**args)
1459
+ @etag = args[:etag] unless args[:etag].nil?
1460
+ @items = args[:items] unless args[:items].nil?
1461
+ @kind = args[:kind] unless args[:kind].nil?
1462
+ end
1463
+ end
1464
+
1465
+ # JSON template for User object in Directory API.
1466
+ class User
1467
+ include Google::Apis::Core::Hashable
1468
+
1469
+ #
1470
+ # Corresponds to the JSON property `addresses`
1471
+ # @return [Object]
1472
+ attr_accessor :addresses
1473
+
1474
+ # Indicates if user has agreed to terms (Read-only)
1475
+ # Corresponds to the JSON property `agreedToTerms`
1476
+ # @return [Boolean]
1477
+ attr_accessor :agreed_to_terms
1478
+ alias_method :agreed_to_terms?, :agreed_to_terms
1479
+
1480
+ # List of aliases (Read-only)
1481
+ # Corresponds to the JSON property `aliases`
1482
+ # @return [Array<String>]
1483
+ attr_accessor :aliases
1484
+
1485
+ # Boolean indicating if the user should change password in next login
1486
+ # Corresponds to the JSON property `changePasswordAtNextLogin`
1487
+ # @return [Boolean]
1488
+ attr_accessor :change_password_at_next_login
1489
+ alias_method :change_password_at_next_login?, :change_password_at_next_login
1490
+
1491
+ # User's Google account creation time. (Read-only)
1492
+ # Corresponds to the JSON property `creationTime`
1493
+ # @return [DateTime]
1494
+ attr_accessor :creation_time
1495
+
1496
+ # Custom fields of the user.
1497
+ # Corresponds to the JSON property `customSchemas`
1498
+ # @return [Hash<String,Hash<String,Object>>]
1499
+ attr_accessor :custom_schemas
1500
+
1501
+ # CustomerId of User (Read-only)
1502
+ # Corresponds to the JSON property `customerId`
1503
+ # @return [String]
1504
+ attr_accessor :customer_id
1505
+
1506
+ #
1507
+ # Corresponds to the JSON property `deletionTime`
1508
+ # @return [DateTime]
1509
+ attr_accessor :deletion_time
1510
+
1511
+ #
1512
+ # Corresponds to the JSON property `emails`
1513
+ # @return [Object]
1514
+ attr_accessor :emails
1515
+
1516
+ # ETag of the resource.
1517
+ # Corresponds to the JSON property `etag`
1518
+ # @return [String]
1519
+ attr_accessor :etag
1520
+
1521
+ #
1522
+ # Corresponds to the JSON property `externalIds`
1523
+ # @return [Object]
1524
+ attr_accessor :external_ids
1525
+
1526
+ # Hash function name for password. Supported are MD5, SHA-1 and crypt
1527
+ # Corresponds to the JSON property `hashFunction`
1528
+ # @return [String]
1529
+ attr_accessor :hash_function
1530
+
1531
+ # Unique identifier of User (Read-only)
1532
+ # Corresponds to the JSON property `id`
1533
+ # @return [String]
1534
+ attr_accessor :id
1535
+
1536
+ #
1537
+ # Corresponds to the JSON property `ims`
1538
+ # @return [Object]
1539
+ attr_accessor :ims
1540
+
1541
+ # Boolean indicating if user is included in Global Address List
1542
+ # Corresponds to the JSON property `includeInGlobalAddressList`
1543
+ # @return [Boolean]
1544
+ attr_accessor :include_in_global_address_list
1545
+ alias_method :include_in_global_address_list?, :include_in_global_address_list
1546
+
1547
+ # Boolean indicating if ip is whitelisted
1548
+ # Corresponds to the JSON property `ipWhitelisted`
1549
+ # @return [Boolean]
1550
+ attr_accessor :ip_whitelisted
1551
+ alias_method :ip_whitelisted?, :ip_whitelisted
1552
+
1553
+ # Boolean indicating if the user is admin (Read-only)
1554
+ # Corresponds to the JSON property `isAdmin`
1555
+ # @return [Boolean]
1556
+ attr_accessor :is_admin
1557
+ alias_method :is_admin?, :is_admin
1558
+
1559
+ # Boolean indicating if the user is delegated admin (Read-only)
1560
+ # Corresponds to the JSON property `isDelegatedAdmin`
1561
+ # @return [Boolean]
1562
+ attr_accessor :is_delegated_admin
1563
+ alias_method :is_delegated_admin?, :is_delegated_admin
1564
+
1565
+ # Is mailbox setup (Read-only)
1566
+ # Corresponds to the JSON property `isMailboxSetup`
1567
+ # @return [Boolean]
1568
+ attr_accessor :is_mailbox_setup
1569
+ alias_method :is_mailbox_setup?, :is_mailbox_setup
1570
+
1571
+ # Kind of resource this is.
1572
+ # Corresponds to the JSON property `kind`
1573
+ # @return [String]
1574
+ attr_accessor :kind
1575
+
1576
+ # User's last login time. (Read-only)
1577
+ # Corresponds to the JSON property `lastLoginTime`
1578
+ # @return [DateTime]
1579
+ attr_accessor :last_login_time
1580
+
1581
+ # JSON template for name of a user in Directory API.
1582
+ # Corresponds to the JSON property `name`
1583
+ # @return [Google::Apis::AdminDirectoryV1::UserName]
1584
+ attr_accessor :name
1585
+
1586
+ # List of non editable aliases (Read-only)
1587
+ # Corresponds to the JSON property `nonEditableAliases`
1588
+ # @return [Array<String>]
1589
+ attr_accessor :non_editable_aliases
1590
+
1591
+ #
1592
+ # Corresponds to the JSON property `notes`
1593
+ # @return [Object]
1594
+ attr_accessor :notes
1595
+
1596
+ # OrgUnit of User
1597
+ # Corresponds to the JSON property `orgUnitPath`
1598
+ # @return [String]
1599
+ attr_accessor :org_unit_path
1600
+
1601
+ #
1602
+ # Corresponds to the JSON property `organizations`
1603
+ # @return [Object]
1604
+ attr_accessor :organizations
1605
+
1606
+ # User's password
1607
+ # Corresponds to the JSON property `password`
1608
+ # @return [String]
1609
+ attr_accessor :password
1610
+
1611
+ #
1612
+ # Corresponds to the JSON property `phones`
1613
+ # @return [Object]
1614
+ attr_accessor :phones
1615
+
1616
+ # username of User
1617
+ # Corresponds to the JSON property `primaryEmail`
1618
+ # @return [String]
1619
+ attr_accessor :primary_email
1620
+
1621
+ #
1622
+ # Corresponds to the JSON property `relations`
1623
+ # @return [Object]
1624
+ attr_accessor :relations
1625
+
1626
+ # Indicates if user is suspended
1627
+ # Corresponds to the JSON property `suspended`
1628
+ # @return [Boolean]
1629
+ attr_accessor :suspended
1630
+ alias_method :suspended?, :suspended
1631
+
1632
+ # Suspension reason if user is suspended (Read-only)
1633
+ # Corresponds to the JSON property `suspensionReason`
1634
+ # @return [String]
1635
+ attr_accessor :suspension_reason
1636
+
1637
+ # ETag of the user's photo (Read-only)
1638
+ # Corresponds to the JSON property `thumbnailPhotoEtag`
1639
+ # @return [String]
1640
+ attr_accessor :thumbnail_photo_etag
1641
+
1642
+ # Photo Url of the user (Read-only)
1643
+ # Corresponds to the JSON property `thumbnailPhotoUrl`
1644
+ # @return [String]
1645
+ attr_accessor :thumbnail_photo_url
1646
+
1647
+ #
1648
+ # Corresponds to the JSON property `websites`
1649
+ # @return [Object]
1650
+ attr_accessor :websites
1651
+
1652
+ def initialize(**args)
1653
+ update!(**args)
1654
+ end
1655
+
1656
+ # Update properties of this object
1657
+ def update!(**args)
1658
+ @addresses = args[:addresses] unless args[:addresses].nil?
1659
+ @agreed_to_terms = args[:agreed_to_terms] unless args[:agreed_to_terms].nil?
1660
+ @aliases = args[:aliases] unless args[:aliases].nil?
1661
+ @change_password_at_next_login = args[:change_password_at_next_login] unless args[:change_password_at_next_login].nil?
1662
+ @creation_time = args[:creation_time] unless args[:creation_time].nil?
1663
+ @custom_schemas = args[:custom_schemas] unless args[:custom_schemas].nil?
1664
+ @customer_id = args[:customer_id] unless args[:customer_id].nil?
1665
+ @deletion_time = args[:deletion_time] unless args[:deletion_time].nil?
1666
+ @emails = args[:emails] unless args[:emails].nil?
1667
+ @etag = args[:etag] unless args[:etag].nil?
1668
+ @external_ids = args[:external_ids] unless args[:external_ids].nil?
1669
+ @hash_function = args[:hash_function] unless args[:hash_function].nil?
1670
+ @id = args[:id] unless args[:id].nil?
1671
+ @ims = args[:ims] unless args[:ims].nil?
1672
+ @include_in_global_address_list = args[:include_in_global_address_list] unless args[:include_in_global_address_list].nil?
1673
+ @ip_whitelisted = args[:ip_whitelisted] unless args[:ip_whitelisted].nil?
1674
+ @is_admin = args[:is_admin] unless args[:is_admin].nil?
1675
+ @is_delegated_admin = args[:is_delegated_admin] unless args[:is_delegated_admin].nil?
1676
+ @is_mailbox_setup = args[:is_mailbox_setup] unless args[:is_mailbox_setup].nil?
1677
+ @kind = args[:kind] unless args[:kind].nil?
1678
+ @last_login_time = args[:last_login_time] unless args[:last_login_time].nil?
1679
+ @name = args[:name] unless args[:name].nil?
1680
+ @non_editable_aliases = args[:non_editable_aliases] unless args[:non_editable_aliases].nil?
1681
+ @notes = args[:notes] unless args[:notes].nil?
1682
+ @org_unit_path = args[:org_unit_path] unless args[:org_unit_path].nil?
1683
+ @organizations = args[:organizations] unless args[:organizations].nil?
1684
+ @password = args[:password] unless args[:password].nil?
1685
+ @phones = args[:phones] unless args[:phones].nil?
1686
+ @primary_email = args[:primary_email] unless args[:primary_email].nil?
1687
+ @relations = args[:relations] unless args[:relations].nil?
1688
+ @suspended = args[:suspended] unless args[:suspended].nil?
1689
+ @suspension_reason = args[:suspension_reason] unless args[:suspension_reason].nil?
1690
+ @thumbnail_photo_etag = args[:thumbnail_photo_etag] unless args[:thumbnail_photo_etag].nil?
1691
+ @thumbnail_photo_url = args[:thumbnail_photo_url] unless args[:thumbnail_photo_url].nil?
1692
+ @websites = args[:websites] unless args[:websites].nil?
1693
+ end
1694
+ end
1695
+
1696
+ # JSON template for About (notes) of a user in Directory API.
1697
+ class UserAbout
1698
+ include Google::Apis::Core::Hashable
1699
+
1700
+ # About entry can have a type which indicates the content type. It can either be
1701
+ # plain or html. By default, notes contents are assumed to contain plain text.
1702
+ # Corresponds to the JSON property `contentType`
1703
+ # @return [String]
1704
+ attr_accessor :content_type
1705
+
1706
+ # Actual value of notes.
1707
+ # Corresponds to the JSON property `value`
1708
+ # @return [String]
1709
+ attr_accessor :value
1710
+
1711
+ def initialize(**args)
1712
+ update!(**args)
1713
+ end
1714
+
1715
+ # Update properties of this object
1716
+ def update!(**args)
1717
+ @content_type = args[:content_type] unless args[:content_type].nil?
1718
+ @value = args[:value] unless args[:value].nil?
1719
+ end
1720
+ end
1721
+
1722
+ # JSON template for address.
1723
+ class UserAddress
1724
+ include Google::Apis::Core::Hashable
1725
+
1726
+ # Country.
1727
+ # Corresponds to the JSON property `country`
1728
+ # @return [String]
1729
+ attr_accessor :country
1730
+
1731
+ # Country code.
1732
+ # Corresponds to the JSON property `countryCode`
1733
+ # @return [String]
1734
+ attr_accessor :country_code
1735
+
1736
+ # Custom type.
1737
+ # Corresponds to the JSON property `customType`
1738
+ # @return [String]
1739
+ attr_accessor :custom_type
1740
+
1741
+ # Extended Address.
1742
+ # Corresponds to the JSON property `extendedAddress`
1743
+ # @return [String]
1744
+ attr_accessor :extended_address
1745
+
1746
+ # Formatted address.
1747
+ # Corresponds to the JSON property `formatted`
1748
+ # @return [String]
1749
+ attr_accessor :formatted
1750
+
1751
+ # Locality.
1752
+ # Corresponds to the JSON property `locality`
1753
+ # @return [String]
1754
+ attr_accessor :locality
1755
+
1756
+ # Other parts of address.
1757
+ # Corresponds to the JSON property `poBox`
1758
+ # @return [String]
1759
+ attr_accessor :po_box
1760
+
1761
+ # Postal code.
1762
+ # Corresponds to the JSON property `postalCode`
1763
+ # @return [String]
1764
+ attr_accessor :postal_code
1765
+
1766
+ # If this is user's primary address. Only one entry could be marked as primary.
1767
+ # Corresponds to the JSON property `primary`
1768
+ # @return [Boolean]
1769
+ attr_accessor :primary
1770
+ alias_method :primary?, :primary
1771
+
1772
+ # Region.
1773
+ # Corresponds to the JSON property `region`
1774
+ # @return [String]
1775
+ attr_accessor :region
1776
+
1777
+ # User supplied address was structured. Structured addresses are NOT supported
1778
+ # at this time. You might be able to write structured addresses, but any values
1779
+ # will eventually be clobbered.
1780
+ # Corresponds to the JSON property `sourceIsStructured`
1781
+ # @return [Boolean]
1782
+ attr_accessor :source_is_structured
1783
+ alias_method :source_is_structured?, :source_is_structured
1784
+
1785
+ # Street.
1786
+ # Corresponds to the JSON property `streetAddress`
1787
+ # @return [String]
1788
+ attr_accessor :street_address
1789
+
1790
+ # Each entry can have a type which indicates standard values of that entry. For
1791
+ # example address could be of home, work etc. In addition to the standard type,
1792
+ # an entry can have a custom type and can take any value. Such type should have
1793
+ # the CUSTOM value as type and also have a customType value.
1794
+ # Corresponds to the JSON property `type`
1795
+ # @return [String]
1796
+ attr_accessor :type
1797
+
1798
+ def initialize(**args)
1799
+ update!(**args)
1800
+ end
1801
+
1802
+ # Update properties of this object
1803
+ def update!(**args)
1804
+ @country = args[:country] unless args[:country].nil?
1805
+ @country_code = args[:country_code] unless args[:country_code].nil?
1806
+ @custom_type = args[:custom_type] unless args[:custom_type].nil?
1807
+ @extended_address = args[:extended_address] unless args[:extended_address].nil?
1808
+ @formatted = args[:formatted] unless args[:formatted].nil?
1809
+ @locality = args[:locality] unless args[:locality].nil?
1810
+ @po_box = args[:po_box] unless args[:po_box].nil?
1811
+ @postal_code = args[:postal_code] unless args[:postal_code].nil?
1812
+ @primary = args[:primary] unless args[:primary].nil?
1813
+ @region = args[:region] unless args[:region].nil?
1814
+ @source_is_structured = args[:source_is_structured] unless args[:source_is_structured].nil?
1815
+ @street_address = args[:street_address] unless args[:street_address].nil?
1816
+ @type = args[:type] unless args[:type].nil?
1817
+ end
1818
+ end
1819
+
1820
+ # JSON template for an email.
1821
+ class UserEmail
1822
+ include Google::Apis::Core::Hashable
1823
+
1824
+ # Email id of the user.
1825
+ # Corresponds to the JSON property `address`
1826
+ # @return [String]
1827
+ attr_accessor :address
1828
+
1829
+ # Custom Type.
1830
+ # Corresponds to the JSON property `customType`
1831
+ # @return [String]
1832
+ attr_accessor :custom_type
1833
+
1834
+ # If this is user's primary email. Only one entry could be marked as primary.
1835
+ # Corresponds to the JSON property `primary`
1836
+ # @return [Boolean]
1837
+ attr_accessor :primary
1838
+ alias_method :primary?, :primary
1839
+
1840
+ # Each entry can have a type which indicates standard types of that entry. For
1841
+ # example email could be of home, work etc. In addition to the standard type, an
1842
+ # entry can have a custom type and can take any value Such types should have the
1843
+ # CUSTOM value as type and also have a customType value.
1844
+ # Corresponds to the JSON property `type`
1845
+ # @return [String]
1846
+ attr_accessor :type
1847
+
1848
+ def initialize(**args)
1849
+ update!(**args)
1850
+ end
1851
+
1852
+ # Update properties of this object
1853
+ def update!(**args)
1854
+ @address = args[:address] unless args[:address].nil?
1855
+ @custom_type = args[:custom_type] unless args[:custom_type].nil?
1856
+ @primary = args[:primary] unless args[:primary].nil?
1857
+ @type = args[:type] unless args[:type].nil?
1858
+ end
1859
+ end
1860
+
1861
+ # JSON template for an externalId entry.
1862
+ class UserExternalId
1863
+ include Google::Apis::Core::Hashable
1864
+
1865
+ # Custom type.
1866
+ # Corresponds to the JSON property `customType`
1867
+ # @return [String]
1868
+ attr_accessor :custom_type
1869
+
1870
+ # The type of the Id.
1871
+ # Corresponds to the JSON property `type`
1872
+ # @return [String]
1873
+ attr_accessor :type
1874
+
1875
+ # The value of the id.
1876
+ # Corresponds to the JSON property `value`
1877
+ # @return [String]
1878
+ attr_accessor :value
1879
+
1880
+ def initialize(**args)
1881
+ update!(**args)
1882
+ end
1883
+
1884
+ # Update properties of this object
1885
+ def update!(**args)
1886
+ @custom_type = args[:custom_type] unless args[:custom_type].nil?
1887
+ @type = args[:type] unless args[:type].nil?
1888
+ @value = args[:value] unless args[:value].nil?
1889
+ end
1890
+ end
1891
+
1892
+ # JSON template for instant messenger of an user.
1893
+ class UserIm
1894
+ include Google::Apis::Core::Hashable
1895
+
1896
+ # Custom protocol.
1897
+ # Corresponds to the JSON property `customProtocol`
1898
+ # @return [String]
1899
+ attr_accessor :custom_protocol
1900
+
1901
+ # Custom type.
1902
+ # Corresponds to the JSON property `customType`
1903
+ # @return [String]
1904
+ attr_accessor :custom_type
1905
+
1906
+ # Instant messenger id.
1907
+ # Corresponds to the JSON property `im`
1908
+ # @return [String]
1909
+ attr_accessor :im
1910
+
1911
+ # If this is user's primary im. Only one entry could be marked as primary.
1912
+ # Corresponds to the JSON property `primary`
1913
+ # @return [Boolean]
1914
+ attr_accessor :primary
1915
+ alias_method :primary?, :primary
1916
+
1917
+ # Protocol used in the instant messenger. It should be one of the values from
1918
+ # ImProtocolTypes map. Similar to type, it can take a CUSTOM value and specify
1919
+ # the custom name in customProtocol field.
1920
+ # Corresponds to the JSON property `protocol`
1921
+ # @return [String]
1922
+ attr_accessor :protocol
1923
+
1924
+ # Each entry can have a type which indicates standard types of that entry. For
1925
+ # example instant messengers could be of home, work etc. In addition to the
1926
+ # standard type, an entry can have a custom type and can take any value. Such
1927
+ # types should have the CUSTOM value as type and also have a customType value.
1928
+ # Corresponds to the JSON property `type`
1929
+ # @return [String]
1930
+ attr_accessor :type
1931
+
1932
+ def initialize(**args)
1933
+ update!(**args)
1934
+ end
1935
+
1936
+ # Update properties of this object
1937
+ def update!(**args)
1938
+ @custom_protocol = args[:custom_protocol] unless args[:custom_protocol].nil?
1939
+ @custom_type = args[:custom_type] unless args[:custom_type].nil?
1940
+ @im = args[:im] unless args[:im].nil?
1941
+ @primary = args[:primary] unless args[:primary].nil?
1942
+ @protocol = args[:protocol] unless args[:protocol].nil?
1943
+ @type = args[:type] unless args[:type].nil?
1944
+ end
1945
+ end
1946
+
1947
+ # JSON request template for setting/revoking admin status of a user in Directory
1948
+ # API.
1949
+ class UserMakeAdmin
1950
+ include Google::Apis::Core::Hashable
1951
+
1952
+ # Boolean indicating new admin status of the user
1953
+ # Corresponds to the JSON property `status`
1954
+ # @return [Boolean]
1955
+ attr_accessor :status
1956
+ alias_method :status?, :status
1957
+
1958
+ def initialize(**args)
1959
+ update!(**args)
1960
+ end
1961
+
1962
+ # Update properties of this object
1963
+ def update!(**args)
1964
+ @status = args[:status] unless args[:status].nil?
1965
+ end
1966
+ end
1967
+
1968
+ # JSON template for name of a user in Directory API.
1969
+ class UserName
1970
+ include Google::Apis::Core::Hashable
1971
+
1972
+ # Last Name
1973
+ # Corresponds to the JSON property `familyName`
1974
+ # @return [String]
1975
+ attr_accessor :family_name
1976
+
1977
+ # Full Name
1978
+ # Corresponds to the JSON property `fullName`
1979
+ # @return [String]
1980
+ attr_accessor :full_name
1981
+
1982
+ # First Name
1983
+ # Corresponds to the JSON property `givenName`
1984
+ # @return [String]
1985
+ attr_accessor :given_name
1986
+
1987
+ def initialize(**args)
1988
+ update!(**args)
1989
+ end
1990
+
1991
+ # Update properties of this object
1992
+ def update!(**args)
1993
+ @family_name = args[:family_name] unless args[:family_name].nil?
1994
+ @full_name = args[:full_name] unless args[:full_name].nil?
1995
+ @given_name = args[:given_name] unless args[:given_name].nil?
1996
+ end
1997
+ end
1998
+
1999
+ # JSON template for an organization entry.
2000
+ class UserOrganization
2001
+ include Google::Apis::Core::Hashable
2002
+
2003
+ # The cost center of the users department.
2004
+ # Corresponds to the JSON property `costCenter`
2005
+ # @return [String]
2006
+ attr_accessor :cost_center
2007
+
2008
+ # Custom type.
2009
+ # Corresponds to the JSON property `customType`
2010
+ # @return [String]
2011
+ attr_accessor :custom_type
2012
+
2013
+ # Department within the organization.
2014
+ # Corresponds to the JSON property `department`
2015
+ # @return [String]
2016
+ attr_accessor :department
2017
+
2018
+ # Description of the organization.
2019
+ # Corresponds to the JSON property `description`
2020
+ # @return [String]
2021
+ attr_accessor :description
2022
+
2023
+ # The domain to which the organization belongs to.
2024
+ # Corresponds to the JSON property `domain`
2025
+ # @return [String]
2026
+ attr_accessor :domain
2027
+
2028
+ # Location of the organization. This need not be fully qualified address.
2029
+ # Corresponds to the JSON property `location`
2030
+ # @return [String]
2031
+ attr_accessor :location
2032
+
2033
+ # Name of the organization
2034
+ # Corresponds to the JSON property `name`
2035
+ # @return [String]
2036
+ attr_accessor :name
2037
+
2038
+ # If it user's primary organization.
2039
+ # Corresponds to the JSON property `primary`
2040
+ # @return [Boolean]
2041
+ attr_accessor :primary
2042
+ alias_method :primary?, :primary
2043
+
2044
+ # Symbol of the organization.
2045
+ # Corresponds to the JSON property `symbol`
2046
+ # @return [String]
2047
+ attr_accessor :symbol
2048
+
2049
+ # Title (designation) of the user in the organization.
2050
+ # Corresponds to the JSON property `title`
2051
+ # @return [String]
2052
+ attr_accessor :title
2053
+
2054
+ # Each entry can have a type which indicates standard types of that entry. For
2055
+ # example organization could be of school, work etc. In addition to the standard
2056
+ # type, an entry can have a custom type and can give it any name. Such types
2057
+ # should have the CUSTOM value as type and also have a CustomType value.
2058
+ # Corresponds to the JSON property `type`
2059
+ # @return [String]
2060
+ attr_accessor :type
2061
+
2062
+ def initialize(**args)
2063
+ update!(**args)
2064
+ end
2065
+
2066
+ # Update properties of this object
2067
+ def update!(**args)
2068
+ @cost_center = args[:cost_center] unless args[:cost_center].nil?
2069
+ @custom_type = args[:custom_type] unless args[:custom_type].nil?
2070
+ @department = args[:department] unless args[:department].nil?
2071
+ @description = args[:description] unless args[:description].nil?
2072
+ @domain = args[:domain] unless args[:domain].nil?
2073
+ @location = args[:location] unless args[:location].nil?
2074
+ @name = args[:name] unless args[:name].nil?
2075
+ @primary = args[:primary] unless args[:primary].nil?
2076
+ @symbol = args[:symbol] unless args[:symbol].nil?
2077
+ @title = args[:title] unless args[:title].nil?
2078
+ @type = args[:type] unless args[:type].nil?
2079
+ end
2080
+ end
2081
+
2082
+ # JSON template for a phone entry.
2083
+ class UserPhone
2084
+ include Google::Apis::Core::Hashable
2085
+
2086
+ # Custom Type.
2087
+ # Corresponds to the JSON property `customType`
2088
+ # @return [String]
2089
+ attr_accessor :custom_type
2090
+
2091
+ # If this is user's primary phone or not.
2092
+ # Corresponds to the JSON property `primary`
2093
+ # @return [Boolean]
2094
+ attr_accessor :primary
2095
+ alias_method :primary?, :primary
2096
+
2097
+ # Each entry can have a type which indicates standard types of that entry. For
2098
+ # example phone could be of home_fax, work, mobile etc. In addition to the
2099
+ # standard type, an entry can have a custom type and can give it any name. Such
2100
+ # types should have the CUSTOM value as type and also have a customType value.
2101
+ # Corresponds to the JSON property `type`
2102
+ # @return [String]
2103
+ attr_accessor :type
2104
+
2105
+ # Phone number.
2106
+ # Corresponds to the JSON property `value`
2107
+ # @return [String]
2108
+ attr_accessor :value
2109
+
2110
+ def initialize(**args)
2111
+ update!(**args)
2112
+ end
2113
+
2114
+ # Update properties of this object
2115
+ def update!(**args)
2116
+ @custom_type = args[:custom_type] unless args[:custom_type].nil?
2117
+ @primary = args[:primary] unless args[:primary].nil?
2118
+ @type = args[:type] unless args[:type].nil?
2119
+ @value = args[:value] unless args[:value].nil?
2120
+ end
2121
+ end
2122
+
2123
+ # JSON template for Photo object in Directory API.
2124
+ class UserPhoto
2125
+ include Google::Apis::Core::Hashable
2126
+
2127
+ # ETag of the resource.
2128
+ # Corresponds to the JSON property `etag`
2129
+ # @return [String]
2130
+ attr_accessor :etag
2131
+
2132
+ # Height in pixels of the photo
2133
+ # Corresponds to the JSON property `height`
2134
+ # @return [Fixnum]
2135
+ attr_accessor :height
2136
+
2137
+ # Unique identifier of User (Read-only)
2138
+ # Corresponds to the JSON property `id`
2139
+ # @return [String]
2140
+ attr_accessor :id
2141
+
2142
+ # Kind of resource this is.
2143
+ # Corresponds to the JSON property `kind`
2144
+ # @return [String]
2145
+ attr_accessor :kind
2146
+
2147
+ # Mime Type of the photo
2148
+ # Corresponds to the JSON property `mimeType`
2149
+ # @return [String]
2150
+ attr_accessor :mime_type
2151
+
2152
+ # Base64 encoded photo data
2153
+ # Corresponds to the JSON property `photoData`
2154
+ # @return [String]
2155
+ attr_accessor :photo_data
2156
+
2157
+ # Primary email of User (Read-only)
2158
+ # Corresponds to the JSON property `primaryEmail`
2159
+ # @return [String]
2160
+ attr_accessor :primary_email
2161
+
2162
+ # Width in pixels of the photo
2163
+ # Corresponds to the JSON property `width`
2164
+ # @return [Fixnum]
2165
+ attr_accessor :width
2166
+
2167
+ def initialize(**args)
2168
+ update!(**args)
2169
+ end
2170
+
2171
+ # Update properties of this object
2172
+ def update!(**args)
2173
+ @etag = args[:etag] unless args[:etag].nil?
2174
+ @height = args[:height] unless args[:height].nil?
2175
+ @id = args[:id] unless args[:id].nil?
2176
+ @kind = args[:kind] unless args[:kind].nil?
2177
+ @mime_type = args[:mime_type] unless args[:mime_type].nil?
2178
+ @photo_data = args[:photo_data] unless args[:photo_data].nil?
2179
+ @primary_email = args[:primary_email] unless args[:primary_email].nil?
2180
+ @width = args[:width] unless args[:width].nil?
2181
+ end
2182
+ end
2183
+
2184
+ # JSON template for a relation entry.
2185
+ class UserRelation
2186
+ include Google::Apis::Core::Hashable
2187
+
2188
+ # Custom Type.
2189
+ # Corresponds to the JSON property `customType`
2190
+ # @return [String]
2191
+ attr_accessor :custom_type
2192
+
2193
+ # The relation of the user. Some of the possible values are mother, father,
2194
+ # sister, brother, manager, assistant, partner.
2195
+ # Corresponds to the JSON property `type`
2196
+ # @return [String]
2197
+ attr_accessor :type
2198
+
2199
+ # The name of the relation.
2200
+ # Corresponds to the JSON property `value`
2201
+ # @return [String]
2202
+ attr_accessor :value
2203
+
2204
+ def initialize(**args)
2205
+ update!(**args)
2206
+ end
2207
+
2208
+ # Update properties of this object
2209
+ def update!(**args)
2210
+ @custom_type = args[:custom_type] unless args[:custom_type].nil?
2211
+ @type = args[:type] unless args[:type].nil?
2212
+ @value = args[:value] unless args[:value].nil?
2213
+ end
2214
+ end
2215
+
2216
+ # JSON request template to undelete a user in Directory API.
2217
+ class UserUndelete
2218
+ include Google::Apis::Core::Hashable
2219
+
2220
+ # OrgUnit of User
2221
+ # Corresponds to the JSON property `orgUnitPath`
2222
+ # @return [String]
2223
+ attr_accessor :org_unit_path
2224
+
2225
+ def initialize(**args)
2226
+ update!(**args)
2227
+ end
2228
+
2229
+ # Update properties of this object
2230
+ def update!(**args)
2231
+ @org_unit_path = args[:org_unit_path] unless args[:org_unit_path].nil?
2232
+ end
2233
+ end
2234
+
2235
+ # JSON template for a website entry.
2236
+ class UserWebsite
2237
+ include Google::Apis::Core::Hashable
2238
+
2239
+ # Custom Type.
2240
+ # Corresponds to the JSON property `customType`
2241
+ # @return [String]
2242
+ attr_accessor :custom_type
2243
+
2244
+ # If this is user's primary website or not.
2245
+ # Corresponds to the JSON property `primary`
2246
+ # @return [Boolean]
2247
+ attr_accessor :primary
2248
+ alias_method :primary?, :primary
2249
+
2250
+ # Each entry can have a type which indicates standard types of that entry. For
2251
+ # example website could be of home, work, blog etc. In addition to the standard
2252
+ # type, an entry can have a custom type and can give it any name. Such types
2253
+ # should have the CUSTOM value as type and also have a customType value.
2254
+ # Corresponds to the JSON property `type`
2255
+ # @return [String]
2256
+ attr_accessor :type
2257
+
2258
+ # Website.
2259
+ # Corresponds to the JSON property `value`
2260
+ # @return [String]
2261
+ attr_accessor :value
2262
+
2263
+ def initialize(**args)
2264
+ update!(**args)
2265
+ end
2266
+
2267
+ # Update properties of this object
2268
+ def update!(**args)
2269
+ @custom_type = args[:custom_type] unless args[:custom_type].nil?
2270
+ @primary = args[:primary] unless args[:primary].nil?
2271
+ @type = args[:type] unless args[:type].nil?
2272
+ @value = args[:value] unless args[:value].nil?
2273
+ end
2274
+ end
2275
+
2276
+ # JSON response template for List Users operation in Apps Directory API.
2277
+ class Users
2278
+ include Google::Apis::Core::Hashable
2279
+
2280
+ # ETag of the resource.
2281
+ # Corresponds to the JSON property `etag`
2282
+ # @return [String]
2283
+ attr_accessor :etag
2284
+
2285
+ # Kind of resource this is.
2286
+ # Corresponds to the JSON property `kind`
2287
+ # @return [String]
2288
+ attr_accessor :kind
2289
+
2290
+ # Token used to access next page of this result.
2291
+ # Corresponds to the JSON property `nextPageToken`
2292
+ # @return [String]
2293
+ attr_accessor :next_page_token
2294
+
2295
+ # Event that triggered this response (only used in case of Push Response)
2296
+ # Corresponds to the JSON property `trigger_event`
2297
+ # @return [String]
2298
+ attr_accessor :trigger_event
2299
+
2300
+ # List of user objects.
2301
+ # Corresponds to the JSON property `users`
2302
+ # @return [Array<Google::Apis::AdminDirectoryV1::User>]
2303
+ attr_accessor :users
2304
+
2305
+ def initialize(**args)
2306
+ update!(**args)
2307
+ end
2308
+
2309
+ # Update properties of this object
2310
+ def update!(**args)
2311
+ @etag = args[:etag] unless args[:etag].nil?
2312
+ @kind = args[:kind] unless args[:kind].nil?
2313
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
2314
+ @trigger_event = args[:trigger_event] unless args[:trigger_event].nil?
2315
+ @users = args[:users] unless args[:users].nil?
2316
+ end
2317
+ end
2318
+
2319
+ # JSON template for verification codes in Directory API.
2320
+ class VerificationCode
2321
+ include Google::Apis::Core::Hashable
2322
+
2323
+ # ETag of the resource.
2324
+ # Corresponds to the JSON property `etag`
2325
+ # @return [String]
2326
+ attr_accessor :etag
2327
+
2328
+ # The type of the resource. This is always admin#directory#verificationCode.
2329
+ # Corresponds to the JSON property `kind`
2330
+ # @return [String]
2331
+ attr_accessor :kind
2332
+
2333
+ # The obfuscated unique ID of the user.
2334
+ # Corresponds to the JSON property `userId`
2335
+ # @return [String]
2336
+ attr_accessor :user_id
2337
+
2338
+ # A current verification code for the user. Invalidated or used verification
2339
+ # codes are not returned as part of the result.
2340
+ # Corresponds to the JSON property `verificationCode`
2341
+ # @return [String]
2342
+ attr_accessor :verification_code
2343
+
2344
+ def initialize(**args)
2345
+ update!(**args)
2346
+ end
2347
+
2348
+ # Update properties of this object
2349
+ def update!(**args)
2350
+ @etag = args[:etag] unless args[:etag].nil?
2351
+ @kind = args[:kind] unless args[:kind].nil?
2352
+ @user_id = args[:user_id] unless args[:user_id].nil?
2353
+ @verification_code = args[:verification_code] unless args[:verification_code].nil?
2354
+ end
2355
+ end
2356
+
2357
+ # JSON response template for List verification codes operation in Directory API.
2358
+ class VerificationCodes
2359
+ include Google::Apis::Core::Hashable
2360
+
2361
+ # ETag of the resource.
2362
+ # Corresponds to the JSON property `etag`
2363
+ # @return [String]
2364
+ attr_accessor :etag
2365
+
2366
+ # A list of verification code resources.
2367
+ # Corresponds to the JSON property `items`
2368
+ # @return [Array<Google::Apis::AdminDirectoryV1::VerificationCode>]
2369
+ attr_accessor :items
2370
+
2371
+ # The type of the resource. This is always admin#directory#verificationCodesList.
2372
+ # Corresponds to the JSON property `kind`
2373
+ # @return [String]
2374
+ attr_accessor :kind
2375
+
2376
+ def initialize(**args)
2377
+ update!(**args)
2378
+ end
2379
+
2380
+ # Update properties of this object
2381
+ def update!(**args)
2382
+ @etag = args[:etag] unless args[:etag].nil?
2383
+ @items = args[:items] unless args[:items].nil?
2384
+ @kind = args[:kind] unless args[:kind].nil?
2385
+ end
2386
+ end
2387
+ end
2388
+ end
2389
+ end