lemboy-google-api-client 0.9.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (555) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +20 -0
  3. data/.rspec +2 -0
  4. data/.rubocop.yml +7 -0
  5. data/.rubocop_todo.yml +63 -0
  6. data/.travis.yml +27 -0
  7. data/.yardopts +12 -0
  8. data/CHANGELOG.md +309 -0
  9. data/CONTRIBUTING.md +31 -0
  10. data/Gemfile +53 -0
  11. data/LICENSE +202 -0
  12. data/MIGRATING.md +171 -0
  13. data/README.md +327 -0
  14. data/Rakefile +2 -0
  15. data/api_names.yaml +36215 -0
  16. data/bin/generate-api +109 -0
  17. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +35 -0
  18. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +298 -0
  19. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +122 -0
  20. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +458 -0
  21. data/generated/google/apis/adexchangebuyer_v1_3.rb +35 -0
  22. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +1335 -0
  23. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +446 -0
  24. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +872 -0
  25. data/generated/google/apis/adexchangebuyer_v1_4.rb +35 -0
  26. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +3550 -0
  27. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +1421 -0
  28. data/generated/google/apis/adexchangebuyer_v1_4/service.rb +1538 -0
  29. data/generated/google/apis/adexchangeseller_v2_0.rb +37 -0
  30. data/generated/google/apis/adexchangeseller_v2_0/classes.rb +792 -0
  31. data/generated/google/apis/adexchangeseller_v2_0/representations.rb +347 -0
  32. data/generated/google/apis/adexchangeseller_v2_0/service.rb +667 -0
  33. data/generated/google/apis/admin_datatransfer_v1.rb +37 -0
  34. data/generated/google/apis/admin_datatransfer_v1/classes.rb +267 -0
  35. data/generated/google/apis/admin_datatransfer_v1/representations.rb +130 -0
  36. data/generated/google/apis/admin_datatransfer_v1/service.rb +262 -0
  37. data/generated/google/apis/admin_directory_v1.rb +113 -0
  38. data/generated/google/apis/admin_directory_v1/classes.rb +3241 -0
  39. data/generated/google/apis/admin_directory_v1/representations.rb +1172 -0
  40. data/generated/google/apis/admin_directory_v1/service.rb +3857 -0
  41. data/generated/google/apis/admin_reports_v1.rb +38 -0
  42. data/generated/google/apis/admin_reports_v1/classes.rb +582 -0
  43. data/generated/google/apis/admin_reports_v1/representations.rb +257 -0
  44. data/generated/google/apis/admin_reports_v1/service.rb +336 -0
  45. data/generated/google/apis/adsense_v1_4.rb +37 -0
  46. data/generated/google/apis/adsense_v1_4/classes.rb +1280 -0
  47. data/generated/google/apis/adsense_v1_4/representations.rb +555 -0
  48. data/generated/google/apis/adsense_v1_4/service.rb +1713 -0
  49. data/generated/google/apis/adsensehost_v4_1.rb +35 -0
  50. data/generated/google/apis/adsensehost_v4_1/classes.rb +836 -0
  51. data/generated/google/apis/adsensehost_v4_1/representations.rb +367 -0
  52. data/generated/google/apis/adsensehost_v4_1/service.rb +1164 -0
  53. data/generated/google/apis/analytics_v3.rb +49 -0
  54. data/generated/google/apis/analytics_v3/classes.rb +5536 -0
  55. data/generated/google/apis/analytics_v3/representations.rb +1992 -0
  56. data/generated/google/apis/analytics_v3/service.rb +3785 -0
  57. data/generated/google/apis/analyticsreporting_v4.rb +37 -0
  58. data/generated/google/apis/analyticsreporting_v4/classes.rb +1420 -0
  59. data/generated/google/apis/analyticsreporting_v4/representations.rb +598 -0
  60. data/generated/google/apis/analyticsreporting_v4/service.rb +88 -0
  61. data/generated/google/apis/androidenterprise_v1.rb +34 -0
  62. data/generated/google/apis/androidenterprise_v1/classes.rb +2250 -0
  63. data/generated/google/apis/androidenterprise_v1/representations.rb +970 -0
  64. data/generated/google/apis/androidenterprise_v1/service.rb +3267 -0
  65. data/generated/google/apis/androidpublisher_v2.rb +34 -0
  66. data/generated/google/apis/androidpublisher_v2/classes.rb +1941 -0
  67. data/generated/google/apis/androidpublisher_v2/representations.rb +975 -0
  68. data/generated/google/apis/androidpublisher_v2/service.rb +2572 -0
  69. data/generated/google/apis/appengine_v1beta4.rb +35 -0
  70. data/generated/google/apis/appengine_v1beta4/classes.rb +1585 -0
  71. data/generated/google/apis/appengine_v1beta4/representations.rb +542 -0
  72. data/generated/google/apis/appengine_v1beta4/service.rb +477 -0
  73. data/generated/google/apis/appengine_v1beta5.rb +40 -0
  74. data/generated/google/apis/appengine_v1beta5/classes.rb +1984 -0
  75. data/generated/google/apis/appengine_v1beta5/representations.rb +765 -0
  76. data/generated/google/apis/appengine_v1beta5/service.rb +864 -0
  77. data/generated/google/apis/appsactivity_v1.rb +46 -0
  78. data/generated/google/apis/appsactivity_v1/classes.rb +415 -0
  79. data/generated/google/apis/appsactivity_v1/representations.rb +209 -0
  80. data/generated/google/apis/appsactivity_v1/service.rb +128 -0
  81. data/generated/google/apis/appstate_v1.rb +34 -0
  82. data/generated/google/apis/appstate_v1/classes.rb +154 -0
  83. data/generated/google/apis/appstate_v1/representations.rb +87 -0
  84. data/generated/google/apis/appstate_v1/service.rb +260 -0
  85. data/generated/google/apis/autoscaler_v1beta2.rb +38 -0
  86. data/generated/google/apis/autoscaler_v1beta2/classes.rb +710 -0
  87. data/generated/google/apis/autoscaler_v1beta2/representations.rb +296 -0
  88. data/generated/google/apis/autoscaler_v1beta2/service.rb +478 -0
  89. data/generated/google/apis/bigquery_v2.rb +52 -0
  90. data/generated/google/apis/bigquery_v2/classes.rb +3081 -0
  91. data/generated/google/apis/bigquery_v2/representations.rb +1094 -0
  92. data/generated/google/apis/bigquery_v2/service.rb +988 -0
  93. data/generated/google/apis/blogger_v3.rb +37 -0
  94. data/generated/google/apis/blogger_v3/classes.rb +1354 -0
  95. data/generated/google/apis/blogger_v3/representations.rb +632 -0
  96. data/generated/google/apis/blogger_v3/service.rb +1587 -0
  97. data/generated/google/apis/books_v1.rb +34 -0
  98. data/generated/google/apis/books_v1/classes.rb +4160 -0
  99. data/generated/google/apis/books_v1/representations.rb +1799 -0
  100. data/generated/google/apis/books_v1/service.rb +2300 -0
  101. data/generated/google/apis/calendar_v3.rb +37 -0
  102. data/generated/google/apis/calendar_v3/classes.rb +1742 -0
  103. data/generated/google/apis/calendar_v3/representations.rb +631 -0
  104. data/generated/google/apis/calendar_v3/service.rb +1968 -0
  105. data/generated/google/apis/civicinfo_v2.rb +32 -0
  106. data/generated/google/apis/civicinfo_v2/classes.rb +1499 -0
  107. data/generated/google/apis/civicinfo_v2/representations.rb +572 -0
  108. data/generated/google/apis/civicinfo_v2/service.rb +300 -0
  109. data/generated/google/apis/classroom_v1.rb +70 -0
  110. data/generated/google/apis/classroom_v1/classes.rb +1572 -0
  111. data/generated/google/apis/classroom_v1/representations.rb +729 -0
  112. data/generated/google/apis/classroom_v1/service.rb +1945 -0
  113. data/generated/google/apis/classroom_v1beta1.rb +49 -0
  114. data/generated/google/apis/classroom_v1beta1/classes.rb +447 -0
  115. data/generated/google/apis/classroom_v1beta1/representations.rb +190 -0
  116. data/generated/google/apis/classroom_v1beta1/service.rb +791 -0
  117. data/generated/google/apis/cloudbilling_v1.rb +35 -0
  118. data/generated/google/apis/cloudbilling_v1/classes.rb +169 -0
  119. data/generated/google/apis/cloudbilling_v1/representations.rb +87 -0
  120. data/generated/google/apis/cloudbilling_v1/service.rb +258 -0
  121. data/generated/google/apis/cloudbuild_v1.rb +34 -0
  122. data/generated/google/apis/cloudbuild_v1/classes.rb +919 -0
  123. data/generated/google/apis/cloudbuild_v1/representations.rb +364 -0
  124. data/generated/google/apis/cloudbuild_v1/service.rb +492 -0
  125. data/generated/google/apis/clouddebugger_v2.rb +38 -0
  126. data/generated/google/apis/clouddebugger_v2/classes.rb +1081 -0
  127. data/generated/google/apis/clouddebugger_v2/representations.rb +465 -0
  128. data/generated/google/apis/clouddebugger_v2/service.rb +396 -0
  129. data/generated/google/apis/cloudkms_v1beta1.rb +34 -0
  130. data/generated/google/apis/cloudkms_v1beta1/classes.rb +999 -0
  131. data/generated/google/apis/cloudkms_v1beta1/representations.rb +448 -0
  132. data/generated/google/apis/cloudkms_v1beta1/service.rb +932 -0
  133. data/generated/google/apis/cloudlatencytest_v2.rb +34 -0
  134. data/generated/google/apis/cloudlatencytest_v2/classes.rb +195 -0
  135. data/generated/google/apis/cloudlatencytest_v2/representations.rb +127 -0
  136. data/generated/google/apis/cloudlatencytest_v2/service.rb +135 -0
  137. data/generated/google/apis/cloudmonitoring_v2beta2.rb +37 -0
  138. data/generated/google/apis/cloudmonitoring_v2beta2/classes.rb +679 -0
  139. data/generated/google/apis/cloudmonitoring_v2beta2/representations.rb +353 -0
  140. data/generated/google/apis/cloudmonitoring_v2beta2/service.rb +452 -0
  141. data/generated/google/apis/cloudresourcemanager_v1.rb +38 -0
  142. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +886 -0
  143. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +359 -0
  144. data/generated/google/apis/cloudresourcemanager_v1/service.rb +686 -0
  145. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +38 -0
  146. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +682 -0
  147. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +312 -0
  148. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +710 -0
  149. data/generated/google/apis/cloudtrace_v1.rb +43 -0
  150. data/generated/google/apis/cloudtrace_v1/classes.rb +188 -0
  151. data/generated/google/apis/cloudtrace_v1/representations.rb +102 -0
  152. data/generated/google/apis/cloudtrace_v1/service.rb +192 -0
  153. data/generated/google/apis/clouduseraccounts_beta.rb +44 -0
  154. data/generated/google/apis/clouduseraccounts_beta/classes.rb +845 -0
  155. data/generated/google/apis/clouduseraccounts_beta/representations.rb +352 -0
  156. data/generated/google/apis/clouduseraccounts_beta/service.rb +907 -0
  157. data/generated/google/apis/compute_beta.rb +49 -0
  158. data/generated/google/apis/compute_beta/classes.rb +12261 -0
  159. data/generated/google/apis/compute_beta/representations.rb +4615 -0
  160. data/generated/google/apis/compute_beta/service.rb +15330 -0
  161. data/generated/google/apis/compute_v1.rb +49 -0
  162. data/generated/google/apis/compute_v1/classes.rb +11179 -0
  163. data/generated/google/apis/compute_v1/representations.rb +4203 -0
  164. data/generated/google/apis/compute_v1/service.rb +12937 -0
  165. data/generated/google/apis/container_v1.rb +35 -0
  166. data/generated/google/apis/container_v1/classes.rb +1040 -0
  167. data/generated/google/apis/container_v1/representations.rb +415 -0
  168. data/generated/google/apis/container_v1/service.rb +659 -0
  169. data/generated/google/apis/container_v1beta1.rb +35 -0
  170. data/generated/google/apis/container_v1beta1/classes.rb +466 -0
  171. data/generated/google/apis/container_v1beta1/representations.rb +177 -0
  172. data/generated/google/apis/container_v1beta1/service.rb +394 -0
  173. data/generated/google/apis/content_v2.rb +35 -0
  174. data/generated/google/apis/content_v2/classes.rb +6887 -0
  175. data/generated/google/apis/content_v2/representations.rb +2963 -0
  176. data/generated/google/apis/content_v2/service.rb +2653 -0
  177. data/generated/google/apis/coordinate_v1.rb +37 -0
  178. data/generated/google/apis/coordinate_v1/classes.rb +669 -0
  179. data/generated/google/apis/coordinate_v1/representations.rb +321 -0
  180. data/generated/google/apis/coordinate_v1/service.rb +678 -0
  181. data/generated/google/apis/customsearch_v1.rb +31 -0
  182. data/generated/google/apis/customsearch_v1/classes.rb +771 -0
  183. data/generated/google/apis/customsearch_v1/representations.rb +302 -0
  184. data/generated/google/apis/customsearch_v1/service.rb +207 -0
  185. data/generated/google/apis/dataflow_v1b3.rb +37 -0
  186. data/generated/google/apis/dataflow_v1b3/classes.rb +4225 -0
  187. data/generated/google/apis/dataflow_v1b3/representations.rb +1809 -0
  188. data/generated/google/apis/dataflow_v1b3/service.rb +874 -0
  189. data/generated/google/apis/dataproc_v1.rb +34 -0
  190. data/generated/google/apis/dataproc_v1/classes.rb +1716 -0
  191. data/generated/google/apis/dataproc_v1/representations.rb +678 -0
  192. data/generated/google/apis/dataproc_v1/service.rb +670 -0
  193. data/generated/google/apis/datastore_v1.rb +38 -0
  194. data/generated/google/apis/datastore_v1/classes.rb +1289 -0
  195. data/generated/google/apis/datastore_v1/representations.rb +572 -0
  196. data/generated/google/apis/datastore_v1/service.rb +259 -0
  197. data/generated/google/apis/datastore_v1beta2.rb +40 -0
  198. data/generated/google/apis/datastore_v1beta2/classes.rb +1186 -0
  199. data/generated/google/apis/datastore_v1beta2/representations.rb +594 -0
  200. data/generated/google/apis/datastore_v1beta2/service.rb +294 -0
  201. data/generated/google/apis/datastore_v1beta3.rb +38 -0
  202. data/generated/google/apis/datastore_v1beta3/classes.rb +1284 -0
  203. data/generated/google/apis/datastore_v1beta3/representations.rb +572 -0
  204. data/generated/google/apis/datastore_v1beta3/service.rb +259 -0
  205. data/generated/google/apis/deploymentmanager_v2.rb +43 -0
  206. data/generated/google/apis/deploymentmanager_v2/classes.rb +1582 -0
  207. data/generated/google/apis/deploymentmanager_v2/representations.rb +686 -0
  208. data/generated/google/apis/deploymentmanager_v2/service.rb +1026 -0
  209. data/generated/google/apis/deploymentmanager_v2beta2.rb +44 -0
  210. data/generated/google/apis/deploymentmanager_v2beta2/classes.rb +843 -0
  211. data/generated/google/apis/deploymentmanager_v2beta2/representations.rb +306 -0
  212. data/generated/google/apis/deploymentmanager_v2beta2/service.rb +689 -0
  213. data/generated/google/apis/dfareporting_v2_1.rb +37 -0
  214. data/generated/google/apis/dfareporting_v2_1/classes.rb +10770 -0
  215. data/generated/google/apis/dfareporting_v2_1/representations.rb +3438 -0
  216. data/generated/google/apis/dfareporting_v2_1/service.rb +8585 -0
  217. data/generated/google/apis/dfareporting_v2_3.rb +37 -0
  218. data/generated/google/apis/dfareporting_v2_3/classes.rb +10839 -0
  219. data/generated/google/apis/dfareporting_v2_3/representations.rb +3829 -0
  220. data/generated/google/apis/dfareporting_v2_3/service.rb +8581 -0
  221. data/generated/google/apis/dfareporting_v2_5.rb +40 -0
  222. data/generated/google/apis/dfareporting_v2_5/classes.rb +11225 -0
  223. data/generated/google/apis/dfareporting_v2_5/representations.rb +3982 -0
  224. data/generated/google/apis/dfareporting_v2_5/service.rb +8755 -0
  225. data/generated/google/apis/dfareporting_v2_6.rb +40 -0
  226. data/generated/google/apis/dfareporting_v2_6/classes.rb +11586 -0
  227. data/generated/google/apis/dfareporting_v2_6/representations.rb +4119 -0
  228. data/generated/google/apis/dfareporting_v2_6/service.rb +9025 -0
  229. data/generated/google/apis/dfareporting_v2_7.rb +40 -0
  230. data/generated/google/apis/dfareporting_v2_7/classes.rb +11876 -0
  231. data/generated/google/apis/dfareporting_v2_7/representations.rb +4243 -0
  232. data/generated/google/apis/dfareporting_v2_7/service.rb +9095 -0
  233. data/generated/google/apis/discovery_v1.rb +32 -0
  234. data/generated/google/apis/discovery_v1/classes.rb +961 -0
  235. data/generated/google/apis/discovery_v1/representations.rb +397 -0
  236. data/generated/google/apis/discovery_v1/service.rb +142 -0
  237. data/generated/google/apis/dns_v1.rb +43 -0
  238. data/generated/google/apis/dns_v1/classes.rb +406 -0
  239. data/generated/google/apis/dns_v1/representations.rb +167 -0
  240. data/generated/google/apis/dns_v1/service.rb +453 -0
  241. data/generated/google/apis/dns_v2beta1.rb +43 -0
  242. data/generated/google/apis/dns_v2beta1/classes.rb +915 -0
  243. data/generated/google/apis/dns_v2beta1/representations.rb +368 -0
  244. data/generated/google/apis/dns_v2beta1/service.rb +768 -0
  245. data/generated/google/apis/doubleclickbidmanager_v1.rb +31 -0
  246. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +795 -0
  247. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +368 -0
  248. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +376 -0
  249. data/generated/google/apis/doubleclicksearch_v2.rb +35 -0
  250. data/generated/google/apis/doubleclicksearch_v2/classes.rb +960 -0
  251. data/generated/google/apis/doubleclicksearch_v2/representations.rb +350 -0
  252. data/generated/google/apis/doubleclicksearch_v2/service.rb +480 -0
  253. data/generated/google/apis/drive_v2.rb +59 -0
  254. data/generated/google/apis/drive_v2/classes.rb +2633 -0
  255. data/generated/google/apis/drive_v2/representations.rb +885 -0
  256. data/generated/google/apis/drive_v2/service.rb +2754 -0
  257. data/generated/google/apis/drive_v3.rb +56 -0
  258. data/generated/google/apis/drive_v3/classes.rb +1611 -0
  259. data/generated/google/apis/drive_v3/representations.rb +555 -0
  260. data/generated/google/apis/drive_v3/service.rb +1553 -0
  261. data/generated/google/apis/fitness_v1.rb +85 -0
  262. data/generated/google/apis/fitness_v1/classes.rb +943 -0
  263. data/generated/google/apis/fitness_v1/representations.rb +380 -0
  264. data/generated/google/apis/fitness_v1/service.rb +674 -0
  265. data/generated/google/apis/fusiontables_v2.rb +37 -0
  266. data/generated/google/apis/fusiontables_v2/classes.rb +1049 -0
  267. data/generated/google/apis/fusiontables_v2/representations.rb +457 -0
  268. data/generated/google/apis/fusiontables_v2/service.rb +1463 -0
  269. data/generated/google/apis/games_configuration_v1configuration.rb +34 -0
  270. data/generated/google/apis/games_configuration_v1configuration/classes.rb +506 -0
  271. data/generated/google/apis/games_configuration_v1configuration/representations.rb +228 -0
  272. data/generated/google/apis/games_configuration_v1configuration/service.rb +565 -0
  273. data/generated/google/apis/games_management_v1management.rb +37 -0
  274. data/generated/google/apis/games_management_v1management/classes.rb +567 -0
  275. data/generated/google/apis/games_management_v1management/representations.rb +278 -0
  276. data/generated/google/apis/games_management_v1management/service.rb +994 -0
  277. data/generated/google/apis/games_v1.rb +40 -0
  278. data/generated/google/apis/games_v1/classes.rb +4667 -0
  279. data/generated/google/apis/games_v1/representations.rb +1800 -0
  280. data/generated/google/apis/games_v1/service.rb +2449 -0
  281. data/generated/google/apis/gan_v1beta1.rb +31 -0
  282. data/generated/google/apis/gan_v1beta1/classes.rb +1428 -0
  283. data/generated/google/apis/gan_v1beta1/representations.rb +462 -0
  284. data/generated/google/apis/gan_v1beta1/service.rb +682 -0
  285. data/generated/google/apis/genomics_v1.rb +46 -0
  286. data/generated/google/apis/genomics_v1/classes.rb +3477 -0
  287. data/generated/google/apis/genomics_v1/representations.rb +1284 -0
  288. data/generated/google/apis/genomics_v1/service.rb +2207 -0
  289. data/generated/google/apis/genomics_v1beta2.rb +46 -0
  290. data/generated/google/apis/genomics_v1beta2/classes.rb +3288 -0
  291. data/generated/google/apis/genomics_v1beta2/representations.rb +1194 -0
  292. data/generated/google/apis/genomics_v1beta2/service.rb +2392 -0
  293. data/generated/google/apis/gmail_v1.rb +61 -0
  294. data/generated/google/apis/gmail_v1/classes.rb +1382 -0
  295. data/generated/google/apis/gmail_v1/representations.rb +624 -0
  296. data/generated/google/apis/gmail_v1/service.rb +2447 -0
  297. data/generated/google/apis/groupsmigration_v1.rb +34 -0
  298. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  299. data/generated/google/apis/groupsmigration_v1/representations.rb +40 -0
  300. data/generated/google/apis/groupsmigration_v1/service.rb +110 -0
  301. data/generated/google/apis/groupssettings_v1.rb +34 -0
  302. data/generated/google/apis/groupssettings_v1/classes.rb +240 -0
  303. data/generated/google/apis/groupssettings_v1/representations.rb +69 -0
  304. data/generated/google/apis/groupssettings_v1/service.rb +179 -0
  305. data/generated/google/apis/iam_v1.rb +36 -0
  306. data/generated/google/apis/iam_v1/classes.rb +640 -0
  307. data/generated/google/apis/iam_v1/representations.rb +316 -0
  308. data/generated/google/apis/iam_v1/service.rb +554 -0
  309. data/generated/google/apis/identitytoolkit_v3.rb +37 -0
  310. data/generated/google/apis/identitytoolkit_v3/classes.rb +2182 -0
  311. data/generated/google/apis/identitytoolkit_v3/representations.rb +742 -0
  312. data/generated/google/apis/identitytoolkit_v3/service.rb +657 -0
  313. data/generated/google/apis/kgsearch_v1.rb +31 -0
  314. data/generated/google/apis/kgsearch_v1/classes.rb +59 -0
  315. data/generated/google/apis/kgsearch_v1/representations.rb +41 -0
  316. data/generated/google/apis/kgsearch_v1/service.rb +113 -0
  317. data/generated/google/apis/language_v1beta1.rb +36 -0
  318. data/generated/google/apis/language_v1beta1/classes.rb +757 -0
  319. data/generated/google/apis/language_v1beta1/representations.rb +339 -0
  320. data/generated/google/apis/language_v1beta1/service.rb +184 -0
  321. data/generated/google/apis/licensing_v1.rb +34 -0
  322. data/generated/google/apis/licensing_v1/classes.rb +132 -0
  323. data/generated/google/apis/licensing_v1/representations.rb +74 -0
  324. data/generated/google/apis/licensing_v1/service.rb +369 -0
  325. data/generated/google/apis/logging_v1beta3.rb +47 -0
  326. data/generated/google/apis/logging_v1beta3/classes.rb +1079 -0
  327. data/generated/google/apis/logging_v1beta3/representations.rb +366 -0
  328. data/generated/google/apis/logging_v1beta3/service.rb +1001 -0
  329. data/generated/google/apis/logging_v2beta1.rb +46 -0
  330. data/generated/google/apis/logging_v2beta1/classes.rb +1254 -0
  331. data/generated/google/apis/logging_v2beta1/representations.rb +421 -0
  332. data/generated/google/apis/logging_v2beta1/service.rb +788 -0
  333. data/generated/google/apis/manager_v1beta2.rb +53 -0
  334. data/generated/google/apis/manager_v1beta2/classes.rb +1287 -0
  335. data/generated/google/apis/manager_v1beta2/representations.rb +606 -0
  336. data/generated/google/apis/manager_v1beta2/service.rb +372 -0
  337. data/generated/google/apis/manufacturers_v1.rb +34 -0
  338. data/generated/google/apis/manufacturers_v1/classes.rb +258 -0
  339. data/generated/google/apis/manufacturers_v1/representations.rb +103 -0
  340. data/generated/google/apis/manufacturers_v1/service.rb +138 -0
  341. data/generated/google/apis/mirror_v1.rb +37 -0
  342. data/generated/google/apis/mirror_v1/classes.rb +1072 -0
  343. data/generated/google/apis/mirror_v1/representations.rb +390 -0
  344. data/generated/google/apis/mirror_v1/service.rb +977 -0
  345. data/generated/google/apis/monitoring_v3.rb +45 -0
  346. data/generated/google/apis/monitoring_v3/classes.rb +1335 -0
  347. data/generated/google/apis/monitoring_v3/representations.rb +516 -0
  348. data/generated/google/apis/monitoring_v3/service.rb +706 -0
  349. data/generated/google/apis/mybusiness_v3.rb +32 -0
  350. data/generated/google/apis/mybusiness_v3/classes.rb +1864 -0
  351. data/generated/google/apis/mybusiness_v3/representations.rb +741 -0
  352. data/generated/google/apis/mybusiness_v3/service.rb +960 -0
  353. data/generated/google/apis/oauth2_v2.rb +43 -0
  354. data/generated/google/apis/oauth2_v2/classes.rb +245 -0
  355. data/generated/google/apis/oauth2_v2/representations.rb +102 -0
  356. data/generated/google/apis/oauth2_v2/service.rb +199 -0
  357. data/generated/google/apis/pagespeedonline_v2.rb +32 -0
  358. data/generated/google/apis/pagespeedonline_v2/classes.rb +614 -0
  359. data/generated/google/apis/pagespeedonline_v2/representations.rb +272 -0
  360. data/generated/google/apis/pagespeedonline_v2/service.rb +119 -0
  361. data/generated/google/apis/partners_v2.rb +32 -0
  362. data/generated/google/apis/partners_v2/classes.rb +942 -0
  363. data/generated/google/apis/partners_v2/representations.rb +454 -0
  364. data/generated/google/apis/partners_v2/service.rb +400 -0
  365. data/generated/google/apis/people_v1.rb +59 -0
  366. data/generated/google/apis/people_v1/classes.rb +1521 -0
  367. data/generated/google/apis/people_v1/representations.rb +663 -0
  368. data/generated/google/apis/people_v1/service.rb +189 -0
  369. data/generated/google/apis/plus_domains_v1.rb +61 -0
  370. data/generated/google/apis/plus_domains_v1/classes.rb +2609 -0
  371. data/generated/google/apis/plus_domains_v1/representations.rb +1111 -0
  372. data/generated/google/apis/plus_domains_v1/service.rb +904 -0
  373. data/generated/google/apis/plus_v1.rb +43 -0
  374. data/generated/google/apis/plus_v1/classes.rb +2094 -0
  375. data/generated/google/apis/plus_v1/representations.rb +907 -0
  376. data/generated/google/apis/plus_v1/service.rb +470 -0
  377. data/generated/google/apis/prediction_v1_6.rb +47 -0
  378. data/generated/google/apis/prediction_v1_6/classes.rb +751 -0
  379. data/generated/google/apis/prediction_v1_6/representations.rb +369 -0
  380. data/generated/google/apis/prediction_v1_6/service.rb +380 -0
  381. data/generated/google/apis/proximitybeacon_v1beta1.rb +34 -0
  382. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +786 -0
  383. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +347 -0
  384. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +806 -0
  385. data/generated/google/apis/pubsub_v1.rb +37 -0
  386. data/generated/google/apis/pubsub_v1/classes.rb +676 -0
  387. data/generated/google/apis/pubsub_v1/representations.rb +323 -0
  388. data/generated/google/apis/pubsub_v1/service.rb +900 -0
  389. data/generated/google/apis/pubsub_v1beta2.rb +37 -0
  390. data/generated/google/apis/pubsub_v1beta2/classes.rb +620 -0
  391. data/generated/google/apis/pubsub_v1beta2/representations.rb +282 -0
  392. data/generated/google/apis/pubsub_v1beta2/service.rb +774 -0
  393. data/generated/google/apis/qpx_express_v1.rb +31 -0
  394. data/generated/google/apis/qpx_express_v1/classes.rb +1274 -0
  395. data/generated/google/apis/qpx_express_v1/representations.rb +473 -0
  396. data/generated/google/apis/qpx_express_v1/service.rb +100 -0
  397. data/generated/google/apis/replicapool_v1beta2.rb +44 -0
  398. data/generated/google/apis/replicapool_v1beta2/classes.rb +631 -0
  399. data/generated/google/apis/replicapool_v1beta2/representations.rb +264 -0
  400. data/generated/google/apis/replicapool_v1beta2/service.rb +608 -0
  401. data/generated/google/apis/replicapoolupdater_v1beta1.rb +45 -0
  402. data/generated/google/apis/replicapoolupdater_v1beta1/classes.rb +733 -0
  403. data/generated/google/apis/replicapoolupdater_v1beta1/representations.rb +294 -0
  404. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +509 -0
  405. data/generated/google/apis/reseller_v1.rb +37 -0
  406. data/generated/google/apis/reseller_v1/classes.rb +540 -0
  407. data/generated/google/apis/reseller_v1/representations.rb +225 -0
  408. data/generated/google/apis/reseller_v1/service.rb +623 -0
  409. data/generated/google/apis/resourceviews_v1beta2.rb +50 -0
  410. data/generated/google/apis/resourceviews_v1beta2/classes.rb +660 -0
  411. data/generated/google/apis/resourceviews_v1beta2/representations.rb +301 -0
  412. data/generated/google/apis/resourceviews_v1beta2/service.rb +563 -0
  413. data/generated/google/apis/script_v1.rb +64 -0
  414. data/generated/google/apis/script_v1/classes.rb +265 -0
  415. data/generated/google/apis/script_v1/representations.rb +119 -0
  416. data/generated/google/apis/script_v1/service.rb +98 -0
  417. data/generated/google/apis/sheets_v4.rb +43 -0
  418. data/generated/google/apis/sheets_v4/classes.rb +6368 -0
  419. data/generated/google/apis/sheets_v4/representations.rb +2289 -0
  420. data/generated/google/apis/sheets_v4/service.rb +569 -0
  421. data/generated/google/apis/site_verification_v1.rb +37 -0
  422. data/generated/google/apis/site_verification_v1/classes.rb +185 -0
  423. data/generated/google/apis/site_verification_v1/representations.rb +113 -0
  424. data/generated/google/apis/site_verification_v1/service.rb +315 -0
  425. data/generated/google/apis/slides_v1.rb +49 -0
  426. data/generated/google/apis/slides_v1/classes.rb +4044 -0
  427. data/generated/google/apis/slides_v1/representations.rb +1765 -0
  428. data/generated/google/apis/slides_v1/service.rb +202 -0
  429. data/generated/google/apis/speech_v1beta1.rb +34 -0
  430. data/generated/google/apis/speech_v1beta1/classes.rb +513 -0
  431. data/generated/google/apis/speech_v1beta1/representations.rb +218 -0
  432. data/generated/google/apis/speech_v1beta1/service.rb +273 -0
  433. data/generated/google/apis/sqladmin_v1beta4.rb +38 -0
  434. data/generated/google/apis/sqladmin_v1beta4/classes.rb +2142 -0
  435. data/generated/google/apis/sqladmin_v1beta4/representations.rb +893 -0
  436. data/generated/google/apis/sqladmin_v1beta4/service.rb +1709 -0
  437. data/generated/google/apis/storage_v1.rb +46 -0
  438. data/generated/google/apis/storage_v1/classes.rb +1255 -0
  439. data/generated/google/apis/storage_v1/representations.rb +502 -0
  440. data/generated/google/apis/storage_v1/service.rb +1906 -0
  441. data/generated/google/apis/storagetransfer_v1.rb +35 -0
  442. data/generated/google/apis/storagetransfer_v1/classes.rb +1046 -0
  443. data/generated/google/apis/storagetransfer_v1/representations.rb +418 -0
  444. data/generated/google/apis/storagetransfer_v1/service.rb +473 -0
  445. data/generated/google/apis/tagmanager_v1.rb +52 -0
  446. data/generated/google/apis/tagmanager_v1/classes.rb +1494 -0
  447. data/generated/google/apis/tagmanager_v1/representations.rb +611 -0
  448. data/generated/google/apis/tagmanager_v1/service.rb +2119 -0
  449. data/generated/google/apis/taskqueue_v1beta2.rb +37 -0
  450. data/generated/google/apis/taskqueue_v1beta2/classes.rb +254 -0
  451. data/generated/google/apis/taskqueue_v1beta2/representations.rb +126 -0
  452. data/generated/google/apis/taskqueue_v1beta2/service.rb +408 -0
  453. data/generated/google/apis/tasks_v1.rb +37 -0
  454. data/generated/google/apis/tasks_v1/classes.rb +296 -0
  455. data/generated/google/apis/tasks_v1/representations.rb +125 -0
  456. data/generated/google/apis/tasks_v1/service.rb +643 -0
  457. data/generated/google/apis/translate_v2.rb +31 -0
  458. data/generated/google/apis/translate_v2/classes.rb +168 -0
  459. data/generated/google/apis/translate_v2/representations.rb +121 -0
  460. data/generated/google/apis/translate_v2/service.rb +182 -0
  461. data/generated/google/apis/urlshortener_v1.rb +34 -0
  462. data/generated/google/apis/urlshortener_v1/classes.rb +246 -0
  463. data/generated/google/apis/urlshortener_v1/representations.rb +121 -0
  464. data/generated/google/apis/urlshortener_v1/service.rb +176 -0
  465. data/generated/google/apis/vision_v1.rb +36 -0
  466. data/generated/google/apis/vision_v1/classes.rb +1267 -0
  467. data/generated/google/apis/vision_v1/representations.rb +418 -0
  468. data/generated/google/apis/vision_v1/service.rb +90 -0
  469. data/generated/google/apis/webmasters_v3.rb +37 -0
  470. data/generated/google/apis/webmasters_v3/classes.rb +570 -0
  471. data/generated/google/apis/webmasters_v3/representations.rb +283 -0
  472. data/generated/google/apis/webmasters_v3/service.rb +573 -0
  473. data/generated/google/apis/youtube_analytics_v1.rb +46 -0
  474. data/generated/google/apis/youtube_analytics_v1/classes.rb +337 -0
  475. data/generated/google/apis/youtube_analytics_v1/representations.rb +174 -0
  476. data/generated/google/apis/youtube_analytics_v1/service.rb +486 -0
  477. data/generated/google/apis/youtube_partner_v1.rb +37 -0
  478. data/generated/google/apis/youtube_partner_v1/classes.rb +3854 -0
  479. data/generated/google/apis/youtube_partner_v1/representations.rb +1537 -0
  480. data/generated/google/apis/youtube_partner_v1/service.rb +3269 -0
  481. data/generated/google/apis/youtube_v3.rb +50 -0
  482. data/generated/google/apis/youtube_v3/classes.rb +8375 -0
  483. data/generated/google/apis/youtube_v3/representations.rb +3273 -0
  484. data/generated/google/apis/youtube_v3/service.rb +4440 -0
  485. data/generated/google/apis/youtubereporting_v1.rb +38 -0
  486. data/generated/google/apis/youtubereporting_v1/classes.rb +302 -0
  487. data/generated/google/apis/youtubereporting_v1/representations.rb +149 -0
  488. data/generated/google/apis/youtubereporting_v1/service.rb +385 -0
  489. data/google-api-client.gemspec +33 -0
  490. data/lib/cacerts.pem +2183 -0
  491. data/lib/google/api_client/auth/installed_app.rb +128 -0
  492. data/lib/google/api_client/auth/key_utils.rb +94 -0
  493. data/lib/google/api_client/auth/storage.rb +104 -0
  494. data/lib/google/api_client/auth/storages/file_store.rb +57 -0
  495. data/lib/google/api_client/auth/storages/redis_store.rb +59 -0
  496. data/lib/google/api_client/client_secrets.rb +177 -0
  497. data/lib/google/apis.rb +58 -0
  498. data/lib/google/apis/core/api_command.rb +146 -0
  499. data/lib/google/apis/core/base_service.rb +401 -0
  500. data/lib/google/apis/core/batch.rb +239 -0
  501. data/lib/google/apis/core/download.rb +108 -0
  502. data/lib/google/apis/core/hashable.rb +44 -0
  503. data/lib/google/apis/core/http_client_adapter.rb +82 -0
  504. data/lib/google/apis/core/http_command.rb +332 -0
  505. data/lib/google/apis/core/json_representation.rb +145 -0
  506. data/lib/google/apis/core/logging.rb +30 -0
  507. data/lib/google/apis/core/multipart.rb +187 -0
  508. data/lib/google/apis/core/upload.rb +295 -0
  509. data/lib/google/apis/errors.rb +80 -0
  510. data/lib/google/apis/generator.rb +70 -0
  511. data/lib/google/apis/generator/annotator.rb +301 -0
  512. data/lib/google/apis/generator/helpers.rb +74 -0
  513. data/lib/google/apis/generator/model.rb +143 -0
  514. data/lib/google/apis/generator/template.rb +124 -0
  515. data/lib/google/apis/generator/templates/_class.tmpl +40 -0
  516. data/lib/google/apis/generator/templates/_method.tmpl +92 -0
  517. data/lib/google/apis/generator/templates/_representation.tmpl +51 -0
  518. data/lib/google/apis/generator/templates/_representation_stub.tmpl +17 -0
  519. data/lib/google/apis/generator/templates/_representation_type.tmpl +10 -0
  520. data/lib/google/apis/generator/templates/classes.rb.tmpl +29 -0
  521. data/lib/google/apis/generator/templates/module.rb.tmpl +40 -0
  522. data/lib/google/apis/generator/templates/representations.rb.tmpl +32 -0
  523. data/lib/google/apis/generator/templates/service.rb.tmpl +60 -0
  524. data/lib/google/apis/options.rb +85 -0
  525. data/lib/google/apis/version.rb +39 -0
  526. data/rakelib/metrics.rake +22 -0
  527. data/rakelib/rubocop.rake +10 -0
  528. data/rakelib/spec.rake +11 -0
  529. data/rakelib/yard.rake +11 -0
  530. data/samples/cli/.env +4 -0
  531. data/samples/cli/Gemfile +7 -0
  532. data/samples/cli/README.md +51 -0
  533. data/samples/cli/google-api-samples +32 -0
  534. data/samples/cli/lib/base_cli.rb +95 -0
  535. data/samples/cli/lib/samples/analytics.rb +62 -0
  536. data/samples/cli/lib/samples/androidpublisher.rb +47 -0
  537. data/samples/cli/lib/samples/bigquery.rb +101 -0
  538. data/samples/cli/lib/samples/calendar.rb +83 -0
  539. data/samples/cli/lib/samples/drive.rb +82 -0
  540. data/samples/cli/lib/samples/gmail.rb +124 -0
  541. data/samples/cli/lib/samples/pubsub.rb +114 -0
  542. data/samples/cli/lib/samples/sheets.rb +61 -0
  543. data/samples/cli/lib/samples/translate.rb +44 -0
  544. data/samples/cli/lib/samples/you_tube.rb +44 -0
  545. data/samples/web/.env +2 -0
  546. data/samples/web/Gemfile +7 -0
  547. data/samples/web/README.md +44 -0
  548. data/samples/web/app.rb +120 -0
  549. data/samples/web/views/calendar.erb +34 -0
  550. data/samples/web/views/drive.erb +33 -0
  551. data/samples/web/views/home.erb +34 -0
  552. data/samples/web/views/layout.erb +40 -0
  553. data/sync.rb +71 -0
  554. data/third_party/hurley_patches.rb +103 -0
  555. metadata +735 -0
@@ -0,0 +1,69 @@
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 GroupssettingsV1
24
+
25
+ class Groups
26
+ class Representation < Google::Apis::Core::JsonRepresentation; end
27
+
28
+ include Google::Apis::Core::JsonObjectSupport
29
+ end
30
+
31
+ class Groups
32
+ # @private
33
+ class Representation < Google::Apis::Core::JsonRepresentation
34
+ property :allow_external_members, as: 'allowExternalMembers'
35
+ property :allow_google_communication, as: 'allowGoogleCommunication'
36
+ property :allow_web_posting, as: 'allowWebPosting'
37
+ property :archive_only, as: 'archiveOnly'
38
+ property :custom_footer_text, as: 'customFooterText'
39
+ property :custom_reply_to, as: 'customReplyTo'
40
+ property :default_message_deny_notification_text, as: 'defaultMessageDenyNotificationText'
41
+ property :description, as: 'description'
42
+ property :email, as: 'email'
43
+ property :include_custom_footer, as: 'includeCustomFooter'
44
+ property :include_in_global_address_list, as: 'includeInGlobalAddressList'
45
+ property :is_archived, as: 'isArchived'
46
+ property :kind, as: 'kind'
47
+ property :max_message_bytes, as: 'maxMessageBytes'
48
+ property :members_can_post_as_the_group, as: 'membersCanPostAsTheGroup'
49
+ property :message_display_font, as: 'messageDisplayFont'
50
+ property :message_moderation_level, as: 'messageModerationLevel'
51
+ property :name, as: 'name'
52
+ property :primary_language, as: 'primaryLanguage'
53
+ property :reply_to, as: 'replyTo'
54
+ property :send_message_deny_notification, as: 'sendMessageDenyNotification'
55
+ property :show_in_group_directory, as: 'showInGroupDirectory'
56
+ property :spam_moderation_level, as: 'spamModerationLevel'
57
+ property :who_can_add, as: 'whoCanAdd'
58
+ property :who_can_contact_owner, as: 'whoCanContactOwner'
59
+ property :who_can_invite, as: 'whoCanInvite'
60
+ property :who_can_join, as: 'whoCanJoin'
61
+ property :who_can_leave_group, as: 'whoCanLeaveGroup'
62
+ property :who_can_post_message, as: 'whoCanPostMessage'
63
+ property :who_can_view_group, as: 'whoCanViewGroup'
64
+ property :who_can_view_membership, as: 'whoCanViewMembership'
65
+ end
66
+ end
67
+ end
68
+ end
69
+ end
@@ -0,0 +1,179 @@
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/core/base_service'
16
+ require 'google/apis/core/json_representation'
17
+ require 'google/apis/core/hashable'
18
+ require 'google/apis/errors'
19
+
20
+ module Google
21
+ module Apis
22
+ module GroupssettingsV1
23
+ # Groups Settings API
24
+ #
25
+ # Lets you manage permission levels and related settings of a group.
26
+ #
27
+ # @example
28
+ # require 'google/apis/groupssettings_v1'
29
+ #
30
+ # Groupssettings = Google::Apis::GroupssettingsV1 # Alias the module
31
+ # service = Groupssettings::GroupssettingsService.new
32
+ #
33
+ # @see https://developers.google.com/google-apps/groups-settings/get_started
34
+ class GroupssettingsService < Google::Apis::Core::BaseService
35
+ # @return [String]
36
+ # API key. Your API key identifies your project and provides you with API access,
37
+ # quota, and reports. Required unless you provide an OAuth 2.0 token.
38
+ attr_accessor :key
39
+
40
+ # @return [String]
41
+ # Available to use for quota purposes for server-side applications. Can be any
42
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
43
+ # Overrides userIp if both are provided.
44
+ attr_accessor :quota_user
45
+
46
+ # @return [String]
47
+ # IP address of the site where the request originates. Use this if you want to
48
+ # enforce per-user limits.
49
+ attr_accessor :user_ip
50
+
51
+ def initialize
52
+ super('https://www.googleapis.com/', 'groups/v1/groups/')
53
+ end
54
+
55
+ # Gets one resource by id.
56
+ # @param [String] group_unique_id
57
+ # The resource ID
58
+ # @param [String] fields
59
+ # Selector specifying which fields to include in a partial response.
60
+ # @param [String] quota_user
61
+ # Available to use for quota purposes for server-side applications. Can be any
62
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
63
+ # Overrides userIp if both are provided.
64
+ # @param [String] user_ip
65
+ # IP address of the site where the request originates. Use this if you want to
66
+ # enforce per-user limits.
67
+ # @param [Google::Apis::RequestOptions] options
68
+ # Request-specific options
69
+ #
70
+ # @yield [result, err] Result & error if block supplied
71
+ # @yieldparam result [Google::Apis::GroupssettingsV1::Groups] parsed result object
72
+ # @yieldparam err [StandardError] error object if request failed
73
+ #
74
+ # @return [Google::Apis::GroupssettingsV1::Groups]
75
+ #
76
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
77
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
78
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
79
+ def get_group(group_unique_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
80
+ command = make_simple_command(:get, '{groupUniqueId}', options)
81
+ command.query['alt'] = 'json'
82
+ command.response_representation = Google::Apis::GroupssettingsV1::Groups::Representation
83
+ command.response_class = Google::Apis::GroupssettingsV1::Groups
84
+ command.params['groupUniqueId'] = group_unique_id unless group_unique_id.nil?
85
+ command.query['fields'] = fields unless fields.nil?
86
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
87
+ command.query['userIp'] = user_ip unless user_ip.nil?
88
+ execute_or_queue_command(command, &block)
89
+ end
90
+
91
+ # Updates an existing resource. This method supports patch semantics.
92
+ # @param [String] group_unique_id
93
+ # The resource ID
94
+ # @param [Google::Apis::GroupssettingsV1::Groups] groups_object
95
+ # @param [String] fields
96
+ # Selector specifying which fields to include in a partial response.
97
+ # @param [String] quota_user
98
+ # Available to use for quota purposes for server-side applications. Can be any
99
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
100
+ # Overrides userIp if both are provided.
101
+ # @param [String] user_ip
102
+ # IP address of the site where the request originates. Use this if you want to
103
+ # enforce per-user limits.
104
+ # @param [Google::Apis::RequestOptions] options
105
+ # Request-specific options
106
+ #
107
+ # @yield [result, err] Result & error if block supplied
108
+ # @yieldparam result [Google::Apis::GroupssettingsV1::Groups] parsed result object
109
+ # @yieldparam err [StandardError] error object if request failed
110
+ #
111
+ # @return [Google::Apis::GroupssettingsV1::Groups]
112
+ #
113
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
114
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
115
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
116
+ def patch_group(group_unique_id, groups_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
117
+ command = make_simple_command(:patch, '{groupUniqueId}', options)
118
+ command.request_representation = Google::Apis::GroupssettingsV1::Groups::Representation
119
+ command.request_object = groups_object
120
+ command.query['alt'] = 'json'
121
+ command.response_representation = Google::Apis::GroupssettingsV1::Groups::Representation
122
+ command.response_class = Google::Apis::GroupssettingsV1::Groups
123
+ command.params['groupUniqueId'] = group_unique_id unless group_unique_id.nil?
124
+ command.query['fields'] = fields unless fields.nil?
125
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
126
+ command.query['userIp'] = user_ip unless user_ip.nil?
127
+ execute_or_queue_command(command, &block)
128
+ end
129
+
130
+ # Updates an existing resource.
131
+ # @param [String] group_unique_id
132
+ # The resource ID
133
+ # @param [Google::Apis::GroupssettingsV1::Groups] groups_object
134
+ # @param [String] fields
135
+ # Selector specifying which fields to include in a partial response.
136
+ # @param [String] quota_user
137
+ # Available to use for quota purposes for server-side applications. Can be any
138
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
139
+ # Overrides userIp if both are provided.
140
+ # @param [String] user_ip
141
+ # IP address of the site where the request originates. Use this if you want to
142
+ # enforce per-user limits.
143
+ # @param [Google::Apis::RequestOptions] options
144
+ # Request-specific options
145
+ #
146
+ # @yield [result, err] Result & error if block supplied
147
+ # @yieldparam result [Google::Apis::GroupssettingsV1::Groups] parsed result object
148
+ # @yieldparam err [StandardError] error object if request failed
149
+ #
150
+ # @return [Google::Apis::GroupssettingsV1::Groups]
151
+ #
152
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
153
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
154
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
155
+ def update_group(group_unique_id, groups_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
156
+ command = make_simple_command(:put, '{groupUniqueId}', options)
157
+ command.request_representation = Google::Apis::GroupssettingsV1::Groups::Representation
158
+ command.request_object = groups_object
159
+ command.query['alt'] = 'json'
160
+ command.response_representation = Google::Apis::GroupssettingsV1::Groups::Representation
161
+ command.response_class = Google::Apis::GroupssettingsV1::Groups
162
+ command.params['groupUniqueId'] = group_unique_id unless group_unique_id.nil?
163
+ command.query['fields'] = fields unless fields.nil?
164
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
165
+ command.query['userIp'] = user_ip unless user_ip.nil?
166
+ execute_or_queue_command(command, &block)
167
+ end
168
+
169
+ protected
170
+
171
+ def apply_command_defaults(command)
172
+ command.query['key'] = key unless key.nil?
173
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
174
+ command.query['userIp'] = user_ip unless user_ip.nil?
175
+ end
176
+ end
177
+ end
178
+ end
179
+ end
@@ -0,0 +1,36 @@
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/iam_v1/service.rb'
16
+ require 'google/apis/iam_v1/classes.rb'
17
+ require 'google/apis/iam_v1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Google Identity and Access Management (IAM) API
22
+ #
23
+ # Manages identity and access control for Google Cloud Platform resources,
24
+ # including the creation of service accounts, which you can use to authenticate
25
+ # to Google and make API calls.
26
+ #
27
+ # @see https://cloud.google.com/iam/
28
+ module IamV1
29
+ VERSION = 'V1'
30
+ REVISION = '20160915'
31
+
32
+ # View and manage your data across Google Cloud Platform services
33
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,640 @@
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 IamV1
24
+
25
+ # The service account list response.
26
+ class ListServiceAccountsResponse
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # The list of matching service accounts.
30
+ # Corresponds to the JSON property `accounts`
31
+ # @return [Array<Google::Apis::IamV1::ServiceAccount>]
32
+ attr_accessor :accounts
33
+
34
+ # To retrieve the next page of results, set ListServiceAccountsRequest.
35
+ # page_token to this value.
36
+ # Corresponds to the JSON property `nextPageToken`
37
+ # @return [String]
38
+ attr_accessor :next_page_token
39
+
40
+ def initialize(**args)
41
+ update!(**args)
42
+ end
43
+
44
+ # Update properties of this object
45
+ def update!(**args)
46
+ @accounts = args[:accounts] if args.key?(:accounts)
47
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
48
+ end
49
+ end
50
+
51
+ # A service account in the Identity and Access Management API. To create a
52
+ # service account, specify the `project_id` and the `account_id` for the account.
53
+ # The `account_id` is unique within the project, and is used to generate the
54
+ # service account email address and a stable `unique_id`. If the account already
55
+ # exists, the account's resource name is returned in util::Status's ResourceInfo.
56
+ # resource_name in the format of projects/`project`/serviceAccounts/`email`. The
57
+ # caller can use the name in other methods to access the account. All other
58
+ # methods can identify the service account using the format `projects/`project`/
59
+ # serviceAccounts/`account``. Using `-` as a wildcard for the project will infer
60
+ # the project from the account. The `account` value can be the `email` address
61
+ # or the `unique_id` of the service account.
62
+ class ServiceAccount
63
+ include Google::Apis::Core::Hashable
64
+
65
+ # The resource name of the service account in the following format: `projects/`
66
+ # project`/serviceAccounts/`account``. Requests using `-` as a wildcard for the
67
+ # project will infer the project from the `account` and the `account` value can
68
+ # be the `email` address or the `unique_id` of the service account. In responses
69
+ # the resource name will always be in the format `projects/`project`/
70
+ # serviceAccounts/`email``.
71
+ # Corresponds to the JSON property `name`
72
+ # @return [String]
73
+ attr_accessor :name
74
+
75
+ # @OutputOnly The id of the project that owns the service account.
76
+ # Corresponds to the JSON property `projectId`
77
+ # @return [String]
78
+ attr_accessor :project_id
79
+
80
+ # @OutputOnly The unique and stable id of the service account.
81
+ # Corresponds to the JSON property `uniqueId`
82
+ # @return [String]
83
+ attr_accessor :unique_id
84
+
85
+ # @OutputOnly The email address of the service account.
86
+ # Corresponds to the JSON property `email`
87
+ # @return [String]
88
+ attr_accessor :email
89
+
90
+ # Optional. A user-specified description of the service account. Must be fewer
91
+ # than 100 UTF-8 bytes.
92
+ # Corresponds to the JSON property `displayName`
93
+ # @return [String]
94
+ attr_accessor :display_name
95
+
96
+ # Used to perform a consistent read-modify-write.
97
+ # Corresponds to the JSON property `etag`
98
+ # @return [String]
99
+ attr_accessor :etag
100
+
101
+ # @OutputOnly. The OAuth2 client id for the service account. This is used in
102
+ # conjunction with the OAuth2 clientconfig API to make three legged OAuth2 (3LO)
103
+ # flows to access the data of Google users.
104
+ # Corresponds to the JSON property `oauth2ClientId`
105
+ # @return [String]
106
+ attr_accessor :oauth2_client_id
107
+
108
+ def initialize(**args)
109
+ update!(**args)
110
+ end
111
+
112
+ # Update properties of this object
113
+ def update!(**args)
114
+ @name = args[:name] if args.key?(:name)
115
+ @project_id = args[:project_id] if args.key?(:project_id)
116
+ @unique_id = args[:unique_id] if args.key?(:unique_id)
117
+ @email = args[:email] if args.key?(:email)
118
+ @display_name = args[:display_name] if args.key?(:display_name)
119
+ @etag = args[:etag] if args.key?(:etag)
120
+ @oauth2_client_id = args[:oauth2_client_id] if args.key?(:oauth2_client_id)
121
+ end
122
+ end
123
+
124
+ # The service account create request.
125
+ class CreateServiceAccountRequest
126
+ include Google::Apis::Core::Hashable
127
+
128
+ # Required. The account id that is used to generate the service account email
129
+ # address and a stable unique id. It is unique within a project, must be 6-30
130
+ # characters long, and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])`
131
+ # to comply with RFC1035.
132
+ # Corresponds to the JSON property `accountId`
133
+ # @return [String]
134
+ attr_accessor :account_id
135
+
136
+ # A service account in the Identity and Access Management API. To create a
137
+ # service account, specify the `project_id` and the `account_id` for the account.
138
+ # The `account_id` is unique within the project, and is used to generate the
139
+ # service account email address and a stable `unique_id`. If the account already
140
+ # exists, the account's resource name is returned in util::Status's ResourceInfo.
141
+ # resource_name in the format of projects/`project`/serviceAccounts/`email`. The
142
+ # caller can use the name in other methods to access the account. All other
143
+ # methods can identify the service account using the format `projects/`project`/
144
+ # serviceAccounts/`account``. Using `-` as a wildcard for the project will infer
145
+ # the project from the account. The `account` value can be the `email` address
146
+ # or the `unique_id` of the service account.
147
+ # Corresponds to the JSON property `serviceAccount`
148
+ # @return [Google::Apis::IamV1::ServiceAccount]
149
+ attr_accessor :service_account
150
+
151
+ def initialize(**args)
152
+ update!(**args)
153
+ end
154
+
155
+ # Update properties of this object
156
+ def update!(**args)
157
+ @account_id = args[:account_id] if args.key?(:account_id)
158
+ @service_account = args[:service_account] if args.key?(:service_account)
159
+ end
160
+ end
161
+
162
+ # A generic empty message that you can re-use to avoid defining duplicated empty
163
+ # messages in your APIs. A typical example is to use it as the request or the
164
+ # response type of an API method. For instance: service Foo ` rpc Bar(google.
165
+ # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
166
+ # `Empty` is empty JSON object ````.
167
+ class Empty
168
+ include Google::Apis::Core::Hashable
169
+
170
+ def initialize(**args)
171
+ update!(**args)
172
+ end
173
+
174
+ # Update properties of this object
175
+ def update!(**args)
176
+ end
177
+ end
178
+
179
+ # The service account keys list response.
180
+ class ListServiceAccountKeysResponse
181
+ include Google::Apis::Core::Hashable
182
+
183
+ # The public keys for the service account.
184
+ # Corresponds to the JSON property `keys`
185
+ # @return [Array<Google::Apis::IamV1::ServiceAccountKey>]
186
+ attr_accessor :keys
187
+
188
+ def initialize(**args)
189
+ update!(**args)
190
+ end
191
+
192
+ # Update properties of this object
193
+ def update!(**args)
194
+ @keys = args[:keys] if args.key?(:keys)
195
+ end
196
+ end
197
+
198
+ # Represents a service account key. A service account has two sets of key-pairs:
199
+ # user-managed, and system-managed. User-managed key-pairs can be created and
200
+ # deleted by users. Users are responsible for rotating these keys periodically
201
+ # to ensure security of their service accounts. Users retain the private key of
202
+ # these key-pairs, and Google retains ONLY the public key. System-managed key-
203
+ # pairs are managed automatically by Google, and rotated daily without user
204
+ # intervention. The private key never leaves Google's servers to maximize
205
+ # security. Public keys for all service accounts are also published at the
206
+ # OAuth2 Service Account API.
207
+ class ServiceAccountKey
208
+ include Google::Apis::Core::Hashable
209
+
210
+ # The resource name of the service account key in the following format `projects/
211
+ # `project`/serviceAccounts/`account`/keys/`key``.
212
+ # Corresponds to the JSON property `name`
213
+ # @return [String]
214
+ attr_accessor :name
215
+
216
+ # The output format for the private key. Only provided in `
217
+ # CreateServiceAccountKey` responses, not in `GetServiceAccountKey` or `
218
+ # ListServiceAccountKey` responses. Google never exposes system-managed private
219
+ # keys, and never retains user-managed private keys.
220
+ # Corresponds to the JSON property `privateKeyType`
221
+ # @return [String]
222
+ attr_accessor :private_key_type
223
+
224
+ # Specifies the algorithm (and possibly key size) for the key.
225
+ # Corresponds to the JSON property `keyAlgorithm`
226
+ # @return [String]
227
+ attr_accessor :key_algorithm
228
+
229
+ # The private key data. Only provided in `CreateServiceAccountKey` responses.
230
+ # Corresponds to the JSON property `privateKeyData`
231
+ # @return [String]
232
+ attr_accessor :private_key_data
233
+
234
+ # The public key data. Only provided in `GetServiceAccountKey` responses.
235
+ # Corresponds to the JSON property `publicKeyData`
236
+ # @return [String]
237
+ attr_accessor :public_key_data
238
+
239
+ # The key can be used after this timestamp.
240
+ # Corresponds to the JSON property `validAfterTime`
241
+ # @return [String]
242
+ attr_accessor :valid_after_time
243
+
244
+ # The key can be used before this timestamp.
245
+ # Corresponds to the JSON property `validBeforeTime`
246
+ # @return [String]
247
+ attr_accessor :valid_before_time
248
+
249
+ def initialize(**args)
250
+ update!(**args)
251
+ end
252
+
253
+ # Update properties of this object
254
+ def update!(**args)
255
+ @name = args[:name] if args.key?(:name)
256
+ @private_key_type = args[:private_key_type] if args.key?(:private_key_type)
257
+ @key_algorithm = args[:key_algorithm] if args.key?(:key_algorithm)
258
+ @private_key_data = args[:private_key_data] if args.key?(:private_key_data)
259
+ @public_key_data = args[:public_key_data] if args.key?(:public_key_data)
260
+ @valid_after_time = args[:valid_after_time] if args.key?(:valid_after_time)
261
+ @valid_before_time = args[:valid_before_time] if args.key?(:valid_before_time)
262
+ end
263
+ end
264
+
265
+ # The service account key create request.
266
+ class CreateServiceAccountKeyRequest
267
+ include Google::Apis::Core::Hashable
268
+
269
+ # The output format of the private key. `GOOGLE_CREDENTIALS_FILE` is the default
270
+ # output format.
271
+ # Corresponds to the JSON property `privateKeyType`
272
+ # @return [String]
273
+ attr_accessor :private_key_type
274
+
275
+ # Which type of key and algorithm to use for the key. The default is currently a
276
+ # 4K RSA key. However this may change in the future.
277
+ # Corresponds to the JSON property `keyAlgorithm`
278
+ # @return [String]
279
+ attr_accessor :key_algorithm
280
+
281
+ def initialize(**args)
282
+ update!(**args)
283
+ end
284
+
285
+ # Update properties of this object
286
+ def update!(**args)
287
+ @private_key_type = args[:private_key_type] if args.key?(:private_key_type)
288
+ @key_algorithm = args[:key_algorithm] if args.key?(:key_algorithm)
289
+ end
290
+ end
291
+
292
+ # The service account sign blob request.
293
+ class SignBlobRequest
294
+ include Google::Apis::Core::Hashable
295
+
296
+ # The bytes to sign.
297
+ # Corresponds to the JSON property `bytesToSign`
298
+ # @return [String]
299
+ attr_accessor :bytes_to_sign
300
+
301
+ def initialize(**args)
302
+ update!(**args)
303
+ end
304
+
305
+ # Update properties of this object
306
+ def update!(**args)
307
+ @bytes_to_sign = args[:bytes_to_sign] if args.key?(:bytes_to_sign)
308
+ end
309
+ end
310
+
311
+ # The service account sign blob response.
312
+ class SignBlobResponse
313
+ include Google::Apis::Core::Hashable
314
+
315
+ # The id of the key used to sign the blob.
316
+ # Corresponds to the JSON property `keyId`
317
+ # @return [String]
318
+ attr_accessor :key_id
319
+
320
+ # The signed blob.
321
+ # Corresponds to the JSON property `signature`
322
+ # @return [String]
323
+ attr_accessor :signature
324
+
325
+ def initialize(**args)
326
+ update!(**args)
327
+ end
328
+
329
+ # Update properties of this object
330
+ def update!(**args)
331
+ @key_id = args[:key_id] if args.key?(:key_id)
332
+ @signature = args[:signature] if args.key?(:signature)
333
+ end
334
+ end
335
+
336
+ # Defines an Identity and Access Management (IAM) policy. It is used to specify
337
+ # access control policies for Cloud Platform resources. A `Policy` consists of a
338
+ # list of `bindings`. A `Binding` binds a list of `members` to a `role`, where
339
+ # the members can be user accounts, Google groups, Google domains, and service
340
+ # accounts. A `role` is a named list of permissions defined by IAM. **Example** `
341
+ # "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com", "
342
+ # group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
343
+ # appspot.gserviceaccount.com", ] `, ` "role": "roles/viewer", "members": ["user:
344
+ # sean@example.com"] ` ] ` For a description of IAM and its features, see the [
345
+ # IAM developer's guide](https://cloud.google.com/iam).
346
+ class Policy
347
+ include Google::Apis::Core::Hashable
348
+
349
+ # Version of the `Policy`. The default version is 0.
350
+ # Corresponds to the JSON property `version`
351
+ # @return [Fixnum]
352
+ attr_accessor :version
353
+
354
+ # Associates a list of `members` to a `role`. Multiple `bindings` must not be
355
+ # specified for the same `role`. `bindings` with no members will result in an
356
+ # error.
357
+ # Corresponds to the JSON property `bindings`
358
+ # @return [Array<Google::Apis::IamV1::Binding>]
359
+ attr_accessor :bindings
360
+
361
+ # `etag` is used for optimistic concurrency control as a way to help prevent
362
+ # simultaneous updates of a policy from overwriting each other. It is strongly
363
+ # suggested that systems make use of the `etag` in the read-modify-write cycle
364
+ # to perform policy updates in order to avoid race conditions: An `etag` is
365
+ # returned in the response to `getIamPolicy`, and systems are expected to put
366
+ # that etag in the request to `setIamPolicy` to ensure that their change will be
367
+ # applied to the same version of the policy. If no `etag` is provided in the
368
+ # call to `setIamPolicy`, then the existing policy is overwritten blindly.
369
+ # Corresponds to the JSON property `etag`
370
+ # @return [String]
371
+ attr_accessor :etag
372
+
373
+ def initialize(**args)
374
+ update!(**args)
375
+ end
376
+
377
+ # Update properties of this object
378
+ def update!(**args)
379
+ @version = args[:version] if args.key?(:version)
380
+ @bindings = args[:bindings] if args.key?(:bindings)
381
+ @etag = args[:etag] if args.key?(:etag)
382
+ end
383
+ end
384
+
385
+ # Associates `members` with a `role`.
386
+ class Binding
387
+ include Google::Apis::Core::Hashable
388
+
389
+ # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
390
+ # , or `roles/owner`. Required
391
+ # Corresponds to the JSON property `role`
392
+ # @return [String]
393
+ attr_accessor :role
394
+
395
+ # Specifies the identities requesting access for a Cloud Platform resource. `
396
+ # members` can have the following values: * `allUsers`: A special identifier
397
+ # that represents anyone who is on the internet; with or without a Google
398
+ # account. * `allAuthenticatedUsers`: A special identifier that represents
399
+ # anyone who is authenticated with a Google account or a service account. * `
400
+ # user:`emailid``: An email address that represents a specific Google account.
401
+ # For example, `alice@gmail.com` or `joe@example.com`. * `serviceAccount:`
402
+ # emailid``: An email address that represents a service account. For example, `
403
+ # my-other-app@appspot.gserviceaccount.com`. * `group:`emailid``: An email
404
+ # address that represents a Google group. For example, `admins@example.com`. * `
405
+ # domain:`domain``: A Google Apps domain name that represents all the users of
406
+ # that domain. For example, `google.com` or `example.com`.
407
+ # Corresponds to the JSON property `members`
408
+ # @return [Array<String>]
409
+ attr_accessor :members
410
+
411
+ def initialize(**args)
412
+ update!(**args)
413
+ end
414
+
415
+ # Update properties of this object
416
+ def update!(**args)
417
+ @role = args[:role] if args.key?(:role)
418
+ @members = args[:members] if args.key?(:members)
419
+ end
420
+ end
421
+
422
+ # Request message for `SetIamPolicy` method.
423
+ class SetIamPolicyRequest
424
+ include Google::Apis::Core::Hashable
425
+
426
+ # Defines an Identity and Access Management (IAM) policy. It is used to specify
427
+ # access control policies for Cloud Platform resources. A `Policy` consists of a
428
+ # list of `bindings`. A `Binding` binds a list of `members` to a `role`, where
429
+ # the members can be user accounts, Google groups, Google domains, and service
430
+ # accounts. A `role` is a named list of permissions defined by IAM. **Example** `
431
+ # "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com", "
432
+ # group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
433
+ # appspot.gserviceaccount.com", ] `, ` "role": "roles/viewer", "members": ["user:
434
+ # sean@example.com"] ` ] ` For a description of IAM and its features, see the [
435
+ # IAM developer's guide](https://cloud.google.com/iam).
436
+ # Corresponds to the JSON property `policy`
437
+ # @return [Google::Apis::IamV1::Policy]
438
+ attr_accessor :policy
439
+
440
+ def initialize(**args)
441
+ update!(**args)
442
+ end
443
+
444
+ # Update properties of this object
445
+ def update!(**args)
446
+ @policy = args[:policy] if args.key?(:policy)
447
+ end
448
+ end
449
+
450
+ # Request message for `TestIamPermissions` method.
451
+ class TestIamPermissionsRequest
452
+ include Google::Apis::Core::Hashable
453
+
454
+ # The set of permissions to check for the `resource`. Permissions with wildcards
455
+ # (such as '*' or 'storage.*') are not allowed. For more information see [IAM
456
+ # Overview](https://cloud.google.com/iam/docs/overview#permissions).
457
+ # Corresponds to the JSON property `permissions`
458
+ # @return [Array<String>]
459
+ attr_accessor :permissions
460
+
461
+ def initialize(**args)
462
+ update!(**args)
463
+ end
464
+
465
+ # Update properties of this object
466
+ def update!(**args)
467
+ @permissions = args[:permissions] if args.key?(:permissions)
468
+ end
469
+ end
470
+
471
+ # Response message for `TestIamPermissions` method.
472
+ class TestIamPermissionsResponse
473
+ include Google::Apis::Core::Hashable
474
+
475
+ # A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
476
+ # Corresponds to the JSON property `permissions`
477
+ # @return [Array<String>]
478
+ attr_accessor :permissions
479
+
480
+ def initialize(**args)
481
+ update!(**args)
482
+ end
483
+
484
+ # Update properties of this object
485
+ def update!(**args)
486
+ @permissions = args[:permissions] if args.key?(:permissions)
487
+ end
488
+ end
489
+
490
+ # The grantable role query request.
491
+ class QueryGrantableRolesRequest
492
+ include Google::Apis::Core::Hashable
493
+
494
+ # Required. The full resource name to query from the list of grantable roles.
495
+ # The name follows the Google Cloud Platform resource format. For example, a
496
+ # Cloud Platform project with id `my-project` will be named `//
497
+ # cloudresourcemanager.googleapis.com/projects/my-project`.
498
+ # Corresponds to the JSON property `fullResourceName`
499
+ # @return [String]
500
+ attr_accessor :full_resource_name
501
+
502
+ def initialize(**args)
503
+ update!(**args)
504
+ end
505
+
506
+ # Update properties of this object
507
+ def update!(**args)
508
+ @full_resource_name = args[:full_resource_name] if args.key?(:full_resource_name)
509
+ end
510
+ end
511
+
512
+ # The grantable role query response.
513
+ class QueryGrantableRolesResponse
514
+ include Google::Apis::Core::Hashable
515
+
516
+ # The list of matching roles.
517
+ # Corresponds to the JSON property `roles`
518
+ # @return [Array<Google::Apis::IamV1::Role>]
519
+ attr_accessor :roles
520
+
521
+ def initialize(**args)
522
+ update!(**args)
523
+ end
524
+
525
+ # Update properties of this object
526
+ def update!(**args)
527
+ @roles = args[:roles] if args.key?(:roles)
528
+ end
529
+ end
530
+
531
+ # A role in the Identity and Access Management API.
532
+ class Role
533
+ include Google::Apis::Core::Hashable
534
+
535
+ # The name of the role. When Role is used in CreateRole, the role name must not
536
+ # be set. When Role is used in output and other input such as UpdateRole, the
537
+ # role name is the complete path, e.g., roles/logging.viewer for curated roles
538
+ # and organizations/`organization-id`/roles/logging.viewer for custom roles.
539
+ # Corresponds to the JSON property `name`
540
+ # @return [String]
541
+ attr_accessor :name
542
+
543
+ # Optional. A human-readable title for the role. Typically this is limited to
544
+ # 100 UTF-8 bytes.
545
+ # Corresponds to the JSON property `title`
546
+ # @return [String]
547
+ attr_accessor :title
548
+
549
+ # Optional. A human-readable description for the role.
550
+ # Corresponds to the JSON property `description`
551
+ # @return [String]
552
+ attr_accessor :description
553
+
554
+ def initialize(**args)
555
+ update!(**args)
556
+ end
557
+
558
+ # Update properties of this object
559
+ def update!(**args)
560
+ @name = args[:name] if args.key?(:name)
561
+ @title = args[:title] if args.key?(:title)
562
+ @description = args[:description] if args.key?(:description)
563
+ end
564
+ end
565
+
566
+ # Audit log information specific to Cloud IAM. This message is serialized as an `
567
+ # Any` type in the `ServiceData` message of an `AuditLog` message.
568
+ class AuditData
569
+ include Google::Apis::Core::Hashable
570
+
571
+ # The difference delta between two policies.
572
+ # Corresponds to the JSON property `policyDelta`
573
+ # @return [Google::Apis::IamV1::PolicyDelta]
574
+ attr_accessor :policy_delta
575
+
576
+ def initialize(**args)
577
+ update!(**args)
578
+ end
579
+
580
+ # Update properties of this object
581
+ def update!(**args)
582
+ @policy_delta = args[:policy_delta] if args.key?(:policy_delta)
583
+ end
584
+ end
585
+
586
+ # The difference delta between two policies.
587
+ class PolicyDelta
588
+ include Google::Apis::Core::Hashable
589
+
590
+ # The delta for Bindings between two policies.
591
+ # Corresponds to the JSON property `bindingDeltas`
592
+ # @return [Array<Google::Apis::IamV1::BindingDelta>]
593
+ attr_accessor :binding_deltas
594
+
595
+ def initialize(**args)
596
+ update!(**args)
597
+ end
598
+
599
+ # Update properties of this object
600
+ def update!(**args)
601
+ @binding_deltas = args[:binding_deltas] if args.key?(:binding_deltas)
602
+ end
603
+ end
604
+
605
+ # One delta entry for Binding. Each individual change (only one member in each
606
+ # entry) to a binding will be a separate entry.
607
+ class BindingDelta
608
+ include Google::Apis::Core::Hashable
609
+
610
+ # The action that was performed on a Binding. Required
611
+ # Corresponds to the JSON property `action`
612
+ # @return [String]
613
+ attr_accessor :action
614
+
615
+ # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
616
+ # , or `roles/owner`. Required
617
+ # Corresponds to the JSON property `role`
618
+ # @return [String]
619
+ attr_accessor :role
620
+
621
+ # A single identity requesting access for a Cloud Platform resource. Follows the
622
+ # same format of Binding.members. Required
623
+ # Corresponds to the JSON property `member`
624
+ # @return [String]
625
+ attr_accessor :member
626
+
627
+ def initialize(**args)
628
+ update!(**args)
629
+ end
630
+
631
+ # Update properties of this object
632
+ def update!(**args)
633
+ @action = args[:action] if args.key?(:action)
634
+ @role = args[:role] if args.key?(:role)
635
+ @member = args[:member] if args.key?(:member)
636
+ end
637
+ end
638
+ end
639
+ end
640
+ end