google-api-client 0.9.8 → 0.10.2

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 (320) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +15 -8
  3. data/CHANGELOG.md +84 -0
  4. data/Gemfile +10 -2
  5. data/README.md +10 -2
  6. data/api_names.yaml +37172 -135
  7. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +35 -0
  8. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +1200 -0
  9. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +526 -0
  10. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +844 -0
  11. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  12. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +310 -28
  13. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +84 -0
  14. data/generated/google/apis/adexchangebuyer_v1_4/service.rb +60 -8
  15. data/generated/google/apis/adexchangeseller_v2_0.rb +2 -3
  16. data/generated/google/apis/adexchangeseller_v2_0/service.rb +1 -2
  17. data/generated/google/apis/admin_directory_v1.rb +1 -1
  18. data/generated/google/apis/admin_directory_v1/classes.rb +206 -0
  19. data/generated/google/apis/admin_directory_v1/representations.rb +63 -0
  20. data/generated/google/apis/admin_directory_v1/service.rb +41 -2
  21. data/generated/google/apis/admin_reports_v1.rb +5 -5
  22. data/generated/google/apis/admin_reports_v1/service.rb +6 -6
  23. data/generated/google/apis/adsense_v1_4.rb +1 -1
  24. data/generated/google/apis/adsense_v1_4/classes.rb +1 -1
  25. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  26. data/generated/google/apis/adsensehost_v4_1/classes.rb +1 -2
  27. data/generated/google/apis/analytics_v3.rb +1 -1
  28. data/generated/google/apis/analytics_v3/classes.rb +379 -3
  29. data/generated/google/apis/analytics_v3/representations.rb +136 -0
  30. data/generated/google/apis/analytics_v3/service.rb +256 -0
  31. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  32. data/generated/google/apis/analyticsreporting_v4/classes.rb +858 -823
  33. data/generated/google/apis/analyticsreporting_v4/representations.rb +194 -193
  34. data/generated/google/apis/analyticsreporting_v4/service.rb +4 -4
  35. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  36. data/generated/google/apis/androidenterprise_v1/classes.rb +913 -220
  37. data/generated/google/apis/androidenterprise_v1/representations.rb +337 -30
  38. data/generated/google/apis/androidenterprise_v1/service.rb +1163 -561
  39. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  40. data/generated/google/apis/androidpublisher_v2/classes.rb +230 -8
  41. data/generated/google/apis/androidpublisher_v2/representations.rb +90 -0
  42. data/generated/google/apis/androidpublisher_v2/service.rb +116 -3
  43. data/generated/google/apis/appengine_v1beta5.rb +7 -1
  44. data/generated/google/apis/appengine_v1beta5/classes.rb +810 -395
  45. data/generated/google/apis/appengine_v1beta5/representations.rb +188 -22
  46. data/generated/google/apis/appengine_v1beta5/service.rb +343 -39
  47. data/generated/google/apis/appsactivity_v1.rb +3 -3
  48. data/generated/google/apis/appsactivity_v1/classes.rb +7 -0
  49. data/generated/google/apis/appsactivity_v1/representations.rb +1 -0
  50. data/generated/google/apis/appsactivity_v1/service.rb +1 -1
  51. data/generated/google/apis/appstate_v1.rb +1 -1
  52. data/generated/google/apis/bigquery_v2.rb +1 -1
  53. data/generated/google/apis/bigquery_v2/classes.rb +360 -38
  54. data/generated/google/apis/bigquery_v2/representations.rb +106 -0
  55. data/generated/google/apis/bigquery_v2/service.rb +18 -4
  56. data/generated/google/apis/books_v1.rb +2 -2
  57. data/generated/google/apis/books_v1/classes.rb +83 -0
  58. data/generated/google/apis/books_v1/representations.rb +35 -0
  59. data/generated/google/apis/books_v1/service.rb +7 -3
  60. data/generated/google/apis/calendar_v3.rb +1 -1
  61. data/generated/google/apis/calendar_v3/classes.rb +208 -5
  62. data/generated/google/apis/calendar_v3/representations.rb +97 -0
  63. data/generated/google/apis/civicinfo_v2.rb +3 -2
  64. data/generated/google/apis/civicinfo_v2/classes.rb +377 -5
  65. data/generated/google/apis/civicinfo_v2/representations.rb +149 -0
  66. data/generated/google/apis/civicinfo_v2/service.rb +27 -6
  67. data/generated/google/apis/classroom_v1.rb +22 -25
  68. data/generated/google/apis/classroom_v1/classes.rb +998 -761
  69. data/generated/google/apis/classroom_v1/representations.rb +263 -198
  70. data/generated/google/apis/classroom_v1/service.rb +1349 -672
  71. data/generated/google/apis/cloudbilling_v1.rb +3 -3
  72. data/generated/google/apis/cloudbilling_v1/classes.rb +76 -75
  73. data/generated/google/apis/cloudbilling_v1/representations.rb +17 -17
  74. data/generated/google/apis/cloudbilling_v1/service.rb +117 -110
  75. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  76. data/generated/google/apis/cloudbuild_v1/classes.rb +661 -264
  77. data/generated/google/apis/cloudbuild_v1/representations.rb +198 -48
  78. data/generated/google/apis/cloudbuild_v1/service.rb +259 -44
  79. data/generated/google/apis/clouddebugger_v2.rb +5 -8
  80. data/generated/google/apis/clouddebugger_v2/classes.rb +686 -616
  81. data/generated/google/apis/clouddebugger_v2/representations.rb +151 -151
  82. data/generated/google/apis/clouddebugger_v2/service.rb +165 -159
  83. data/generated/google/apis/cloudkms_v1.rb +35 -0
  84. data/generated/google/apis/cloudkms_v1/classes.rb +1022 -0
  85. data/generated/google/apis/cloudkms_v1/representations.rb +448 -0
  86. data/generated/google/apis/cloudkms_v1/service.rb +933 -0
  87. data/generated/google/apis/cloudkms_v1beta1.rb +35 -0
  88. data/generated/google/apis/cloudkms_v1beta1/classes.rb +1039 -0
  89. data/generated/google/apis/cloudkms_v1beta1/representations.rb +448 -0
  90. data/generated/google/apis/cloudkms_v1beta1/service.rb +933 -0
  91. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  92. data/generated/google/apis/cloudresourcemanager_v1.rb +4 -4
  93. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +1529 -167
  94. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +491 -26
  95. data/generated/google/apis/cloudresourcemanager_v1/service.rb +1593 -135
  96. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  97. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +1155 -235
  98. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +344 -44
  99. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +702 -310
  100. data/generated/google/apis/cloudtrace_v1.rb +9 -9
  101. data/generated/google/apis/cloudtrace_v1/classes.rb +98 -92
  102. data/generated/google/apis/cloudtrace_v1/representations.rb +24 -24
  103. data/generated/google/apis/cloudtrace_v1/service.rb +42 -37
  104. data/generated/google/apis/compute_beta.rb +1 -1
  105. data/generated/google/apis/compute_beta/classes.rb +7007 -3648
  106. data/generated/google/apis/compute_beta/representations.rb +1459 -120
  107. data/generated/google/apis/compute_beta/service.rb +7943 -3726
  108. data/generated/google/apis/compute_v1.rb +1 -1
  109. data/generated/google/apis/compute_v1/classes.rb +2567 -370
  110. data/generated/google/apis/compute_v1/representations.rb +855 -0
  111. data/generated/google/apis/compute_v1/service.rb +6388 -2908
  112. data/generated/google/apis/container_v1.rb +1 -1
  113. data/generated/google/apis/container_v1/classes.rb +287 -16
  114. data/generated/google/apis/container_v1/representations.rb +113 -2
  115. data/generated/google/apis/container_v1/service.rb +130 -0
  116. data/generated/google/apis/content_v2.rb +1 -1
  117. data/generated/google/apis/content_v2/classes.rb +778 -10
  118. data/generated/google/apis/content_v2/representations.rb +339 -0
  119. data/generated/google/apis/content_v2/service.rb +364 -49
  120. data/generated/google/apis/dataflow_v1b3.rb +37 -0
  121. data/generated/google/apis/dataflow_v1b3/classes.rb +4941 -0
  122. data/generated/google/apis/dataflow_v1b3/representations.rb +2037 -0
  123. data/generated/google/apis/dataflow_v1b3/service.rb +957 -0
  124. data/generated/google/apis/dataproc_v1.rb +1 -1
  125. data/generated/google/apis/dataproc_v1/classes.rb +1235 -963
  126. data/generated/google/apis/dataproc_v1/representations.rb +299 -225
  127. data/generated/google/apis/dataproc_v1/service.rb +277 -192
  128. data/generated/google/apis/datastore_v1.rb +38 -0
  129. data/generated/google/apis/datastore_v1/classes.rb +1289 -0
  130. data/generated/google/apis/datastore_v1/representations.rb +572 -0
  131. data/generated/google/apis/datastore_v1/service.rb +259 -0
  132. data/generated/google/apis/datastore_v1beta3.rb +38 -0
  133. data/generated/google/apis/datastore_v1beta3/classes.rb +1284 -0
  134. data/generated/google/apis/datastore_v1beta3/representations.rb +572 -0
  135. data/generated/google/apis/datastore_v1beta3/service.rb +259 -0
  136. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  137. data/generated/google/apis/deploymentmanager_v2/classes.rb +436 -3
  138. data/generated/google/apis/deploymentmanager_v2/representations.rb +178 -0
  139. data/generated/google/apis/deploymentmanager_v2/service.rb +226 -61
  140. data/generated/google/apis/dfareporting_v2_5.rb +40 -0
  141. data/generated/google/apis/dfareporting_v2_5/classes.rb +11225 -0
  142. data/generated/google/apis/dfareporting_v2_5/representations.rb +3982 -0
  143. data/generated/google/apis/dfareporting_v2_5/service.rb +8755 -0
  144. data/generated/google/apis/dfareporting_v2_6.rb +40 -0
  145. data/generated/google/apis/dfareporting_v2_6/classes.rb +11586 -0
  146. data/generated/google/apis/dfareporting_v2_6/representations.rb +4119 -0
  147. data/generated/google/apis/dfareporting_v2_6/service.rb +9025 -0
  148. data/generated/google/apis/dfareporting_v2_7.rb +40 -0
  149. data/generated/google/apis/dfareporting_v2_7/classes.rb +11876 -0
  150. data/generated/google/apis/dfareporting_v2_7/representations.rb +4243 -0
  151. data/generated/google/apis/dfareporting_v2_7/service.rb +9095 -0
  152. data/generated/google/apis/dns_v1.rb +1 -1
  153. data/generated/google/apis/dns_v1/classes.rb +1 -1
  154. data/generated/google/apis/dns_v2beta1.rb +43 -0
  155. data/generated/google/apis/dns_v2beta1/classes.rb +915 -0
  156. data/generated/google/apis/dns_v2beta1/representations.rb +368 -0
  157. data/generated/google/apis/dns_v2beta1/service.rb +768 -0
  158. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  159. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +79 -86
  160. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +25 -28
  161. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +10 -8
  162. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  163. data/generated/google/apis/doubleclicksearch_v2/classes.rb +6 -4
  164. data/generated/google/apis/drive_v2.rb +1 -1
  165. data/generated/google/apis/drive_v2/classes.rb +595 -37
  166. data/generated/google/apis/drive_v2/representations.rb +140 -0
  167. data/generated/google/apis/drive_v2/service.rb +406 -40
  168. data/generated/google/apis/drive_v3.rb +1 -1
  169. data/generated/google/apis/drive_v3/classes.rb +507 -40
  170. data/generated/google/apis/drive_v3/representations.rb +105 -0
  171. data/generated/google/apis/drive_v3/service.rb +326 -29
  172. data/generated/google/apis/fitness_v1.rb +38 -2
  173. data/generated/google/apis/fitness_v1/classes.rb +65 -7
  174. data/generated/google/apis/fitness_v1/representations.rb +20 -0
  175. data/generated/google/apis/fitness_v1/service.rb +17 -18
  176. data/generated/google/apis/fusiontables_v2.rb +1 -1
  177. data/generated/google/apis/fusiontables_v2/classes.rb +4 -3
  178. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  179. data/generated/google/apis/games_management_v1management.rb +1 -1
  180. data/generated/google/apis/games_v1.rb +1 -1
  181. data/generated/google/apis/genomics_v1.rb +10 -12
  182. data/generated/google/apis/genomics_v1/classes.rb +2276 -2165
  183. data/generated/google/apis/genomics_v1/representations.rb +468 -496
  184. data/generated/google/apis/genomics_v1/service.rb +978 -882
  185. data/generated/google/apis/gmail_v1.rb +11 -2
  186. data/generated/google/apis/gmail_v1/classes.rb +655 -5
  187. data/generated/google/apis/gmail_v1/representations.rb +261 -0
  188. data/generated/google/apis/gmail_v1/service.rb +1211 -48
  189. data/generated/google/apis/groupssettings_v1.rb +2 -2
  190. data/generated/google/apis/groupssettings_v1/classes.rb +12 -0
  191. data/generated/google/apis/groupssettings_v1/representations.rb +2 -0
  192. data/generated/google/apis/iam_v1.rb +2 -2
  193. data/generated/google/apis/iam_v1/classes.rb +446 -368
  194. data/generated/google/apis/iam_v1/representations.rb +109 -91
  195. data/generated/google/apis/iam_v1/service.rb +249 -162
  196. data/generated/google/apis/identitytoolkit_v3.rb +7 -1
  197. data/generated/google/apis/identitytoolkit_v3/classes.rb +254 -2
  198. data/generated/google/apis/identitytoolkit_v3/representations.rb +38 -0
  199. data/generated/google/apis/kgsearch_v1.rb +2 -3
  200. data/generated/google/apis/kgsearch_v1/classes.rb +13 -13
  201. data/generated/google/apis/kgsearch_v1/representations.rb +2 -2
  202. data/generated/google/apis/kgsearch_v1/service.rb +26 -24
  203. data/generated/google/apis/language_v1beta1.rb +36 -0
  204. data/generated/google/apis/language_v1beta1/classes.rb +757 -0
  205. data/generated/google/apis/language_v1beta1/representations.rb +339 -0
  206. data/generated/google/apis/language_v1beta1/service.rb +185 -0
  207. data/generated/google/apis/licensing_v1.rb +3 -3
  208. data/generated/google/apis/licensing_v1/classes.rb +14 -2
  209. data/generated/google/apis/licensing_v1/representations.rb +2 -0
  210. data/generated/google/apis/licensing_v1/service.rb +1 -1
  211. data/generated/google/apis/logging_v2beta1.rb +6 -6
  212. data/generated/google/apis/logging_v2beta1/classes.rb +900 -775
  213. data/generated/google/apis/logging_v2beta1/representations.rb +163 -142
  214. data/generated/google/apis/logging_v2beta1/service.rb +427 -155
  215. data/generated/google/apis/manufacturers_v1.rb +34 -0
  216. data/generated/google/apis/manufacturers_v1/classes.rb +605 -0
  217. data/generated/google/apis/manufacturers_v1/representations.rb +223 -0
  218. data/generated/google/apis/manufacturers_v1/service.rb +138 -0
  219. data/generated/google/apis/mirror_v1.rb +2 -2
  220. data/generated/google/apis/mirror_v1/service.rb +1 -1
  221. data/generated/google/apis/monitoring_v3.rb +45 -0
  222. data/generated/google/apis/monitoring_v3/classes.rb +1333 -0
  223. data/generated/google/apis/monitoring_v3/representations.rb +516 -0
  224. data/generated/google/apis/monitoring_v3/service.rb +706 -0
  225. data/generated/google/apis/oauth2_v2.rb +1 -1
  226. data/generated/google/apis/pagespeedonline_v2.rb +1 -1
  227. data/generated/google/apis/partners_v2.rb +3 -3
  228. data/generated/google/apis/partners_v2/classes.rb +1831 -477
  229. data/generated/google/apis/partners_v2/representations.rb +571 -114
  230. data/generated/google/apis/partners_v2/service.rb +898 -167
  231. data/generated/google/apis/people_v1.rb +15 -16
  232. data/generated/google/apis/people_v1/classes.rb +1047 -859
  233. data/generated/google/apis/people_v1/representations.rb +252 -213
  234. data/generated/google/apis/people_v1/service.rb +75 -62
  235. data/generated/google/apis/plus_domains_v1.rb +1 -1
  236. data/generated/google/apis/plus_v1.rb +1 -1
  237. data/generated/google/apis/proximitybeacon_v1beta1.rb +1 -1
  238. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +527 -456
  239. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +101 -100
  240. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +467 -343
  241. data/generated/google/apis/pubsub_v1.rb +1 -1
  242. data/generated/google/apis/pubsub_v1/classes.rb +363 -310
  243. data/generated/google/apis/pubsub_v1/representations.rb +76 -76
  244. data/generated/google/apis/pubsub_v1/service.rb +464 -335
  245. data/generated/google/apis/qpx_express_v1.rb +1 -1
  246. data/generated/google/apis/qpx_express_v1/classes.rb +6 -0
  247. data/generated/google/apis/qpx_express_v1/representations.rb +1 -0
  248. data/generated/google/apis/replicapool_v1beta2.rb +1 -1
  249. data/generated/google/apis/replicapoolupdater_v1beta1.rb +4 -2
  250. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +3 -1
  251. data/generated/google/apis/reseller_v1.rb +1 -1
  252. data/generated/google/apis/reseller_v1/classes.rb +222 -61
  253. data/generated/google/apis/reseller_v1/representations.rb +28 -0
  254. data/generated/google/apis/reseller_v1/service.rb +240 -47
  255. data/generated/google/apis/script_v1.rb +19 -19
  256. data/generated/google/apis/script_v1/classes.rb +151 -137
  257. data/generated/google/apis/script_v1/representations.rb +26 -26
  258. data/generated/google/apis/script_v1/service.rb +9 -8
  259. data/generated/google/apis/sheets_v4.rb +7 -7
  260. data/generated/google/apis/sheets_v4/classes.rb +4530 -3506
  261. data/generated/google/apis/sheets_v4/representations.rb +988 -737
  262. data/generated/google/apis/sheets_v4/service.rb +266 -99
  263. data/generated/google/apis/site_verification_v1.rb +1 -1
  264. data/generated/google/apis/slides_v1.rb +49 -0
  265. data/generated/google/apis/slides_v1/classes.rb +4480 -0
  266. data/generated/google/apis/slides_v1/representations.rb +1926 -0
  267. data/generated/google/apis/slides_v1/service.rb +245 -0
  268. data/generated/google/apis/speech_v1beta1.rb +34 -0
  269. data/generated/google/apis/speech_v1beta1/classes.rb +498 -0
  270. data/generated/google/apis/speech_v1beta1/representations.rb +206 -0
  271. data/generated/google/apis/speech_v1beta1/service.rb +270 -0
  272. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  273. data/generated/google/apis/sqladmin_v1beta4/classes.rb +131 -10
  274. data/generated/google/apis/sqladmin_v1beta4/representations.rb +50 -0
  275. data/generated/google/apis/sqladmin_v1beta4/service.rb +92 -2
  276. data/generated/google/apis/storage_v1.rb +1 -1
  277. data/generated/google/apis/storage_v1/classes.rb +205 -21
  278. data/generated/google/apis/storage_v1/representations.rb +51 -1
  279. data/generated/google/apis/storage_v1/service.rb +263 -9
  280. data/generated/google/apis/tagmanager_v1.rb +5 -5
  281. data/generated/google/apis/translate_v2.rb +2 -2
  282. data/generated/google/apis/translate_v2/service.rb +1 -1
  283. data/generated/google/apis/vision_v1.rb +1 -1
  284. data/generated/google/apis/vision_v1/classes.rb +1275 -731
  285. data/generated/google/apis/vision_v1/representations.rb +378 -111
  286. data/generated/google/apis/vision_v1/service.rb +4 -4
  287. data/generated/google/apis/webmasters_v3.rb +1 -1
  288. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  289. data/generated/google/apis/youtube_analytics_v1/classes.rb +0 -209
  290. data/generated/google/apis/youtube_analytics_v1/representations.rb +0 -99
  291. data/generated/google/apis/youtube_analytics_v1/service.rb +5 -77
  292. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  293. data/generated/google/apis/youtube_partner_v1/classes.rb +155 -0
  294. data/generated/google/apis/youtube_partner_v1/representations.rb +69 -0
  295. data/generated/google/apis/youtube_partner_v1/service.rb +107 -3
  296. data/generated/google/apis/youtube_v3.rb +1 -1
  297. data/generated/google/apis/youtube_v3/classes.rb +430 -22
  298. data/generated/google/apis/youtube_v3/representations.rb +171 -4
  299. data/generated/google/apis/youtube_v3/service.rb +100 -9
  300. data/generated/google/apis/youtubereporting_v1.rb +4 -4
  301. data/generated/google/apis/youtubereporting_v1/classes.rb +140 -131
  302. data/generated/google/apis/youtubereporting_v1/representations.rb +37 -37
  303. data/generated/google/apis/youtubereporting_v1/service.rb +139 -135
  304. data/google-api-client.gemspec +4 -3
  305. data/lib/google/apis/core/api_command.rb +16 -6
  306. data/lib/google/apis/core/base_service.rb +17 -9
  307. data/lib/google/apis/core/download.rb +7 -2
  308. data/lib/google/apis/core/http_command.rb +5 -1
  309. data/lib/google/apis/core/json_representation.rb +2 -2
  310. data/lib/google/apis/core/upload.rb +7 -1
  311. data/lib/google/apis/errors.rb +6 -2
  312. data/lib/google/apis/generator/annotator.rb +6 -0
  313. data/lib/google/apis/version.rb +1 -1
  314. data/samples/cli/lib/samples/bigquery.rb +101 -0
  315. data/samples/cli/lib/samples/calendar.rb +1 -1
  316. data/samples/cli/lib/samples/gmail.rb +74 -0
  317. data/samples/cli/lib/samples/sheets.rb +61 -0
  318. data/samples/cli/lib/samples/you_tube.rb +4 -1
  319. data/sync.rb +71 -0
  320. metadata +86 -18
@@ -25,9 +25,9 @@ module Google
25
25
  # @see https://developers.google.com/google-apps/groups-settings/get_started
26
26
  module GroupssettingsV1
27
27
  VERSION = 'V1'
28
- REVISION = '20160323'
28
+ REVISION = '20160525'
29
29
 
30
- # View and manage the settings of a Google Apps Group
30
+ # View and manage the settings of a G Suite group
31
31
  AUTH_APPS_GROUPS_SETTINGS = 'https://www.googleapis.com/auth/apps.groups.settings'
32
32
  end
33
33
  end
@@ -46,6 +46,11 @@ module Google
46
46
  # @return [String]
47
47
  attr_accessor :archive_only
48
48
 
49
+ # Custom footer text.
50
+ # Corresponds to the JSON property `customFooterText`
51
+ # @return [String]
52
+ attr_accessor :custom_footer_text
53
+
49
54
  # Default email to which reply to any message should go.
50
55
  # Corresponds to the JSON property `customReplyTo`
51
56
  # @return [String]
@@ -66,6 +71,11 @@ module Google
66
71
  # @return [String]
67
72
  attr_accessor :email
68
73
 
74
+ # Whether to include custom footer.
75
+ # Corresponds to the JSON property `includeCustomFooter`
76
+ # @return [String]
77
+ attr_accessor :include_custom_footer
78
+
69
79
  # If this groups should be included in global address list or not.
70
80
  # Corresponds to the JSON property `includeInGlobalAddressList`
71
81
  # @return [String]
@@ -196,10 +206,12 @@ module Google
196
206
  @allow_google_communication = args[:allow_google_communication] if args.key?(:allow_google_communication)
197
207
  @allow_web_posting = args[:allow_web_posting] if args.key?(:allow_web_posting)
198
208
  @archive_only = args[:archive_only] if args.key?(:archive_only)
209
+ @custom_footer_text = args[:custom_footer_text] if args.key?(:custom_footer_text)
199
210
  @custom_reply_to = args[:custom_reply_to] if args.key?(:custom_reply_to)
200
211
  @default_message_deny_notification_text = args[:default_message_deny_notification_text] if args.key?(:default_message_deny_notification_text)
201
212
  @description = args[:description] if args.key?(:description)
202
213
  @email = args[:email] if args.key?(:email)
214
+ @include_custom_footer = args[:include_custom_footer] if args.key?(:include_custom_footer)
203
215
  @include_in_global_address_list = args[:include_in_global_address_list] if args.key?(:include_in_global_address_list)
204
216
  @is_archived = args[:is_archived] if args.key?(:is_archived)
205
217
  @kind = args[:kind] if args.key?(:kind)
@@ -35,10 +35,12 @@ module Google
35
35
  property :allow_google_communication, as: 'allowGoogleCommunication'
36
36
  property :allow_web_posting, as: 'allowWebPosting'
37
37
  property :archive_only, as: 'archiveOnly'
38
+ property :custom_footer_text, as: 'customFooterText'
38
39
  property :custom_reply_to, as: 'customReplyTo'
39
40
  property :default_message_deny_notification_text, as: 'defaultMessageDenyNotificationText'
40
41
  property :description, as: 'description'
41
42
  property :email, as: 'email'
43
+ property :include_custom_footer, as: 'includeCustomFooter'
42
44
  property :include_in_global_address_list, as: 'includeInGlobalAddressList'
43
45
  property :is_archived, as: 'isArchived'
44
46
  property :kind, as: 'kind'
@@ -18,7 +18,7 @@ require 'google/apis/iam_v1/representations.rb'
18
18
 
19
19
  module Google
20
20
  module Apis
21
- # Google Identity and Access Management API
21
+ # Google Identity and Access Management (IAM) API
22
22
  #
23
23
  # Manages identity and access control for Google Cloud Platform resources,
24
24
  # including the creation of service accounts, which you can use to authenticate
@@ -27,7 +27,7 @@ module Google
27
27
  # @see https://cloud.google.com/iam/
28
28
  module IamV1
29
29
  VERSION = 'V1'
30
- REVISION = '20160129'
30
+ REVISION = '20170317'
31
31
 
32
32
  # View and manage your data across Google Cloud Platform services
33
33
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -22,20 +22,35 @@ module Google
22
22
  module Apis
23
23
  module IamV1
24
24
 
25
- # The service account list response.
26
- class ListServiceAccountsResponse
25
+ # The service account create request.
26
+ class CreateServiceAccountRequest
27
27
  include Google::Apis::Core::Hashable
28
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
29
+ # A service account in the Identity and Access Management API.
30
+ # To create a service account, specify the `project_id` and the `account_id`
31
+ # for the account. The `account_id` is unique within the project, and is used
32
+ # to generate the service account email address and a stable
33
+ # `unique_id`.
34
+ # If the account already exists, the account's resource name is returned
35
+ # in util::Status's ResourceInfo.resource_name in the format of
36
+ # projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL`. The caller can
37
+ # use the name in other methods to access the account.
38
+ # All other methods can identify the service account using the format
39
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
40
+ # Using `-` as a wildcard for the project will infer the project from
41
+ # the account. The `account` value can be the `email` address or the
42
+ # `unique_id` of the service account.
43
+ # Corresponds to the JSON property `serviceAccount`
44
+ # @return [Google::Apis::IamV1::ServiceAccount]
45
+ attr_accessor :service_account
33
46
 
34
- # To retrieve the next page of results, set [ListServiceAccountsRequest.
35
- # page_token] to this value.
36
- # Corresponds to the JSON property `nextPageToken`
47
+ # Required. The account id that is used to generate the service account
48
+ # email address and a stable unique id. It is unique within a project,
49
+ # must be 6-30 characters long, and match the regular expression
50
+ # `[a-z]([-a-z0-9]*[a-z0-9])` to comply with RFC1035.
51
+ # Corresponds to the JSON property `accountId`
37
52
  # @return [String]
38
- attr_accessor :next_page_token
53
+ attr_accessor :account_id
39
54
 
40
55
  def initialize(**args)
41
56
  update!(**args)
@@ -43,64 +58,46 @@ module Google
43
58
 
44
59
  # Update properties of this object
45
60
  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)
61
+ @service_account = args[:service_account] if args.key?(:service_account)
62
+ @account_id = args[:account_id] if args.key?(:account_id)
48
63
  end
49
64
  end
50
65
 
51
- # A service account in the Identity and Access Management API. To create a
52
- # service account, you specify the project_id and account_id for the account.
53
- # The account_id is unique within the project, and used to generate the service
54
- # account email address and a stable unique id. All other methods can identify
55
- # accounts using the format "projects/`project`/serviceAccounts/`account`".
56
- # Using '-' as a wildcard for the project, will infer the project from the
57
- # account. The account value can be the email address or the unique_id of the
58
- # service account.
59
- class ServiceAccount
66
+ # The service account list response.
67
+ class ListServiceAccountsResponse
60
68
  include Google::Apis::Core::Hashable
61
69
 
62
- # The resource name of the service account in the format "projects/`project`/
63
- # serviceAccounts/`account`". In requests using '-' as a wildcard for the
64
- # project, will infer the project from the account and the account value can be
65
- # the email address or the unique_id of the service account. In responses the
66
- # resource name will always be in the format "projects/`project`/serviceAccounts/
67
- # `email`".
68
- # Corresponds to the JSON property `name`
69
- # @return [String]
70
- attr_accessor :name
71
-
72
- # @OutputOnly The id of the project that owns the service account.
73
- # Corresponds to the JSON property `projectId`
70
+ # To retrieve the next page of results, set
71
+ # ListServiceAccountsRequest.page_token
72
+ # to this value.
73
+ # Corresponds to the JSON property `nextPageToken`
74
74
  # @return [String]
75
- attr_accessor :project_id
75
+ attr_accessor :next_page_token
76
76
 
77
- # @OutputOnly unique and stable id of the service account.
78
- # Corresponds to the JSON property `uniqueId`
79
- # @return [String]
80
- attr_accessor :unique_id
77
+ # The list of matching service accounts.
78
+ # Corresponds to the JSON property `accounts`
79
+ # @return [Array<Google::Apis::IamV1::ServiceAccount>]
80
+ attr_accessor :accounts
81
81
 
82
- # @OutputOnly Email address of the service account.
83
- # Corresponds to the JSON property `email`
84
- # @return [String]
85
- attr_accessor :email
82
+ def initialize(**args)
83
+ update!(**args)
84
+ end
86
85
 
87
- # Optional. A user-specified description of the service account. Must be fewer
88
- # than 100 UTF-8 bytes.
89
- # Corresponds to the JSON property `displayName`
90
- # @return [String]
91
- attr_accessor :display_name
86
+ # Update properties of this object
87
+ def update!(**args)
88
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
89
+ @accounts = args[:accounts] if args.key?(:accounts)
90
+ end
91
+ end
92
92
 
93
- # Used to perform a consistent read-modify-write.
94
- # Corresponds to the JSON property `etag`
95
- # @return [String]
96
- attr_accessor :etag
93
+ # The grantable role query response.
94
+ class QueryGrantableRolesResponse
95
+ include Google::Apis::Core::Hashable
97
96
 
98
- # @OutputOnly. The OAuth2 client id for the service account. This is used in
99
- # conjunction with the OAuth2 clientconfig API to make three legged OAuth2 (3LO)
100
- # flows to access the data of Google users.
101
- # Corresponds to the JSON property `oauth2ClientId`
102
- # @return [String]
103
- attr_accessor :oauth2_client_id
97
+ # The list of matching roles.
98
+ # Corresponds to the JSON property `roles`
99
+ # @return [Array<Google::Apis::IamV1::Role>]
100
+ attr_accessor :roles
104
101
 
105
102
  def initialize(**args)
106
103
  update!(**args)
@@ -108,39 +105,18 @@ module Google
108
105
 
109
106
  # Update properties of this object
110
107
  def update!(**args)
111
- @name = args[:name] if args.key?(:name)
112
- @project_id = args[:project_id] if args.key?(:project_id)
113
- @unique_id = args[:unique_id] if args.key?(:unique_id)
114
- @email = args[:email] if args.key?(:email)
115
- @display_name = args[:display_name] if args.key?(:display_name)
116
- @etag = args[:etag] if args.key?(:etag)
117
- @oauth2_client_id = args[:oauth2_client_id] if args.key?(:oauth2_client_id)
108
+ @roles = args[:roles] if args.key?(:roles)
118
109
  end
119
110
  end
120
111
 
121
- # The service account create request.
122
- class CreateServiceAccountRequest
112
+ # The service account sign blob request.
113
+ class SignBlobRequest
123
114
  include Google::Apis::Core::Hashable
124
115
 
125
- # Required. The account id that is used to generate the service account email
126
- # address and a stable unique id. It is unique within a project, must be 1-63
127
- # characters long, and match the regular expression [a-z]([-a-z0-9]*[a-z0-9]) to
128
- # comply with RFC1035.
129
- # Corresponds to the JSON property `accountId`
116
+ # The bytes to sign.
117
+ # Corresponds to the JSON property `bytesToSign`
130
118
  # @return [String]
131
- attr_accessor :account_id
132
-
133
- # A service account in the Identity and Access Management API. To create a
134
- # service account, you specify the project_id and account_id for the account.
135
- # The account_id is unique within the project, and used to generate the service
136
- # account email address and a stable unique id. All other methods can identify
137
- # accounts using the format "projects/`project`/serviceAccounts/`account`".
138
- # Using '-' as a wildcard for the project, will infer the project from the
139
- # account. The account value can be the email address or the unique_id of the
140
- # service account.
141
- # Corresponds to the JSON property `serviceAccount`
142
- # @return [Google::Apis::IamV1::ServiceAccount]
143
- attr_accessor :service_account
119
+ attr_accessor :bytes_to_sign
144
120
 
145
121
  def initialize(**args)
146
122
  update!(**args)
@@ -148,36 +124,79 @@ module Google
148
124
 
149
125
  # Update properties of this object
150
126
  def update!(**args)
151
- @account_id = args[:account_id] if args.key?(:account_id)
152
- @service_account = args[:service_account] if args.key?(:service_account)
127
+ @bytes_to_sign = args[:bytes_to_sign] if args.key?(:bytes_to_sign)
153
128
  end
154
129
  end
155
130
 
156
- # A generic empty message that you can re-use to avoid defining duplicated empty
157
- # messages in your APIs. A typical example is to use it as the request or the
158
- # response type of an API method. For instance: service Foo ` rpc Bar(google.
159
- # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
160
- # `Empty` is empty JSON object ````.
161
- class Empty
131
+ # A role in the Identity and Access Management API.
132
+ class Role
162
133
  include Google::Apis::Core::Hashable
163
134
 
135
+ # Optional. A human-readable title for the role. Typically this
136
+ # is limited to 100 UTF-8 bytes.
137
+ # Corresponds to the JSON property `title`
138
+ # @return [String]
139
+ attr_accessor :title
140
+
141
+ # The name of the role.
142
+ # When Role is used in CreateRole, the role name must not be set.
143
+ # When Role is used in output and other input such as UpdateRole, the role
144
+ # name is the complete path, e.g., roles/logging.viewer for curated roles
145
+ # and organizations/`ORGANIZATION_ID`/roles/logging.viewer for custom roles.
146
+ # Corresponds to the JSON property `name`
147
+ # @return [String]
148
+ attr_accessor :name
149
+
150
+ # Optional. A human-readable description for the role.
151
+ # Corresponds to the JSON property `description`
152
+ # @return [String]
153
+ attr_accessor :description
154
+
164
155
  def initialize(**args)
165
156
  update!(**args)
166
157
  end
167
158
 
168
159
  # Update properties of this object
169
160
  def update!(**args)
161
+ @title = args[:title] if args.key?(:title)
162
+ @name = args[:name] if args.key?(:name)
163
+ @description = args[:description] if args.key?(:description)
170
164
  end
171
165
  end
172
166
 
173
- # The service account keys list response.
174
- class ListServiceAccountKeysResponse
167
+ # Request message for `SetIamPolicy` method.
168
+ class SetIamPolicyRequest
175
169
  include Google::Apis::Core::Hashable
176
170
 
177
- # The public keys for the service account.
178
- # Corresponds to the JSON property `keys`
179
- # @return [Array<Google::Apis::IamV1::ServiceAccountKey>]
180
- attr_accessor :keys
171
+ # Defines an Identity and Access Management (IAM) policy. It is used to
172
+ # specify access control policies for Cloud Platform resources.
173
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
174
+ # `members` to a `role`, where the members can be user accounts, Google groups,
175
+ # Google domains, and service accounts. A `role` is a named list of permissions
176
+ # defined by IAM.
177
+ # **Example**
178
+ # `
179
+ # "bindings": [
180
+ # `
181
+ # "role": "roles/owner",
182
+ # "members": [
183
+ # "user:mike@example.com",
184
+ # "group:admins@example.com",
185
+ # "domain:google.com",
186
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
187
+ # ]
188
+ # `,
189
+ # `
190
+ # "role": "roles/viewer",
191
+ # "members": ["user:sean@example.com"]
192
+ # `
193
+ # ]
194
+ # `
195
+ # For a description of IAM and its features, see the
196
+ # [IAM developer's guide](https://cloud.google.com/iam).
197
+ # Corresponds to the JSON property `policy`
198
+ # @return [Google::Apis::IamV1::Policy]
199
+ attr_accessor :policy
181
200
 
182
201
  def initialize(**args)
183
202
  update!(**args)
@@ -185,41 +204,38 @@ module Google
185
204
 
186
205
  # Update properties of this object
187
206
  def update!(**args)
188
- @keys = args[:keys] if args.key?(:keys)
207
+ @policy = args[:policy] if args.key?(:policy)
189
208
  end
190
209
  end
191
210
 
192
- # Represents a service account key. A service account can have 0 or more key
193
- # pairs. The private keys for these are not stored by Google. ServiceAccountKeys
194
- # are immutable.
195
- class ServiceAccountKey
211
+ # Associates `members` with a `role`.
212
+ class Binding
196
213
  include Google::Apis::Core::Hashable
197
214
 
198
- # The resource name of the service account key in the format "projects/`project`/
199
- # serviceAccounts/`email`/keys/`key`".
200
- # Corresponds to the JSON property `name`
201
- # @return [String]
202
- attr_accessor :name
203
-
204
- # The type of the private key.
205
- # Corresponds to the JSON property `privateKeyType`
206
- # @return [String]
207
- attr_accessor :private_key_type
208
-
209
- # The key data.
210
- # Corresponds to the JSON property `privateKeyData`
211
- # @return [String]
212
- attr_accessor :private_key_data
213
-
214
- # The key can be used after this timestamp.
215
- # Corresponds to the JSON property `validAfterTime`
216
- # @return [String]
217
- attr_accessor :valid_after_time
215
+ # Specifies the identities requesting access for a Cloud Platform resource.
216
+ # `members` can have the following values:
217
+ # * `allUsers`: A special identifier that represents anyone who is
218
+ # on the internet; with or without a Google account.
219
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
220
+ # who is authenticated with a Google account or a service account.
221
+ # * `user:`emailid``: An email address that represents a specific Google
222
+ # account. For example, `alice@gmail.com` or `joe@example.com`.
223
+ # * `serviceAccount:`emailid``: An email address that represents a service
224
+ # account. For example, `my-other-app@appspot.gserviceaccount.com`.
225
+ # * `group:`emailid``: An email address that represents a Google group.
226
+ # For example, `admins@example.com`.
227
+ # * `domain:`domain``: A Google Apps domain name that represents all the
228
+ # users of that domain. For example, `google.com` or `example.com`.
229
+ # Corresponds to the JSON property `members`
230
+ # @return [Array<String>]
231
+ attr_accessor :members
218
232
 
219
- # The key can be used before this timestamp.
220
- # Corresponds to the JSON property `validBeforeTime`
233
+ # Role that is assigned to `members`.
234
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
235
+ # Required
236
+ # Corresponds to the JSON property `role`
221
237
  # @return [String]
222
- attr_accessor :valid_before_time
238
+ attr_accessor :role
223
239
 
224
240
  def initialize(**args)
225
241
  update!(**args)
@@ -227,22 +243,22 @@ module Google
227
243
 
228
244
  # Update properties of this object
229
245
  def update!(**args)
230
- @name = args[:name] if args.key?(:name)
231
- @private_key_type = args[:private_key_type] if args.key?(:private_key_type)
232
- @private_key_data = args[:private_key_data] if args.key?(:private_key_data)
233
- @valid_after_time = args[:valid_after_time] if args.key?(:valid_after_time)
234
- @valid_before_time = args[:valid_before_time] if args.key?(:valid_before_time)
246
+ @members = args[:members] if args.key?(:members)
247
+ @role = args[:role] if args.key?(:role)
235
248
  end
236
249
  end
237
250
 
238
- # The service account key create request.
239
- class CreateServiceAccountKeyRequest
251
+ # The grantable role query request.
252
+ class QueryGrantableRolesRequest
240
253
  include Google::Apis::Core::Hashable
241
254
 
242
- # The type of the key requested. GOOGLE_CREDENTIALS is the default key type.
243
- # Corresponds to the JSON property `privateKeyType`
255
+ # Required. The full resource name to query from the list of grantable roles.
256
+ # The name follows the Google Cloud Platform resource format.
257
+ # For example, a Cloud Platform project with id `my-project` will be named
258
+ # `//cloudresourcemanager.googleapis.com/projects/my-project`.
259
+ # Corresponds to the JSON property `fullResourceName`
244
260
  # @return [String]
245
- attr_accessor :private_key_type
261
+ attr_accessor :full_resource_name
246
262
 
247
263
  def initialize(**args)
248
264
  update!(**args)
@@ -250,42 +266,89 @@ module Google
250
266
 
251
267
  # Update properties of this object
252
268
  def update!(**args)
253
- @private_key_type = args[:private_key_type] if args.key?(:private_key_type)
269
+ @full_resource_name = args[:full_resource_name] if args.key?(:full_resource_name)
254
270
  end
255
271
  end
256
272
 
257
- # The service account sign blob request.
258
- class SignBlobRequest
273
+ # A generic empty message that you can re-use to avoid defining duplicated
274
+ # empty messages in your APIs. A typical example is to use it as the request
275
+ # or the response type of an API method. For instance:
276
+ # service Foo `
277
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
278
+ # `
279
+ # The JSON representation for `Empty` is empty JSON object ````.
280
+ class Empty
259
281
  include Google::Apis::Core::Hashable
260
282
 
261
- # The bytes to sign
262
- # Corresponds to the JSON property `bytesToSign`
263
- # @return [String]
264
- attr_accessor :bytes_to_sign
265
-
266
283
  def initialize(**args)
267
284
  update!(**args)
268
285
  end
269
286
 
270
287
  # Update properties of this object
271
288
  def update!(**args)
272
- @bytes_to_sign = args[:bytes_to_sign] if args.key?(:bytes_to_sign)
273
289
  end
274
290
  end
275
291
 
276
- # The service account sign blob response.
277
- class SignBlobResponse
292
+ # A service account in the Identity and Access Management API.
293
+ # To create a service account, specify the `project_id` and the `account_id`
294
+ # for the account. The `account_id` is unique within the project, and is used
295
+ # to generate the service account email address and a stable
296
+ # `unique_id`.
297
+ # If the account already exists, the account's resource name is returned
298
+ # in util::Status's ResourceInfo.resource_name in the format of
299
+ # projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL`. The caller can
300
+ # use the name in other methods to access the account.
301
+ # All other methods can identify the service account using the format
302
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
303
+ # Using `-` as a wildcard for the project will infer the project from
304
+ # the account. The `account` value can be the `email` address or the
305
+ # `unique_id` of the service account.
306
+ class ServiceAccount
278
307
  include Google::Apis::Core::Hashable
279
308
 
280
- # The id of the key used to sign the blob.
281
- # Corresponds to the JSON property `keyId`
309
+ # @OutputOnly The email address of the service account.
310
+ # Corresponds to the JSON property `email`
282
311
  # @return [String]
283
- attr_accessor :key_id
312
+ attr_accessor :email
284
313
 
285
- # The signed blob.
286
- # Corresponds to the JSON property `signature`
314
+ # The resource name of the service account in the following format:
315
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
316
+ # Requests using `-` as a wildcard for the project will infer the project
317
+ # from the `account` and the `account` value can be the `email` address or
318
+ # the `unique_id` of the service account.
319
+ # In responses the resource name will always be in the format
320
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
321
+ # Corresponds to the JSON property `name`
287
322
  # @return [String]
288
- attr_accessor :signature
323
+ attr_accessor :name
324
+
325
+ # @OutputOnly The id of the project that owns the service account.
326
+ # Corresponds to the JSON property `projectId`
327
+ # @return [String]
328
+ attr_accessor :project_id
329
+
330
+ # @OutputOnly. The OAuth2 client id for the service account.
331
+ # This is used in conjunction with the OAuth2 clientconfig API to make
332
+ # three legged OAuth2 (3LO) flows to access the data of Google users.
333
+ # Corresponds to the JSON property `oauth2ClientId`
334
+ # @return [String]
335
+ attr_accessor :oauth2_client_id
336
+
337
+ # @OutputOnly The unique and stable id of the service account.
338
+ # Corresponds to the JSON property `uniqueId`
339
+ # @return [String]
340
+ attr_accessor :unique_id
341
+
342
+ # Optional. A user-specified description of the service account. Must be
343
+ # fewer than 100 UTF-8 bytes.
344
+ # Corresponds to the JSON property `displayName`
345
+ # @return [String]
346
+ attr_accessor :display_name
347
+
348
+ # Used to perform a consistent read-modify-write.
349
+ # Corresponds to the JSON property `etag`
350
+ # @return [String]
351
+ attr_accessor :etag
289
352
 
290
353
  def initialize(**args)
291
354
  update!(**args)
@@ -293,52 +356,25 @@ module Google
293
356
 
294
357
  # Update properties of this object
295
358
  def update!(**args)
296
- @key_id = args[:key_id] if args.key?(:key_id)
297
- @signature = args[:signature] if args.key?(:signature)
359
+ @email = args[:email] if args.key?(:email)
360
+ @name = args[:name] if args.key?(:name)
361
+ @project_id = args[:project_id] if args.key?(:project_id)
362
+ @oauth2_client_id = args[:oauth2_client_id] if args.key?(:oauth2_client_id)
363
+ @unique_id = args[:unique_id] if args.key?(:unique_id)
364
+ @display_name = args[:display_name] if args.key?(:display_name)
365
+ @etag = args[:etag] if args.key?(:etag)
298
366
  end
299
367
  end
300
368
 
301
- # Defines an Identity and Access Management (IAM) policy. It is used to specify
302
- # access control policies for Cloud Platform resources. A `Policy` consists of a
303
- # list of `bindings`. A `Binding` binds a list of `members` to a `role`, where
304
- # the members can be user accounts, Google groups, Google domains, and service
305
- # accounts. A `role` is a named list of permissions defined by IAM. **Example** `
306
- # "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com", "
307
- # group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
308
- # appspot.gserviceaccount.com"] `, ` "role": "roles/viewer", "members": ["user:
309
- # sean@example.com"] ` ] ` For a description of IAM and its features, see the [
310
- # IAM developer's guide](https://cloud.google.com/iam).
311
- class Policy
369
+ # Response message for `TestIamPermissions` method.
370
+ class TestIamPermissionsResponse
312
371
  include Google::Apis::Core::Hashable
313
372
 
314
- # Version of the `Policy`. The default version is 0.
315
- # Corresponds to the JSON property `version`
316
- # @return [Fixnum]
317
- attr_accessor :version
318
-
319
- # Associates a list of `members` to a `role`. Multiple `bindings` must not be
320
- # specified for the same `role`. `bindings` with no members will result in an
321
- # error.
322
- # Corresponds to the JSON property `bindings`
323
- # @return [Array<Google::Apis::IamV1::Binding>]
324
- attr_accessor :bindings
325
-
326
- #
327
- # Corresponds to the JSON property `rules`
328
- # @return [Array<Google::Apis::IamV1::Rule>]
329
- attr_accessor :rules
330
-
331
- # `etag` is used for optimistic concurrency control as a way to help prevent
332
- # simultaneous updates of a policy from overwriting each other. It is strongly
333
- # suggested that systems make use of the `etag` in the read-modify-write cycle
334
- # to perform policy updates in order to avoid race conditions: An `etag` is
335
- # returned in the response to `getIamPolicy`, and systems are expected to put
336
- # that etag in the request to `setIamPolicy` to ensure that their change will be
337
- # applied to the same version of the policy. If no `etag` is provided in the
338
- # call to `setIamPolicy`, then the existing policy is overwritten blindly.
339
- # Corresponds to the JSON property `etag`
340
- # @return [String]
341
- attr_accessor :etag
373
+ # A subset of `TestPermissionsRequest.permissions` that the caller is
374
+ # allowed.
375
+ # Corresponds to the JSON property `permissions`
376
+ # @return [Array<String>]
377
+ attr_accessor :permissions
342
378
 
343
379
  def initialize(**args)
344
380
  update!(**args)
@@ -346,38 +382,18 @@ module Google
346
382
 
347
383
  # Update properties of this object
348
384
  def update!(**args)
349
- @version = args[:version] if args.key?(:version)
350
- @bindings = args[:bindings] if args.key?(:bindings)
351
- @rules = args[:rules] if args.key?(:rules)
352
- @etag = args[:etag] if args.key?(:etag)
385
+ @permissions = args[:permissions] if args.key?(:permissions)
353
386
  end
354
387
  end
355
388
 
356
- # Associates `members` with a `role`.
357
- class Binding
389
+ # The service account keys list response.
390
+ class ListServiceAccountKeysResponse
358
391
  include Google::Apis::Core::Hashable
359
392
 
360
- # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
361
- # , or `roles/owner`. Required
362
- # Corresponds to the JSON property `role`
363
- # @return [String]
364
- attr_accessor :role
365
-
366
- # Specifies the identities requesting access for a Cloud Platform resource. `
367
- # members` can have the following values: * `allUsers`: A special identifier
368
- # that represents anyone who is on the internet; with or without a Google
369
- # account. * `allAuthenticatedUsers`: A special identifier that represents
370
- # anyone who is authenticated with a Google account or a service account. * `
371
- # user:`emailid``: An email address that represents a specific Google account.
372
- # For example, `alice@gmail.com` or `joe@example.com`. * `serviceAccount:`
373
- # emailid``: An email address that represents a service account. For example, `
374
- # my-other-app@appspot.gserviceaccount.com`. * `group:`emailid``: An email
375
- # address that represents a Google group. For example, `admins@example.com`. * `
376
- # domain:`domain``: A Google Apps domain name that represents all the users of
377
- # that domain. For example, `google.com` or `example.com`.
378
- # Corresponds to the JSON property `members`
379
- # @return [Array<String>]
380
- attr_accessor :members
393
+ # The public keys for the service account.
394
+ # Corresponds to the JSON property `keys`
395
+ # @return [Array<Google::Apis::IamV1::ServiceAccountKey>]
396
+ attr_accessor :keys
381
397
 
382
398
  def initialize(**args)
383
399
  update!(**args)
@@ -385,54 +401,65 @@ module Google
385
401
 
386
402
  # Update properties of this object
387
403
  def update!(**args)
388
- @role = args[:role] if args.key?(:role)
389
- @members = args[:members] if args.key?(:members)
404
+ @keys = args[:keys] if args.key?(:keys)
390
405
  end
391
406
  end
392
407
 
393
- # A rule to be applied in a Policy.
394
- class Rule
408
+ # Represents a service account key.
409
+ # A service account has two sets of key-pairs: user-managed, and
410
+ # system-managed.
411
+ # User-managed key-pairs can be created and deleted by users. Users are
412
+ # responsible for rotating these keys periodically to ensure security of
413
+ # their service accounts. Users retain the private key of these key-pairs,
414
+ # and Google retains ONLY the public key.
415
+ # System-managed key-pairs are managed automatically by Google, and rotated
416
+ # daily without user intervention. The private key never leaves Google's
417
+ # servers to maximize security.
418
+ # Public keys for all service accounts are also published at the OAuth2
419
+ # Service Account API.
420
+ class ServiceAccountKey
395
421
  include Google::Apis::Core::Hashable
396
422
 
397
- # Human-readable description of the rule.
398
- # Corresponds to the JSON property `description`
423
+ # The key can be used after this timestamp.
424
+ # Corresponds to the JSON property `validAfterTime`
399
425
  # @return [String]
400
- attr_accessor :description
426
+ attr_accessor :valid_after_time
401
427
 
402
- # A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value
403
- # of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.
404
- # *') matches all verbs.
405
- # Corresponds to the JSON property `permissions`
406
- # @return [Array<String>]
407
- attr_accessor :permissions
428
+ # The output format for the private key.
429
+ # Only provided in `CreateServiceAccountKey` responses, not
430
+ # in `GetServiceAccountKey` or `ListServiceAccountKey` responses.
431
+ # Google never exposes system-managed private keys, and never retains
432
+ # user-managed private keys.
433
+ # Corresponds to the JSON property `privateKeyType`
434
+ # @return [String]
435
+ attr_accessor :private_key_type
408
436
 
409
- # Required
410
- # Corresponds to the JSON property `action`
437
+ # The private key data. Only provided in `CreateServiceAccountKey`
438
+ # responses.
439
+ # Corresponds to the JSON property `privateKeyData`
411
440
  # @return [String]
412
- attr_accessor :action
441
+ attr_accessor :private_key_data
413
442
 
414
- # The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in this set of entries.
415
- # Corresponds to the JSON property `in`
416
- # @return [Array<String>]
417
- attr_accessor :in
443
+ # The public key data. Only provided in `GetServiceAccountKey` responses.
444
+ # Corresponds to the JSON property `publicKeyData`
445
+ # @return [String]
446
+ attr_accessor :public_key_data
418
447
 
419
- # The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is not in this set of
420
- # entries. The format for in and not_in entries is the same as for members in a
421
- # Binding (see google/iam/v1/policy.proto).
422
- # Corresponds to the JSON property `notIn`
423
- # @return [Array<String>]
424
- attr_accessor :not_in
448
+ # The resource name of the service account key in the following format
449
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL`/keys/`key``.
450
+ # Corresponds to the JSON property `name`
451
+ # @return [String]
452
+ attr_accessor :name
425
453
 
426
- # Additional restrictions that must be met
427
- # Corresponds to the JSON property `conditions`
428
- # @return [Array<Google::Apis::IamV1::Condition>]
429
- attr_accessor :conditions
454
+ # The key can be used before this timestamp.
455
+ # Corresponds to the JSON property `validBeforeTime`
456
+ # @return [String]
457
+ attr_accessor :valid_before_time
430
458
 
431
- # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries
432
- # that match the LOG action.
433
- # Corresponds to the JSON property `logConfig`
434
- # @return [Array<Google::Apis::IamV1::LogConfig>]
435
- attr_accessor :log_config
459
+ # Specifies the algorithm (and possibly key size) for the key.
460
+ # Corresponds to the JSON property `keyAlgorithm`
461
+ # @return [String]
462
+ attr_accessor :key_algorithm
436
463
 
437
464
  def initialize(**args)
438
465
  update!(**args)
@@ -440,50 +467,55 @@ module Google
440
467
 
441
468
  # Update properties of this object
442
469
  def update!(**args)
443
- @description = args[:description] if args.key?(:description)
444
- @permissions = args[:permissions] if args.key?(:permissions)
445
- @action = args[:action] if args.key?(:action)
446
- @in = args[:in] if args.key?(:in)
447
- @not_in = args[:not_in] if args.key?(:not_in)
448
- @conditions = args[:conditions] if args.key?(:conditions)
449
- @log_config = args[:log_config] if args.key?(:log_config)
470
+ @valid_after_time = args[:valid_after_time] if args.key?(:valid_after_time)
471
+ @private_key_type = args[:private_key_type] if args.key?(:private_key_type)
472
+ @private_key_data = args[:private_key_data] if args.key?(:private_key_data)
473
+ @public_key_data = args[:public_key_data] if args.key?(:public_key_data)
474
+ @name = args[:name] if args.key?(:name)
475
+ @valid_before_time = args[:valid_before_time] if args.key?(:valid_before_time)
476
+ @key_algorithm = args[:key_algorithm] if args.key?(:key_algorithm)
450
477
  end
451
478
  end
452
479
 
453
- # A condition to be met.
454
- class Condition
480
+ # The service account key create request.
481
+ class CreateServiceAccountKeyRequest
455
482
  include Google::Apis::Core::Hashable
456
483
 
457
- # Trusted attributes supplied by the IAM system.
458
- # Corresponds to the JSON property `iam`
484
+ # Which type of key and algorithm to use for the key.
485
+ # The default is currently a 2K RSA key. However this may change in the
486
+ # future.
487
+ # Corresponds to the JSON property `keyAlgorithm`
459
488
  # @return [String]
460
- attr_accessor :iam
489
+ attr_accessor :key_algorithm
461
490
 
462
- # Trusted attributes supplied by any service that owns resources and uses the
463
- # IAM system for access control.
464
- # Corresponds to the JSON property `sys`
491
+ # The output format of the private key. `GOOGLE_CREDENTIALS_FILE` is the
492
+ # default output format.
493
+ # Corresponds to the JSON property `privateKeyType`
465
494
  # @return [String]
466
- attr_accessor :sys
495
+ attr_accessor :private_key_type
467
496
 
468
- # Trusted attributes discharged by the service.
469
- # Corresponds to the JSON property `svc`
470
- # @return [String]
471
- attr_accessor :svc
497
+ def initialize(**args)
498
+ update!(**args)
499
+ end
472
500
 
473
- # An operator to apply the subject with.
474
- # Corresponds to the JSON property `op`
475
- # @return [String]
476
- attr_accessor :op
501
+ # Update properties of this object
502
+ def update!(**args)
503
+ @key_algorithm = args[:key_algorithm] if args.key?(:key_algorithm)
504
+ @private_key_type = args[:private_key_type] if args.key?(:private_key_type)
505
+ end
506
+ end
477
507
 
478
- # The object of the condition. Exactly one of these must be set.
479
- # Corresponds to the JSON property `value`
480
- # @return [String]
481
- attr_accessor :value
508
+ # Request message for `TestIamPermissions` method.
509
+ class TestIamPermissionsRequest
510
+ include Google::Apis::Core::Hashable
482
511
 
483
- # The objects of the condition. This is mutually exclusive with 'value'.
484
- # Corresponds to the JSON property `values`
512
+ # The set of permissions to check for the `resource`. Permissions with
513
+ # wildcards (such as '*' or 'storage.*') are not allowed. For more
514
+ # information see
515
+ # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
516
+ # Corresponds to the JSON property `permissions`
485
517
  # @return [Array<String>]
486
- attr_accessor :values
518
+ attr_accessor :permissions
487
519
 
488
520
  def initialize(**args)
489
521
  update!(**args)
@@ -491,44 +523,23 @@ module Google
491
523
 
492
524
  # Update properties of this object
493
525
  def update!(**args)
494
- @iam = args[:iam] if args.key?(:iam)
495
- @sys = args[:sys] if args.key?(:sys)
496
- @svc = args[:svc] if args.key?(:svc)
497
- @op = args[:op] if args.key?(:op)
498
- @value = args[:value] if args.key?(:value)
499
- @values = args[:values] if args.key?(:values)
526
+ @permissions = args[:permissions] if args.key?(:permissions)
500
527
  end
501
528
  end
502
529
 
503
- # Specifies what kind of log the caller must write Increment a streamz counter
504
- # with the specified metric and field names. Metric names should start with a '/'
505
- # , generally be lowercase-only, and end in "_count". Field names should not
506
- # contain an initial slash. The actual exported metric names will have "/iam/
507
- # policy" prepended. Field names correspond to IAM request parameters and field
508
- # values are their respective values. At present only "iam_principal",
509
- # corresponding to IAMContext.principal, is supported. Examples: counter `
510
- # metric: "/debug_access_count" field: "iam_principal" ` ==> increment counter /
511
- # iam/policy/backend_debug_access_count `iam_principal=[value of IAMContext.
512
- # principal]` At this time we do not support: * multiple field names (though
513
- # this may be supported in the future) * decrementing the counter * incrementing
514
- # it by anything other than 1
515
- class LogConfig
530
+ # The service account sign blob response.
531
+ class SignBlobResponse
516
532
  include Google::Apis::Core::Hashable
517
533
 
518
- # Options for counters
519
- # Corresponds to the JSON property `counter`
520
- # @return [Google::Apis::IamV1::CounterOptions]
521
- attr_accessor :counter
522
-
523
- # Write a Data Access (Gin) log
524
- # Corresponds to the JSON property `dataAccess`
525
- # @return [Google::Apis::IamV1::DataAccessOptions]
526
- attr_accessor :data_access
534
+ # The signed blob.
535
+ # Corresponds to the JSON property `signature`
536
+ # @return [String]
537
+ attr_accessor :signature
527
538
 
528
- # Write a Cloud Audit log
529
- # Corresponds to the JSON property `cloudAudit`
530
- # @return [Google::Apis::IamV1::CloudAuditOptions]
531
- attr_accessor :cloud_audit
539
+ # The id of the key used to sign the blob.
540
+ # Corresponds to the JSON property `keyId`
541
+ # @return [String]
542
+ attr_accessor :key_id
532
543
 
533
544
  def initialize(**args)
534
545
  update!(**args)
@@ -536,25 +547,24 @@ module Google
536
547
 
537
548
  # Update properties of this object
538
549
  def update!(**args)
539
- @counter = args[:counter] if args.key?(:counter)
540
- @data_access = args[:data_access] if args.key?(:data_access)
541
- @cloud_audit = args[:cloud_audit] if args.key?(:cloud_audit)
550
+ @signature = args[:signature] if args.key?(:signature)
551
+ @key_id = args[:key_id] if args.key?(:key_id)
542
552
  end
543
553
  end
544
554
 
545
- # Options for counters
546
- class CounterOptions
555
+ # The service account sign JWT response.
556
+ class SignJwtResponse
547
557
  include Google::Apis::Core::Hashable
548
558
 
549
- # The metric to update.
550
- # Corresponds to the JSON property `metric`
559
+ # The id of the key used to sign the JWT.
560
+ # Corresponds to the JSON property `keyId`
551
561
  # @return [String]
552
- attr_accessor :metric
562
+ attr_accessor :key_id
553
563
 
554
- # The field value to attribute.
555
- # Corresponds to the JSON property `field`
564
+ # The signed JWT.
565
+ # Corresponds to the JSON property `signedJwt`
556
566
  # @return [String]
557
- attr_accessor :field
567
+ attr_accessor :signed_jwt
558
568
 
559
569
  def initialize(**args)
560
570
  update!(**args)
@@ -562,54 +572,106 @@ module Google
562
572
 
563
573
  # Update properties of this object
564
574
  def update!(**args)
565
- @metric = args[:metric] if args.key?(:metric)
566
- @field = args[:field] if args.key?(:field)
575
+ @key_id = args[:key_id] if args.key?(:key_id)
576
+ @signed_jwt = args[:signed_jwt] if args.key?(:signed_jwt)
567
577
  end
568
578
  end
569
579
 
570
- # Write a Data Access (Gin) log
571
- class DataAccessOptions
580
+ # Defines an Identity and Access Management (IAM) policy. It is used to
581
+ # specify access control policies for Cloud Platform resources.
582
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
583
+ # `members` to a `role`, where the members can be user accounts, Google groups,
584
+ # Google domains, and service accounts. A `role` is a named list of permissions
585
+ # defined by IAM.
586
+ # **Example**
587
+ # `
588
+ # "bindings": [
589
+ # `
590
+ # "role": "roles/owner",
591
+ # "members": [
592
+ # "user:mike@example.com",
593
+ # "group:admins@example.com",
594
+ # "domain:google.com",
595
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
596
+ # ]
597
+ # `,
598
+ # `
599
+ # "role": "roles/viewer",
600
+ # "members": ["user:sean@example.com"]
601
+ # `
602
+ # ]
603
+ # `
604
+ # For a description of IAM and its features, see the
605
+ # [IAM developer's guide](https://cloud.google.com/iam).
606
+ class Policy
572
607
  include Google::Apis::Core::Hashable
573
608
 
609
+ # Associates a list of `members` to a `role`.
610
+ # Multiple `bindings` must not be specified for the same `role`.
611
+ # `bindings` with no members will result in an error.
612
+ # Corresponds to the JSON property `bindings`
613
+ # @return [Array<Google::Apis::IamV1::Binding>]
614
+ attr_accessor :bindings
615
+
616
+ # `etag` is used for optimistic concurrency control as a way to help
617
+ # prevent simultaneous updates of a policy from overwriting each other.
618
+ # It is strongly suggested that systems make use of the `etag` in the
619
+ # read-modify-write cycle to perform policy updates in order to avoid race
620
+ # conditions: An `etag` is returned in the response to `getIamPolicy`, and
621
+ # systems are expected to put that etag in the request to `setIamPolicy` to
622
+ # ensure that their change will be applied to the same version of the policy.
623
+ # If no `etag` is provided in the call to `setIamPolicy`, then the existing
624
+ # policy is overwritten blindly.
625
+ # Corresponds to the JSON property `etag`
626
+ # @return [String]
627
+ attr_accessor :etag
628
+
629
+ # Version of the `Policy`. The default version is 0.
630
+ # Corresponds to the JSON property `version`
631
+ # @return [Fixnum]
632
+ attr_accessor :version
633
+
574
634
  def initialize(**args)
575
635
  update!(**args)
576
636
  end
577
637
 
578
638
  # Update properties of this object
579
639
  def update!(**args)
640
+ @bindings = args[:bindings] if args.key?(:bindings)
641
+ @etag = args[:etag] if args.key?(:etag)
642
+ @version = args[:version] if args.key?(:version)
580
643
  end
581
644
  end
582
645
 
583
- # Write a Cloud Audit log
584
- class CloudAuditOptions
646
+ # The service account sign JWT request.
647
+ class SignJwtRequest
585
648
  include Google::Apis::Core::Hashable
586
649
 
650
+ # The JWT payload to sign, a JSON JWT Claim set.
651
+ # Corresponds to the JSON property `payload`
652
+ # @return [String]
653
+ attr_accessor :payload
654
+
587
655
  def initialize(**args)
588
656
  update!(**args)
589
657
  end
590
658
 
591
659
  # Update properties of this object
592
660
  def update!(**args)
661
+ @payload = args[:payload] if args.key?(:payload)
593
662
  end
594
663
  end
595
664
 
596
- # Request message for `SetIamPolicy` method.
597
- class SetIamPolicyRequest
665
+ # Audit log information specific to Cloud IAM. This message is serialized
666
+ # as an `Any` type in the `ServiceData` message of an
667
+ # `AuditLog` message.
668
+ class AuditData
598
669
  include Google::Apis::Core::Hashable
599
670
 
600
- # Defines an Identity and Access Management (IAM) policy. It is used to specify
601
- # access control policies for Cloud Platform resources. A `Policy` consists of a
602
- # list of `bindings`. A `Binding` binds a list of `members` to a `role`, where
603
- # the members can be user accounts, Google groups, Google domains, and service
604
- # accounts. A `role` is a named list of permissions defined by IAM. **Example** `
605
- # "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com", "
606
- # group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
607
- # appspot.gserviceaccount.com"] `, ` "role": "roles/viewer", "members": ["user:
608
- # sean@example.com"] ` ] ` For a description of IAM and its features, see the [
609
- # IAM developer's guide](https://cloud.google.com/iam).
610
- # Corresponds to the JSON property `policy`
611
- # @return [Google::Apis::IamV1::Policy]
612
- attr_accessor :policy
671
+ # The difference delta between two policies.
672
+ # Corresponds to the JSON property `policyDelta`
673
+ # @return [Google::Apis::IamV1::PolicyDelta]
674
+ attr_accessor :policy_delta
613
675
 
614
676
  def initialize(**args)
615
677
  update!(**args)
@@ -617,20 +679,34 @@ module Google
617
679
 
618
680
  # Update properties of this object
619
681
  def update!(**args)
620
- @policy = args[:policy] if args.key?(:policy)
682
+ @policy_delta = args[:policy_delta] if args.key?(:policy_delta)
621
683
  end
622
684
  end
623
685
 
624
- # Request message for `TestIamPermissions` method.
625
- class TestIamPermissionsRequest
686
+ # One delta entry for Binding. Each individual change (only one member in each
687
+ # entry) to a binding will be a separate entry.
688
+ class BindingDelta
626
689
  include Google::Apis::Core::Hashable
627
690
 
628
- # The set of permissions to check for the `resource`. Permissions with wildcards
629
- # (such as '*' or 'storage.*') are not allowed. For more information see IAM
630
- # Overview.
631
- # Corresponds to the JSON property `permissions`
632
- # @return [Array<String>]
633
- attr_accessor :permissions
691
+ # Role that is assigned to `members`.
692
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
693
+ # Required
694
+ # Corresponds to the JSON property `role`
695
+ # @return [String]
696
+ attr_accessor :role
697
+
698
+ # The action that was performed on a Binding.
699
+ # Required
700
+ # Corresponds to the JSON property `action`
701
+ # @return [String]
702
+ attr_accessor :action
703
+
704
+ # A single identity requesting access for a Cloud Platform resource.
705
+ # Follows the same format of Binding.members.
706
+ # Required
707
+ # Corresponds to the JSON property `member`
708
+ # @return [String]
709
+ attr_accessor :member
634
710
 
635
711
  def initialize(**args)
636
712
  update!(**args)
@@ -638,18 +714,20 @@ module Google
638
714
 
639
715
  # Update properties of this object
640
716
  def update!(**args)
641
- @permissions = args[:permissions] if args.key?(:permissions)
717
+ @role = args[:role] if args.key?(:role)
718
+ @action = args[:action] if args.key?(:action)
719
+ @member = args[:member] if args.key?(:member)
642
720
  end
643
721
  end
644
722
 
645
- # Response message for `TestIamPermissions` method.
646
- class TestIamPermissionsResponse
723
+ # The difference delta between two policies.
724
+ class PolicyDelta
647
725
  include Google::Apis::Core::Hashable
648
726
 
649
- # A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
650
- # Corresponds to the JSON property `permissions`
651
- # @return [Array<String>]
652
- attr_accessor :permissions
727
+ # The delta for Bindings between two policies.
728
+ # Corresponds to the JSON property `bindingDeltas`
729
+ # @return [Array<Google::Apis::IamV1::BindingDelta>]
730
+ attr_accessor :binding_deltas
653
731
 
654
732
  def initialize(**args)
655
733
  update!(**args)
@@ -657,7 +735,7 @@ module Google
657
735
 
658
736
  # Update properties of this object
659
737
  def update!(**args)
660
- @permissions = args[:permissions] if args.key?(:permissions)
738
+ @binding_deltas = args[:binding_deltas] if args.key?(:binding_deltas)
661
739
  end
662
740
  end
663
741
  end