google-api-client 0.12.0 → 0.13.0

Sign up to get free protection for your applications and to get access to all the features.
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