google-api-client 0.12.0 → 0.13.0

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 (315) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/api_names.yaml +945 -41609
  4. data/generated/google/apis/acceleratedmobilepageurl_v1/classes.rb +12 -12
  5. data/generated/google/apis/acceleratedmobilepageurl_v1/representations.rb +2 -2
  6. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  7. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +1437 -412
  8. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +516 -71
  9. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +1098 -422
  10. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +6 -6
  11. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +3 -3
  12. data/generated/google/apis/adexchangebuyer_v1_4/service.rb +3 -3
  13. data/generated/google/apis/adexchangeseller_v2_0/service.rb +10 -10
  14. data/generated/google/apis/admin_directory_v1/service.rb +26 -26
  15. data/generated/google/apis/adsense_v1_4.rb +1 -1
  16. data/generated/google/apis/adsense_v1_4/classes.rb +2 -2
  17. data/generated/google/apis/adsense_v1_4/representations.rb +3 -3
  18. data/generated/google/apis/adsense_v1_4/service.rb +44 -44
  19. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  20. data/generated/google/apis/adsensehost_v4_1/service.rb +22 -22
  21. data/generated/google/apis/analytics_v3/classes.rb +3 -3
  22. data/generated/google/apis/analytics_v3/representations.rb +3 -3
  23. data/generated/google/apis/analytics_v3/service.rb +82 -82
  24. data/generated/google/apis/analyticsreporting_v4/classes.rb +937 -937
  25. data/generated/google/apis/analyticsreporting_v4/representations.rb +128 -128
  26. data/generated/google/apis/analyticsreporting_v4/service.rb +1 -1
  27. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  28. data/generated/google/apis/androidenterprise_v1/classes.rb +10 -10
  29. data/generated/google/apis/androidenterprise_v1/representations.rb +20 -20
  30. data/generated/google/apis/androidenterprise_v1/service.rb +43 -43
  31. data/generated/google/apis/androidpublisher_v2/classes.rb +26 -26
  32. data/generated/google/apis/androidpublisher_v2/representations.rb +46 -46
  33. data/generated/google/apis/androidpublisher_v2/service.rb +95 -95
  34. data/generated/google/apis/appengine_v1.rb +4 -4
  35. data/generated/google/apis/appengine_v1/classes.rb +1570 -1512
  36. data/generated/google/apis/appengine_v1/representations.rb +362 -343
  37. data/generated/google/apis/appengine_v1/service.rb +220 -220
  38. data/generated/google/apis/appstate_v1.rb +1 -1
  39. data/generated/google/apis/bigquery_v2.rb +1 -1
  40. data/generated/google/apis/bigquery_v2/classes.rb +5 -5
  41. data/generated/google/apis/bigquery_v2/representations.rb +8 -8
  42. data/generated/google/apis/bigquery_v2/service.rb +13 -13
  43. data/generated/google/apis/blogger_v3/service.rb +3 -3
  44. data/generated/google/apis/books_v1/classes.rb +55 -55
  45. data/generated/google/apis/books_v1/representations.rb +67 -67
  46. data/generated/google/apis/books_v1/service.rb +82 -82
  47. data/generated/google/apis/calendar_v3.rb +1 -1
  48. data/generated/google/apis/calendar_v3/classes.rb +6 -6
  49. data/generated/google/apis/calendar_v3/representations.rb +3 -3
  50. data/generated/google/apis/calendar_v3/service.rb +2 -2
  51. data/generated/google/apis/civicinfo_v2/classes.rb +2 -2
  52. data/generated/google/apis/civicinfo_v2/representations.rb +4 -4
  53. data/generated/google/apis/civicinfo_v2/service.rb +12 -12
  54. data/generated/google/apis/classroom_v1.rb +7 -7
  55. data/generated/google/apis/classroom_v1/classes.rb +1013 -991
  56. data/generated/google/apis/classroom_v1/representations.rb +207 -204
  57. data/generated/google/apis/classroom_v1/service.rb +709 -709
  58. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  59. data/generated/google/apis/cloudbuild_v1/classes.rb +307 -307
  60. data/generated/google/apis/cloudbuild_v1/representations.rb +84 -84
  61. data/generated/google/apis/cloudbuild_v1/service.rb +125 -125
  62. data/generated/google/apis/clouddebugger_v2/classes.rb +673 -673
  63. data/generated/google/apis/clouddebugger_v2/representations.rb +152 -152
  64. data/generated/google/apis/clouddebugger_v2/service.rb +55 -55
  65. data/generated/google/apis/clouderrorreporting_v1beta1.rb +1 -1
  66. data/generated/google/apis/clouderrorreporting_v1beta1/classes.rb +121 -121
  67. data/generated/google/apis/clouderrorreporting_v1beta1/representations.rb +25 -25
  68. data/generated/google/apis/clouderrorreporting_v1beta1/service.rb +74 -74
  69. data/generated/google/apis/cloudkms_v1.rb +1 -1
  70. data/generated/google/apis/cloudkms_v1/classes.rb +668 -613
  71. data/generated/google/apis/cloudkms_v1/representations.rb +151 -133
  72. data/generated/google/apis/cloudkms_v1/service.rb +267 -267
  73. data/generated/google/apis/cloudresourcemanager_v1.rb +4 -4
  74. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +1167 -1168
  75. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +193 -193
  76. data/generated/google/apis/cloudresourcemanager_v1/service.rb +470 -469
  77. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  78. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +508 -509
  79. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +94 -94
  80. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +157 -156
  81. data/generated/google/apis/cloudtrace_v1/service.rb +34 -34
  82. data/generated/google/apis/compute_beta.rb +1 -1
  83. data/generated/google/apis/compute_beta/classes.rb +163 -15
  84. data/generated/google/apis/compute_beta/representations.rb +54 -14
  85. data/generated/google/apis/compute_beta/service.rb +2258 -482
  86. data/generated/google/apis/compute_v1.rb +1 -1
  87. data/generated/google/apis/compute_v1/classes.rb +465 -13
  88. data/generated/google/apis/compute_v1/representations.rb +202 -16
  89. data/generated/google/apis/compute_v1/service.rb +573 -309
  90. data/generated/google/apis/container_v1.rb +1 -1
  91. data/generated/google/apis/container_v1/classes.rb +635 -589
  92. data/generated/google/apis/container_v1/representations.rb +139 -111
  93. data/generated/google/apis/container_v1/service.rb +272 -227
  94. data/generated/google/apis/content_v2.rb +1 -1
  95. data/generated/google/apis/content_v2/classes.rb +86 -74
  96. data/generated/google/apis/content_v2/representations.rb +107 -105
  97. data/generated/google/apis/content_v2/service.rb +131 -130
  98. data/generated/google/apis/customsearch_v1.rb +2 -2
  99. data/generated/google/apis/customsearch_v1/classes.rb +0 -6
  100. data/generated/google/apis/customsearch_v1/representations.rb +0 -1
  101. data/generated/google/apis/customsearch_v1/service.rb +2 -5
  102. data/generated/google/apis/dataflow_v1b3.rb +7 -4
  103. data/generated/google/apis/dataflow_v1b3/classes.rb +3405 -3405
  104. data/generated/google/apis/dataflow_v1b3/representations.rb +834 -834
  105. data/generated/google/apis/dataflow_v1b3/service.rb +244 -244
  106. data/generated/google/apis/dataproc_v1.rb +1 -1
  107. data/generated/google/apis/dataproc_v1/classes.rb +543 -691
  108. data/generated/google/apis/dataproc_v1/representations.rb +129 -185
  109. data/generated/google/apis/dataproc_v1/service.rb +347 -347
  110. data/generated/google/apis/datastore_v1.rb +4 -4
  111. data/generated/google/apis/datastore_v1/classes.rb +833 -833
  112. data/generated/google/apis/datastore_v1/representations.rb +182 -182
  113. data/generated/google/apis/datastore_v1/service.rb +45 -45
  114. data/generated/google/apis/deploymentmanager_v2/classes.rb +5 -5
  115. data/generated/google/apis/deploymentmanager_v2/representations.rb +10 -10
  116. data/generated/google/apis/deploymentmanager_v2/service.rb +20 -20
  117. data/generated/google/apis/discovery_v1/classes.rb +4 -4
  118. data/generated/google/apis/discovery_v1/representations.rb +2 -2
  119. data/generated/google/apis/discovery_v1/service.rb +1 -1
  120. data/generated/google/apis/dns_v1.rb +1 -1
  121. data/generated/google/apis/dns_v1/classes.rb +3 -3
  122. data/generated/google/apis/dns_v1/representations.rb +6 -6
  123. data/generated/google/apis/dns_v1/service.rb +12 -12
  124. data/generated/google/apis/dns_v2beta1.rb +1 -1
  125. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +8 -8
  126. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  127. data/generated/google/apis/drive_v2.rb +1 -1
  128. data/generated/google/apis/drive_v2/classes.rb +1 -1
  129. data/generated/google/apis/drive_v2/service.rb +1 -1
  130. data/generated/google/apis/drive_v3.rb +1 -1
  131. data/generated/google/apis/drive_v3/service.rb +1 -1
  132. data/generated/google/apis/firebasedynamiclinks_v1.rb +1 -1
  133. data/generated/google/apis/firebasedynamiclinks_v1/classes.rb +160 -110
  134. data/generated/google/apis/firebasedynamiclinks_v1/representations.rb +60 -31
  135. data/generated/google/apis/firebasedynamiclinks_v1/service.rb +38 -3
  136. data/generated/google/apis/firebaserules_v1/classes.rb +354 -354
  137. data/generated/google/apis/firebaserules_v1/representations.rb +87 -87
  138. data/generated/google/apis/firebaserules_v1/service.rb +103 -103
  139. data/generated/google/apis/fusiontables_v2/service.rb +2 -2
  140. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  141. data/generated/google/apis/games_configuration_v1configuration/classes.rb +2 -2
  142. data/generated/google/apis/games_configuration_v1configuration/representations.rb +4 -4
  143. data/generated/google/apis/games_configuration_v1configuration/service.rb +8 -8
  144. data/generated/google/apis/games_management_v1management.rb +1 -1
  145. data/generated/google/apis/games_v1.rb +1 -1
  146. data/generated/google/apis/games_v1/classes.rb +23 -23
  147. data/generated/google/apis/games_v1/representations.rb +43 -43
  148. data/generated/google/apis/games_v1/service.rb +72 -72
  149. data/generated/google/apis/genomics_v1.rb +1 -1
  150. data/generated/google/apis/genomics_v1/classes.rb +2316 -2316
  151. data/generated/google/apis/genomics_v1/representations.rb +291 -291
  152. data/generated/google/apis/genomics_v1/service.rb +821 -821
  153. data/generated/google/apis/gmail_v1.rb +1 -1
  154. data/generated/google/apis/groupsmigration_v1.rb +1 -1
  155. data/generated/google/apis/groupssettings_v1.rb +1 -1
  156. data/generated/google/apis/groupssettings_v1/classes.rb +2 -2
  157. data/generated/google/apis/groupssettings_v1/service.rb +3 -0
  158. data/generated/google/apis/iam_v1/classes.rb +338 -338
  159. data/generated/google/apis/iam_v1/representations.rb +98 -98
  160. data/generated/google/apis/iam_v1/service.rb +35 -35
  161. data/generated/google/apis/identitytoolkit_v3/classes.rb +15 -15
  162. data/generated/google/apis/identitytoolkit_v3/representations.rb +30 -30
  163. data/generated/google/apis/identitytoolkit_v3/service.rb +64 -64
  164. data/generated/google/apis/kgsearch_v1/service.rb +13 -13
  165. data/generated/google/apis/language_v1.rb +1 -1
  166. data/generated/google/apis/language_v1/classes.rb +374 -374
  167. data/generated/google/apis/language_v1/representations.rb +97 -97
  168. data/generated/google/apis/language_v1/service.rb +16 -16
  169. data/generated/google/apis/language_v1beta1.rb +1 -1
  170. data/generated/google/apis/language_v1beta1/classes.rb +441 -441
  171. data/generated/google/apis/language_v1beta1/representations.rb +108 -108
  172. data/generated/google/apis/language_v1beta1/service.rb +30 -30
  173. data/generated/google/apis/licensing_v1/service.rb +2 -2
  174. data/generated/google/apis/logging_v2.rb +1 -1
  175. data/generated/google/apis/logging_v2/classes.rb +712 -712
  176. data/generated/google/apis/logging_v2/representations.rb +109 -109
  177. data/generated/google/apis/logging_v2/service.rb +543 -539
  178. data/generated/google/apis/logging_v2beta1.rb +1 -1
  179. data/generated/google/apis/logging_v2beta1/classes.rb +752 -752
  180. data/generated/google/apis/logging_v2beta1/representations.rb +94 -94
  181. data/generated/google/apis/logging_v2beta1/service.rb +257 -256
  182. data/generated/google/apis/manufacturers_v1/classes.rb +130 -130
  183. data/generated/google/apis/manufacturers_v1/representations.rb +28 -28
  184. data/generated/google/apis/mirror_v1/classes.rb +5 -5
  185. data/generated/google/apis/mirror_v1/representations.rb +10 -10
  186. data/generated/google/apis/mirror_v1/service.rb +20 -20
  187. data/generated/google/apis/ml_v1.rb +1 -1
  188. data/generated/google/apis/ml_v1/classes.rb +1830 -1210
  189. data/generated/google/apis/ml_v1/representations.rb +342 -120
  190. data/generated/google/apis/ml_v1/service.rb +365 -258
  191. data/generated/google/apis/monitoring_v3.rb +4 -4
  192. data/generated/google/apis/monitoring_v3/classes.rb +889 -889
  193. data/generated/google/apis/monitoring_v3/representations.rb +174 -174
  194. data/generated/google/apis/monitoring_v3/service.rb +119 -119
  195. data/generated/google/apis/mybusiness_v3/service.rb +5 -5
  196. data/generated/google/apis/oauth2_v2/service.rb +1 -1
  197. data/generated/google/apis/pagespeedonline_v2/classes.rb +11 -11
  198. data/generated/google/apis/pagespeedonline_v2/representations.rb +13 -13
  199. data/generated/google/apis/pagespeedonline_v2/service.rb +1 -1
  200. data/generated/google/apis/partners_v2.rb +1 -1
  201. data/generated/google/apis/partners_v2/classes.rb +550 -536
  202. data/generated/google/apis/partners_v2/representations.rb +118 -116
  203. data/generated/google/apis/partners_v2/service.rb +439 -439
  204. data/generated/google/apis/people_v1.rb +4 -4
  205. data/generated/google/apis/people_v1/classes.rb +414 -413
  206. data/generated/google/apis/people_v1/representations.rb +85 -85
  207. data/generated/google/apis/people_v1/service.rb +111 -18
  208. data/generated/google/apis/plus_domains_v1.rb +1 -1
  209. data/generated/google/apis/plus_domains_v1/service.rb +4 -4
  210. data/generated/google/apis/plus_v1.rb +1 -1
  211. data/generated/google/apis/plus_v1/service.rb +1 -1
  212. data/generated/google/apis/prediction_v1_6/service.rb +8 -8
  213. data/generated/google/apis/proximitybeacon_v1beta1.rb +1 -1
  214. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +443 -443
  215. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +92 -92
  216. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +152 -152
  217. data/generated/google/apis/pubsub_v1/classes.rb +249 -249
  218. data/generated/google/apis/pubsub_v1/representations.rb +80 -80
  219. data/generated/google/apis/pubsub_v1/service.rb +415 -415
  220. data/generated/google/apis/qpx_express_v1/classes.rb +2 -2
  221. data/generated/google/apis/qpx_express_v1/representations.rb +4 -4
  222. data/generated/google/apis/qpx_express_v1/service.rb +8 -8
  223. data/generated/google/apis/replicapool_v1beta2/classes.rb +5 -5
  224. data/generated/google/apis/replicapool_v1beta2/representations.rb +10 -10
  225. data/generated/google/apis/replicapool_v1beta2/service.rb +21 -21
  226. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +1 -1
  227. data/generated/google/apis/resourceviews_v1beta2/classes.rb +5 -5
  228. data/generated/google/apis/resourceviews_v1beta2/representations.rb +10 -10
  229. data/generated/google/apis/resourceviews_v1beta2/service.rb +20 -20
  230. data/generated/google/apis/runtimeconfig_v1.rb +4 -4
  231. data/generated/google/apis/runtimeconfig_v1/classes.rb +15 -15
  232. data/generated/google/apis/runtimeconfig_v1/representations.rb +2 -2
  233. data/generated/google/apis/runtimeconfig_v1/service.rb +4 -4
  234. data/generated/google/apis/script_v1.rb +17 -17
  235. data/generated/google/apis/script_v1/classes.rb +27 -27
  236. data/generated/google/apis/script_v1/representations.rb +5 -5
  237. data/generated/google/apis/script_v1/service.rb +4 -4
  238. data/generated/google/apis/searchconsole_v1.rb +1 -1
  239. data/generated/google/apis/searchconsole_v1/classes.rb +53 -53
  240. data/generated/google/apis/searchconsole_v1/representations.rb +23 -23
  241. data/generated/google/apis/searchconsole_v1/service.rb +4 -4
  242. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  243. data/generated/google/apis/servicecontrol_v1/classes.rb +1175 -1175
  244. data/generated/google/apis/servicecontrol_v1/representations.rb +206 -206
  245. data/generated/google/apis/servicecontrol_v1/service.rb +116 -116
  246. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  247. data/generated/google/apis/servicemanagement_v1/classes.rb +1186 -1125
  248. data/generated/google/apis/servicemanagement_v1/representations.rb +241 -223
  249. data/generated/google/apis/servicemanagement_v1/service.rb +201 -201
  250. data/generated/google/apis/serviceuser_v1.rb +1 -1
  251. data/generated/google/apis/serviceuser_v1/classes.rb +2645 -2641
  252. data/generated/google/apis/serviceuser_v1/representations.rb +234 -234
  253. data/generated/google/apis/serviceuser_v1/service.rb +37 -37
  254. data/generated/google/apis/sheets_v4.rb +1 -1
  255. data/generated/google/apis/sheets_v4/classes.rb +5042 -4111
  256. data/generated/google/apis/sheets_v4/representations.rb +994 -824
  257. data/generated/google/apis/sheets_v4/service.rb +80 -80
  258. data/generated/google/apis/site_verification_v1/classes.rb +6 -6
  259. data/generated/google/apis/site_verification_v1/representations.rb +8 -8
  260. data/generated/google/apis/site_verification_v1/service.rb +12 -12
  261. data/generated/google/apis/slides_v1.rb +1 -1
  262. data/generated/google/apis/slides_v1/classes.rb +2885 -2885
  263. data/generated/google/apis/slides_v1/representations.rb +310 -310
  264. data/generated/google/apis/slides_v1/service.rb +54 -54
  265. data/generated/google/apis/sourcerepo_v1/classes.rb +206 -206
  266. data/generated/google/apis/sourcerepo_v1/representations.rb +52 -52
  267. data/generated/google/apis/sourcerepo_v1/service.rb +5 -5
  268. data/generated/google/apis/spanner_v1.rb +1 -1
  269. data/generated/google/apis/spanner_v1/classes.rb +2142 -2141
  270. data/generated/google/apis/spanner_v1/representations.rb +174 -174
  271. data/generated/google/apis/spanner_v1/service.rb +497 -497
  272. data/generated/google/apis/speech_v1beta1.rb +1 -1
  273. data/generated/google/apis/speech_v1beta1/classes.rb +227 -227
  274. data/generated/google/apis/speech_v1beta1/representations.rb +50 -50
  275. data/generated/google/apis/speech_v1beta1/service.rb +33 -33
  276. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  277. data/generated/google/apis/sqladmin_v1beta4/classes.rb +21 -21
  278. data/generated/google/apis/sqladmin_v1beta4/representations.rb +29 -29
  279. data/generated/google/apis/sqladmin_v1beta4/service.rb +56 -56
  280. data/generated/google/apis/storage_v1.rb +1 -1
  281. data/generated/google/apis/storage_v1/classes.rb +40 -6
  282. data/generated/google/apis/storage_v1/representations.rb +20 -4
  283. data/generated/google/apis/storage_v1/service.rb +61 -46
  284. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  285. data/generated/google/apis/storagetransfer_v1/classes.rb +184 -184
  286. data/generated/google/apis/storagetransfer_v1/representations.rb +35 -35
  287. data/generated/google/apis/storagetransfer_v1/service.rb +70 -70
  288. data/generated/google/apis/tagmanager_v1/service.rb +33 -33
  289. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  290. data/generated/google/apis/translate_v2/classes.rb +12 -12
  291. data/generated/google/apis/translate_v2/representations.rb +10 -10
  292. data/generated/google/apis/translate_v2/service.rb +62 -62
  293. data/generated/google/apis/vision_v1.rb +1 -1
  294. data/generated/google/apis/vision_v1/classes.rb +1267 -1267
  295. data/generated/google/apis/vision_v1/representations.rb +200 -200
  296. data/generated/google/apis/vision_v1/service.rb +10 -10
  297. data/generated/google/apis/webmasters_v3.rb +1 -1
  298. data/generated/google/apis/webmasters_v3/classes.rb +4 -4
  299. data/generated/google/apis/webmasters_v3/representations.rb +8 -8
  300. data/generated/google/apis/webmasters_v3/service.rb +21 -21
  301. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  302. data/generated/google/apis/youtube_analytics_v1/classes.rb +2 -2
  303. data/generated/google/apis/youtube_analytics_v1/representations.rb +4 -4
  304. data/generated/google/apis/youtube_analytics_v1/service.rb +8 -8
  305. data/generated/google/apis/youtube_v3/classes.rb +20 -20
  306. data/generated/google/apis/youtube_v3/representations.rb +40 -40
  307. data/generated/google/apis/youtube_v3/service.rb +80 -80
  308. data/generated/google/apis/youtubereporting_v1.rb +1 -1
  309. data/generated/google/apis/youtubereporting_v1/classes.rb +129 -129
  310. data/generated/google/apis/youtubereporting_v1/representations.rb +38 -38
  311. data/generated/google/apis/youtubereporting_v1/service.rb +97 -97
  312. data/lib/google/apis/generator/annotator.rb +2 -2
  313. data/lib/google/apis/generator/model.rb +2 -2
  314. data/lib/google/apis/version.rb +1 -1
  315. metadata +2 -2
@@ -22,6 +22,12 @@ module Google
22
22
  module Apis
23
23
  module ClouderrorreportingV1beta1
24
24
 
25
+ class ListGroupStatsResponse
26
+ class Representation < Google::Apis::Core::JsonRepresentation; end
27
+
28
+ include Google::Apis::Core::JsonObjectSupport
29
+ end
30
+
25
31
  class SourceReference
26
32
  class Representation < Google::Apis::Core::JsonRepresentation; end
27
33
 
@@ -107,9 +113,13 @@ module Google
107
113
  end
108
114
 
109
115
  class ListGroupStatsResponse
110
- class Representation < Google::Apis::Core::JsonRepresentation; end
116
+ # @private
117
+ class Representation < Google::Apis::Core::JsonRepresentation
118
+ property :time_range_begin, as: 'timeRangeBegin'
119
+ collection :error_group_stats, as: 'errorGroupStats', class: Google::Apis::ClouderrorreportingV1beta1::ErrorGroupStats, decorator: Google::Apis::ClouderrorreportingV1beta1::ErrorGroupStats::Representation
111
120
 
112
- include Google::Apis::Core::JsonObjectSupport
121
+ property :next_page_token, as: 'nextPageToken'
122
+ end
113
123
  end
114
124
 
115
125
  class SourceReference
@@ -129,24 +139,24 @@ module Google
129
139
  class ErrorEvent
130
140
  # @private
131
141
  class Representation < Google::Apis::Core::JsonRepresentation
132
- property :service_context, as: 'serviceContext', class: Google::Apis::ClouderrorreportingV1beta1::ServiceContext, decorator: Google::Apis::ClouderrorreportingV1beta1::ServiceContext::Representation
133
-
134
142
  property :event_time, as: 'eventTime'
135
143
  property :context, as: 'context', class: Google::Apis::ClouderrorreportingV1beta1::ErrorContext, decorator: Google::Apis::ClouderrorreportingV1beta1::ErrorContext::Representation
136
144
 
137
145
  property :message, as: 'message'
146
+ property :service_context, as: 'serviceContext', class: Google::Apis::ClouderrorreportingV1beta1::ServiceContext, decorator: Google::Apis::ClouderrorreportingV1beta1::ServiceContext::Representation
147
+
138
148
  end
139
149
  end
140
150
 
141
151
  class ReportedErrorEvent
142
152
  # @private
143
153
  class Representation < Google::Apis::Core::JsonRepresentation
154
+ property :message, as: 'message'
144
155
  property :service_context, as: 'serviceContext', class: Google::Apis::ClouderrorreportingV1beta1::ServiceContext, decorator: Google::Apis::ClouderrorreportingV1beta1::ServiceContext::Representation
145
156
 
146
157
  property :event_time, as: 'eventTime'
147
158
  property :context, as: 'context', class: Google::Apis::ClouderrorreportingV1beta1::ErrorContext, decorator: Google::Apis::ClouderrorreportingV1beta1::ErrorContext::Representation
148
159
 
149
- property :message, as: 'message'
150
160
  end
151
161
  end
152
162
 
@@ -173,11 +183,6 @@ module Google
173
183
  class ErrorGroupStats
174
184
  # @private
175
185
  class Representation < Google::Apis::Core::JsonRepresentation
176
- collection :timed_counts, as: 'timedCounts', class: Google::Apis::ClouderrorreportingV1beta1::TimedCount, decorator: Google::Apis::ClouderrorreportingV1beta1::TimedCount::Representation
177
-
178
- property :group, as: 'group', class: Google::Apis::ClouderrorreportingV1beta1::ErrorGroup, decorator: Google::Apis::ClouderrorreportingV1beta1::ErrorGroup::Representation
179
-
180
- property :first_seen_time, as: 'firstSeenTime'
181
186
  property :count, :numeric_string => true, as: 'count'
182
187
  property :affected_users_count, :numeric_string => true, as: 'affectedUsersCount'
183
188
  property :last_seen_time, as: 'lastSeenTime'
@@ -186,25 +191,30 @@ module Google
186
191
  property :num_affected_services, as: 'numAffectedServices'
187
192
  property :representative, as: 'representative', class: Google::Apis::ClouderrorreportingV1beta1::ErrorEvent, decorator: Google::Apis::ClouderrorreportingV1beta1::ErrorEvent::Representation
188
193
 
194
+ collection :timed_counts, as: 'timedCounts', class: Google::Apis::ClouderrorreportingV1beta1::TimedCount, decorator: Google::Apis::ClouderrorreportingV1beta1::TimedCount::Representation
195
+
196
+ property :group, as: 'group', class: Google::Apis::ClouderrorreportingV1beta1::ErrorGroup, decorator: Google::Apis::ClouderrorreportingV1beta1::ErrorGroup::Representation
197
+
198
+ property :first_seen_time, as: 'firstSeenTime'
189
199
  end
190
200
  end
191
201
 
192
202
  class ListEventsResponse
193
203
  # @private
194
204
  class Representation < Google::Apis::Core::JsonRepresentation
195
- property :time_range_begin, as: 'timeRangeBegin'
196
205
  collection :error_events, as: 'errorEvents', class: Google::Apis::ClouderrorreportingV1beta1::ErrorEvent, decorator: Google::Apis::ClouderrorreportingV1beta1::ErrorEvent::Representation
197
206
 
198
207
  property :next_page_token, as: 'nextPageToken'
208
+ property :time_range_begin, as: 'timeRangeBegin'
199
209
  end
200
210
  end
201
211
 
202
212
  class TimedCount
203
213
  # @private
204
214
  class Representation < Google::Apis::Core::JsonRepresentation
205
- property :end_time, as: 'endTime'
206
215
  property :count, :numeric_string => true, as: 'count'
207
216
  property :start_time, as: 'startTime'
217
+ property :end_time, as: 'endTime'
208
218
  end
209
219
  end
210
220
 
@@ -221,9 +231,9 @@ module Google
221
231
  class SourceLocation
222
232
  # @private
223
233
  class Representation < Google::Apis::Core::JsonRepresentation
224
- property :function_name, as: 'functionName'
225
234
  property :file_path, as: 'filePath'
226
235
  property :line_number, as: 'lineNumber'
236
+ property :function_name, as: 'functionName'
227
237
  end
228
238
  end
229
239
 
@@ -245,22 +255,12 @@ module Google
245
255
  class HttpRequestContext
246
256
  # @private
247
257
  class Representation < Google::Apis::Core::JsonRepresentation
248
- property :url, as: 'url'
249
- property :response_status_code, as: 'responseStatusCode'
250
258
  property :method_prop, as: 'method'
251
259
  property :remote_ip, as: 'remoteIp'
252
260
  property :referrer, as: 'referrer'
253
261
  property :user_agent, as: 'userAgent'
254
- end
255
- end
256
-
257
- class ListGroupStatsResponse
258
- # @private
259
- class Representation < Google::Apis::Core::JsonRepresentation
260
- property :time_range_begin, as: 'timeRangeBegin'
261
- collection :error_group_stats, as: 'errorGroupStats', class: Google::Apis::ClouderrorreportingV1beta1::ErrorGroupStats, decorator: Google::Apis::ClouderrorreportingV1beta1::ErrorGroupStats::Representation
262
-
263
- property :next_page_token, as: 'nextPageToken'
262
+ property :url, as: 'url'
263
+ property :response_status_code, as: 'responseStatusCode'
264
264
  end
265
265
  end
266
266
  end
@@ -55,11 +55,11 @@ module Google
55
55
  # [Google Cloud Platform project
56
56
  # ID](https://support.google.com/cloud/answer/6158840).
57
57
  # Example: `projects/my-project-123`.
58
- # @param [String] fields
59
- # Selector specifying which fields to include in a partial response.
60
58
  # @param [String] quota_user
61
59
  # Available to use for quota purposes for server-side applications. Can be any
62
60
  # arbitrary string assigned to a user, but should not exceed 40 characters.
61
+ # @param [String] fields
62
+ # Selector specifying which fields to include in a partial response.
63
63
  # @param [Google::Apis::RequestOptions] options
64
64
  # Request-specific options
65
65
  #
@@ -72,13 +72,13 @@ module Google
72
72
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
73
73
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
74
74
  # @raise [Google::Apis::AuthorizationError] Authorization is required
75
- def delete_project_events(project_name, fields: nil, quota_user: nil, options: nil, &block)
75
+ def delete_project_events(project_name, quota_user: nil, fields: nil, options: nil, &block)
76
76
  command = make_simple_command(:delete, 'v1beta1/{+projectName}/events', options)
77
77
  command.response_representation = Google::Apis::ClouderrorreportingV1beta1::DeleteEventsResponse::Representation
78
78
  command.response_class = Google::Apis::ClouderrorreportingV1beta1::DeleteEventsResponse
79
79
  command.params['projectName'] = project_name unless project_name.nil?
80
- command.query['fields'] = fields unless fields.nil?
81
80
  command.query['quotaUser'] = quota_user unless quota_user.nil?
81
+ command.query['fields'] = fields unless fields.nil?
82
82
  execute_or_queue_command(command, &block)
83
83
  end
84
84
 
@@ -91,11 +91,11 @@ module Google
91
91
  # <code>groupStats.list</code></a> to return a list of groups belonging to
92
92
  # this project.
93
93
  # Example: <code>projects/my-project-123/groups/my-group</code>
94
- # @param [String] fields
95
- # Selector specifying which fields to include in a partial response.
96
94
  # @param [String] quota_user
97
95
  # Available to use for quota purposes for server-side applications. Can be any
98
96
  # arbitrary string assigned to a user, but should not exceed 40 characters.
97
+ # @param [String] fields
98
+ # Selector specifying which fields to include in a partial response.
99
99
  # @param [Google::Apis::RequestOptions] options
100
100
  # Request-specific options
101
101
  #
@@ -108,13 +108,13 @@ module Google
108
108
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
109
109
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
110
110
  # @raise [Google::Apis::AuthorizationError] Authorization is required
111
- def get_project_group(group_name, fields: nil, quota_user: nil, options: nil, &block)
111
+ def get_project_group(group_name, quota_user: nil, fields: nil, options: nil, &block)
112
112
  command = make_simple_command(:get, 'v1beta1/{+groupName}', options)
113
113
  command.response_representation = Google::Apis::ClouderrorreportingV1beta1::ErrorGroup::Representation
114
114
  command.response_class = Google::Apis::ClouderrorreportingV1beta1::ErrorGroup
115
115
  command.params['groupName'] = group_name unless group_name.nil?
116
- command.query['fields'] = fields unless fields.nil?
117
116
  command.query['quotaUser'] = quota_user unless quota_user.nil?
117
+ command.query['fields'] = fields unless fields.nil?
118
118
  execute_or_queue_command(command, &block)
119
119
  end
120
120
 
@@ -124,11 +124,11 @@ module Google
124
124
  # The group resource name.
125
125
  # Example: <code>projects/my-project-123/groups/my-groupid</code>
126
126
  # @param [Google::Apis::ClouderrorreportingV1beta1::ErrorGroup] error_group_object
127
- # @param [String] fields
128
- # Selector specifying which fields to include in a partial response.
129
127
  # @param [String] quota_user
130
128
  # Available to use for quota purposes for server-side applications. Can be any
131
129
  # arbitrary string assigned to a user, but should not exceed 40 characters.
130
+ # @param [String] fields
131
+ # Selector specifying which fields to include in a partial response.
132
132
  # @param [Google::Apis::RequestOptions] options
133
133
  # Request-specific options
134
134
  #
@@ -141,15 +141,15 @@ module Google
141
141
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
142
142
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
143
143
  # @raise [Google::Apis::AuthorizationError] Authorization is required
144
- def update_project_group(name, error_group_object = nil, fields: nil, quota_user: nil, options: nil, &block)
144
+ def update_project_group(name, error_group_object = nil, quota_user: nil, fields: nil, options: nil, &block)
145
145
  command = make_simple_command(:put, 'v1beta1/{+name}', options)
146
146
  command.request_representation = Google::Apis::ClouderrorreportingV1beta1::ErrorGroup::Representation
147
147
  command.request_object = error_group_object
148
148
  command.response_representation = Google::Apis::ClouderrorreportingV1beta1::ErrorGroup::Representation
149
149
  command.response_class = Google::Apis::ClouderrorreportingV1beta1::ErrorGroup
150
150
  command.params['name'] = name unless name.nil?
151
- command.query['fields'] = fields unless fields.nil?
152
151
  command.query['quotaUser'] = quota_user unless quota_user.nil?
152
+ command.query['fields'] = fields unless fields.nil?
153
153
  execute_or_queue_command(command, &block)
154
154
  end
155
155
 
@@ -160,6 +160,13 @@ module Google
160
160
  # <a href="https://support.google.com/cloud/answer/6158840">Google Cloud
161
161
  # Platform project ID</a>.
162
162
  # Example: <code>projects/my-project-123</code>.
163
+ # @param [String] alignment_time
164
+ # [Optional] Time where the timed counts shall be aligned if rounded
165
+ # alignment is chosen. Default is 00:00 UTC.
166
+ # @param [String] service_filter_resource_type
167
+ # [Optional] The exact value to match against
168
+ # [`ServiceContext.resource_type`](/error-reporting/reference/rest/v1beta1/
169
+ # ServiceContext#FIELDS.resource_type).
163
170
  # @param [String] timed_count_duration
164
171
  # [Optional] The preferred duration for a single returned `TimedCount`.
165
172
  # If not set, no timed counts are returned.
@@ -188,18 +195,11 @@ module Google
188
195
  # [Optional] The exact value to match against
189
196
  # [`ServiceContext.version`](/error-reporting/reference/rest/v1beta1/
190
197
  # ServiceContext#FIELDS.version).
191
- # @param [String] service_filter_resource_type
192
- # [Optional] The exact value to match against
193
- # [`ServiceContext.resource_type`](/error-reporting/reference/rest/v1beta1/
194
- # ServiceContext#FIELDS.resource_type).
195
- # @param [String] alignment_time
196
- # [Optional] Time where the timed counts shall be aligned if rounded
197
- # alignment is chosen. Default is 00:00 UTC.
198
- # @param [String] fields
199
- # Selector specifying which fields to include in a partial response.
200
198
  # @param [String] quota_user
201
199
  # Available to use for quota purposes for server-side applications. Can be any
202
200
  # arbitrary string assigned to a user, but should not exceed 40 characters.
201
+ # @param [String] fields
202
+ # Selector specifying which fields to include in a partial response.
203
203
  # @param [Google::Apis::RequestOptions] options
204
204
  # Request-specific options
205
205
  #
@@ -212,11 +212,13 @@ module Google
212
212
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
213
213
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
214
214
  # @raise [Google::Apis::AuthorizationError] Authorization is required
215
- def list_project_group_stats(project_name, timed_count_duration: nil, page_token: nil, time_range_period: nil, alignment: nil, group_id: nil, service_filter_service: nil, page_size: nil, order: nil, service_filter_version: nil, service_filter_resource_type: nil, alignment_time: nil, fields: nil, quota_user: nil, options: nil, &block)
215
+ def list_project_group_stats(project_name, alignment_time: nil, service_filter_resource_type: nil, timed_count_duration: nil, page_token: nil, time_range_period: nil, alignment: nil, group_id: nil, service_filter_service: nil, page_size: nil, order: nil, service_filter_version: nil, quota_user: nil, fields: nil, options: nil, &block)
216
216
  command = make_simple_command(:get, 'v1beta1/{+projectName}/groupStats', options)
217
217
  command.response_representation = Google::Apis::ClouderrorreportingV1beta1::ListGroupStatsResponse::Representation
218
218
  command.response_class = Google::Apis::ClouderrorreportingV1beta1::ListGroupStatsResponse
219
219
  command.params['projectName'] = project_name unless project_name.nil?
220
+ command.query['alignmentTime'] = alignment_time unless alignment_time.nil?
221
+ command.query['serviceFilter.resourceType'] = service_filter_resource_type unless service_filter_resource_type.nil?
220
222
  command.query['timedCountDuration'] = timed_count_duration unless timed_count_duration.nil?
221
223
  command.query['pageToken'] = page_token unless page_token.nil?
222
224
  command.query['timeRange.period'] = time_range_period unless time_range_period.nil?
@@ -226,54 +228,8 @@ module Google
226
228
  command.query['pageSize'] = page_size unless page_size.nil?
227
229
  command.query['order'] = order unless order.nil?
228
230
  command.query['serviceFilter.version'] = service_filter_version unless service_filter_version.nil?
229
- command.query['serviceFilter.resourceType'] = service_filter_resource_type unless service_filter_resource_type.nil?
230
- command.query['alignmentTime'] = alignment_time unless alignment_time.nil?
231
- command.query['fields'] = fields unless fields.nil?
232
231
  command.query['quotaUser'] = quota_user unless quota_user.nil?
233
- execute_or_queue_command(command, &block)
234
- end
235
-
236
- # Report an individual error event.
237
- # This endpoint accepts <strong>either</strong> an OAuth token,
238
- # <strong>or</strong> an
239
- # <a href="https://support.google.com/cloud/answer/6158862">API key</a>
240
- # for authentication. To use an API key, append it to the URL as the value of
241
- # a `key` parameter. For example:
242
- # <pre>POST https://clouderrorreporting.googleapis.com/v1beta1/projects/example-
243
- # project/events:report?key=123ABC456</pre>
244
- # @param [String] project_name
245
- # [Required] The resource name of the Google Cloud Platform project. Written
246
- # as `projects/` plus the
247
- # [Google Cloud Platform project ID](https://support.google.com/cloud/answer/
248
- # 6158840).
249
- # Example: `projects/my-project-123`.
250
- # @param [Google::Apis::ClouderrorreportingV1beta1::ReportedErrorEvent] reported_error_event_object
251
- # @param [String] fields
252
- # Selector specifying which fields to include in a partial response.
253
- # @param [String] quota_user
254
- # Available to use for quota purposes for server-side applications. Can be any
255
- # arbitrary string assigned to a user, but should not exceed 40 characters.
256
- # @param [Google::Apis::RequestOptions] options
257
- # Request-specific options
258
- #
259
- # @yield [result, err] Result & error if block supplied
260
- # @yieldparam result [Google::Apis::ClouderrorreportingV1beta1::ReportErrorEventResponse] parsed result object
261
- # @yieldparam err [StandardError] error object if request failed
262
- #
263
- # @return [Google::Apis::ClouderrorreportingV1beta1::ReportErrorEventResponse]
264
- #
265
- # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
266
- # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
267
- # @raise [Google::Apis::AuthorizationError] Authorization is required
268
- def report_project_event(project_name, reported_error_event_object = nil, fields: nil, quota_user: nil, options: nil, &block)
269
- command = make_simple_command(:post, 'v1beta1/{+projectName}/events:report', options)
270
- command.request_representation = Google::Apis::ClouderrorreportingV1beta1::ReportedErrorEvent::Representation
271
- command.request_object = reported_error_event_object
272
- command.response_representation = Google::Apis::ClouderrorreportingV1beta1::ReportErrorEventResponse::Representation
273
- command.response_class = Google::Apis::ClouderrorreportingV1beta1::ReportErrorEventResponse
274
- command.params['projectName'] = project_name unless project_name.nil?
275
232
  command.query['fields'] = fields unless fields.nil?
276
- command.query['quotaUser'] = quota_user unless quota_user.nil?
277
233
  execute_or_queue_command(command, &block)
278
234
  end
279
235
 
@@ -286,12 +242,12 @@ module Google
286
242
  # Example: `projects/my-project-123`.
287
243
  # @param [String] group_id
288
244
  # [Required] The group for which events shall be returned.
245
+ # @param [String] page_token
246
+ # [Optional] A `next_page_token` provided by a previous response.
289
247
  # @param [String] service_filter_service
290
248
  # [Optional] The exact value to match against
291
249
  # [`ServiceContext.service`](/error-reporting/reference/rest/v1beta1/
292
250
  # ServiceContext#FIELDS.service).
293
- # @param [String] page_token
294
- # [Optional] A `next_page_token` provided by a previous response.
295
251
  # @param [Fixnum] page_size
296
252
  # [Optional] The maximum number of results to return per response.
297
253
  # @param [String] service_filter_version
@@ -304,11 +260,11 @@ module Google
304
260
  # ServiceContext#FIELDS.resource_type).
305
261
  # @param [String] time_range_period
306
262
  # Restricts the query to the specified time range.
307
- # @param [String] fields
308
- # Selector specifying which fields to include in a partial response.
309
263
  # @param [String] quota_user
310
264
  # Available to use for quota purposes for server-side applications. Can be any
311
265
  # arbitrary string assigned to a user, but should not exceed 40 characters.
266
+ # @param [String] fields
267
+ # Selector specifying which fields to include in a partial response.
312
268
  # @param [Google::Apis::RequestOptions] options
313
269
  # Request-specific options
314
270
  #
@@ -321,20 +277,64 @@ module Google
321
277
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
322
278
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
323
279
  # @raise [Google::Apis::AuthorizationError] Authorization is required
324
- def list_project_events(project_name, group_id: nil, service_filter_service: nil, page_token: nil, page_size: nil, service_filter_version: nil, service_filter_resource_type: nil, time_range_period: nil, fields: nil, quota_user: nil, options: nil, &block)
280
+ def list_project_events(project_name, group_id: nil, page_token: nil, service_filter_service: nil, page_size: nil, service_filter_version: nil, service_filter_resource_type: nil, time_range_period: nil, quota_user: nil, fields: nil, options: nil, &block)
325
281
  command = make_simple_command(:get, 'v1beta1/{+projectName}/events', options)
326
282
  command.response_representation = Google::Apis::ClouderrorreportingV1beta1::ListEventsResponse::Representation
327
283
  command.response_class = Google::Apis::ClouderrorreportingV1beta1::ListEventsResponse
328
284
  command.params['projectName'] = project_name unless project_name.nil?
329
285
  command.query['groupId'] = group_id unless group_id.nil?
330
- command.query['serviceFilter.service'] = service_filter_service unless service_filter_service.nil?
331
286
  command.query['pageToken'] = page_token unless page_token.nil?
287
+ command.query['serviceFilter.service'] = service_filter_service unless service_filter_service.nil?
332
288
  command.query['pageSize'] = page_size unless page_size.nil?
333
289
  command.query['serviceFilter.version'] = service_filter_version unless service_filter_version.nil?
334
290
  command.query['serviceFilter.resourceType'] = service_filter_resource_type unless service_filter_resource_type.nil?
335
291
  command.query['timeRange.period'] = time_range_period unless time_range_period.nil?
292
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
336
293
  command.query['fields'] = fields unless fields.nil?
294
+ execute_or_queue_command(command, &block)
295
+ end
296
+
297
+ # Report an individual error event.
298
+ # This endpoint accepts <strong>either</strong> an OAuth token,
299
+ # <strong>or</strong> an
300
+ # <a href="https://support.google.com/cloud/answer/6158862">API key</a>
301
+ # for authentication. To use an API key, append it to the URL as the value of
302
+ # a `key` parameter. For example:
303
+ # <pre>POST https://clouderrorreporting.googleapis.com/v1beta1/projects/example-
304
+ # project/events:report?key=123ABC456</pre>
305
+ # @param [String] project_name
306
+ # [Required] The resource name of the Google Cloud Platform project. Written
307
+ # as `projects/` plus the
308
+ # [Google Cloud Platform project ID](https://support.google.com/cloud/answer/
309
+ # 6158840).
310
+ # Example: `projects/my-project-123`.
311
+ # @param [Google::Apis::ClouderrorreportingV1beta1::ReportedErrorEvent] reported_error_event_object
312
+ # @param [String] quota_user
313
+ # Available to use for quota purposes for server-side applications. Can be any
314
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
315
+ # @param [String] fields
316
+ # Selector specifying which fields to include in a partial response.
317
+ # @param [Google::Apis::RequestOptions] options
318
+ # Request-specific options
319
+ #
320
+ # @yield [result, err] Result & error if block supplied
321
+ # @yieldparam result [Google::Apis::ClouderrorreportingV1beta1::ReportErrorEventResponse] parsed result object
322
+ # @yieldparam err [StandardError] error object if request failed
323
+ #
324
+ # @return [Google::Apis::ClouderrorreportingV1beta1::ReportErrorEventResponse]
325
+ #
326
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
327
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
328
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
329
+ def report_project_event(project_name, reported_error_event_object = nil, quota_user: nil, fields: nil, options: nil, &block)
330
+ command = make_simple_command(:post, 'v1beta1/{+projectName}/events:report', options)
331
+ command.request_representation = Google::Apis::ClouderrorreportingV1beta1::ReportedErrorEvent::Representation
332
+ command.request_object = reported_error_event_object
333
+ command.response_representation = Google::Apis::ClouderrorreportingV1beta1::ReportErrorEventResponse::Representation
334
+ command.response_class = Google::Apis::ClouderrorreportingV1beta1::ReportErrorEventResponse
335
+ command.params['projectName'] = project_name unless project_name.nil?
337
336
  command.query['quotaUser'] = quota_user unless quota_user.nil?
337
+ command.query['fields'] = fields unless fields.nil?
338
338
  execute_or_queue_command(command, &block)
339
339
  end
340
340
 
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://cloud.google.com/kms/
27
27
  module CloudkmsV1
28
28
  VERSION = 'V1'
29
- REVISION = '20170523'
29
+ REVISION = '20170530'
30
30
 
31
31
  # View and manage your data across Google Cloud Platform services
32
32
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -22,15 +22,14 @@ module Google
22
22
  module Apis
23
23
  module CloudkmsV1
24
24
 
25
- # Response message for KeyManagementService.Decrypt.
26
- class DecryptResponse
25
+ # Write a Cloud Audit log
26
+ class CloudAuditOptions
27
27
  include Google::Apis::Core::Hashable
28
28
 
29
- # The decrypted data originally supplied in EncryptRequest.plaintext.
30
- # Corresponds to the JSON property `plaintext`
31
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
29
+ # The log_name to populate in the Cloud Audit Record.
30
+ # Corresponds to the JSON property `logName`
32
31
  # @return [String]
33
- attr_accessor :plaintext
32
+ attr_accessor :log_name
34
33
 
35
34
  def initialize(**args)
36
35
  update!(**args)
@@ -38,21 +37,46 @@ module Google
38
37
 
39
38
  # Update properties of this object
40
39
  def update!(**args)
41
- @plaintext = args[:plaintext] if args.key?(:plaintext)
40
+ @log_name = args[:log_name] if args.key?(:log_name)
42
41
  end
43
42
  end
44
43
 
45
- # Request message for `TestIamPermissions` method.
46
- class TestIamPermissionsRequest
44
+ # Associates `members` with a `role`.
45
+ class Binding
47
46
  include Google::Apis::Core::Hashable
48
47
 
49
- # The set of permissions to check for the `resource`. Permissions with
50
- # wildcards (such as '*' or 'storage.*') are not allowed. For more
51
- # information see
52
- # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
53
- # Corresponds to the JSON property `permissions`
48
+ # Specifies the identities requesting access for a Cloud Platform resource.
49
+ # `members` can have the following values:
50
+ # * `allUsers`: A special identifier that represents anyone who is
51
+ # on the internet; with or without a Google account.
52
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
53
+ # who is authenticated with a Google account or a service account.
54
+ # * `user:`emailid``: An email address that represents a specific Google
55
+ # account. For example, `alice@gmail.com` or `joe@example.com`.
56
+ # * `serviceAccount:`emailid``: An email address that represents a service
57
+ # account. For example, `my-other-app@appspot.gserviceaccount.com`.
58
+ # * `group:`emailid``: An email address that represents a Google group.
59
+ # For example, `admins@example.com`.
60
+ # * `domain:`domain``: A Google Apps domain name that represents all the
61
+ # users of that domain. For example, `google.com` or `example.com`.
62
+ # Corresponds to the JSON property `members`
54
63
  # @return [Array<String>]
55
- attr_accessor :permissions
64
+ attr_accessor :members
65
+
66
+ # Role that is assigned to `members`.
67
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
68
+ # Required
69
+ # Corresponds to the JSON property `role`
70
+ # @return [String]
71
+ attr_accessor :role
72
+
73
+ # Represents an expression text. Example:
74
+ # title: "User account presence"
75
+ # description: "Determines whether the request has a user account"
76
+ # expression: "size(request.user) > 0"
77
+ # Corresponds to the JSON property `condition`
78
+ # @return [Google::Apis::CloudkmsV1::Expr]
79
+ attr_accessor :condition
56
80
 
57
81
  def initialize(**args)
58
82
  update!(**args)
@@ -60,24 +84,45 @@ module Google
60
84
 
61
85
  # Update properties of this object
62
86
  def update!(**args)
63
- @permissions = args[:permissions] if args.key?(:permissions)
87
+ @members = args[:members] if args.key?(:members)
88
+ @role = args[:role] if args.key?(:role)
89
+ @condition = args[:condition] if args.key?(:condition)
64
90
  end
65
91
  end
66
92
 
67
- # A KeyRing is a toplevel logical grouping of CryptoKeys.
68
- class KeyRing
93
+ # Represents an expression text. Example:
94
+ # title: "User account presence"
95
+ # description: "Determines whether the request has a user account"
96
+ # expression: "size(request.user) > 0"
97
+ class Expr
69
98
  include Google::Apis::Core::Hashable
70
99
 
71
- # Output only. The time at which this KeyRing was created.
72
- # Corresponds to the JSON property `createTime`
100
+ # An optional title for the expression, i.e. a short string describing
101
+ # its purpose. This can be used e.g. in UIs which allow to enter the
102
+ # expression.
103
+ # Corresponds to the JSON property `title`
73
104
  # @return [String]
74
- attr_accessor :create_time
105
+ attr_accessor :title
75
106
 
76
- # Output only. The resource name for the KeyRing in the format
77
- # `projects/*/locations/*/keyRings/*`.
78
- # Corresponds to the JSON property `name`
107
+ # An optional string indicating the location of the expression for error
108
+ # reporting, e.g. a file name and a position in the file.
109
+ # Corresponds to the JSON property `location`
79
110
  # @return [String]
80
- attr_accessor :name
111
+ attr_accessor :location
112
+
113
+ # An optional description of the expression. This is a longer text which
114
+ # describes the expression, e.g. when hovered over it in a UI.
115
+ # Corresponds to the JSON property `description`
116
+ # @return [String]
117
+ attr_accessor :description
118
+
119
+ # Textual representation of an expression in
120
+ # [Common Expression Language](http://go/api-expr) syntax.
121
+ # The application context of the containing message determines which
122
+ # well-known feature set of CEL is supported.
123
+ # Corresponds to the JSON property `expression`
124
+ # @return [String]
125
+ attr_accessor :expression
81
126
 
82
127
  def initialize(**args)
83
128
  update!(**args)
@@ -85,25 +130,30 @@ module Google
85
130
 
86
131
  # Update properties of this object
87
132
  def update!(**args)
88
- @create_time = args[:create_time] if args.key?(:create_time)
89
- @name = args[:name] if args.key?(:name)
133
+ @title = args[:title] if args.key?(:title)
134
+ @location = args[:location] if args.key?(:location)
135
+ @description = args[:description] if args.key?(:description)
136
+ @expression = args[:expression] if args.key?(:expression)
90
137
  end
91
138
  end
92
139
 
93
- # Response message for KeyManagementService.Encrypt.
94
- class EncryptResponse
140
+ # Request message for KeyManagementService.Encrypt.
141
+ class EncryptRequest
95
142
  include Google::Apis::Core::Hashable
96
143
 
97
- # The encrypted data.
98
- # Corresponds to the JSON property `ciphertext`
144
+ # Optional data that, if specified, must also be provided during decryption
145
+ # through DecryptRequest.additional_authenticated_data. Must be no
146
+ # larger than 64KiB.
147
+ # Corresponds to the JSON property `additionalAuthenticatedData`
99
148
  # NOTE: Values are automatically base64 encoded/decoded in the client library.
100
149
  # @return [String]
101
- attr_accessor :ciphertext
150
+ attr_accessor :additional_authenticated_data
102
151
 
103
- # The resource name of the CryptoKeyVersion used in encryption.
104
- # Corresponds to the JSON property `name`
152
+ # Required. The data to encrypt. Must be no larger than 64KiB.
153
+ # Corresponds to the JSON property `plaintext`
154
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
105
155
  # @return [String]
106
- attr_accessor :name
156
+ attr_accessor :plaintext
107
157
 
108
158
  def initialize(**args)
109
159
  update!(**args)
@@ -111,24 +161,32 @@ module Google
111
161
 
112
162
  # Update properties of this object
113
163
  def update!(**args)
114
- @ciphertext = args[:ciphertext] if args.key?(:ciphertext)
115
- @name = args[:name] if args.key?(:name)
164
+ @additional_authenticated_data = args[:additional_authenticated_data] if args.key?(:additional_authenticated_data)
165
+ @plaintext = args[:plaintext] if args.key?(:plaintext)
116
166
  end
117
167
  end
118
168
 
119
- # The response message for Locations.ListLocations.
120
- class ListLocationsResponse
169
+ # Response message for KeyManagementService.ListCryptoKeyVersions.
170
+ class ListCryptoKeyVersionsResponse
121
171
  include Google::Apis::Core::Hashable
122
172
 
123
- # The standard List next-page token.
173
+ # The list of CryptoKeyVersions.
174
+ # Corresponds to the JSON property `cryptoKeyVersions`
175
+ # @return [Array<Google::Apis::CloudkmsV1::CryptoKeyVersion>]
176
+ attr_accessor :crypto_key_versions
177
+
178
+ # A token to retrieve next page of results. Pass this value in
179
+ # ListCryptoKeyVersionsRequest.page_token to retrieve the next page of
180
+ # results.
124
181
  # Corresponds to the JSON property `nextPageToken`
125
182
  # @return [String]
126
183
  attr_accessor :next_page_token
127
184
 
128
- # A list of locations that matches the specified filter in the request.
129
- # Corresponds to the JSON property `locations`
130
- # @return [Array<Google::Apis::CloudkmsV1::Location>]
131
- attr_accessor :locations
185
+ # The total number of CryptoKeyVersions that matched the
186
+ # query.
187
+ # Corresponds to the JSON property `totalSize`
188
+ # @return [Fixnum]
189
+ attr_accessor :total_size
132
190
 
133
191
  def initialize(**args)
134
192
  update!(**args)
@@ -136,89 +194,21 @@ module Google
136
194
 
137
195
  # Update properties of this object
138
196
  def update!(**args)
197
+ @crypto_key_versions = args[:crypto_key_versions] if args.key?(:crypto_key_versions)
139
198
  @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
140
- @locations = args[:locations] if args.key?(:locations)
199
+ @total_size = args[:total_size] if args.key?(:total_size)
141
200
  end
142
201
  end
143
202
 
144
- # Defines an Identity and Access Management (IAM) policy. It is used to
145
- # specify access control policies for Cloud Platform resources.
146
- # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
147
- # `members` to a `role`, where the members can be user accounts, Google groups,
148
- # Google domains, and service accounts. A `role` is a named list of permissions
149
- # defined by IAM.
150
- # **Example**
151
- # `
152
- # "bindings": [
153
- # `
154
- # "role": "roles/owner",
155
- # "members": [
156
- # "user:mike@example.com",
157
- # "group:admins@example.com",
158
- # "domain:google.com",
159
- # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
160
- # ]
161
- # `,
162
- # `
163
- # "role": "roles/viewer",
164
- # "members": ["user:sean@example.com"]
165
- # `
166
- # ]
167
- # `
168
- # For a description of IAM and its features, see the
169
- # [IAM developer's guide](https://cloud.google.com/iam).
170
- class Policy
203
+ # Response message for `TestIamPermissions` method.
204
+ class TestIamPermissionsResponse
171
205
  include Google::Apis::Core::Hashable
172
206
 
173
- # `etag` is used for optimistic concurrency control as a way to help
174
- # prevent simultaneous updates of a policy from overwriting each other.
175
- # It is strongly suggested that systems make use of the `etag` in the
176
- # read-modify-write cycle to perform policy updates in order to avoid race
177
- # conditions: An `etag` is returned in the response to `getIamPolicy`, and
178
- # systems are expected to put that etag in the request to `setIamPolicy` to
179
- # ensure that their change will be applied to the same version of the policy.
180
- # If no `etag` is provided in the call to `setIamPolicy`, then the existing
181
- # policy is overwritten blindly.
182
- # Corresponds to the JSON property `etag`
183
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
184
- # @return [String]
185
- attr_accessor :etag
186
-
187
- #
188
- # Corresponds to the JSON property `iamOwned`
189
- # @return [Boolean]
190
- attr_accessor :iam_owned
191
- alias_method :iam_owned?, :iam_owned
192
-
193
- # If more than one rule is specified, the rules are applied in the following
194
- # manner:
195
- # - All matching LOG rules are always applied.
196
- # - If any DENY/DENY_WITH_LOG rule matches, permission is denied.
197
- # Logging will be applied if one or more matching rule requires logging.
198
- # - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is
199
- # granted.
200
- # Logging will be applied if one or more matching rule requires logging.
201
- # - Otherwise, if no rule applies, permission is denied.
202
- # Corresponds to the JSON property `rules`
203
- # @return [Array<Google::Apis::CloudkmsV1::Rule>]
204
- attr_accessor :rules
205
-
206
- # Version of the `Policy`. The default version is 0.
207
- # Corresponds to the JSON property `version`
208
- # @return [Fixnum]
209
- attr_accessor :version
210
-
211
- # Specifies cloud audit logging configuration for this policy.
212
- # Corresponds to the JSON property `auditConfigs`
213
- # @return [Array<Google::Apis::CloudkmsV1::AuditConfig>]
214
- attr_accessor :audit_configs
215
-
216
- # Associates a list of `members` to a `role`.
217
- # Multiple `bindings` must not be specified for the same `role`.
218
- # `bindings` with no members will result in an error.
219
- # Corresponds to the JSON property `bindings`
220
- # @return [Array<Google::Apis::CloudkmsV1::Binding>]
221
- attr_accessor :bindings
207
+ # A subset of `TestPermissionsRequest.permissions` that the caller is
208
+ # allowed.
209
+ # Corresponds to the JSON property `permissions`
210
+ # @return [Array<String>]
211
+ attr_accessor :permissions
222
212
 
223
213
  def initialize(**args)
224
214
  update!(**args)
@@ -226,17 +216,12 @@ module Google
226
216
 
227
217
  # Update properties of this object
228
218
  def update!(**args)
229
- @etag = args[:etag] if args.key?(:etag)
230
- @iam_owned = args[:iam_owned] if args.key?(:iam_owned)
231
- @rules = args[:rules] if args.key?(:rules)
232
- @version = args[:version] if args.key?(:version)
233
- @audit_configs = args[:audit_configs] if args.key?(:audit_configs)
234
- @bindings = args[:bindings] if args.key?(:bindings)
219
+ @permissions = args[:permissions] if args.key?(:permissions)
235
220
  end
236
221
  end
237
222
 
238
- # Request message for KeyManagementService.RestoreCryptoKeyVersion.
239
- class RestoreCryptoKeyVersionRequest
223
+ # Request message for KeyManagementService.DestroyCryptoKeyVersion.
224
+ class DestroyCryptoKeyVersionRequest
240
225
  include Google::Apis::Core::Hashable
241
226
 
242
227
  def initialize(**args)
@@ -248,57 +233,56 @@ module Google
248
233
  end
249
234
  end
250
235
 
251
- # Request message for KeyManagementService.UpdateCryptoKeyPrimaryVersion.
252
- class UpdateCryptoKeyPrimaryVersionRequest
236
+ # A CryptoKey represents a logical key that can be used for cryptographic
237
+ # operations.
238
+ # A CryptoKey is made up of one or more versions, which
239
+ # represent the actual key material used in cryptographic operations.
240
+ class CryptoKey
253
241
  include Google::Apis::Core::Hashable
254
242
 
255
- # The id of the child CryptoKeyVersion to use as primary.
256
- # Corresponds to the JSON property `cryptoKeyVersionId`
243
+ # The immutable purpose of this CryptoKey. Currently, the only acceptable
244
+ # purpose is ENCRYPT_DECRYPT.
245
+ # Corresponds to the JSON property `purpose`
257
246
  # @return [String]
258
- attr_accessor :crypto_key_version_id
247
+ attr_accessor :purpose
259
248
 
260
- def initialize(**args)
261
- update!(**args)
262
- end
249
+ # At next_rotation_time, the Key Management Service will automatically:
250
+ # 1. Create a new version of this CryptoKey.
251
+ # 2. Mark the new version as primary.
252
+ # Key rotations performed manually via
253
+ # CreateCryptoKeyVersion and
254
+ # UpdateCryptoKeyPrimaryVersion
255
+ # do not affect next_rotation_time.
256
+ # Corresponds to the JSON property `nextRotationTime`
257
+ # @return [String]
258
+ attr_accessor :next_rotation_time
263
259
 
264
- # Update properties of this object
265
- def update!(**args)
266
- @crypto_key_version_id = args[:crypto_key_version_id] if args.key?(:crypto_key_version_id)
267
- end
268
- end
260
+ # Output only. The time at which this CryptoKey was created.
261
+ # Corresponds to the JSON property `createTime`
262
+ # @return [String]
263
+ attr_accessor :create_time
269
264
 
270
- # Write a Data Access (Gin) log
271
- class DataAccessOptions
272
- include Google::Apis::Core::Hashable
265
+ # next_rotation_time will be advanced by this period when the service
266
+ # automatically rotates a key. Must be at least one day.
267
+ # If rotation_period is set, next_rotation_time must also be set.
268
+ # Corresponds to the JSON property `rotationPeriod`
269
+ # @return [String]
270
+ attr_accessor :rotation_period
273
271
 
274
- def initialize(**args)
275
- update!(**args)
276
- end
277
-
278
- # Update properties of this object
279
- def update!(**args)
280
- end
281
- end
282
-
283
- # Response message for KeyManagementService.ListKeyRings.
284
- class ListKeyRingsResponse
285
- include Google::Apis::Core::Hashable
272
+ # A CryptoKeyVersion represents an individual cryptographic key, and the
273
+ # associated key material.
274
+ # It can be used for cryptographic operations either directly, or via its
275
+ # parent CryptoKey, in which case the server will choose the appropriate
276
+ # version for the operation.
277
+ # Corresponds to the JSON property `primary`
278
+ # @return [Google::Apis::CloudkmsV1::CryptoKeyVersion]
279
+ attr_accessor :primary
286
280
 
287
- # A token to retrieve next page of results. Pass this value in
288
- # ListKeyRingsRequest.page_token to retrieve the next page of results.
289
- # Corresponds to the JSON property `nextPageToken`
281
+ # Output only. The resource name for this CryptoKey in the format
282
+ # `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
283
+ # Corresponds to the JSON property `name`
290
284
  # @return [String]
291
- attr_accessor :next_page_token
292
-
293
- # The total number of KeyRings that matched the query.
294
- # Corresponds to the JSON property `totalSize`
295
- # @return [Fixnum]
296
- attr_accessor :total_size
297
-
298
- # The list of KeyRings.
299
- # Corresponds to the JSON property `keyRings`
300
- # @return [Array<Google::Apis::CloudkmsV1::KeyRing>]
301
- attr_accessor :key_rings
285
+ attr_accessor :name
302
286
 
303
287
  def initialize(**args)
304
288
  update!(**args)
@@ -306,79 +290,60 @@ module Google
306
290
 
307
291
  # Update properties of this object
308
292
  def update!(**args)
309
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
310
- @total_size = args[:total_size] if args.key?(:total_size)
311
- @key_rings = args[:key_rings] if args.key?(:key_rings)
293
+ @purpose = args[:purpose] if args.key?(:purpose)
294
+ @next_rotation_time = args[:next_rotation_time] if args.key?(:next_rotation_time)
295
+ @create_time = args[:create_time] if args.key?(:create_time)
296
+ @rotation_period = args[:rotation_period] if args.key?(:rotation_period)
297
+ @primary = args[:primary] if args.key?(:primary)
298
+ @name = args[:name] if args.key?(:name)
312
299
  end
313
300
  end
314
301
 
315
- # Specifies the audit configuration for a service.
316
- # The configuration determines which permission types are logged, and what
317
- # identities, if any, are exempted from logging.
318
- # An AuditConfig must have one or more AuditLogConfigs.
319
- # If there are AuditConfigs for both `allServices` and a specific service,
320
- # the union of the two AuditConfigs is used for that service: the log_types
321
- # specified in each AuditConfig are enabled, and the exempted_members in each
322
- # AuditConfig are exempted.
323
- # Example Policy with multiple AuditConfigs:
324
- # `
325
- # "audit_configs": [
326
- # `
327
- # "service": "allServices"
328
- # "audit_log_configs": [
329
- # `
330
- # "log_type": "DATA_READ",
331
- # "exempted_members": [
332
- # "user:foo@gmail.com"
333
- # ]
334
- # `,
335
- # `
336
- # "log_type": "DATA_WRITE",
337
- # `,
338
- # `
339
- # "log_type": "ADMIN_READ",
340
- # `
341
- # ]
342
- # `,
343
- # `
344
- # "service": "fooservice.googleapis.com"
345
- # "audit_log_configs": [
346
- # `
347
- # "log_type": "DATA_READ",
348
- # `,
349
- # `
350
- # "log_type": "DATA_WRITE",
351
- # "exempted_members": [
352
- # "user:bar@gmail.com"
353
- # ]
354
- # `
355
- # ]
356
- # `
357
- # ]
358
- # `
359
- # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
360
- # logging. It also exempts foo@gmail.com from DATA_READ logging, and
361
- # bar@gmail.com from DATA_WRITE logging.
362
- class AuditConfig
302
+ # A rule to be applied in a Policy.
303
+ class Rule
363
304
  include Google::Apis::Core::Hashable
364
305
 
365
- # The configuration for logging of each type of permission.
366
- # Next ID: 4
367
- # Corresponds to the JSON property `auditLogConfigs`
368
- # @return [Array<Google::Apis::CloudkmsV1::AuditLogConfig>]
369
- attr_accessor :audit_log_configs
306
+ # If one or more 'not_in' clauses are specified, the rule matches
307
+ # if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.
308
+ # The format for in and not_in entries is the same as for members in a
309
+ # Binding (see google/iam/v1/policy.proto).
310
+ # Corresponds to the JSON property `notIn`
311
+ # @return [Array<String>]
312
+ attr_accessor :not_in
370
313
 
371
- #
372
- # Corresponds to the JSON property `exemptedMembers`
314
+ # Human-readable description of the rule.
315
+ # Corresponds to the JSON property `description`
316
+ # @return [String]
317
+ attr_accessor :description
318
+
319
+ # Additional restrictions that must be met
320
+ # Corresponds to the JSON property `conditions`
321
+ # @return [Array<Google::Apis::CloudkmsV1::Condition>]
322
+ attr_accessor :conditions
323
+
324
+ # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries
325
+ # that match the LOG action.
326
+ # Corresponds to the JSON property `logConfig`
327
+ # @return [Array<Google::Apis::CloudkmsV1::LogConfig>]
328
+ attr_accessor :log_config
329
+
330
+ # If one or more 'in' clauses are specified, the rule matches if
331
+ # the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.
332
+ # Corresponds to the JSON property `in`
373
333
  # @return [Array<String>]
374
- attr_accessor :exempted_members
334
+ attr_accessor :in
375
335
 
376
- # Specifies a service that will be enabled for audit logging.
377
- # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
378
- # `allServices` is a special value that covers all services.
379
- # Corresponds to the JSON property `service`
336
+ # A permission is a string of form '<service>.<resource type>.<verb>'
337
+ # (e.g., 'storage.buckets.list'). A value of '*' matches all permissions,
338
+ # and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.
339
+ # Corresponds to the JSON property `permissions`
340
+ # @return [Array<String>]
341
+ attr_accessor :permissions
342
+
343
+ # Required
344
+ # Corresponds to the JSON property `action`
380
345
  # @return [String]
381
- attr_accessor :service
346
+ attr_accessor :action
382
347
 
383
348
  def initialize(**args)
384
349
  update!(**args)
@@ -386,49 +351,34 @@ module Google
386
351
 
387
352
  # Update properties of this object
388
353
  def update!(**args)
389
- @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
390
- @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
391
- @service = args[:service] if args.key?(:service)
354
+ @not_in = args[:not_in] if args.key?(:not_in)
355
+ @description = args[:description] if args.key?(:description)
356
+ @conditions = args[:conditions] if args.key?(:conditions)
357
+ @log_config = args[:log_config] if args.key?(:log_config)
358
+ @in = args[:in] if args.key?(:in)
359
+ @permissions = args[:permissions] if args.key?(:permissions)
360
+ @action = args[:action] if args.key?(:action)
392
361
  end
393
362
  end
394
363
 
395
- # A CryptoKeyVersion represents an individual cryptographic key, and the
396
- # associated key material.
397
- # It can be used for cryptographic operations either directly, or via its
398
- # parent CryptoKey, in which case the server will choose the appropriate
399
- # version for the operation.
400
- class CryptoKeyVersion
364
+ # Specifies what kind of log the caller must write
365
+ class LogConfig
401
366
  include Google::Apis::Core::Hashable
402
367
 
403
- # Output only. The time at which this CryptoKeyVersion was created.
404
- # Corresponds to the JSON property `createTime`
405
- # @return [String]
406
- attr_accessor :create_time
407
-
408
- # The current state of the CryptoKeyVersion.
409
- # Corresponds to the JSON property `state`
410
- # @return [String]
411
- attr_accessor :state
412
-
413
- # Output only. The resource name for this CryptoKeyVersion in the format
414
- # `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.
415
- # Corresponds to the JSON property `name`
416
- # @return [String]
417
- attr_accessor :name
368
+ # Options for counters
369
+ # Corresponds to the JSON property `counter`
370
+ # @return [Google::Apis::CloudkmsV1::CounterOptions]
371
+ attr_accessor :counter
418
372
 
419
- # Output only. The time this CryptoKeyVersion's key material was
420
- # destroyed. Only present if state is
421
- # DESTROYED.
422
- # Corresponds to the JSON property `destroyEventTime`
423
- # @return [String]
424
- attr_accessor :destroy_event_time
373
+ # Write a Data Access (Gin) log
374
+ # Corresponds to the JSON property `dataAccess`
375
+ # @return [Google::Apis::CloudkmsV1::DataAccessOptions]
376
+ attr_accessor :data_access
425
377
 
426
- # Output only. The time this CryptoKeyVersion's key material is scheduled
427
- # for destruction. Only present if state is
428
- # DESTROY_SCHEDULED.
429
- # Corresponds to the JSON property `destroyTime`
430
- # @return [String]
431
- attr_accessor :destroy_time
378
+ # Write a Cloud Audit log
379
+ # Corresponds to the JSON property `cloudAudit`
380
+ # @return [Google::Apis::CloudkmsV1::CloudAuditOptions]
381
+ attr_accessor :cloud_audit
432
382
 
433
383
  def initialize(**args)
434
384
  update!(**args)
@@ -436,22 +386,54 @@ module Google
436
386
 
437
387
  # Update properties of this object
438
388
  def update!(**args)
439
- @create_time = args[:create_time] if args.key?(:create_time)
440
- @state = args[:state] if args.key?(:state)
441
- @name = args[:name] if args.key?(:name)
442
- @destroy_event_time = args[:destroy_event_time] if args.key?(:destroy_event_time)
443
- @destroy_time = args[:destroy_time] if args.key?(:destroy_time)
389
+ @counter = args[:counter] if args.key?(:counter)
390
+ @data_access = args[:data_access] if args.key?(:data_access)
391
+ @cloud_audit = args[:cloud_audit] if args.key?(:cloud_audit)
444
392
  end
445
393
  end
446
394
 
447
- # Write a Cloud Audit log
448
- class CloudAuditOptions
395
+ # Request message for `SetIamPolicy` method.
396
+ class SetIamPolicyRequest
449
397
  include Google::Apis::Core::Hashable
450
398
 
451
- # The log_name to populate in the Cloud Audit Record.
452
- # Corresponds to the JSON property `logName`
399
+ # Defines an Identity and Access Management (IAM) policy. It is used to
400
+ # specify access control policies for Cloud Platform resources.
401
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
402
+ # `members` to a `role`, where the members can be user accounts, Google groups,
403
+ # Google domains, and service accounts. A `role` is a named list of permissions
404
+ # defined by IAM.
405
+ # **Example**
406
+ # `
407
+ # "bindings": [
408
+ # `
409
+ # "role": "roles/owner",
410
+ # "members": [
411
+ # "user:mike@example.com",
412
+ # "group:admins@example.com",
413
+ # "domain:google.com",
414
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
415
+ # ]
416
+ # `,
417
+ # `
418
+ # "role": "roles/viewer",
419
+ # "members": ["user:sean@example.com"]
420
+ # `
421
+ # ]
422
+ # `
423
+ # For a description of IAM and its features, see the
424
+ # [IAM developer's guide](https://cloud.google.com/iam).
425
+ # Corresponds to the JSON property `policy`
426
+ # @return [Google::Apis::CloudkmsV1::Policy]
427
+ attr_accessor :policy
428
+
429
+ # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
430
+ # the fields in the mask will be modified. If no mask is provided, the
431
+ # following default mask is used:
432
+ # paths: "bindings, etag"
433
+ # This field is only used by Cloud IAM.
434
+ # Corresponds to the JSON property `updateMask`
453
435
  # @return [String]
454
- attr_accessor :log_name
436
+ attr_accessor :update_mask
455
437
 
456
438
  def initialize(**args)
457
439
  update!(**args)
@@ -459,38 +441,28 @@ module Google
459
441
 
460
442
  # Update properties of this object
461
443
  def update!(**args)
462
- @log_name = args[:log_name] if args.key?(:log_name)
444
+ @policy = args[:policy] if args.key?(:policy)
445
+ @update_mask = args[:update_mask] if args.key?(:update_mask)
463
446
  end
464
447
  end
465
448
 
466
- # Associates `members` with a `role`.
467
- class Binding
449
+ # Request message for KeyManagementService.Decrypt.
450
+ class DecryptRequest
468
451
  include Google::Apis::Core::Hashable
469
452
 
470
- # Specifies the identities requesting access for a Cloud Platform resource.
471
- # `members` can have the following values:
472
- # * `allUsers`: A special identifier that represents anyone who is
473
- # on the internet; with or without a Google account.
474
- # * `allAuthenticatedUsers`: A special identifier that represents anyone
475
- # who is authenticated with a Google account or a service account.
476
- # * `user:`emailid``: An email address that represents a specific Google
477
- # account. For example, `alice@gmail.com` or `joe@example.com`.
478
- # * `serviceAccount:`emailid``: An email address that represents a service
479
- # account. For example, `my-other-app@appspot.gserviceaccount.com`.
480
- # * `group:`emailid``: An email address that represents a Google group.
481
- # For example, `admins@example.com`.
482
- # * `domain:`domain``: A Google Apps domain name that represents all the
483
- # users of that domain. For example, `google.com` or `example.com`.
484
- # Corresponds to the JSON property `members`
485
- # @return [Array<String>]
486
- attr_accessor :members
453
+ # Required. The encrypted data originally returned in
454
+ # EncryptResponse.ciphertext.
455
+ # Corresponds to the JSON property `ciphertext`
456
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
457
+ # @return [String]
458
+ attr_accessor :ciphertext
487
459
 
488
- # Role that is assigned to `members`.
489
- # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
490
- # Required
491
- # Corresponds to the JSON property `role`
460
+ # Optional data that must match the data originally supplied in
461
+ # EncryptRequest.additional_authenticated_data.
462
+ # Corresponds to the JSON property `additionalAuthenticatedData`
463
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
492
464
  # @return [String]
493
- attr_accessor :role
465
+ attr_accessor :additional_authenticated_data
494
466
 
495
467
  def initialize(**args)
496
468
  update!(**args)
@@ -498,28 +470,37 @@ module Google
498
470
 
499
471
  # Update properties of this object
500
472
  def update!(**args)
501
- @members = args[:members] if args.key?(:members)
502
- @role = args[:role] if args.key?(:role)
473
+ @ciphertext = args[:ciphertext] if args.key?(:ciphertext)
474
+ @additional_authenticated_data = args[:additional_authenticated_data] if args.key?(:additional_authenticated_data)
503
475
  end
504
476
  end
505
477
 
506
- # Request message for KeyManagementService.Encrypt.
507
- class EncryptRequest
478
+ # A resource that represents Google Cloud Platform location.
479
+ class Location
508
480
  include Google::Apis::Core::Hashable
509
481
 
510
- # Required. The data to encrypt. Must be no larger than 64KiB.
511
- # Corresponds to the JSON property `plaintext`
512
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
482
+ # The canonical id for this location. For example: `"us-east1"`.
483
+ # Corresponds to the JSON property `locationId`
513
484
  # @return [String]
514
- attr_accessor :plaintext
485
+ attr_accessor :location_id
515
486
 
516
- # Optional data that, if specified, must also be provided during decryption
517
- # through DecryptRequest.additional_authenticated_data. Must be no
518
- # larger than 64KiB.
519
- # Corresponds to the JSON property `additionalAuthenticatedData`
520
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
487
+ # Service-specific metadata. For example the available capacity at the given
488
+ # location.
489
+ # Corresponds to the JSON property `metadata`
490
+ # @return [Hash<String,Object>]
491
+ attr_accessor :metadata
492
+
493
+ # Cross-service attributes for the location. For example
494
+ # `"cloud.googleapis.com/region": "us-east1"`
495
+ # Corresponds to the JSON property `labels`
496
+ # @return [Hash<String,String>]
497
+ attr_accessor :labels
498
+
499
+ # Resource name for the location, which may vary between implementations.
500
+ # For example: `"projects/example-project/locations/us-east1"`
501
+ # Corresponds to the JSON property `name`
521
502
  # @return [String]
522
- attr_accessor :additional_authenticated_data
503
+ attr_accessor :name
523
504
 
524
505
  def initialize(**args)
525
506
  update!(**args)
@@ -527,33 +508,33 @@ module Google
527
508
 
528
509
  # Update properties of this object
529
510
  def update!(**args)
530
- @plaintext = args[:plaintext] if args.key?(:plaintext)
531
- @additional_authenticated_data = args[:additional_authenticated_data] if args.key?(:additional_authenticated_data)
511
+ @location_id = args[:location_id] if args.key?(:location_id)
512
+ @metadata = args[:metadata] if args.key?(:metadata)
513
+ @labels = args[:labels] if args.key?(:labels)
514
+ @name = args[:name] if args.key?(:name)
532
515
  end
533
516
  end
534
517
 
535
- # Response message for KeyManagementService.ListCryptoKeyVersions.
536
- class ListCryptoKeyVersionsResponse
518
+ # Response message for KeyManagementService.ListCryptoKeys.
519
+ class ListCryptoKeysResponse
537
520
  include Google::Apis::Core::Hashable
538
521
 
539
522
  # A token to retrieve next page of results. Pass this value in
540
- # ListCryptoKeyVersionsRequest.page_token to retrieve the next page of
541
- # results.
523
+ # ListCryptoKeysRequest.page_token to retrieve the next page of results.
542
524
  # Corresponds to the JSON property `nextPageToken`
543
525
  # @return [String]
544
526
  attr_accessor :next_page_token
545
527
 
546
- # The total number of CryptoKeyVersions that matched the
547
- # query.
528
+ # The list of CryptoKeys.
529
+ # Corresponds to the JSON property `cryptoKeys`
530
+ # @return [Array<Google::Apis::CloudkmsV1::CryptoKey>]
531
+ attr_accessor :crypto_keys
532
+
533
+ # The total number of CryptoKeys that matched the query.
548
534
  # Corresponds to the JSON property `totalSize`
549
535
  # @return [Fixnum]
550
536
  attr_accessor :total_size
551
537
 
552
- # The list of CryptoKeyVersions.
553
- # Corresponds to the JSON property `cryptoKeyVersions`
554
- # @return [Array<Google::Apis::CloudkmsV1::CryptoKeyVersion>]
555
- attr_accessor :crypto_key_versions
556
-
557
538
  def initialize(**args)
558
539
  update!(**args)
559
540
  end
@@ -561,20 +542,45 @@ module Google
561
542
  # Update properties of this object
562
543
  def update!(**args)
563
544
  @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
545
+ @crypto_keys = args[:crypto_keys] if args.key?(:crypto_keys)
564
546
  @total_size = args[:total_size] if args.key?(:total_size)
565
- @crypto_key_versions = args[:crypto_key_versions] if args.key?(:crypto_key_versions)
566
547
  end
567
548
  end
568
549
 
569
- # Response message for `TestIamPermissions` method.
570
- class TestIamPermissionsResponse
550
+ # A condition to be met.
551
+ class Condition
571
552
  include Google::Apis::Core::Hashable
572
553
 
573
- # A subset of `TestPermissionsRequest.permissions` that the caller is
574
- # allowed.
575
- # Corresponds to the JSON property `permissions`
554
+ # An operator to apply the subject with.
555
+ # Corresponds to the JSON property `op`
556
+ # @return [String]
557
+ attr_accessor :op
558
+
559
+ # Trusted attributes discharged by the service.
560
+ # Corresponds to the JSON property `svc`
561
+ # @return [String]
562
+ attr_accessor :svc
563
+
564
+ # Trusted attributes supplied by any service that owns resources and uses
565
+ # the IAM system for access control.
566
+ # Corresponds to the JSON property `sys`
567
+ # @return [String]
568
+ attr_accessor :sys
569
+
570
+ # DEPRECATED. Use 'values' instead.
571
+ # Corresponds to the JSON property `value`
572
+ # @return [String]
573
+ attr_accessor :value
574
+
575
+ # Trusted attributes supplied by the IAM system.
576
+ # Corresponds to the JSON property `iam`
577
+ # @return [String]
578
+ attr_accessor :iam
579
+
580
+ # The objects of the condition. This is mutually exclusive with 'value'.
581
+ # Corresponds to the JSON property `values`
576
582
  # @return [Array<String>]
577
- attr_accessor :permissions
583
+ attr_accessor :values
578
584
 
579
585
  def initialize(**args)
580
586
  update!(**args)
@@ -582,68 +588,71 @@ module Google
582
588
 
583
589
  # Update properties of this object
584
590
  def update!(**args)
585
- @permissions = args[:permissions] if args.key?(:permissions)
591
+ @op = args[:op] if args.key?(:op)
592
+ @svc = args[:svc] if args.key?(:svc)
593
+ @sys = args[:sys] if args.key?(:sys)
594
+ @value = args[:value] if args.key?(:value)
595
+ @iam = args[:iam] if args.key?(:iam)
596
+ @values = args[:values] if args.key?(:values)
586
597
  end
587
598
  end
588
599
 
589
- # Request message for KeyManagementService.DestroyCryptoKeyVersion.
590
- class DestroyCryptoKeyVersionRequest
600
+ # Options for counters
601
+ class CounterOptions
591
602
  include Google::Apis::Core::Hashable
592
603
 
604
+ # The metric to update.
605
+ # Corresponds to the JSON property `metric`
606
+ # @return [String]
607
+ attr_accessor :metric
608
+
609
+ # The field value to attribute.
610
+ # Corresponds to the JSON property `field`
611
+ # @return [String]
612
+ attr_accessor :field
613
+
593
614
  def initialize(**args)
594
615
  update!(**args)
595
616
  end
596
617
 
597
618
  # Update properties of this object
598
619
  def update!(**args)
620
+ @metric = args[:metric] if args.key?(:metric)
621
+ @field = args[:field] if args.key?(:field)
599
622
  end
600
623
  end
601
624
 
602
- # A rule to be applied in a Policy.
603
- class Rule
625
+ # Provides the configuration for logging a type of permissions.
626
+ # Example:
627
+ # `
628
+ # "audit_log_configs": [
629
+ # `
630
+ # "log_type": "DATA_READ",
631
+ # "exempted_members": [
632
+ # "user:foo@gmail.com"
633
+ # ]
634
+ # `,
635
+ # `
636
+ # "log_type": "DATA_WRITE",
637
+ # `
638
+ # ]
639
+ # `
640
+ # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
641
+ # foo@gmail.com from DATA_READ logging.
642
+ class AuditLogConfig
604
643
  include Google::Apis::Core::Hashable
605
644
 
606
- # Human-readable description of the rule.
607
- # Corresponds to the JSON property `description`
608
- # @return [String]
609
- attr_accessor :description
610
-
611
- # Additional restrictions that must be met
612
- # Corresponds to the JSON property `conditions`
613
- # @return [Array<Google::Apis::CloudkmsV1::Condition>]
614
- attr_accessor :conditions
615
-
616
- # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries
617
- # that match the LOG action.
618
- # Corresponds to the JSON property `logConfig`
619
- # @return [Array<Google::Apis::CloudkmsV1::LogConfig>]
620
- attr_accessor :log_config
621
-
622
- # If one or more 'in' clauses are specified, the rule matches if
623
- # the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.
624
- # Corresponds to the JSON property `in`
625
- # @return [Array<String>]
626
- attr_accessor :in
627
-
628
- # A permission is a string of form '<service>.<resource type>.<verb>'
629
- # (e.g., 'storage.buckets.list'). A value of '*' matches all permissions,
630
- # and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.
631
- # Corresponds to the JSON property `permissions`
632
- # @return [Array<String>]
633
- attr_accessor :permissions
634
-
635
- # Required
636
- # Corresponds to the JSON property `action`
637
- # @return [String]
638
- attr_accessor :action
639
-
640
- # If one or more 'not_in' clauses are specified, the rule matches
641
- # if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.
642
- # The format for in and not_in entries is the same as for members in a
643
- # Binding (see google/iam/v1/policy.proto).
644
- # Corresponds to the JSON property `notIn`
645
+ # Specifies the identities that do not cause logging for this type of
646
+ # permission.
647
+ # Follows the same format of Binding.members.
648
+ # Corresponds to the JSON property `exemptedMembers`
645
649
  # @return [Array<String>]
646
- attr_accessor :not_in
650
+ attr_accessor :exempted_members
651
+
652
+ # The log type that this config enables.
653
+ # Corresponds to the JSON property `logType`
654
+ # @return [String]
655
+ attr_accessor :log_type
647
656
 
648
657
  def initialize(**args)
649
658
  update!(**args)
@@ -651,66 +660,20 @@ module Google
651
660
 
652
661
  # Update properties of this object
653
662
  def update!(**args)
654
- @description = args[:description] if args.key?(:description)
655
- @conditions = args[:conditions] if args.key?(:conditions)
656
- @log_config = args[:log_config] if args.key?(:log_config)
657
- @in = args[:in] if args.key?(:in)
658
- @permissions = args[:permissions] if args.key?(:permissions)
659
- @action = args[:action] if args.key?(:action)
660
- @not_in = args[:not_in] if args.key?(:not_in)
663
+ @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
664
+ @log_type = args[:log_type] if args.key?(:log_type)
661
665
  end
662
666
  end
663
667
 
664
- # A CryptoKey represents a logical key that can be used for cryptographic
665
- # operations.
666
- # A CryptoKey is made up of one or more versions, which
667
- # represent the actual key material used in cryptographic operations.
668
- class CryptoKey
668
+ # Response message for KeyManagementService.Decrypt.
669
+ class DecryptResponse
669
670
  include Google::Apis::Core::Hashable
670
671
 
671
- # Output only. The time at which this CryptoKey was created.
672
- # Corresponds to the JSON property `createTime`
673
- # @return [String]
674
- attr_accessor :create_time
675
-
676
- # next_rotation_time will be advanced by this period when the service
677
- # automatically rotates a key. Must be at least one day.
678
- # If rotation_period is set, next_rotation_time must also be set.
679
- # Corresponds to the JSON property `rotationPeriod`
680
- # @return [String]
681
- attr_accessor :rotation_period
682
-
683
- # A CryptoKeyVersion represents an individual cryptographic key, and the
684
- # associated key material.
685
- # It can be used for cryptographic operations either directly, or via its
686
- # parent CryptoKey, in which case the server will choose the appropriate
687
- # version for the operation.
688
- # Corresponds to the JSON property `primary`
689
- # @return [Google::Apis::CloudkmsV1::CryptoKeyVersion]
690
- attr_accessor :primary
691
-
692
- # Output only. The resource name for this CryptoKey in the format
693
- # `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
694
- # Corresponds to the JSON property `name`
695
- # @return [String]
696
- attr_accessor :name
697
-
698
- # The immutable purpose of this CryptoKey. Currently, the only acceptable
699
- # purpose is ENCRYPT_DECRYPT.
700
- # Corresponds to the JSON property `purpose`
701
- # @return [String]
702
- attr_accessor :purpose
703
-
704
- # At next_rotation_time, the Key Management Service will automatically:
705
- # 1. Create a new version of this CryptoKey.
706
- # 2. Mark the new version as primary.
707
- # Key rotations performed manually via
708
- # CreateCryptoKeyVersion and
709
- # UpdateCryptoKeyPrimaryVersion
710
- # do not affect next_rotation_time.
711
- # Corresponds to the JSON property `nextRotationTime`
672
+ # The decrypted data originally supplied in EncryptRequest.plaintext.
673
+ # Corresponds to the JSON property `plaintext`
674
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
712
675
  # @return [String]
713
- attr_accessor :next_rotation_time
676
+ attr_accessor :plaintext
714
677
 
715
678
  def initialize(**args)
716
679
  update!(**args)
@@ -718,33 +681,21 @@ module Google
718
681
 
719
682
  # Update properties of this object
720
683
  def update!(**args)
721
- @create_time = args[:create_time] if args.key?(:create_time)
722
- @rotation_period = args[:rotation_period] if args.key?(:rotation_period)
723
- @primary = args[:primary] if args.key?(:primary)
724
- @name = args[:name] if args.key?(:name)
725
- @purpose = args[:purpose] if args.key?(:purpose)
726
- @next_rotation_time = args[:next_rotation_time] if args.key?(:next_rotation_time)
684
+ @plaintext = args[:plaintext] if args.key?(:plaintext)
727
685
  end
728
686
  end
729
687
 
730
- # Specifies what kind of log the caller must write
731
- class LogConfig
688
+ # Request message for `TestIamPermissions` method.
689
+ class TestIamPermissionsRequest
732
690
  include Google::Apis::Core::Hashable
733
691
 
734
- # Options for counters
735
- # Corresponds to the JSON property `counter`
736
- # @return [Google::Apis::CloudkmsV1::CounterOptions]
737
- attr_accessor :counter
738
-
739
- # Write a Data Access (Gin) log
740
- # Corresponds to the JSON property `dataAccess`
741
- # @return [Google::Apis::CloudkmsV1::DataAccessOptions]
742
- attr_accessor :data_access
743
-
744
- # Write a Cloud Audit log
745
- # Corresponds to the JSON property `cloudAudit`
746
- # @return [Google::Apis::CloudkmsV1::CloudAuditOptions]
747
- attr_accessor :cloud_audit
692
+ # The set of permissions to check for the `resource`. Permissions with
693
+ # wildcards (such as '*' or 'storage.*') are not allowed. For more
694
+ # information see
695
+ # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
696
+ # Corresponds to the JSON property `permissions`
697
+ # @return [Array<String>]
698
+ attr_accessor :permissions
748
699
 
749
700
  def initialize(**args)
750
701
  update!(**args)
@@ -752,54 +703,24 @@ module Google
752
703
 
753
704
  # Update properties of this object
754
705
  def update!(**args)
755
- @counter = args[:counter] if args.key?(:counter)
756
- @data_access = args[:data_access] if args.key?(:data_access)
757
- @cloud_audit = args[:cloud_audit] if args.key?(:cloud_audit)
706
+ @permissions = args[:permissions] if args.key?(:permissions)
758
707
  end
759
708
  end
760
709
 
761
- # Request message for `SetIamPolicy` method.
762
- class SetIamPolicyRequest
710
+ # Response message for KeyManagementService.Encrypt.
711
+ class EncryptResponse
763
712
  include Google::Apis::Core::Hashable
764
713
 
765
- # Defines an Identity and Access Management (IAM) policy. It is used to
766
- # specify access control policies for Cloud Platform resources.
767
- # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
768
- # `members` to a `role`, where the members can be user accounts, Google groups,
769
- # Google domains, and service accounts. A `role` is a named list of permissions
770
- # defined by IAM.
771
- # **Example**
772
- # `
773
- # "bindings": [
774
- # `
775
- # "role": "roles/owner",
776
- # "members": [
777
- # "user:mike@example.com",
778
- # "group:admins@example.com",
779
- # "domain:google.com",
780
- # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
781
- # ]
782
- # `,
783
- # `
784
- # "role": "roles/viewer",
785
- # "members": ["user:sean@example.com"]
786
- # `
787
- # ]
788
- # `
789
- # For a description of IAM and its features, see the
790
- # [IAM developer's guide](https://cloud.google.com/iam).
791
- # Corresponds to the JSON property `policy`
792
- # @return [Google::Apis::CloudkmsV1::Policy]
793
- attr_accessor :policy
714
+ # The resource name of the CryptoKeyVersion used in encryption.
715
+ # Corresponds to the JSON property `name`
716
+ # @return [String]
717
+ attr_accessor :name
794
718
 
795
- # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
796
- # the fields in the mask will be modified. If no mask is provided, the
797
- # following default mask is used:
798
- # paths: "bindings, etag"
799
- # This field is only used by Cloud IAM.
800
- # Corresponds to the JSON property `updateMask`
719
+ # The encrypted data.
720
+ # Corresponds to the JSON property `ciphertext`
721
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
801
722
  # @return [String]
802
- attr_accessor :update_mask
723
+ attr_accessor :ciphertext
803
724
 
804
725
  def initialize(**args)
805
726
  update!(**args)
@@ -807,28 +728,25 @@ module Google
807
728
 
808
729
  # Update properties of this object
809
730
  def update!(**args)
810
- @policy = args[:policy] if args.key?(:policy)
811
- @update_mask = args[:update_mask] if args.key?(:update_mask)
731
+ @name = args[:name] if args.key?(:name)
732
+ @ciphertext = args[:ciphertext] if args.key?(:ciphertext)
812
733
  end
813
734
  end
814
735
 
815
- # Request message for KeyManagementService.Decrypt.
816
- class DecryptRequest
736
+ # A KeyRing is a toplevel logical grouping of CryptoKeys.
737
+ class KeyRing
817
738
  include Google::Apis::Core::Hashable
818
739
 
819
- # Required. The encrypted data originally returned in
820
- # EncryptResponse.ciphertext.
821
- # Corresponds to the JSON property `ciphertext`
822
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
740
+ # Output only. The time at which this KeyRing was created.
741
+ # Corresponds to the JSON property `createTime`
823
742
  # @return [String]
824
- attr_accessor :ciphertext
743
+ attr_accessor :create_time
825
744
 
826
- # Optional data that must match the data originally supplied in
827
- # EncryptRequest.additional_authenticated_data.
828
- # Corresponds to the JSON property `additionalAuthenticatedData`
829
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
745
+ # Output only. The resource name for the KeyRing in the format
746
+ # `projects/*/locations/*/keyRings/*`.
747
+ # Corresponds to the JSON property `name`
830
748
  # @return [String]
831
- attr_accessor :additional_authenticated_data
749
+ attr_accessor :name
832
750
 
833
751
  def initialize(**args)
834
752
  update!(**args)
@@ -836,37 +754,88 @@ module Google
836
754
 
837
755
  # Update properties of this object
838
756
  def update!(**args)
839
- @ciphertext = args[:ciphertext] if args.key?(:ciphertext)
840
- @additional_authenticated_data = args[:additional_authenticated_data] if args.key?(:additional_authenticated_data)
757
+ @create_time = args[:create_time] if args.key?(:create_time)
758
+ @name = args[:name] if args.key?(:name)
841
759
  end
842
760
  end
843
761
 
844
- # A resource that represents Google Cloud Platform location.
845
- class Location
762
+ # Defines an Identity and Access Management (IAM) policy. It is used to
763
+ # specify access control policies for Cloud Platform resources.
764
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
765
+ # `members` to a `role`, where the members can be user accounts, Google groups,
766
+ # Google domains, and service accounts. A `role` is a named list of permissions
767
+ # defined by IAM.
768
+ # **Example**
769
+ # `
770
+ # "bindings": [
771
+ # `
772
+ # "role": "roles/owner",
773
+ # "members": [
774
+ # "user:mike@example.com",
775
+ # "group:admins@example.com",
776
+ # "domain:google.com",
777
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
778
+ # ]
779
+ # `,
780
+ # `
781
+ # "role": "roles/viewer",
782
+ # "members": ["user:sean@example.com"]
783
+ # `
784
+ # ]
785
+ # `
786
+ # For a description of IAM and its features, see the
787
+ # [IAM developer's guide](https://cloud.google.com/iam).
788
+ class Policy
846
789
  include Google::Apis::Core::Hashable
847
790
 
848
- # Cross-service attributes for the location. For example
849
- # `"cloud.googleapis.com/region": "us-east1"`
850
- # Corresponds to the JSON property `labels`
851
- # @return [Hash<String,String>]
852
- attr_accessor :labels
853
-
854
- # Resource name for the location, which may vary between implementations.
855
- # For example: `"projects/example-project/locations/us-east1"`
856
- # Corresponds to the JSON property `name`
791
+ # `etag` is used for optimistic concurrency control as a way to help
792
+ # prevent simultaneous updates of a policy from overwriting each other.
793
+ # It is strongly suggested that systems make use of the `etag` in the
794
+ # read-modify-write cycle to perform policy updates in order to avoid race
795
+ # conditions: An `etag` is returned in the response to `getIamPolicy`, and
796
+ # systems are expected to put that etag in the request to `setIamPolicy` to
797
+ # ensure that their change will be applied to the same version of the policy.
798
+ # If no `etag` is provided in the call to `setIamPolicy`, then the existing
799
+ # policy is overwritten blindly.
800
+ # Corresponds to the JSON property `etag`
801
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
857
802
  # @return [String]
858
- attr_accessor :name
803
+ attr_accessor :etag
804
+
805
+ #
806
+ # Corresponds to the JSON property `iamOwned`
807
+ # @return [Boolean]
808
+ attr_accessor :iam_owned
809
+ alias_method :iam_owned?, :iam_owned
810
+
811
+ # If more than one rule is specified, the rules are applied in the following
812
+ # manner:
813
+ # - All matching LOG rules are always applied.
814
+ # - If any DENY/DENY_WITH_LOG rule matches, permission is denied.
815
+ # Logging will be applied if one or more matching rule requires logging.
816
+ # - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is
817
+ # granted.
818
+ # Logging will be applied if one or more matching rule requires logging.
819
+ # - Otherwise, if no rule applies, permission is denied.
820
+ # Corresponds to the JSON property `rules`
821
+ # @return [Array<Google::Apis::CloudkmsV1::Rule>]
822
+ attr_accessor :rules
823
+
824
+ # Version of the `Policy`. The default version is 0.
825
+ # Corresponds to the JSON property `version`
826
+ # @return [Fixnum]
827
+ attr_accessor :version
859
828
 
860
- # The canonical id for this location. For example: `"us-east1"`.
861
- # Corresponds to the JSON property `locationId`
862
- # @return [String]
863
- attr_accessor :location_id
829
+ # Specifies cloud audit logging configuration for this policy.
830
+ # Corresponds to the JSON property `auditConfigs`
831
+ # @return [Array<Google::Apis::CloudkmsV1::AuditConfig>]
832
+ attr_accessor :audit_configs
864
833
 
865
- # Service-specific metadata. For example the available capacity at the given
866
- # location.
867
- # Corresponds to the JSON property `metadata`
868
- # @return [Hash<String,Object>]
869
- attr_accessor :metadata
834
+ # Associates a list of `members` to a `role`.
835
+ # `bindings` with no members will result in an error.
836
+ # Corresponds to the JSON property `bindings`
837
+ # @return [Array<Google::Apis::CloudkmsV1::Binding>]
838
+ attr_accessor :bindings
870
839
 
871
840
  def initialize(**args)
872
841
  update!(**args)
@@ -874,32 +843,28 @@ module Google
874
843
 
875
844
  # Update properties of this object
876
845
  def update!(**args)
877
- @labels = args[:labels] if args.key?(:labels)
878
- @name = args[:name] if args.key?(:name)
879
- @location_id = args[:location_id] if args.key?(:location_id)
880
- @metadata = args[:metadata] if args.key?(:metadata)
846
+ @etag = args[:etag] if args.key?(:etag)
847
+ @iam_owned = args[:iam_owned] if args.key?(:iam_owned)
848
+ @rules = args[:rules] if args.key?(:rules)
849
+ @version = args[:version] if args.key?(:version)
850
+ @audit_configs = args[:audit_configs] if args.key?(:audit_configs)
851
+ @bindings = args[:bindings] if args.key?(:bindings)
881
852
  end
882
853
  end
883
854
 
884
- # Response message for KeyManagementService.ListCryptoKeys.
885
- class ListCryptoKeysResponse
855
+ # The response message for Locations.ListLocations.
856
+ class ListLocationsResponse
886
857
  include Google::Apis::Core::Hashable
887
858
 
888
- # A token to retrieve next page of results. Pass this value in
889
- # ListCryptoKeysRequest.page_token to retrieve the next page of results.
859
+ # The standard List next-page token.
890
860
  # Corresponds to the JSON property `nextPageToken`
891
861
  # @return [String]
892
862
  attr_accessor :next_page_token
893
863
 
894
- # The list of CryptoKeys.
895
- # Corresponds to the JSON property `cryptoKeys`
896
- # @return [Array<Google::Apis::CloudkmsV1::CryptoKey>]
897
- attr_accessor :crypto_keys
898
-
899
- # The total number of CryptoKeys that matched the query.
900
- # Corresponds to the JSON property `totalSize`
901
- # @return [Fixnum]
902
- attr_accessor :total_size
864
+ # A list of locations that matches the specified filter in the request.
865
+ # Corresponds to the JSON property `locations`
866
+ # @return [Array<Google::Apis::CloudkmsV1::Location>]
867
+ attr_accessor :locations
903
868
 
904
869
  def initialize(**args)
905
870
  update!(**args)
@@ -908,45 +873,45 @@ module Google
908
873
  # Update properties of this object
909
874
  def update!(**args)
910
875
  @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
911
- @crypto_keys = args[:crypto_keys] if args.key?(:crypto_keys)
912
- @total_size = args[:total_size] if args.key?(:total_size)
876
+ @locations = args[:locations] if args.key?(:locations)
913
877
  end
914
878
  end
915
879
 
916
- # A condition to be met.
917
- class Condition
880
+ # Request message for KeyManagementService.RestoreCryptoKeyVersion.
881
+ class RestoreCryptoKeyVersionRequest
918
882
  include Google::Apis::Core::Hashable
919
883
 
920
- # The objects of the condition. This is mutually exclusive with 'value'.
921
- # Corresponds to the JSON property `values`
922
- # @return [Array<String>]
923
- attr_accessor :values
884
+ def initialize(**args)
885
+ update!(**args)
886
+ end
924
887
 
925
- # Trusted attributes supplied by the IAM system.
926
- # Corresponds to the JSON property `iam`
927
- # @return [String]
928
- attr_accessor :iam
888
+ # Update properties of this object
889
+ def update!(**args)
890
+ end
891
+ end
929
892
 
930
- # An operator to apply the subject with.
931
- # Corresponds to the JSON property `op`
932
- # @return [String]
933
- attr_accessor :op
893
+ # Request message for KeyManagementService.UpdateCryptoKeyPrimaryVersion.
894
+ class UpdateCryptoKeyPrimaryVersionRequest
895
+ include Google::Apis::Core::Hashable
934
896
 
935
- # Trusted attributes discharged by the service.
936
- # Corresponds to the JSON property `svc`
897
+ # The id of the child CryptoKeyVersion to use as primary.
898
+ # Corresponds to the JSON property `cryptoKeyVersionId`
937
899
  # @return [String]
938
- attr_accessor :svc
900
+ attr_accessor :crypto_key_version_id
939
901
 
940
- # DEPRECATED. Use 'values' instead.
941
- # Corresponds to the JSON property `value`
942
- # @return [String]
943
- attr_accessor :value
902
+ def initialize(**args)
903
+ update!(**args)
904
+ end
944
905
 
945
- # Trusted attributes supplied by any service that owns resources and uses
946
- # the IAM system for access control.
947
- # Corresponds to the JSON property `sys`
948
- # @return [String]
949
- attr_accessor :sys
906
+ # Update properties of this object
907
+ def update!(**args)
908
+ @crypto_key_version_id = args[:crypto_key_version_id] if args.key?(:crypto_key_version_id)
909
+ end
910
+ end
911
+
912
+ # Write a Data Access (Gin) log
913
+ class DataAccessOptions
914
+ include Google::Apis::Core::Hashable
950
915
 
951
916
  def initialize(**args)
952
917
  update!(**args)
@@ -954,28 +919,28 @@ module Google
954
919
 
955
920
  # Update properties of this object
956
921
  def update!(**args)
957
- @values = args[:values] if args.key?(:values)
958
- @iam = args[:iam] if args.key?(:iam)
959
- @op = args[:op] if args.key?(:op)
960
- @svc = args[:svc] if args.key?(:svc)
961
- @value = args[:value] if args.key?(:value)
962
- @sys = args[:sys] if args.key?(:sys)
963
922
  end
964
923
  end
965
924
 
966
- # Options for counters
967
- class CounterOptions
925
+ # Response message for KeyManagementService.ListKeyRings.
926
+ class ListKeyRingsResponse
968
927
  include Google::Apis::Core::Hashable
969
928
 
970
- # The metric to update.
971
- # Corresponds to the JSON property `metric`
972
- # @return [String]
973
- attr_accessor :metric
929
+ # The list of KeyRings.
930
+ # Corresponds to the JSON property `keyRings`
931
+ # @return [Array<Google::Apis::CloudkmsV1::KeyRing>]
932
+ attr_accessor :key_rings
974
933
 
975
- # The field value to attribute.
976
- # Corresponds to the JSON property `field`
934
+ # A token to retrieve next page of results. Pass this value in
935
+ # ListKeyRingsRequest.page_token to retrieve the next page of results.
936
+ # Corresponds to the JSON property `nextPageToken`
977
937
  # @return [String]
978
- attr_accessor :field
938
+ attr_accessor :next_page_token
939
+
940
+ # The total number of KeyRings that matched the query.
941
+ # Corresponds to the JSON property `totalSize`
942
+ # @return [Fixnum]
943
+ attr_accessor :total_size
979
944
 
980
945
  def initialize(**args)
981
946
  update!(**args)
@@ -983,14 +948,25 @@ module Google
983
948
 
984
949
  # Update properties of this object
985
950
  def update!(**args)
986
- @metric = args[:metric] if args.key?(:metric)
987
- @field = args[:field] if args.key?(:field)
951
+ @key_rings = args[:key_rings] if args.key?(:key_rings)
952
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
953
+ @total_size = args[:total_size] if args.key?(:total_size)
988
954
  end
989
955
  end
990
956
 
991
- # Provides the configuration for logging a type of permissions.
992
- # Example:
957
+ # Specifies the audit configuration for a service.
958
+ # The configuration determines which permission types are logged, and what
959
+ # identities, if any, are exempted from logging.
960
+ # An AuditConfig must have one or more AuditLogConfigs.
961
+ # If there are AuditConfigs for both `allServices` and a specific service,
962
+ # the union of the two AuditConfigs is used for that service: the log_types
963
+ # specified in each AuditConfig are enabled, and the exempted_members in each
964
+ # AuditConfig are exempted.
965
+ # Example Policy with multiple AuditConfigs:
966
+ # `
967
+ # "audit_configs": [
993
968
  # `
969
+ # "service": "allServices"
994
970
  # "audit_log_configs": [
995
971
  # `
996
972
  # "log_type": "DATA_READ",
@@ -1000,22 +976,48 @@ module Google
1000
976
  # `,
1001
977
  # `
1002
978
  # "log_type": "DATA_WRITE",
979
+ # `,
980
+ # `
981
+ # "log_type": "ADMIN_READ",
982
+ # `
983
+ # ]
984
+ # `,
985
+ # `
986
+ # "service": "fooservice.googleapis.com"
987
+ # "audit_log_configs": [
988
+ # `
989
+ # "log_type": "DATA_READ",
990
+ # `,
991
+ # `
992
+ # "log_type": "DATA_WRITE",
993
+ # "exempted_members": [
994
+ # "user:bar@gmail.com"
995
+ # ]
1003
996
  # `
1004
997
  # ]
1005
998
  # `
1006
- # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
1007
- # foo@gmail.com from DATA_READ logging.
1008
- class AuditLogConfig
999
+ # ]
1000
+ # `
1001
+ # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
1002
+ # logging. It also exempts foo@gmail.com from DATA_READ logging, and
1003
+ # bar@gmail.com from DATA_WRITE logging.
1004
+ class AuditConfig
1009
1005
  include Google::Apis::Core::Hashable
1010
1006
 
1011
- # The log type that this config enables.
1012
- # Corresponds to the JSON property `logType`
1007
+ # Specifies a service that will be enabled for audit logging.
1008
+ # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
1009
+ # `allServices` is a special value that covers all services.
1010
+ # Corresponds to the JSON property `service`
1013
1011
  # @return [String]
1014
- attr_accessor :log_type
1012
+ attr_accessor :service
1015
1013
 
1016
- # Specifies the identities that do not cause logging for this type of
1017
- # permission.
1018
- # Follows the same format of Binding.members.
1014
+ # The configuration for logging of each type of permission.
1015
+ # Next ID: 4
1016
+ # Corresponds to the JSON property `auditLogConfigs`
1017
+ # @return [Array<Google::Apis::CloudkmsV1::AuditLogConfig>]
1018
+ attr_accessor :audit_log_configs
1019
+
1020
+ #
1019
1021
  # Corresponds to the JSON property `exemptedMembers`
1020
1022
  # @return [Array<String>]
1021
1023
  attr_accessor :exempted_members
@@ -1026,10 +1028,63 @@ module Google
1026
1028
 
1027
1029
  # Update properties of this object
1028
1030
  def update!(**args)
1029
- @log_type = args[:log_type] if args.key?(:log_type)
1031
+ @service = args[:service] if args.key?(:service)
1032
+ @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
1030
1033
  @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
1031
1034
  end
1032
1035
  end
1036
+
1037
+ # A CryptoKeyVersion represents an individual cryptographic key, and the
1038
+ # associated key material.
1039
+ # It can be used for cryptographic operations either directly, or via its
1040
+ # parent CryptoKey, in which case the server will choose the appropriate
1041
+ # version for the operation.
1042
+ class CryptoKeyVersion
1043
+ include Google::Apis::Core::Hashable
1044
+
1045
+ # The current state of the CryptoKeyVersion.
1046
+ # Corresponds to the JSON property `state`
1047
+ # @return [String]
1048
+ attr_accessor :state
1049
+
1050
+ # Output only. The resource name for this CryptoKeyVersion in the format
1051
+ # `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.
1052
+ # Corresponds to the JSON property `name`
1053
+ # @return [String]
1054
+ attr_accessor :name
1055
+
1056
+ # Output only. The time this CryptoKeyVersion's key material was
1057
+ # destroyed. Only present if state is
1058
+ # DESTROYED.
1059
+ # Corresponds to the JSON property `destroyEventTime`
1060
+ # @return [String]
1061
+ attr_accessor :destroy_event_time
1062
+
1063
+ # Output only. The time this CryptoKeyVersion's key material is scheduled
1064
+ # for destruction. Only present if state is
1065
+ # DESTROY_SCHEDULED.
1066
+ # Corresponds to the JSON property `destroyTime`
1067
+ # @return [String]
1068
+ attr_accessor :destroy_time
1069
+
1070
+ # Output only. The time at which this CryptoKeyVersion was created.
1071
+ # Corresponds to the JSON property `createTime`
1072
+ # @return [String]
1073
+ attr_accessor :create_time
1074
+
1075
+ def initialize(**args)
1076
+ update!(**args)
1077
+ end
1078
+
1079
+ # Update properties of this object
1080
+ def update!(**args)
1081
+ @state = args[:state] if args.key?(:state)
1082
+ @name = args[:name] if args.key?(:name)
1083
+ @destroy_event_time = args[:destroy_event_time] if args.key?(:destroy_event_time)
1084
+ @destroy_time = args[:destroy_time] if args.key?(:destroy_time)
1085
+ @create_time = args[:create_time] if args.key?(:create_time)
1086
+ end
1087
+ end
1033
1088
  end
1034
1089
  end
1035
1090
  end