google-api-client 0.9.8 → 0.10.2

Sign up to get free protection for your applications and to get access to all the features.
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
@@ -22,302 +22,320 @@ module Google
22
22
  module Apis
23
23
  module IamV1
24
24
 
25
+ class CreateServiceAccountRequest
26
+ class Representation < Google::Apis::Core::JsonRepresentation; end
27
+
28
+ include Google::Apis::Core::JsonObjectSupport
29
+ end
30
+
25
31
  class ListServiceAccountsResponse
26
32
  class Representation < Google::Apis::Core::JsonRepresentation; end
27
33
 
28
34
  include Google::Apis::Core::JsonObjectSupport
29
35
  end
30
36
 
31
- class ServiceAccount
37
+ class QueryGrantableRolesResponse
32
38
  class Representation < Google::Apis::Core::JsonRepresentation; end
33
39
 
34
40
  include Google::Apis::Core::JsonObjectSupport
35
41
  end
36
42
 
37
- class CreateServiceAccountRequest
43
+ class SignBlobRequest
38
44
  class Representation < Google::Apis::Core::JsonRepresentation; end
39
45
 
40
46
  include Google::Apis::Core::JsonObjectSupport
41
47
  end
42
48
 
43
- class Empty
49
+ class Role
44
50
  class Representation < Google::Apis::Core::JsonRepresentation; end
45
51
 
46
52
  include Google::Apis::Core::JsonObjectSupport
47
53
  end
48
54
 
49
- class ListServiceAccountKeysResponse
55
+ class SetIamPolicyRequest
50
56
  class Representation < Google::Apis::Core::JsonRepresentation; end
51
57
 
52
58
  include Google::Apis::Core::JsonObjectSupport
53
59
  end
54
60
 
55
- class ServiceAccountKey
61
+ class Binding
56
62
  class Representation < Google::Apis::Core::JsonRepresentation; end
57
63
 
58
64
  include Google::Apis::Core::JsonObjectSupport
59
65
  end
60
66
 
61
- class CreateServiceAccountKeyRequest
67
+ class QueryGrantableRolesRequest
62
68
  class Representation < Google::Apis::Core::JsonRepresentation; end
63
69
 
64
70
  include Google::Apis::Core::JsonObjectSupport
65
71
  end
66
72
 
67
- class SignBlobRequest
73
+ class Empty
68
74
  class Representation < Google::Apis::Core::JsonRepresentation; end
69
75
 
70
76
  include Google::Apis::Core::JsonObjectSupport
71
77
  end
72
78
 
73
- class SignBlobResponse
79
+ class ServiceAccount
74
80
  class Representation < Google::Apis::Core::JsonRepresentation; end
75
81
 
76
82
  include Google::Apis::Core::JsonObjectSupport
77
83
  end
78
84
 
79
- class Policy
85
+ class TestIamPermissionsResponse
80
86
  class Representation < Google::Apis::Core::JsonRepresentation; end
81
87
 
82
88
  include Google::Apis::Core::JsonObjectSupport
83
89
  end
84
90
 
85
- class Binding
91
+ class ListServiceAccountKeysResponse
92
+ class Representation < Google::Apis::Core::JsonRepresentation; end
93
+
94
+ include Google::Apis::Core::JsonObjectSupport
95
+ end
96
+
97
+ class ServiceAccountKey
86
98
  class Representation < Google::Apis::Core::JsonRepresentation; end
87
99
 
88
100
  include Google::Apis::Core::JsonObjectSupport
89
101
  end
90
102
 
91
- class Rule
103
+ class CreateServiceAccountKeyRequest
92
104
  class Representation < Google::Apis::Core::JsonRepresentation; end
93
105
 
94
106
  include Google::Apis::Core::JsonObjectSupport
95
107
  end
96
108
 
97
- class Condition
109
+ class TestIamPermissionsRequest
98
110
  class Representation < Google::Apis::Core::JsonRepresentation; end
99
111
 
100
112
  include Google::Apis::Core::JsonObjectSupport
101
113
  end
102
114
 
103
- class LogConfig
115
+ class SignBlobResponse
104
116
  class Representation < Google::Apis::Core::JsonRepresentation; end
105
117
 
106
118
  include Google::Apis::Core::JsonObjectSupport
107
119
  end
108
120
 
109
- class CounterOptions
121
+ class SignJwtResponse
110
122
  class Representation < Google::Apis::Core::JsonRepresentation; end
111
123
 
112
124
  include Google::Apis::Core::JsonObjectSupport
113
125
  end
114
126
 
115
- class DataAccessOptions
127
+ class Policy
116
128
  class Representation < Google::Apis::Core::JsonRepresentation; end
117
129
 
118
130
  include Google::Apis::Core::JsonObjectSupport
119
131
  end
120
132
 
121
- class CloudAuditOptions
133
+ class SignJwtRequest
122
134
  class Representation < Google::Apis::Core::JsonRepresentation; end
123
135
 
124
136
  include Google::Apis::Core::JsonObjectSupport
125
137
  end
126
138
 
127
- class SetIamPolicyRequest
139
+ class AuditData
128
140
  class Representation < Google::Apis::Core::JsonRepresentation; end
129
141
 
130
142
  include Google::Apis::Core::JsonObjectSupport
131
143
  end
132
144
 
133
- class TestIamPermissionsRequest
145
+ class BindingDelta
134
146
  class Representation < Google::Apis::Core::JsonRepresentation; end
135
147
 
136
148
  include Google::Apis::Core::JsonObjectSupport
137
149
  end
138
150
 
139
- class TestIamPermissionsResponse
151
+ class PolicyDelta
140
152
  class Representation < Google::Apis::Core::JsonRepresentation; end
141
153
 
142
154
  include Google::Apis::Core::JsonObjectSupport
143
155
  end
144
156
 
145
- class ListServiceAccountsResponse
157
+ class CreateServiceAccountRequest
146
158
  # @private
147
159
  class Representation < Google::Apis::Core::JsonRepresentation
148
- collection :accounts, as: 'accounts', class: Google::Apis::IamV1::ServiceAccount, decorator: Google::Apis::IamV1::ServiceAccount::Representation
160
+ property :service_account, as: 'serviceAccount', class: Google::Apis::IamV1::ServiceAccount, decorator: Google::Apis::IamV1::ServiceAccount::Representation
149
161
 
150
- property :next_page_token, as: 'nextPageToken'
162
+ property :account_id, as: 'accountId'
151
163
  end
152
164
  end
153
165
 
154
- class ServiceAccount
166
+ class ListServiceAccountsResponse
155
167
  # @private
156
168
  class Representation < Google::Apis::Core::JsonRepresentation
157
- property :name, as: 'name'
158
- property :project_id, as: 'projectId'
159
- property :unique_id, as: 'uniqueId'
160
- property :email, as: 'email'
161
- property :display_name, as: 'displayName'
162
- property :etag, :base64 => true, as: 'etag'
163
- property :oauth2_client_id, as: 'oauth2ClientId'
169
+ property :next_page_token, as: 'nextPageToken'
170
+ collection :accounts, as: 'accounts', class: Google::Apis::IamV1::ServiceAccount, decorator: Google::Apis::IamV1::ServiceAccount::Representation
171
+
164
172
  end
165
173
  end
166
174
 
167
- class CreateServiceAccountRequest
175
+ class QueryGrantableRolesResponse
168
176
  # @private
169
177
  class Representation < Google::Apis::Core::JsonRepresentation
170
- property :account_id, as: 'accountId'
171
- property :service_account, as: 'serviceAccount', class: Google::Apis::IamV1::ServiceAccount, decorator: Google::Apis::IamV1::ServiceAccount::Representation
178
+ collection :roles, as: 'roles', class: Google::Apis::IamV1::Role, decorator: Google::Apis::IamV1::Role::Representation
172
179
 
173
180
  end
174
181
  end
175
182
 
176
- class Empty
183
+ class SignBlobRequest
177
184
  # @private
178
185
  class Representation < Google::Apis::Core::JsonRepresentation
186
+ property :bytes_to_sign, :base64 => true, as: 'bytesToSign'
179
187
  end
180
188
  end
181
189
 
182
- class ListServiceAccountKeysResponse
190
+ class Role
183
191
  # @private
184
192
  class Representation < Google::Apis::Core::JsonRepresentation
185
- collection :keys, as: 'keys', class: Google::Apis::IamV1::ServiceAccountKey, decorator: Google::Apis::IamV1::ServiceAccountKey::Representation
186
-
193
+ property :title, as: 'title'
194
+ property :name, as: 'name'
195
+ property :description, as: 'description'
187
196
  end
188
197
  end
189
198
 
190
- class ServiceAccountKey
199
+ class SetIamPolicyRequest
191
200
  # @private
192
201
  class Representation < Google::Apis::Core::JsonRepresentation
193
- property :name, as: 'name'
194
- property :private_key_type, as: 'privateKeyType'
195
- property :private_key_data, :base64 => true, as: 'privateKeyData'
196
- property :valid_after_time, as: 'validAfterTime'
197
- property :valid_before_time, as: 'validBeforeTime'
202
+ property :policy, as: 'policy', class: Google::Apis::IamV1::Policy, decorator: Google::Apis::IamV1::Policy::Representation
203
+
198
204
  end
199
205
  end
200
206
 
201
- class CreateServiceAccountKeyRequest
207
+ class Binding
202
208
  # @private
203
209
  class Representation < Google::Apis::Core::JsonRepresentation
204
- property :private_key_type, as: 'privateKeyType'
210
+ collection :members, as: 'members'
211
+ property :role, as: 'role'
205
212
  end
206
213
  end
207
214
 
208
- class SignBlobRequest
215
+ class QueryGrantableRolesRequest
209
216
  # @private
210
217
  class Representation < Google::Apis::Core::JsonRepresentation
211
- property :bytes_to_sign, :base64 => true, as: 'bytesToSign'
218
+ property :full_resource_name, as: 'fullResourceName'
212
219
  end
213
220
  end
214
221
 
215
- class SignBlobResponse
222
+ class Empty
216
223
  # @private
217
224
  class Representation < Google::Apis::Core::JsonRepresentation
218
- property :key_id, as: 'keyId'
219
- property :signature, :base64 => true, as: 'signature'
220
225
  end
221
226
  end
222
227
 
223
- class Policy
228
+ class ServiceAccount
224
229
  # @private
225
230
  class Representation < Google::Apis::Core::JsonRepresentation
226
- property :version, as: 'version'
227
- collection :bindings, as: 'bindings', class: Google::Apis::IamV1::Binding, decorator: Google::Apis::IamV1::Binding::Representation
228
-
229
- collection :rules, as: 'rules', class: Google::Apis::IamV1::Rule, decorator: Google::Apis::IamV1::Rule::Representation
230
-
231
+ property :email, as: 'email'
232
+ property :name, as: 'name'
233
+ property :project_id, as: 'projectId'
234
+ property :oauth2_client_id, as: 'oauth2ClientId'
235
+ property :unique_id, as: 'uniqueId'
236
+ property :display_name, as: 'displayName'
231
237
  property :etag, :base64 => true, as: 'etag'
232
238
  end
233
239
  end
234
240
 
235
- class Binding
241
+ class TestIamPermissionsResponse
236
242
  # @private
237
243
  class Representation < Google::Apis::Core::JsonRepresentation
238
- property :role, as: 'role'
239
- collection :members, as: 'members'
244
+ collection :permissions, as: 'permissions'
240
245
  end
241
246
  end
242
247
 
243
- class Rule
248
+ class ListServiceAccountKeysResponse
244
249
  # @private
245
250
  class Representation < Google::Apis::Core::JsonRepresentation
246
- property :description, as: 'description'
247
- collection :permissions, as: 'permissions'
248
- property :action, as: 'action'
249
- collection :in, as: 'in'
250
- collection :not_in, as: 'notIn'
251
- collection :conditions, as: 'conditions', class: Google::Apis::IamV1::Condition, decorator: Google::Apis::IamV1::Condition::Representation
252
-
253
- collection :log_config, as: 'logConfig', class: Google::Apis::IamV1::LogConfig, decorator: Google::Apis::IamV1::LogConfig::Representation
251
+ collection :keys, as: 'keys', class: Google::Apis::IamV1::ServiceAccountKey, decorator: Google::Apis::IamV1::ServiceAccountKey::Representation
254
252
 
255
253
  end
256
254
  end
257
255
 
258
- class Condition
256
+ class ServiceAccountKey
259
257
  # @private
260
258
  class Representation < Google::Apis::Core::JsonRepresentation
261
- property :iam, as: 'iam'
262
- property :sys, as: 'sys'
263
- property :svc, as: 'svc'
264
- property :op, as: 'op'
265
- property :value, as: 'value'
266
- collection :values, as: 'values'
259
+ property :valid_after_time, as: 'validAfterTime'
260
+ property :private_key_type, as: 'privateKeyType'
261
+ property :private_key_data, :base64 => true, as: 'privateKeyData'
262
+ property :public_key_data, :base64 => true, as: 'publicKeyData'
263
+ property :name, as: 'name'
264
+ property :valid_before_time, as: 'validBeforeTime'
265
+ property :key_algorithm, as: 'keyAlgorithm'
267
266
  end
268
267
  end
269
268
 
270
- class LogConfig
269
+ class CreateServiceAccountKeyRequest
271
270
  # @private
272
271
  class Representation < Google::Apis::Core::JsonRepresentation
273
- property :counter, as: 'counter', class: Google::Apis::IamV1::CounterOptions, decorator: Google::Apis::IamV1::CounterOptions::Representation
274
-
275
- property :data_access, as: 'dataAccess', class: Google::Apis::IamV1::DataAccessOptions, decorator: Google::Apis::IamV1::DataAccessOptions::Representation
272
+ property :key_algorithm, as: 'keyAlgorithm'
273
+ property :private_key_type, as: 'privateKeyType'
274
+ end
275
+ end
276
276
 
277
- property :cloud_audit, as: 'cloudAudit', class: Google::Apis::IamV1::CloudAuditOptions, decorator: Google::Apis::IamV1::CloudAuditOptions::Representation
277
+ class TestIamPermissionsRequest
278
+ # @private
279
+ class Representation < Google::Apis::Core::JsonRepresentation
280
+ collection :permissions, as: 'permissions'
281
+ end
282
+ end
278
283
 
284
+ class SignBlobResponse
285
+ # @private
286
+ class Representation < Google::Apis::Core::JsonRepresentation
287
+ property :signature, :base64 => true, as: 'signature'
288
+ property :key_id, as: 'keyId'
279
289
  end
280
290
  end
281
291
 
282
- class CounterOptions
292
+ class SignJwtResponse
283
293
  # @private
284
294
  class Representation < Google::Apis::Core::JsonRepresentation
285
- property :metric, as: 'metric'
286
- property :field, as: 'field'
295
+ property :key_id, as: 'keyId'
296
+ property :signed_jwt, as: 'signedJwt'
287
297
  end
288
298
  end
289
299
 
290
- class DataAccessOptions
300
+ class Policy
291
301
  # @private
292
302
  class Representation < Google::Apis::Core::JsonRepresentation
303
+ collection :bindings, as: 'bindings', class: Google::Apis::IamV1::Binding, decorator: Google::Apis::IamV1::Binding::Representation
304
+
305
+ property :etag, :base64 => true, as: 'etag'
306
+ property :version, as: 'version'
293
307
  end
294
308
  end
295
309
 
296
- class CloudAuditOptions
310
+ class SignJwtRequest
297
311
  # @private
298
312
  class Representation < Google::Apis::Core::JsonRepresentation
313
+ property :payload, as: 'payload'
299
314
  end
300
315
  end
301
316
 
302
- class SetIamPolicyRequest
317
+ class AuditData
303
318
  # @private
304
319
  class Representation < Google::Apis::Core::JsonRepresentation
305
- property :policy, as: 'policy', class: Google::Apis::IamV1::Policy, decorator: Google::Apis::IamV1::Policy::Representation
320
+ property :policy_delta, as: 'policyDelta', class: Google::Apis::IamV1::PolicyDelta, decorator: Google::Apis::IamV1::PolicyDelta::Representation
306
321
 
307
322
  end
308
323
  end
309
324
 
310
- class TestIamPermissionsRequest
325
+ class BindingDelta
311
326
  # @private
312
327
  class Representation < Google::Apis::Core::JsonRepresentation
313
- collection :permissions, as: 'permissions'
328
+ property :role, as: 'role'
329
+ property :action, as: 'action'
330
+ property :member, as: 'member'
314
331
  end
315
332
  end
316
333
 
317
- class TestIamPermissionsResponse
334
+ class PolicyDelta
318
335
  # @private
319
336
  class Representation < Google::Apis::Core::JsonRepresentation
320
- collection :permissions, as: 'permissions'
337
+ collection :binding_deltas, as: 'bindingDeltas', class: Google::Apis::IamV1::BindingDelta, decorator: Google::Apis::IamV1::BindingDelta::Representation
338
+
321
339
  end
322
340
  end
323
341
  end
@@ -20,7 +20,7 @@ require 'google/apis/errors'
20
20
  module Google
21
21
  module Apis
22
22
  module IamV1
23
- # Google Identity and Access Management API
23
+ # Google Identity and Access Management (IAM) API
24
24
  #
25
25
  # Manages identity and access control for Google Cloud Platform resources,
26
26
  # including the creation of service accounts, which you can use to authenticate
@@ -48,17 +48,10 @@ module Google
48
48
  super('https://iam.googleapis.com/', '')
49
49
  end
50
50
 
51
- # Lists service accounts for a project.
52
- # @param [String] name
53
- # Required. The resource name of the project associated with the service
54
- # accounts, such as "projects/123"
55
- # @param [Fixnum] page_size
56
- # Optional limit on the number of service accounts to include in the response.
57
- # Further accounts can subsequently be obtained by including the [
58
- # ListServiceAccountsResponse.next_page_token] in a subsequent request.
59
- # @param [String] page_token
60
- # Optional pagination token returned in an earlier [ListServiceAccountsResponse.
61
- # next_page_token].
51
+ # Queries roles that can be granted on a particular resource.
52
+ # A role is grantable if it can be used as the role in a binding for a policy
53
+ # for that resource.
54
+ # @param [Google::Apis::IamV1::QueryGrantableRolesRequest] query_grantable_roles_request_object
62
55
  # @param [String] fields
63
56
  # Selector specifying which fields to include in a partial response.
64
57
  # @param [String] quota_user
@@ -68,32 +61,38 @@ module Google
68
61
  # Request-specific options
69
62
  #
70
63
  # @yield [result, err] Result & error if block supplied
71
- # @yieldparam result [Google::Apis::IamV1::ListServiceAccountsResponse] parsed result object
64
+ # @yieldparam result [Google::Apis::IamV1::QueryGrantableRolesResponse] parsed result object
72
65
  # @yieldparam err [StandardError] error object if request failed
73
66
  #
74
- # @return [Google::Apis::IamV1::ListServiceAccountsResponse]
67
+ # @return [Google::Apis::IamV1::QueryGrantableRolesResponse]
75
68
  #
76
69
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
77
70
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
78
71
  # @raise [Google::Apis::AuthorizationError] Authorization is required
79
- def list_project_service_accounts(name, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
80
- command = make_simple_command(:get, 'v1/{+name}/serviceAccounts', options)
81
- command.response_representation = Google::Apis::IamV1::ListServiceAccountsResponse::Representation
82
- command.response_class = Google::Apis::IamV1::ListServiceAccountsResponse
83
- command.params['name'] = name unless name.nil?
84
- command.query['pageSize'] = page_size unless page_size.nil?
85
- command.query['pageToken'] = page_token unless page_token.nil?
72
+ def query_grantable_roles(query_grantable_roles_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
73
+ command = make_simple_command(:post, 'v1/roles:queryGrantableRoles', options)
74
+ command.request_representation = Google::Apis::IamV1::QueryGrantableRolesRequest::Representation
75
+ command.request_object = query_grantable_roles_request_object
76
+ command.response_representation = Google::Apis::IamV1::QueryGrantableRolesResponse::Representation
77
+ command.response_class = Google::Apis::IamV1::QueryGrantableRolesResponse
86
78
  command.query['fields'] = fields unless fields.nil?
87
79
  command.query['quotaUser'] = quota_user unless quota_user.nil?
88
80
  execute_or_queue_command(command, &block)
89
81
  end
90
82
 
91
- # Gets a ServiceAccount
83
+ # Updates a ServiceAccount.
84
+ # Currently, only the following fields are updatable:
85
+ # `display_name` .
86
+ # The `etag` is mandatory.
92
87
  # @param [String] name
93
- # The resource name of the service account in the format "projects/`project`/
94
- # serviceAccounts/`account`". Using '-' as a wildcard for the project, will
95
- # infer the project from the account. The account value can be the email address
96
- # or the unique_id of the service account.
88
+ # The resource name of the service account in the following format:
89
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
90
+ # Requests using `-` as a wildcard for the project will infer the project
91
+ # from the `account` and the `account` value can be the `email` address or
92
+ # the `unique_id` of the service account.
93
+ # In responses the resource name will always be in the format
94
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
95
+ # @param [Google::Apis::IamV1::ServiceAccount] service_account_object
97
96
  # @param [String] fields
98
97
  # Selector specifying which fields to include in a partial response.
99
98
  # @param [String] quota_user
@@ -111,8 +110,10 @@ module Google
111
110
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
112
111
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
113
112
  # @raise [Google::Apis::AuthorizationError] Authorization is required
114
- def get_project_service_account(name, fields: nil, quota_user: nil, options: nil, &block)
115
- command = make_simple_command(:get, 'v1/{+name}', options)
113
+ def update_project_service_account(name, service_account_object = nil, fields: nil, quota_user: nil, options: nil, &block)
114
+ command = make_simple_command(:put, 'v1/{+name}', options)
115
+ command.request_representation = Google::Apis::IamV1::ServiceAccount::Representation
116
+ command.request_object = service_account_object
116
117
  command.response_representation = Google::Apis::IamV1::ServiceAccount::Representation
117
118
  command.response_class = Google::Apis::IamV1::ServiceAccount
118
119
  command.params['name'] = name unless name.nil?
@@ -121,11 +122,48 @@ module Google
121
122
  execute_or_queue_command(command, &block)
122
123
  end
123
124
 
124
- # Creates a service account and returns it.
125
+ # Tests the specified permissions against the IAM access control policy
126
+ # for a ServiceAccount.
127
+ # @param [String] resource
128
+ # REQUIRED: The resource for which the policy detail is being requested.
129
+ # See the operation documentation for the appropriate value for this field.
130
+ # @param [Google::Apis::IamV1::TestIamPermissionsRequest] test_iam_permissions_request_object
131
+ # @param [String] fields
132
+ # Selector specifying which fields to include in a partial response.
133
+ # @param [String] quota_user
134
+ # Available to use for quota purposes for server-side applications. Can be any
135
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
136
+ # @param [Google::Apis::RequestOptions] options
137
+ # Request-specific options
138
+ #
139
+ # @yield [result, err] Result & error if block supplied
140
+ # @yieldparam result [Google::Apis::IamV1::TestIamPermissionsResponse] parsed result object
141
+ # @yieldparam err [StandardError] error object if request failed
142
+ #
143
+ # @return [Google::Apis::IamV1::TestIamPermissionsResponse]
144
+ #
145
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
146
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
147
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
148
+ def test_service_account_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
149
+ command = make_simple_command(:post, 'v1/{+resource}:testIamPermissions', options)
150
+ command.request_representation = Google::Apis::IamV1::TestIamPermissionsRequest::Representation
151
+ command.request_object = test_iam_permissions_request_object
152
+ command.response_representation = Google::Apis::IamV1::TestIamPermissionsResponse::Representation
153
+ command.response_class = Google::Apis::IamV1::TestIamPermissionsResponse
154
+ command.params['resource'] = resource unless resource.nil?
155
+ command.query['fields'] = fields unless fields.nil?
156
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
157
+ execute_or_queue_command(command, &block)
158
+ end
159
+
160
+ # Deletes a ServiceAccount.
125
161
  # @param [String] name
126
- # Required. The resource name of the project associated with the service
127
- # accounts, such as "projects/123"
128
- # @param [Google::Apis::IamV1::CreateServiceAccountRequest] create_service_account_request_object
162
+ # The resource name of the service account in the following format:
163
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
164
+ # Using `-` as a wildcard for the project will infer the project from
165
+ # the account. The `account` value can be the `email` address or the
166
+ # `unique_id` of the service account.
129
167
  # @param [String] fields
130
168
  # Selector specifying which fields to include in a partial response.
131
169
  # @param [String] quota_user
@@ -135,36 +173,32 @@ module Google
135
173
  # Request-specific options
136
174
  #
137
175
  # @yield [result, err] Result & error if block supplied
138
- # @yieldparam result [Google::Apis::IamV1::ServiceAccount] parsed result object
176
+ # @yieldparam result [Google::Apis::IamV1::Empty] parsed result object
139
177
  # @yieldparam err [StandardError] error object if request failed
140
178
  #
141
- # @return [Google::Apis::IamV1::ServiceAccount]
179
+ # @return [Google::Apis::IamV1::Empty]
142
180
  #
143
181
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
144
182
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
145
183
  # @raise [Google::Apis::AuthorizationError] Authorization is required
146
- def create_service_account(name, create_service_account_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
147
- command = make_simple_command(:post, 'v1/{+name}/serviceAccounts', options)
148
- command.request_representation = Google::Apis::IamV1::CreateServiceAccountRequest::Representation
149
- command.request_object = create_service_account_request_object
150
- command.response_representation = Google::Apis::IamV1::ServiceAccount::Representation
151
- command.response_class = Google::Apis::IamV1::ServiceAccount
184
+ def delete_project_service_account(name, fields: nil, quota_user: nil, options: nil, &block)
185
+ command = make_simple_command(:delete, 'v1/{+name}', options)
186
+ command.response_representation = Google::Apis::IamV1::Empty::Representation
187
+ command.response_class = Google::Apis::IamV1::Empty
152
188
  command.params['name'] = name unless name.nil?
153
189
  command.query['fields'] = fields unless fields.nil?
154
190
  command.query['quotaUser'] = quota_user unless quota_user.nil?
155
191
  execute_or_queue_command(command, &block)
156
192
  end
157
193
 
158
- # Updates a service account. Currently, only the following fields are updatable:
159
- # 'display_name' . The 'etag' is mandatory.
194
+ # Signs a blob using a service account's system-managed private key.
160
195
  # @param [String] name
161
- # The resource name of the service account in the format "projects/`project`/
162
- # serviceAccounts/`account`". In requests using '-' as a wildcard for the
163
- # project, will infer the project from the account and the account value can be
164
- # the email address or the unique_id of the service account. In responses the
165
- # resource name will always be in the format "projects/`project`/serviceAccounts/
166
- # `email`".
167
- # @param [Google::Apis::IamV1::ServiceAccount] service_account_object
196
+ # The resource name of the service account in the following format:
197
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
198
+ # Using `-` as a wildcard for the project will infer the project from
199
+ # the account. The `account` value can be the `email` address or the
200
+ # `unique_id` of the service account.
201
+ # @param [Google::Apis::IamV1::SignBlobRequest] sign_blob_request_object
168
202
  # @param [String] fields
169
203
  # Selector specifying which fields to include in a partial response.
170
204
  # @param [String] quota_user
@@ -174,32 +208,38 @@ module Google
174
208
  # Request-specific options
175
209
  #
176
210
  # @yield [result, err] Result & error if block supplied
177
- # @yieldparam result [Google::Apis::IamV1::ServiceAccount] parsed result object
211
+ # @yieldparam result [Google::Apis::IamV1::SignBlobResponse] parsed result object
178
212
  # @yieldparam err [StandardError] error object if request failed
179
213
  #
180
- # @return [Google::Apis::IamV1::ServiceAccount]
214
+ # @return [Google::Apis::IamV1::SignBlobResponse]
181
215
  #
182
216
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
183
217
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
184
218
  # @raise [Google::Apis::AuthorizationError] Authorization is required
185
- def update_project_service_account(name, service_account_object = nil, fields: nil, quota_user: nil, options: nil, &block)
186
- command = make_simple_command(:put, 'v1/{+name}', options)
187
- command.request_representation = Google::Apis::IamV1::ServiceAccount::Representation
188
- command.request_object = service_account_object
189
- command.response_representation = Google::Apis::IamV1::ServiceAccount::Representation
190
- command.response_class = Google::Apis::IamV1::ServiceAccount
219
+ def sign_service_account_blob(name, sign_blob_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
220
+ command = make_simple_command(:post, 'v1/{+name}:signBlob', options)
221
+ command.request_representation = Google::Apis::IamV1::SignBlobRequest::Representation
222
+ command.request_object = sign_blob_request_object
223
+ command.response_representation = Google::Apis::IamV1::SignBlobResponse::Representation
224
+ command.response_class = Google::Apis::IamV1::SignBlobResponse
191
225
  command.params['name'] = name unless name.nil?
192
226
  command.query['fields'] = fields unless fields.nil?
193
227
  command.query['quotaUser'] = quota_user unless quota_user.nil?
194
228
  execute_or_queue_command(command, &block)
195
229
  end
196
230
 
197
- # Deletes a service acount.
231
+ # Lists ServiceAccounts for a project.
198
232
  # @param [String] name
199
- # The resource name of the service account in the format "projects/`project`/
200
- # serviceAccounts/`account`". Using '-' as a wildcard for the project, will
201
- # infer the project from the account. The account value can be the email address
202
- # or the unique_id of the service account.
233
+ # Required. The resource name of the project associated with the service
234
+ # accounts, such as `projects/my-project-123`.
235
+ # @param [String] page_token
236
+ # Optional pagination token returned in an earlier
237
+ # ListServiceAccountsResponse.next_page_token.
238
+ # @param [Fixnum] page_size
239
+ # Optional limit on the number of service accounts to include in the
240
+ # response. Further accounts can subsequently be obtained by including the
241
+ # ListServiceAccountsResponse.next_page_token
242
+ # in a subsequent request.
203
243
  # @param [String] fields
204
244
  # Selector specifying which fields to include in a partial response.
205
245
  # @param [String] quota_user
@@ -209,31 +249,32 @@ module Google
209
249
  # Request-specific options
210
250
  #
211
251
  # @yield [result, err] Result & error if block supplied
212
- # @yieldparam result [Google::Apis::IamV1::Empty] parsed result object
252
+ # @yieldparam result [Google::Apis::IamV1::ListServiceAccountsResponse] parsed result object
213
253
  # @yieldparam err [StandardError] error object if request failed
214
254
  #
215
- # @return [Google::Apis::IamV1::Empty]
255
+ # @return [Google::Apis::IamV1::ListServiceAccountsResponse]
216
256
  #
217
257
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
218
258
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
219
259
  # @raise [Google::Apis::AuthorizationError] Authorization is required
220
- def delete_project_service_account(name, fields: nil, quota_user: nil, options: nil, &block)
221
- command = make_simple_command(:delete, 'v1/{+name}', options)
222
- command.response_representation = Google::Apis::IamV1::Empty::Representation
223
- command.response_class = Google::Apis::IamV1::Empty
260
+ def list_project_service_accounts(name, page_token: nil, page_size: nil, fields: nil, quota_user: nil, options: nil, &block)
261
+ command = make_simple_command(:get, 'v1/{+name}/serviceAccounts', options)
262
+ command.response_representation = Google::Apis::IamV1::ListServiceAccountsResponse::Representation
263
+ command.response_class = Google::Apis::IamV1::ListServiceAccountsResponse
224
264
  command.params['name'] = name unless name.nil?
265
+ command.query['pageToken'] = page_token unless page_token.nil?
266
+ command.query['pageSize'] = page_size unless page_size.nil?
225
267
  command.query['fields'] = fields unless fields.nil?
226
268
  command.query['quotaUser'] = quota_user unless quota_user.nil?
227
269
  execute_or_queue_command(command, &block)
228
270
  end
229
271
 
230
- # Signs a blob using a service account.
272
+ # Creates a ServiceAccount
273
+ # and returns it.
231
274
  # @param [String] name
232
- # The resource name of the service account in the format "projects/`project`/
233
- # serviceAccounts/`account`". Using '-' as a wildcard for the project, will
234
- # infer the project from the account. The account value can be the email address
235
- # or the unique_id of the service account.
236
- # @param [Google::Apis::IamV1::SignBlobRequest] sign_blob_request_object
275
+ # Required. The resource name of the project associated with the service
276
+ # accounts, such as `projects/my-project-123`.
277
+ # @param [Google::Apis::IamV1::CreateServiceAccountRequest] create_service_account_request_object
237
278
  # @param [String] fields
238
279
  # Selector specifying which fields to include in a partial response.
239
280
  # @param [String] quota_user
@@ -243,32 +284,37 @@ module Google
243
284
  # Request-specific options
244
285
  #
245
286
  # @yield [result, err] Result & error if block supplied
246
- # @yieldparam result [Google::Apis::IamV1::SignBlobResponse] parsed result object
287
+ # @yieldparam result [Google::Apis::IamV1::ServiceAccount] parsed result object
247
288
  # @yieldparam err [StandardError] error object if request failed
248
289
  #
249
- # @return [Google::Apis::IamV1::SignBlobResponse]
290
+ # @return [Google::Apis::IamV1::ServiceAccount]
250
291
  #
251
292
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
252
293
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
253
294
  # @raise [Google::Apis::AuthorizationError] Authorization is required
254
- def sign_service_account_blob(name, sign_blob_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
255
- command = make_simple_command(:post, 'v1/{+name}:signBlob', options)
256
- command.request_representation = Google::Apis::IamV1::SignBlobRequest::Representation
257
- command.request_object = sign_blob_request_object
258
- command.response_representation = Google::Apis::IamV1::SignBlobResponse::Representation
259
- command.response_class = Google::Apis::IamV1::SignBlobResponse
295
+ def create_service_account(name, create_service_account_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
296
+ command = make_simple_command(:post, 'v1/{+name}/serviceAccounts', options)
297
+ command.request_representation = Google::Apis::IamV1::CreateServiceAccountRequest::Representation
298
+ command.request_object = create_service_account_request_object
299
+ command.response_representation = Google::Apis::IamV1::ServiceAccount::Representation
300
+ command.response_class = Google::Apis::IamV1::ServiceAccount
260
301
  command.params['name'] = name unless name.nil?
261
302
  command.query['fields'] = fields unless fields.nil?
262
303
  command.query['quotaUser'] = quota_user unless quota_user.nil?
263
304
  execute_or_queue_command(command, &block)
264
305
  end
265
306
 
266
- # Returns the IAM access control policy for specified IAM resource.
267
- # @param [String] resource
268
- # REQUIRED: The resource for which the policy is being requested. `resource` is
269
- # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*
270
- # disk*`. The format for the path specified in this value is resource specific
271
- # and is specified in the `getIamPolicy` documentation.
307
+ # Signs a JWT using a service account's system-managed private key.
308
+ # If no expiry time (`exp`) is provided in the `SignJwtRequest`, IAM sets an
309
+ # an expiry time of one hour by default. If you request an expiry time of
310
+ # more than one hour, the request will fail.
311
+ # @param [String] name
312
+ # The resource name of the service account in the following format:
313
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
314
+ # Using `-` as a wildcard for the project will infer the project from
315
+ # the account. The `account` value can be the `email` address or the
316
+ # `unique_id` of the service account.
317
+ # @param [Google::Apis::IamV1::SignJwtRequest] sign_jwt_request_object
272
318
  # @param [String] fields
273
319
  # Selector specifying which fields to include in a partial response.
274
320
  # @param [String] quota_user
@@ -278,30 +324,31 @@ module Google
278
324
  # Request-specific options
279
325
  #
280
326
  # @yield [result, err] Result & error if block supplied
281
- # @yieldparam result [Google::Apis::IamV1::Policy] parsed result object
327
+ # @yieldparam result [Google::Apis::IamV1::SignJwtResponse] parsed result object
282
328
  # @yieldparam err [StandardError] error object if request failed
283
329
  #
284
- # @return [Google::Apis::IamV1::Policy]
330
+ # @return [Google::Apis::IamV1::SignJwtResponse]
285
331
  #
286
332
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
287
333
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
288
334
  # @raise [Google::Apis::AuthorizationError] Authorization is required
289
- def get_project_service_account_iam_policy(resource, fields: nil, quota_user: nil, options: nil, &block)
290
- command = make_simple_command(:post, 'v1/{+resource}:getIamPolicy', options)
291
- command.response_representation = Google::Apis::IamV1::Policy::Representation
292
- command.response_class = Google::Apis::IamV1::Policy
293
- command.params['resource'] = resource unless resource.nil?
335
+ def sign_service_account_jwt(name, sign_jwt_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
336
+ command = make_simple_command(:post, 'v1/{+name}:signJwt', options)
337
+ command.request_representation = Google::Apis::IamV1::SignJwtRequest::Representation
338
+ command.request_object = sign_jwt_request_object
339
+ command.response_representation = Google::Apis::IamV1::SignJwtResponse::Representation
340
+ command.response_class = Google::Apis::IamV1::SignJwtResponse
341
+ command.params['name'] = name unless name.nil?
294
342
  command.query['fields'] = fields unless fields.nil?
295
343
  command.query['quotaUser'] = quota_user unless quota_user.nil?
296
344
  execute_or_queue_command(command, &block)
297
345
  end
298
346
 
299
- # Sets the IAM access control policy for the specified IAM resource.
347
+ # Sets the IAM access control policy for a
348
+ # ServiceAccount.
300
349
  # @param [String] resource
301
- # REQUIRED: The resource for which the policy is being specified. `resource` is
302
- # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*
303
- # disk*`. The format for the path specified in this value is resource specific
304
- # and is specified in the `setIamPolicy` documentation.
350
+ # REQUIRED: The resource for which the policy is being specified.
351
+ # See the operation documentation for the appropriate value for this field.
305
352
  # @param [Google::Apis::IamV1::SetIamPolicyRequest] set_iam_policy_request_object
306
353
  # @param [String] fields
307
354
  # Selector specifying which fields to include in a partial response.
@@ -332,14 +379,11 @@ module Google
332
379
  execute_or_queue_command(command, &block)
333
380
  end
334
381
 
335
- # Tests the specified permissions against the IAM access control policy for the
336
- # specified IAM resource.
382
+ # Returns the IAM access control policy for a
383
+ # ServiceAccount.
337
384
  # @param [String] resource
338
- # REQUIRED: The resource for which the policy detail is being requested. `
339
- # resource` is usually specified as a path, such as `projects/*project*/zones/*
340
- # zone*/disks/*disk*`. The format for the path specified in this value is
341
- # resource specific and is specified in the `testIamPermissions` documentation.
342
- # @param [Google::Apis::IamV1::TestIamPermissionsRequest] test_iam_permissions_request_object
385
+ # REQUIRED: The resource for which the policy is being requested.
386
+ # See the operation documentation for the appropriate value for this field.
343
387
  # @param [String] fields
344
388
  # Selector specifying which fields to include in a partial response.
345
389
  # @param [String] quota_user
@@ -349,35 +393,31 @@ module Google
349
393
  # Request-specific options
350
394
  #
351
395
  # @yield [result, err] Result & error if block supplied
352
- # @yieldparam result [Google::Apis::IamV1::TestIamPermissionsResponse] parsed result object
396
+ # @yieldparam result [Google::Apis::IamV1::Policy] parsed result object
353
397
  # @yieldparam err [StandardError] error object if request failed
354
398
  #
355
- # @return [Google::Apis::IamV1::TestIamPermissionsResponse]
399
+ # @return [Google::Apis::IamV1::Policy]
356
400
  #
357
401
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
358
402
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
359
403
  # @raise [Google::Apis::AuthorizationError] Authorization is required
360
- def test_service_account_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
361
- command = make_simple_command(:post, 'v1/{+resource}:testIamPermissions', options)
362
- command.request_representation = Google::Apis::IamV1::TestIamPermissionsRequest::Representation
363
- command.request_object = test_iam_permissions_request_object
364
- command.response_representation = Google::Apis::IamV1::TestIamPermissionsResponse::Representation
365
- command.response_class = Google::Apis::IamV1::TestIamPermissionsResponse
404
+ def get_project_service_account_iam_policy(resource, fields: nil, quota_user: nil, options: nil, &block)
405
+ command = make_simple_command(:post, 'v1/{+resource}:getIamPolicy', options)
406
+ command.response_representation = Google::Apis::IamV1::Policy::Representation
407
+ command.response_class = Google::Apis::IamV1::Policy
366
408
  command.params['resource'] = resource unless resource.nil?
367
409
  command.query['fields'] = fields unless fields.nil?
368
410
  command.query['quotaUser'] = quota_user unless quota_user.nil?
369
411
  execute_or_queue_command(command, &block)
370
412
  end
371
413
 
372
- # Lists service account keys
414
+ # Gets a ServiceAccount.
373
415
  # @param [String] name
374
- # The resource name of the service account in the format "projects/`project`/
375
- # serviceAccounts/`account`". Using '-' as a wildcard for the project, will
376
- # infer the project from the account. The account value can be the email address
377
- # or the unique_id of the service account.
378
- # @param [Array<String>, String] key_types
379
- # The type of keys the user wants to list. If empty, all key types are included
380
- # in the response. Duplicate key types are not allowed.
416
+ # The resource name of the service account in the following format:
417
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
418
+ # Using `-` as a wildcard for the project will infer the project from
419
+ # the account. The `account` value can be the `email` address or the
420
+ # `unique_id` of the service account.
381
421
  # @param [String] fields
382
422
  # Selector specifying which fields to include in a partial response.
383
423
  # @param [String] quota_user
@@ -387,31 +427,31 @@ module Google
387
427
  # Request-specific options
388
428
  #
389
429
  # @yield [result, err] Result & error if block supplied
390
- # @yieldparam result [Google::Apis::IamV1::ListServiceAccountKeysResponse] parsed result object
430
+ # @yieldparam result [Google::Apis::IamV1::ServiceAccount] parsed result object
391
431
  # @yieldparam err [StandardError] error object if request failed
392
432
  #
393
- # @return [Google::Apis::IamV1::ListServiceAccountKeysResponse]
433
+ # @return [Google::Apis::IamV1::ServiceAccount]
394
434
  #
395
435
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
396
436
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
397
437
  # @raise [Google::Apis::AuthorizationError] Authorization is required
398
- def list_project_service_account_keys(name, key_types: nil, fields: nil, quota_user: nil, options: nil, &block)
399
- command = make_simple_command(:get, 'v1/{+name}/keys', options)
400
- command.response_representation = Google::Apis::IamV1::ListServiceAccountKeysResponse::Representation
401
- command.response_class = Google::Apis::IamV1::ListServiceAccountKeysResponse
438
+ def get_project_service_account(name, fields: nil, quota_user: nil, options: nil, &block)
439
+ command = make_simple_command(:get, 'v1/{+name}', options)
440
+ command.response_representation = Google::Apis::IamV1::ServiceAccount::Representation
441
+ command.response_class = Google::Apis::IamV1::ServiceAccount
402
442
  command.params['name'] = name unless name.nil?
403
- command.query['keyTypes'] = key_types unless key_types.nil?
404
443
  command.query['fields'] = fields unless fields.nil?
405
444
  command.query['quotaUser'] = quota_user unless quota_user.nil?
406
445
  execute_or_queue_command(command, &block)
407
446
  end
408
447
 
409
- # Gets the ServiceAccountKey by key id.
448
+ # Deletes a ServiceAccountKey.
410
449
  # @param [String] name
411
- # The resource name of the service account key in the format "projects/`project`/
412
- # serviceAccounts/`account`/keys/`key`". Using '-' as a wildcard for the project
413
- # will infer the project from the account. The account value can be the email
414
- # address or the unique_id of the service account.
450
+ # The resource name of the service account key in the following format:
451
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL`/keys/`key``.
452
+ # Using `-` as a wildcard for the project will infer the project from
453
+ # the account. The `account` value can be the `email` address or the
454
+ # `unique_id` of the service account.
415
455
  # @param [String] fields
416
456
  # Selector specifying which fields to include in a partial response.
417
457
  # @param [String] quota_user
@@ -421,31 +461,74 @@ module Google
421
461
  # Request-specific options
422
462
  #
423
463
  # @yield [result, err] Result & error if block supplied
424
- # @yieldparam result [Google::Apis::IamV1::ServiceAccountKey] parsed result object
464
+ # @yieldparam result [Google::Apis::IamV1::Empty] parsed result object
425
465
  # @yieldparam err [StandardError] error object if request failed
426
466
  #
427
- # @return [Google::Apis::IamV1::ServiceAccountKey]
467
+ # @return [Google::Apis::IamV1::Empty]
428
468
  #
429
469
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
430
470
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
431
471
  # @raise [Google::Apis::AuthorizationError] Authorization is required
432
- def get_project_service_account_key(name, fields: nil, quota_user: nil, options: nil, &block)
433
- command = make_simple_command(:get, 'v1/{+name}', options)
434
- command.response_representation = Google::Apis::IamV1::ServiceAccountKey::Representation
435
- command.response_class = Google::Apis::IamV1::ServiceAccountKey
472
+ def delete_project_service_account_key(name, fields: nil, quota_user: nil, options: nil, &block)
473
+ command = make_simple_command(:delete, 'v1/{+name}', options)
474
+ command.response_representation = Google::Apis::IamV1::Empty::Representation
475
+ command.response_class = Google::Apis::IamV1::Empty
436
476
  command.params['name'] = name unless name.nil?
437
477
  command.query['fields'] = fields unless fields.nil?
438
478
  command.query['quotaUser'] = quota_user unless quota_user.nil?
439
479
  execute_or_queue_command(command, &block)
440
480
  end
441
481
 
442
- # Creates a service account key and returns it.
482
+ # Lists ServiceAccountKeys.
443
483
  # @param [String] name
444
- # The resource name of the service account in the format "projects/`project`/
445
- # serviceAccounts/`account`". Using '-' as a wildcard for the project, will
446
- # infer the project from the account. The account value can be the email address
447
- # or the unique_id of the service account.
448
- # @param [Google::Apis::IamV1::CreateServiceAccountKeyRequest] create_service_account_key_request_object
484
+ # The resource name of the service account in the following format:
485
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
486
+ # Using `-` as a wildcard for the project, will infer the project from
487
+ # the account. The `account` value can be the `email` address or the
488
+ # `unique_id` of the service account.
489
+ # @param [Array<String>, String] key_types
490
+ # Filters the types of keys the user wants to include in the list
491
+ # response. Duplicate key types are not allowed. If no key type
492
+ # is provided, all keys are returned.
493
+ # @param [String] fields
494
+ # Selector specifying which fields to include in a partial response.
495
+ # @param [String] quota_user
496
+ # Available to use for quota purposes for server-side applications. Can be any
497
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
498
+ # @param [Google::Apis::RequestOptions] options
499
+ # Request-specific options
500
+ #
501
+ # @yield [result, err] Result & error if block supplied
502
+ # @yieldparam result [Google::Apis::IamV1::ListServiceAccountKeysResponse] parsed result object
503
+ # @yieldparam err [StandardError] error object if request failed
504
+ #
505
+ # @return [Google::Apis::IamV1::ListServiceAccountKeysResponse]
506
+ #
507
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
508
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
509
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
510
+ def list_project_service_account_keys(name, key_types: nil, fields: nil, quota_user: nil, options: nil, &block)
511
+ command = make_simple_command(:get, 'v1/{+name}/keys', options)
512
+ command.response_representation = Google::Apis::IamV1::ListServiceAccountKeysResponse::Representation
513
+ command.response_class = Google::Apis::IamV1::ListServiceAccountKeysResponse
514
+ command.params['name'] = name unless name.nil?
515
+ command.query['keyTypes'] = key_types unless key_types.nil?
516
+ command.query['fields'] = fields unless fields.nil?
517
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
518
+ execute_or_queue_command(command, &block)
519
+ end
520
+
521
+ # Gets the ServiceAccountKey
522
+ # by key id.
523
+ # @param [String] name
524
+ # The resource name of the service account key in the following format:
525
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL`/keys/`key``.
526
+ # Using `-` as a wildcard for the project will infer the project from
527
+ # the account. The `account` value can be the `email` address or the
528
+ # `unique_id` of the service account.
529
+ # @param [String] public_key_type
530
+ # The output format of the public key requested.
531
+ # X509_PEM is the default output format.
449
532
  # @param [String] fields
450
533
  # Selector specifying which fields to include in a partial response.
451
534
  # @param [String] quota_user
@@ -463,24 +546,26 @@ module Google
463
546
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
464
547
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
465
548
  # @raise [Google::Apis::AuthorizationError] Authorization is required
466
- def create_service_account_key(name, create_service_account_key_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
467
- command = make_simple_command(:post, 'v1/{+name}/keys', options)
468
- command.request_representation = Google::Apis::IamV1::CreateServiceAccountKeyRequest::Representation
469
- command.request_object = create_service_account_key_request_object
549
+ def get_project_service_account_key(name, public_key_type: nil, fields: nil, quota_user: nil, options: nil, &block)
550
+ command = make_simple_command(:get, 'v1/{+name}', options)
470
551
  command.response_representation = Google::Apis::IamV1::ServiceAccountKey::Representation
471
552
  command.response_class = Google::Apis::IamV1::ServiceAccountKey
472
553
  command.params['name'] = name unless name.nil?
554
+ command.query['publicKeyType'] = public_key_type unless public_key_type.nil?
473
555
  command.query['fields'] = fields unless fields.nil?
474
556
  command.query['quotaUser'] = quota_user unless quota_user.nil?
475
557
  execute_or_queue_command(command, &block)
476
558
  end
477
559
 
478
- # Deletes a service account key.
560
+ # Creates a ServiceAccountKey
561
+ # and returns it.
479
562
  # @param [String] name
480
- # The resource name of the service account key in the format "projects/`project`/
481
- # serviceAccounts/`account`/keys/`key`". Using '-' as a wildcard for the project
482
- # will infer the project from the account. The account value can be the email
483
- # address or the unique_id of the service account.
563
+ # The resource name of the service account in the following format:
564
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
565
+ # Using `-` as a wildcard for the project will infer the project from
566
+ # the account. The `account` value can be the `email` address or the
567
+ # `unique_id` of the service account.
568
+ # @param [Google::Apis::IamV1::CreateServiceAccountKeyRequest] create_service_account_key_request_object
484
569
  # @param [String] fields
485
570
  # Selector specifying which fields to include in a partial response.
486
571
  # @param [String] quota_user
@@ -490,18 +575,20 @@ module Google
490
575
  # Request-specific options
491
576
  #
492
577
  # @yield [result, err] Result & error if block supplied
493
- # @yieldparam result [Google::Apis::IamV1::Empty] parsed result object
578
+ # @yieldparam result [Google::Apis::IamV1::ServiceAccountKey] parsed result object
494
579
  # @yieldparam err [StandardError] error object if request failed
495
580
  #
496
- # @return [Google::Apis::IamV1::Empty]
581
+ # @return [Google::Apis::IamV1::ServiceAccountKey]
497
582
  #
498
583
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
499
584
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
500
585
  # @raise [Google::Apis::AuthorizationError] Authorization is required
501
- def delete_project_service_account_key(name, fields: nil, quota_user: nil, options: nil, &block)
502
- command = make_simple_command(:delete, 'v1/{+name}', options)
503
- command.response_representation = Google::Apis::IamV1::Empty::Representation
504
- command.response_class = Google::Apis::IamV1::Empty
586
+ def create_service_account_key(name, create_service_account_key_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
587
+ command = make_simple_command(:post, 'v1/{+name}/keys', options)
588
+ command.request_representation = Google::Apis::IamV1::CreateServiceAccountKeyRequest::Representation
589
+ command.request_object = create_service_account_key_request_object
590
+ command.response_representation = Google::Apis::IamV1::ServiceAccountKey::Representation
591
+ command.response_class = Google::Apis::IamV1::ServiceAccountKey
505
592
  command.params['name'] = name unless name.nil?
506
593
  command.query['fields'] = fields unless fields.nil?
507
594
  command.query['quotaUser'] = quota_user unless quota_user.nil?