google-api-client 0.43.0 → 0.48.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (964) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/autoapprove.yml +49 -0
  3. data/.github/workflows/release-please.yml +77 -0
  4. data/.gitignore +2 -0
  5. data/.kokoro/trampoline.sh +0 -0
  6. data/CHANGELOG.md +1066 -184
  7. data/Gemfile +1 -0
  8. data/Rakefile +31 -3
  9. data/api_list_config.yaml +8 -0
  10. data/api_names.yaml +1 -0
  11. data/bin/generate-api +77 -15
  12. data/docs/oauth-server.md +4 -6
  13. data/generated/google/apis/acceleratedmobilepageurl_v1/classes.rb +7 -9
  14. data/generated/google/apis/acceleratedmobilepageurl_v1/service.rb +2 -2
  15. data/generated/google/apis/acceleratedmobilepageurl_v1.rb +1 -1
  16. data/generated/google/apis/accessapproval_v1/classes.rb +60 -86
  17. data/generated/google/apis/accessapproval_v1/service.rb +93 -132
  18. data/generated/google/apis/accessapproval_v1.rb +1 -1
  19. data/generated/google/apis/accesscontextmanager_v1/classes.rb +266 -236
  20. data/generated/google/apis/accesscontextmanager_v1/representations.rb +30 -0
  21. data/generated/google/apis/accesscontextmanager_v1/service.rb +308 -171
  22. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  23. data/generated/google/apis/accesscontextmanager_v1beta/classes.rb +153 -184
  24. data/generated/google/apis/accesscontextmanager_v1beta/service.rb +82 -111
  25. data/generated/google/apis/accesscontextmanager_v1beta.rb +1 -1
  26. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +47 -36
  27. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +1 -0
  28. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  29. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +72 -2
  30. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +33 -0
  31. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  32. data/generated/google/apis/adexperiencereport_v1.rb +1 -1
  33. data/generated/google/apis/admin_datatransfer_v1/classes.rb +16 -4
  34. data/generated/google/apis/admin_datatransfer_v1/service.rb +30 -48
  35. data/generated/google/apis/admin_datatransfer_v1.rb +6 -4
  36. data/generated/google/apis/admin_directory_v1/classes.rb +344 -242
  37. data/generated/google/apis/admin_directory_v1/representations.rb +62 -39
  38. data/generated/google/apis/admin_directory_v1/service.rb +607 -998
  39. data/generated/google/apis/admin_directory_v1.rb +6 -8
  40. data/generated/google/apis/admin_reports_v1/classes.rb +31 -33
  41. data/generated/google/apis/admin_reports_v1/service.rb +131 -187
  42. data/generated/google/apis/admin_reports_v1.rb +6 -5
  43. data/generated/google/apis/admob_v1/classes.rb +31 -31
  44. data/generated/google/apis/admob_v1/service.rb +2 -1
  45. data/generated/google/apis/admob_v1.rb +6 -2
  46. data/generated/google/apis/adsense_v1_4/service.rb +4 -1
  47. data/generated/google/apis/adsense_v1_4.rb +1 -1
  48. data/generated/google/apis/alertcenter_v1beta1.rb +1 -1
  49. data/generated/google/apis/analyticsadmin_v1alpha/classes.rb +1361 -0
  50. data/generated/google/apis/analyticsadmin_v1alpha/representations.rb +610 -0
  51. data/generated/google/apis/analyticsadmin_v1alpha/service.rb +2134 -0
  52. data/generated/google/apis/analyticsadmin_v1alpha.rb +43 -0
  53. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +1655 -0
  54. data/generated/google/apis/analyticsdata_v1alpha/representations.rb +806 -0
  55. data/generated/google/apis/analyticsdata_v1alpha/service.rb +261 -0
  56. data/generated/google/apis/analyticsdata_v1alpha.rb +37 -0
  57. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  58. data/generated/google/apis/androidenterprise_v1/service.rb +2 -2
  59. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  60. data/generated/google/apis/androidmanagement_v1/classes.rb +115 -75
  61. data/generated/google/apis/androidmanagement_v1/representations.rb +17 -0
  62. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  63. data/generated/google/apis/androidpublisher_v3/classes.rb +9 -1
  64. data/generated/google/apis/androidpublisher_v3/representations.rb +1 -0
  65. data/generated/google/apis/androidpublisher_v3/service.rb +2 -2
  66. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  67. data/generated/google/apis/apigateway_v1beta/classes.rb +1162 -0
  68. data/generated/google/apis/{memcache_v1 → apigateway_v1beta}/representations.rb +156 -157
  69. data/generated/google/apis/apigateway_v1beta/service.rb +1172 -0
  70. data/generated/google/apis/apigateway_v1beta.rb +34 -0
  71. data/generated/google/apis/apigee_v1/classes.rb +630 -88
  72. data/generated/google/apis/apigee_v1/representations.rb +209 -1
  73. data/generated/google/apis/apigee_v1/service.rb +401 -74
  74. data/generated/google/apis/apigee_v1.rb +6 -7
  75. data/generated/google/apis/appengine_v1/classes.rb +96 -59
  76. data/generated/google/apis/appengine_v1/representations.rb +17 -0
  77. data/generated/google/apis/appengine_v1/service.rb +38 -47
  78. data/generated/google/apis/appengine_v1.rb +1 -1
  79. data/generated/google/apis/appengine_v1alpha/classes.rb +9 -11
  80. data/generated/google/apis/appengine_v1alpha.rb +1 -1
  81. data/generated/google/apis/appengine_v1beta/classes.rb +103 -59
  82. data/generated/google/apis/appengine_v1beta/representations.rb +18 -0
  83. data/generated/google/apis/appengine_v1beta/service.rb +37 -47
  84. data/generated/google/apis/appengine_v1beta.rb +1 -1
  85. data/generated/google/apis/appsmarket_v2/classes.rb +14 -16
  86. data/generated/google/apis/appsmarket_v2.rb +1 -1
  87. data/generated/google/apis/area120tables_v1alpha1/classes.rb +423 -0
  88. data/generated/google/apis/area120tables_v1alpha1/representations.rb +248 -0
  89. data/generated/google/apis/area120tables_v1alpha1/service.rb +381 -0
  90. data/generated/google/apis/area120tables_v1alpha1.rb +46 -0
  91. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +249 -337
  92. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +2 -0
  93. data/generated/google/apis/artifactregistry_v1beta1/service.rb +44 -57
  94. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  95. data/generated/google/apis/assuredworkloads_v1beta1/classes.rb +722 -0
  96. data/generated/google/apis/assuredworkloads_v1beta1/representations.rb +359 -0
  97. data/generated/google/apis/assuredworkloads_v1beta1/service.rb +328 -0
  98. data/generated/google/apis/{accessapproval_v1beta1.rb → assuredworkloads_v1beta1.rb} +8 -8
  99. data/generated/google/apis/bigquery_v2/classes.rb +593 -576
  100. data/generated/google/apis/bigquery_v2/representations.rb +85 -0
  101. data/generated/google/apis/bigquery_v2/service.rb +79 -41
  102. data/generated/google/apis/bigquery_v2.rb +1 -1
  103. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +192 -337
  104. data/generated/google/apis/bigqueryconnection_v1beta1/service.rb +29 -32
  105. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  106. data/generated/google/apis/bigquerydatatransfer_v1/classes.rb +132 -158
  107. data/generated/google/apis/bigquerydatatransfer_v1/service.rb +232 -282
  108. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  109. data/generated/google/apis/bigqueryreservation_v1/classes.rb +116 -123
  110. data/generated/google/apis/bigqueryreservation_v1/representations.rb +2 -0
  111. data/generated/google/apis/bigqueryreservation_v1/service.rb +137 -183
  112. data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
  113. data/generated/google/apis/bigqueryreservation_v1alpha2/classes.rb +88 -100
  114. data/generated/google/apis/bigqueryreservation_v1alpha2/service.rb +77 -100
  115. data/generated/google/apis/bigqueryreservation_v1alpha2.rb +1 -1
  116. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +93 -98
  117. data/generated/google/apis/bigqueryreservation_v1beta1/representations.rb +2 -0
  118. data/generated/google/apis/bigqueryreservation_v1beta1/service.rb +114 -151
  119. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  120. data/generated/google/apis/bigtableadmin_v1/classes.rb +137 -119
  121. data/generated/google/apis/bigtableadmin_v1/representations.rb +29 -0
  122. data/generated/google/apis/bigtableadmin_v1.rb +1 -1
  123. data/generated/google/apis/bigtableadmin_v2/classes.rb +455 -607
  124. data/generated/google/apis/bigtableadmin_v2/representations.rb +29 -0
  125. data/generated/google/apis/bigtableadmin_v2/service.rb +194 -247
  126. data/generated/google/apis/bigtableadmin_v2.rb +1 -1
  127. data/generated/google/apis/billingbudgets_v1/classes.rb +373 -0
  128. data/generated/google/apis/billingbudgets_v1/representations.rb +171 -0
  129. data/generated/google/apis/billingbudgets_v1/service.rb +249 -0
  130. data/generated/google/apis/billingbudgets_v1.rb +38 -0
  131. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +27 -6
  132. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +2 -0
  133. data/generated/google/apis/billingbudgets_v1beta1.rb +4 -1
  134. data/generated/google/apis/binaryauthorization_v1/classes.rb +434 -355
  135. data/generated/google/apis/binaryauthorization_v1/representations.rb +75 -0
  136. data/generated/google/apis/binaryauthorization_v1/service.rb +109 -89
  137. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  138. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +434 -355
  139. data/generated/google/apis/binaryauthorization_v1beta1/representations.rb +75 -0
  140. data/generated/google/apis/binaryauthorization_v1beta1/service.rb +109 -89
  141. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  142. data/generated/google/apis/books_v1/service.rb +54 -54
  143. data/generated/google/apis/books_v1.rb +1 -1
  144. data/generated/google/apis/calendar_v3/classes.rb +13 -10
  145. data/generated/google/apis/calendar_v3.rb +1 -1
  146. data/generated/google/apis/chat_v1/classes.rb +173 -116
  147. data/generated/google/apis/chat_v1/representations.rb +36 -0
  148. data/generated/google/apis/chat_v1/service.rb +30 -42
  149. data/generated/google/apis/chat_v1.rb +1 -1
  150. data/generated/google/apis/civicinfo_v2/classes.rb +18 -32
  151. data/generated/google/apis/civicinfo_v2/representations.rb +2 -3
  152. data/generated/google/apis/civicinfo_v2.rb +1 -1
  153. data/generated/google/apis/classroom_v1/classes.rb +153 -21
  154. data/generated/google/apis/classroom_v1/representations.rb +43 -0
  155. data/generated/google/apis/classroom_v1/service.rb +240 -0
  156. data/generated/google/apis/classroom_v1.rb +7 -1
  157. data/generated/google/apis/cloudasset_v1/classes.rb +1461 -1039
  158. data/generated/google/apis/cloudasset_v1/representations.rb +320 -0
  159. data/generated/google/apis/cloudasset_v1/service.rb +296 -167
  160. data/generated/google/apis/cloudasset_v1.rb +1 -1
  161. data/generated/google/apis/cloudasset_v1beta1/classes.rb +531 -777
  162. data/generated/google/apis/cloudasset_v1beta1/service.rb +59 -75
  163. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  164. data/generated/google/apis/cloudasset_v1p1beta1/classes.rb +204 -349
  165. data/generated/google/apis/cloudasset_v1p1beta1/service.rb +35 -47
  166. data/generated/google/apis/cloudasset_v1p1beta1.rb +1 -1
  167. data/generated/google/apis/cloudasset_v1p4beta1/classes.rb +222 -276
  168. data/generated/google/apis/cloudasset_v1p4beta1/service.rb +75 -93
  169. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  170. data/generated/google/apis/cloudasset_v1p5beta1/classes.rb +481 -720
  171. data/generated/google/apis/cloudasset_v1p5beta1/service.rb +25 -28
  172. data/generated/google/apis/cloudasset_v1p5beta1.rb +1 -1
  173. data/generated/google/apis/cloudbilling_v1/classes.rb +285 -446
  174. data/generated/google/apis/cloudbilling_v1/service.rb +104 -124
  175. data/generated/google/apis/cloudbilling_v1.rb +7 -1
  176. data/generated/google/apis/cloudbuild_v1/classes.rb +339 -344
  177. data/generated/google/apis/cloudbuild_v1/representations.rb +8 -0
  178. data/generated/google/apis/cloudbuild_v1/service.rb +277 -67
  179. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  180. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +291 -329
  181. data/generated/google/apis/cloudbuild_v1alpha1/representations.rb +2 -0
  182. data/generated/google/apis/cloudbuild_v1alpha1/service.rb +15 -18
  183. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  184. data/generated/google/apis/cloudbuild_v1alpha2/classes.rb +277 -313
  185. data/generated/google/apis/cloudbuild_v1alpha2/representations.rb +2 -0
  186. data/generated/google/apis/cloudbuild_v1alpha2/service.rb +22 -28
  187. data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
  188. data/generated/google/apis/clouddebugger_v2/classes.rb +185 -252
  189. data/generated/google/apis/clouddebugger_v2/service.rb +53 -59
  190. data/generated/google/apis/clouddebugger_v2.rb +1 -1
  191. data/generated/google/apis/clouderrorreporting_v1beta1/classes.rb +127 -156
  192. data/generated/google/apis/clouderrorreporting_v1beta1/service.rb +53 -69
  193. data/generated/google/apis/clouderrorreporting_v1beta1.rb +1 -1
  194. data/generated/google/apis/cloudfunctions_v1/classes.rb +335 -494
  195. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -0
  196. data/generated/google/apis/cloudfunctions_v1/service.rb +79 -93
  197. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  198. data/generated/google/apis/cloudidentity_v1/classes.rb +989 -107
  199. data/generated/google/apis/cloudidentity_v1/representations.rb +371 -0
  200. data/generated/google/apis/cloudidentity_v1/service.rb +883 -88
  201. data/generated/google/apis/cloudidentity_v1.rb +4 -1
  202. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +1236 -307
  203. data/generated/google/apis/cloudidentity_v1beta1/representations.rb +424 -21
  204. data/generated/google/apis/cloudidentity_v1beta1/service.rb +921 -96
  205. data/generated/google/apis/cloudidentity_v1beta1.rb +4 -1
  206. data/generated/google/apis/cloudiot_v1/classes.rb +270 -373
  207. data/generated/google/apis/cloudiot_v1/representations.rb +1 -0
  208. data/generated/google/apis/cloudiot_v1/service.rb +147 -154
  209. data/generated/google/apis/cloudiot_v1.rb +1 -1
  210. data/generated/google/apis/cloudkms_v1/classes.rb +509 -692
  211. data/generated/google/apis/cloudkms_v1/representations.rb +18 -0
  212. data/generated/google/apis/cloudkms_v1/service.rb +170 -216
  213. data/generated/google/apis/cloudkms_v1.rb +1 -1
  214. data/generated/google/apis/cloudprofiler_v2/classes.rb +28 -33
  215. data/generated/google/apis/cloudprofiler_v2/service.rb +17 -19
  216. data/generated/google/apis/cloudprofiler_v2.rb +1 -1
  217. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +14 -7
  218. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +1 -0
  219. data/generated/google/apis/cloudresourcemanager_v1/service.rb +62 -60
  220. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  221. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +11 -4
  222. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +1 -0
  223. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +26 -25
  224. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  225. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +7 -0
  226. data/generated/google/apis/cloudresourcemanager_v2/representations.rb +1 -0
  227. data/generated/google/apis/cloudresourcemanager_v2/service.rb +7 -7
  228. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  229. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +7 -0
  230. data/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb +1 -0
  231. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +7 -7
  232. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  233. data/generated/google/apis/cloudscheduler_v1/classes.rb +272 -383
  234. data/generated/google/apis/cloudscheduler_v1/service.rb +45 -62
  235. data/generated/google/apis/cloudscheduler_v1.rb +1 -1
  236. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +273 -384
  237. data/generated/google/apis/cloudscheduler_v1beta1/service.rb +45 -62
  238. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  239. data/generated/google/apis/cloudsearch_v1/classes.rb +651 -781
  240. data/generated/google/apis/cloudsearch_v1/representations.rb +15 -0
  241. data/generated/google/apis/cloudsearch_v1/service.rb +286 -326
  242. data/generated/google/apis/cloudsearch_v1.rb +2 -2
  243. data/generated/google/apis/cloudshell_v1/classes.rb +256 -105
  244. data/generated/google/apis/cloudshell_v1/representations.rb +143 -10
  245. data/generated/google/apis/cloudshell_v1/service.rb +198 -25
  246. data/generated/google/apis/cloudshell_v1.rb +1 -1
  247. data/generated/google/apis/cloudshell_v1alpha1/classes.rb +69 -78
  248. data/generated/google/apis/cloudshell_v1alpha1/service.rb +20 -24
  249. data/generated/google/apis/cloudshell_v1alpha1.rb +1 -1
  250. data/generated/google/apis/cloudtasks_v2/classes.rb +612 -933
  251. data/generated/google/apis/cloudtasks_v2/representations.rb +1 -0
  252. data/generated/google/apis/cloudtasks_v2/service.rb +146 -217
  253. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  254. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +608 -964
  255. data/generated/google/apis/cloudtasks_v2beta2/representations.rb +1 -0
  256. data/generated/google/apis/cloudtasks_v2beta2/service.rb +178 -270
  257. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  258. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +616 -938
  259. data/generated/google/apis/cloudtasks_v2beta3/representations.rb +1 -0
  260. data/generated/google/apis/cloudtasks_v2beta3/service.rb +146 -217
  261. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  262. data/generated/google/apis/cloudtrace_v1/classes.rb +39 -61
  263. data/generated/google/apis/cloudtrace_v1/service.rb +37 -51
  264. data/generated/google/apis/cloudtrace_v1.rb +1 -1
  265. data/generated/google/apis/cloudtrace_v2/classes.rb +92 -107
  266. data/generated/google/apis/cloudtrace_v2/service.rb +8 -11
  267. data/generated/google/apis/cloudtrace_v2.rb +1 -1
  268. data/generated/google/apis/cloudtrace_v2beta1/classes.rb +23 -33
  269. data/generated/google/apis/cloudtrace_v2beta1/service.rb +30 -37
  270. data/generated/google/apis/cloudtrace_v2beta1.rb +1 -1
  271. data/generated/google/apis/composer_v1/classes.rb +189 -242
  272. data/generated/google/apis/composer_v1/service.rb +79 -150
  273. data/generated/google/apis/composer_v1.rb +1 -1
  274. data/generated/google/apis/composer_v1beta1/classes.rb +203 -262
  275. data/generated/google/apis/composer_v1beta1/service.rb +94 -179
  276. data/generated/google/apis/composer_v1beta1.rb +1 -1
  277. data/generated/google/apis/compute_alpha/classes.rb +1227 -186
  278. data/generated/google/apis/compute_alpha/representations.rb +235 -8
  279. data/generated/google/apis/compute_alpha/service.rb +2009 -1024
  280. data/generated/google/apis/compute_alpha.rb +1 -1
  281. data/generated/google/apis/compute_beta/classes.rb +1080 -108
  282. data/generated/google/apis/compute_beta/representations.rb +212 -2
  283. data/generated/google/apis/compute_beta/service.rb +1413 -741
  284. data/generated/google/apis/compute_beta.rb +1 -1
  285. data/generated/google/apis/compute_v1/classes.rb +1512 -106
  286. data/generated/google/apis/compute_v1/representations.rb +470 -1
  287. data/generated/google/apis/compute_v1/service.rb +1625 -285
  288. data/generated/google/apis/compute_v1.rb +1 -1
  289. data/generated/google/apis/container_v1/classes.rb +982 -965
  290. data/generated/google/apis/container_v1/representations.rb +60 -0
  291. data/generated/google/apis/container_v1/service.rb +435 -502
  292. data/generated/google/apis/container_v1.rb +1 -1
  293. data/generated/google/apis/container_v1beta1/classes.rb +1106 -1044
  294. data/generated/google/apis/container_v1beta1/representations.rb +91 -0
  295. data/generated/google/apis/container_v1beta1/service.rb +403 -466
  296. data/generated/google/apis/container_v1beta1.rb +1 -1
  297. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +463 -596
  298. data/generated/google/apis/containeranalysis_v1alpha1/representations.rb +1 -0
  299. data/generated/google/apis/containeranalysis_v1alpha1/service.rb +149 -169
  300. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  301. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +461 -613
  302. data/generated/google/apis/containeranalysis_v1beta1/representations.rb +1 -0
  303. data/generated/google/apis/containeranalysis_v1beta1/service.rb +75 -90
  304. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  305. data/generated/google/apis/content_v2/classes.rb +515 -1219
  306. data/generated/google/apis/content_v2/service.rb +377 -650
  307. data/generated/google/apis/content_v2.rb +3 -4
  308. data/generated/google/apis/content_v2_1/classes.rb +1108 -1058
  309. data/generated/google/apis/content_v2_1/representations.rb +288 -0
  310. data/generated/google/apis/content_v2_1/service.rb +987 -795
  311. data/generated/google/apis/content_v2_1.rb +3 -4
  312. data/generated/google/apis/customsearch_v1/service.rb +2 -2
  313. data/generated/google/apis/customsearch_v1.rb +1 -1
  314. data/generated/google/apis/datacatalog_v1beta1/classes.rb +413 -573
  315. data/generated/google/apis/datacatalog_v1beta1/representations.rb +6 -0
  316. data/generated/google/apis/datacatalog_v1beta1/service.rb +319 -440
  317. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  318. data/generated/google/apis/dataflow_v1b3/classes.rb +1174 -973
  319. data/generated/google/apis/dataflow_v1b3/representations.rb +148 -0
  320. data/generated/google/apis/dataflow_v1b3/service.rb +308 -257
  321. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  322. data/generated/google/apis/datafusion_v1/classes.rb +283 -397
  323. data/generated/google/apis/datafusion_v1/representations.rb +5 -0
  324. data/generated/google/apis/datafusion_v1/service.rb +76 -89
  325. data/generated/google/apis/datafusion_v1.rb +5 -8
  326. data/generated/google/apis/datafusion_v1beta1/classes.rb +283 -397
  327. data/generated/google/apis/datafusion_v1beta1/representations.rb +5 -0
  328. data/generated/google/apis/datafusion_v1beta1/service.rb +81 -95
  329. data/generated/google/apis/datafusion_v1beta1.rb +5 -8
  330. data/generated/google/apis/datalabeling_v1beta1/classes.rb +6207 -0
  331. data/generated/google/apis/datalabeling_v1beta1/representations.rb +3156 -0
  332. data/generated/google/apis/datalabeling_v1beta1/service.rb +1762 -0
  333. data/generated/google/apis/datalabeling_v1beta1.rb +34 -0
  334. data/generated/google/apis/dataproc_v1/classes.rb +97 -13
  335. data/generated/google/apis/dataproc_v1/representations.rb +34 -0
  336. data/generated/google/apis/dataproc_v1.rb +1 -1
  337. data/generated/google/apis/dataproc_v1beta2/classes.rb +117 -9
  338. data/generated/google/apis/dataproc_v1beta2/representations.rb +49 -0
  339. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  340. data/generated/google/apis/datastore_v1/classes.rb +334 -476
  341. data/generated/google/apis/datastore_v1/service.rb +52 -63
  342. data/generated/google/apis/datastore_v1.rb +1 -1
  343. data/generated/google/apis/datastore_v1beta1/classes.rb +150 -217
  344. data/generated/google/apis/datastore_v1beta1/service.rb +11 -12
  345. data/generated/google/apis/datastore_v1beta1.rb +1 -1
  346. data/generated/google/apis/datastore_v1beta3/classes.rb +259 -375
  347. data/generated/google/apis/datastore_v1beta3/service.rb +1 -2
  348. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  349. data/generated/google/apis/deploymentmanager_v2/classes.rb +203 -558
  350. data/generated/google/apis/deploymentmanager_v2/representations.rb +0 -132
  351. data/generated/google/apis/deploymentmanager_v2/service.rb +169 -213
  352. data/generated/google/apis/deploymentmanager_v2.rb +6 -4
  353. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +247 -609
  354. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +0 -132
  355. data/generated/google/apis/deploymentmanager_v2beta/service.rb +278 -359
  356. data/generated/google/apis/deploymentmanager_v2beta.rb +6 -5
  357. data/generated/google/apis/dfareporting_v3_3/classes.rb +162 -339
  358. data/generated/google/apis/dfareporting_v3_3/service.rb +646 -1262
  359. data/generated/google/apis/dfareporting_v3_3.rb +2 -2
  360. data/generated/google/apis/dfareporting_v3_4/classes.rb +184 -350
  361. data/generated/google/apis/dfareporting_v3_4/representations.rb +1 -0
  362. data/generated/google/apis/dfareporting_v3_4/service.rb +681 -1261
  363. data/generated/google/apis/dfareporting_v3_4.rb +2 -2
  364. data/generated/google/apis/dialogflow_v2/classes.rb +746 -217
  365. data/generated/google/apis/dialogflow_v2/representations.rb +318 -67
  366. data/generated/google/apis/dialogflow_v2.rb +1 -1
  367. data/generated/google/apis/dialogflow_v2beta1/classes.rb +764 -233
  368. data/generated/google/apis/dialogflow_v2beta1/representations.rb +318 -67
  369. data/generated/google/apis/dialogflow_v2beta1/service.rb +556 -331
  370. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  371. data/generated/google/apis/dialogflow_v3beta1/classes.rb +8816 -0
  372. data/generated/google/apis/dialogflow_v3beta1/representations.rb +3725 -0
  373. data/generated/google/apis/dialogflow_v3beta1/service.rb +2825 -0
  374. data/generated/google/apis/dialogflow_v3beta1.rb +38 -0
  375. data/generated/google/apis/digitalassetlinks_v1/classes.rb +66 -92
  376. data/generated/google/apis/digitalassetlinks_v1/service.rb +131 -188
  377. data/generated/google/apis/digitalassetlinks_v1.rb +1 -1
  378. data/generated/google/apis/displayvideo_v1/classes.rb +271 -38
  379. data/generated/google/apis/displayvideo_v1/representations.rb +83 -0
  380. data/generated/google/apis/displayvideo_v1/service.rb +287 -32
  381. data/generated/google/apis/displayvideo_v1.rb +1 -1
  382. data/generated/google/apis/displayvideo_v1beta/classes.rb +146 -0
  383. data/generated/google/apis/displayvideo_v1beta/representations.rb +72 -0
  384. data/generated/google/apis/displayvideo_v1beta/service.rb +161 -0
  385. data/generated/google/apis/displayvideo_v1beta.rb +38 -0
  386. data/generated/google/apis/displayvideo_v1beta2/classes.rb +146 -0
  387. data/generated/google/apis/displayvideo_v1beta2/representations.rb +72 -0
  388. data/generated/google/apis/displayvideo_v1beta2/service.rb +130 -0
  389. data/generated/google/apis/displayvideo_v1beta2.rb +38 -0
  390. data/generated/google/apis/displayvideo_v1dev/classes.rb +146 -0
  391. data/generated/google/apis/displayvideo_v1dev/representations.rb +72 -0
  392. data/generated/google/apis/displayvideo_v1dev/service.rb +130 -0
  393. data/generated/google/apis/displayvideo_v1dev.rb +38 -0
  394. data/generated/google/apis/dlp_v2/classes.rb +1111 -1310
  395. data/generated/google/apis/dlp_v2/representations.rb +16 -0
  396. data/generated/google/apis/dlp_v2/service.rb +962 -905
  397. data/generated/google/apis/dlp_v2.rb +1 -1
  398. data/generated/google/apis/dns_v1/classes.rb +356 -198
  399. data/generated/google/apis/dns_v1/representations.rb +83 -0
  400. data/generated/google/apis/dns_v1/service.rb +83 -98
  401. data/generated/google/apis/dns_v1.rb +2 -2
  402. data/generated/google/apis/dns_v1beta2/classes.rb +362 -206
  403. data/generated/google/apis/dns_v1beta2/representations.rb +83 -0
  404. data/generated/google/apis/dns_v1beta2/service.rb +83 -98
  405. data/generated/google/apis/dns_v1beta2.rb +2 -2
  406. data/generated/google/apis/docs_v1/classes.rb +894 -1229
  407. data/generated/google/apis/docs_v1/service.rb +17 -22
  408. data/generated/google/apis/docs_v1.rb +1 -1
  409. data/generated/google/apis/documentai_v1beta2/classes.rb +2253 -824
  410. data/generated/google/apis/documentai_v1beta2/representations.rb +701 -0
  411. data/generated/google/apis/documentai_v1beta2/service.rb +22 -24
  412. data/generated/google/apis/documentai_v1beta2.rb +1 -1
  413. data/generated/google/apis/documentai_v1beta3/classes.rb +6149 -0
  414. data/generated/google/apis/documentai_v1beta3/representations.rb +2666 -0
  415. data/generated/google/apis/documentai_v1beta3/service.rb +263 -0
  416. data/generated/google/apis/{securitycenter_v1p1alpha1.rb → documentai_v1beta3.rb} +11 -10
  417. data/generated/google/apis/domains_v1alpha2/classes.rb +1540 -0
  418. data/generated/google/apis/domains_v1alpha2/representations.rb +606 -0
  419. data/generated/google/apis/domains_v1alpha2/service.rb +805 -0
  420. data/generated/google/apis/domains_v1alpha2.rb +34 -0
  421. data/generated/google/apis/domains_v1beta1/classes.rb +1540 -0
  422. data/generated/google/apis/domains_v1beta1/representations.rb +606 -0
  423. data/generated/google/apis/domains_v1beta1/service.rb +805 -0
  424. data/generated/google/apis/domains_v1beta1.rb +34 -0
  425. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +6 -12
  426. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +33 -64
  427. data/generated/google/apis/doubleclickbidmanager_v1.rb +3 -2
  428. data/generated/google/apis/doubleclickbidmanager_v1_1/classes.rb +13 -20
  429. data/generated/google/apis/doubleclickbidmanager_v1_1/service.rb +33 -64
  430. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +3 -2
  431. data/generated/google/apis/doubleclicksearch_v2/service.rb +2 -2
  432. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  433. data/generated/google/apis/drive_v2/classes.rb +18 -7
  434. data/generated/google/apis/drive_v2/representations.rb +1 -0
  435. data/generated/google/apis/drive_v2/service.rb +79 -15
  436. data/generated/google/apis/drive_v2.rb +1 -1
  437. data/generated/google/apis/drive_v3/classes.rb +18 -8
  438. data/generated/google/apis/drive_v3/representations.rb +1 -0
  439. data/generated/google/apis/drive_v3/service.rb +59 -11
  440. data/generated/google/apis/drive_v3.rb +1 -1
  441. data/generated/google/apis/eventarc_v1beta1/classes.rb +931 -0
  442. data/generated/google/apis/eventarc_v1beta1/representations.rb +379 -0
  443. data/generated/google/apis/{memcache_v1 → eventarc_v1beta1}/service.rb +236 -215
  444. data/generated/google/apis/eventarc_v1beta1.rb +34 -0
  445. data/generated/google/apis/file_v1/classes.rb +155 -174
  446. data/generated/google/apis/file_v1/service.rb +43 -52
  447. data/generated/google/apis/file_v1.rb +1 -1
  448. data/generated/google/apis/file_v1beta1/classes.rb +335 -194
  449. data/generated/google/apis/file_v1beta1/representations.rb +55 -0
  450. data/generated/google/apis/file_v1beta1/service.rb +267 -55
  451. data/generated/google/apis/file_v1beta1.rb +1 -1
  452. data/generated/google/apis/firebase_v1beta1/classes.rb +33 -51
  453. data/generated/google/apis/firebase_v1beta1/representations.rb +2 -16
  454. data/generated/google/apis/firebase_v1beta1/service.rb +21 -1
  455. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  456. data/generated/google/apis/firebasedynamiclinks_v1.rb +1 -1
  457. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +188 -0
  458. data/generated/google/apis/firebasehosting_v1beta1/representations.rb +83 -0
  459. data/generated/google/apis/firebasehosting_v1beta1/service.rb +418 -4
  460. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  461. data/generated/google/apis/firebaseml_v1beta2/classes.rb +8 -8
  462. data/generated/google/apis/firebaseml_v1beta2/representations.rb +1 -1
  463. data/generated/google/apis/firebaseml_v1beta2.rb +1 -1
  464. data/generated/google/apis/firebaserules_v1/classes.rb +102 -137
  465. data/generated/google/apis/firebaserules_v1/service.rb +87 -110
  466. data/generated/google/apis/firebaserules_v1.rb +1 -1
  467. data/generated/google/apis/firestore_v1/classes.rb +406 -502
  468. data/generated/google/apis/firestore_v1/service.rb +165 -201
  469. data/generated/google/apis/firestore_v1.rb +1 -1
  470. data/generated/google/apis/firestore_v1beta1/classes.rb +338 -413
  471. data/generated/google/apis/firestore_v1beta1/service.rb +106 -122
  472. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  473. data/generated/google/apis/firestore_v1beta2/classes.rb +135 -165
  474. data/generated/google/apis/firestore_v1beta2/service.rb +65 -86
  475. data/generated/google/apis/firestore_v1beta2.rb +1 -1
  476. data/generated/google/apis/fitness_v1/classes.rb +982 -0
  477. data/generated/google/apis/fitness_v1/representations.rb +398 -0
  478. data/generated/google/apis/fitness_v1/service.rb +628 -0
  479. data/generated/google/apis/fitness_v1.rb +97 -0
  480. data/generated/google/apis/games_configuration_v1configuration/classes.rb +2 -3
  481. data/generated/google/apis/games_configuration_v1configuration/service.rb +6 -6
  482. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  483. data/generated/google/apis/games_management_v1management/classes.rb +14 -20
  484. data/generated/google/apis/games_management_v1management/service.rb +35 -36
  485. data/generated/google/apis/games_management_v1management.rb +2 -3
  486. data/generated/google/apis/games_v1/classes.rb +376 -83
  487. data/generated/google/apis/games_v1/representations.rb +118 -0
  488. data/generated/google/apis/games_v1/service.rb +118 -90
  489. data/generated/google/apis/games_v1.rb +2 -3
  490. data/generated/google/apis/gameservices_v1/classes.rb +22 -14
  491. data/generated/google/apis/gameservices_v1/representations.rb +1 -0
  492. data/generated/google/apis/gameservices_v1/service.rb +54 -51
  493. data/generated/google/apis/gameservices_v1.rb +1 -1
  494. data/generated/google/apis/gameservices_v1beta/classes.rb +22 -14
  495. data/generated/google/apis/gameservices_v1beta/representations.rb +1 -0
  496. data/generated/google/apis/gameservices_v1beta/service.rb +54 -51
  497. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  498. data/generated/google/apis/genomics_v1/classes.rb +70 -76
  499. data/generated/google/apis/genomics_v1/service.rb +28 -43
  500. data/generated/google/apis/genomics_v1.rb +1 -1
  501. data/generated/google/apis/genomics_v1alpha2/classes.rb +223 -290
  502. data/generated/google/apis/genomics_v1alpha2/service.rb +54 -76
  503. data/generated/google/apis/genomics_v1alpha2.rb +1 -1
  504. data/generated/google/apis/genomics_v2alpha1/classes.rb +356 -275
  505. data/generated/google/apis/genomics_v2alpha1/representations.rb +48 -0
  506. data/generated/google/apis/genomics_v2alpha1/service.rb +47 -66
  507. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  508. data/generated/google/apis/gmail_v1/classes.rb +37 -43
  509. data/generated/google/apis/gmail_v1/service.rb +5 -4
  510. data/generated/google/apis/gmail_v1.rb +1 -1
  511. data/generated/google/apis/gmailpostmastertools_v1beta1/service.rb +11 -11
  512. data/generated/google/apis/gmailpostmastertools_v1beta1.rb +2 -2
  513. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  514. data/generated/google/apis/groupsmigration_v1/representations.rb +40 -0
  515. data/generated/google/apis/groupsmigration_v1/service.rb +100 -0
  516. data/generated/google/apis/groupsmigration_v1.rb +35 -0
  517. data/generated/google/apis/healthcare_v1/classes.rb +637 -826
  518. data/generated/google/apis/healthcare_v1/representations.rb +32 -0
  519. data/generated/google/apis/healthcare_v1/service.rb +842 -855
  520. data/generated/google/apis/healthcare_v1.rb +1 -1
  521. data/generated/google/apis/healthcare_v1beta1/classes.rb +1937 -1299
  522. data/generated/google/apis/healthcare_v1beta1/representations.rb +534 -65
  523. data/generated/google/apis/healthcare_v1beta1/service.rb +2534 -1293
  524. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  525. data/generated/google/apis/homegraph_v1/classes.rb +76 -164
  526. data/generated/google/apis/homegraph_v1/service.rb +23 -35
  527. data/generated/google/apis/homegraph_v1.rb +4 -1
  528. data/generated/google/apis/iam_v1/classes.rb +395 -592
  529. data/generated/google/apis/iam_v1/representations.rb +1 -0
  530. data/generated/google/apis/iam_v1/service.rb +427 -555
  531. data/generated/google/apis/iam_v1.rb +1 -1
  532. data/generated/google/apis/iamcredentials_v1/classes.rb +75 -85
  533. data/generated/google/apis/iamcredentials_v1/service.rb +14 -13
  534. data/generated/google/apis/iamcredentials_v1.rb +3 -2
  535. data/generated/google/apis/iap_v1/classes.rb +253 -355
  536. data/generated/google/apis/iap_v1/representations.rb +1 -0
  537. data/generated/google/apis/iap_v1/service.rb +61 -71
  538. data/generated/google/apis/iap_v1.rb +1 -1
  539. data/generated/google/apis/iap_v1beta1/classes.rb +164 -254
  540. data/generated/google/apis/iap_v1beta1/representations.rb +1 -0
  541. data/generated/google/apis/iap_v1beta1/service.rb +17 -19
  542. data/generated/google/apis/iap_v1beta1.rb +1 -1
  543. data/generated/google/apis/indexing_v3/classes.rb +11 -11
  544. data/generated/google/apis/indexing_v3.rb +1 -1
  545. data/generated/google/apis/jobs_v2/classes.rb +1584 -1086
  546. data/generated/google/apis/jobs_v2/representations.rb +272 -0
  547. data/generated/google/apis/jobs_v2/service.rb +85 -126
  548. data/generated/google/apis/jobs_v2.rb +1 -1
  549. data/generated/google/apis/jobs_v3/classes.rb +1559 -980
  550. data/generated/google/apis/jobs_v3/representations.rb +272 -0
  551. data/generated/google/apis/jobs_v3/service.rb +101 -139
  552. data/generated/google/apis/jobs_v3.rb +1 -1
  553. data/generated/google/apis/jobs_v3p1beta1/classes.rb +1521 -1023
  554. data/generated/google/apis/jobs_v3p1beta1/representations.rb +257 -0
  555. data/generated/google/apis/jobs_v3p1beta1/service.rb +103 -142
  556. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  557. data/generated/google/apis/kgsearch_v1/classes.rb +4 -4
  558. data/generated/google/apis/kgsearch_v1/service.rb +11 -11
  559. data/generated/google/apis/kgsearch_v1.rb +1 -1
  560. data/generated/google/apis/licensing_v1/classes.rb +1 -1
  561. data/generated/google/apis/licensing_v1/service.rb +56 -86
  562. data/generated/google/apis/licensing_v1.rb +4 -3
  563. data/generated/google/apis/lifesciences_v2beta/classes.rb +366 -290
  564. data/generated/google/apis/lifesciences_v2beta/representations.rb +47 -0
  565. data/generated/google/apis/lifesciences_v2beta/service.rb +30 -42
  566. data/generated/google/apis/lifesciences_v2beta.rb +1 -1
  567. data/generated/google/apis/localservices_v1/classes.rb +426 -0
  568. data/generated/google/apis/localservices_v1/representations.rb +174 -0
  569. data/generated/google/apis/localservices_v1/service.rb +199 -0
  570. data/generated/google/apis/{appsactivity_v1.rb → localservices_v1.rb} +8 -11
  571. data/generated/google/apis/logging_v2/classes.rb +306 -232
  572. data/generated/google/apis/logging_v2/representations.rb +79 -0
  573. data/generated/google/apis/logging_v2/service.rb +3307 -1579
  574. data/generated/google/apis/logging_v2.rb +1 -1
  575. data/generated/google/apis/managedidentities_v1/classes.rb +8 -1
  576. data/generated/google/apis/managedidentities_v1/representations.rb +1 -0
  577. data/generated/google/apis/managedidentities_v1/service.rb +1 -4
  578. data/generated/google/apis/managedidentities_v1.rb +1 -1
  579. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +87 -1
  580. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +34 -0
  581. data/generated/google/apis/managedidentities_v1alpha1/service.rb +83 -5
  582. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  583. data/generated/google/apis/managedidentities_v1beta1/classes.rb +88 -1
  584. data/generated/google/apis/managedidentities_v1beta1/representations.rb +34 -0
  585. data/generated/google/apis/managedidentities_v1beta1/service.rb +83 -5
  586. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  587. data/generated/google/apis/manufacturers_v1/classes.rb +99 -109
  588. data/generated/google/apis/manufacturers_v1/service.rb +44 -55
  589. data/generated/google/apis/manufacturers_v1.rb +1 -1
  590. data/generated/google/apis/memcache_v1beta2/classes.rb +171 -250
  591. data/generated/google/apis/memcache_v1beta2/representations.rb +0 -19
  592. data/generated/google/apis/memcache_v1beta2/service.rb +60 -73
  593. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  594. data/generated/google/apis/ml_v1/classes.rb +1122 -1149
  595. data/generated/google/apis/ml_v1/representations.rb +82 -0
  596. data/generated/google/apis/ml_v1/service.rb +194 -253
  597. data/generated/google/apis/ml_v1.rb +1 -1
  598. data/generated/google/apis/monitoring_v1/classes.rb +107 -26
  599. data/generated/google/apis/monitoring_v1/representations.rb +35 -0
  600. data/generated/google/apis/monitoring_v1/service.rb +10 -11
  601. data/generated/google/apis/monitoring_v1.rb +1 -1
  602. data/generated/google/apis/monitoring_v3/classes.rb +303 -345
  603. data/generated/google/apis/monitoring_v3/representations.rb +18 -0
  604. data/generated/google/apis/monitoring_v3/service.rb +176 -146
  605. data/generated/google/apis/monitoring_v3.rb +1 -1
  606. data/generated/google/apis/networkmanagement_v1/classes.rb +273 -429
  607. data/generated/google/apis/networkmanagement_v1/service.rb +97 -120
  608. data/generated/google/apis/networkmanagement_v1.rb +1 -1
  609. data/generated/google/apis/networkmanagement_v1beta1/classes.rb +456 -429
  610. data/generated/google/apis/networkmanagement_v1beta1/representations.rb +63 -0
  611. data/generated/google/apis/networkmanagement_v1beta1/service.rb +97 -120
  612. data/generated/google/apis/networkmanagement_v1beta1.rb +1 -1
  613. data/generated/google/apis/osconfig_v1/classes.rb +154 -902
  614. data/generated/google/apis/osconfig_v1/representations.rb +0 -337
  615. data/generated/google/apis/osconfig_v1/service.rb +26 -31
  616. data/generated/google/apis/osconfig_v1.rb +3 -3
  617. data/generated/google/apis/osconfig_v1beta/classes.rb +327 -411
  618. data/generated/google/apis/osconfig_v1beta/service.rb +43 -56
  619. data/generated/google/apis/osconfig_v1beta.rb +3 -3
  620. data/generated/google/apis/oslogin_v1/classes.rb +14 -12
  621. data/generated/google/apis/oslogin_v1/representations.rb +1 -0
  622. data/generated/google/apis/oslogin_v1/service.rb +12 -16
  623. data/generated/google/apis/oslogin_v1.rb +1 -1
  624. data/generated/google/apis/oslogin_v1alpha/classes.rb +16 -14
  625. data/generated/google/apis/oslogin_v1alpha/representations.rb +1 -0
  626. data/generated/google/apis/oslogin_v1alpha/service.rb +17 -17
  627. data/generated/google/apis/oslogin_v1alpha.rb +1 -1
  628. data/generated/google/apis/oslogin_v1beta/classes.rb +14 -12
  629. data/generated/google/apis/oslogin_v1beta/representations.rb +1 -0
  630. data/generated/google/apis/oslogin_v1beta/service.rb +12 -16
  631. data/generated/google/apis/oslogin_v1beta.rb +1 -1
  632. data/generated/google/apis/pagespeedonline_v5/classes.rb +18 -24
  633. data/generated/google/apis/pagespeedonline_v5/service.rb +3 -4
  634. data/generated/google/apis/pagespeedonline_v5.rb +2 -2
  635. data/generated/google/apis/people_v1/classes.rb +173 -63
  636. data/generated/google/apis/people_v1/representations.rb +41 -0
  637. data/generated/google/apis/people_v1/service.rb +63 -61
  638. data/generated/google/apis/people_v1.rb +1 -1
  639. data/generated/google/apis/playablelocations_v3/classes.rb +114 -161
  640. data/generated/google/apis/playablelocations_v3/service.rb +10 -10
  641. data/generated/google/apis/playablelocations_v3.rb +1 -1
  642. data/generated/google/apis/playcustomapp_v1/service.rb +2 -2
  643. data/generated/google/apis/playcustomapp_v1.rb +1 -1
  644. data/generated/google/apis/poly_v1/classes.rb +65 -79
  645. data/generated/google/apis/poly_v1/service.rb +50 -63
  646. data/generated/google/apis/poly_v1.rb +3 -4
  647. data/generated/google/apis/privateca_v1beta1/classes.rb +2466 -0
  648. data/generated/google/apis/privateca_v1beta1/representations.rb +996 -0
  649. data/generated/google/apis/privateca_v1beta1/service.rb +1487 -0
  650. data/generated/google/apis/privateca_v1beta1.rb +34 -0
  651. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +26 -0
  652. data/generated/google/apis/prod_tt_sasportal_v1alpha1/representations.rb +14 -0
  653. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +644 -56
  654. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  655. data/generated/google/apis/pubsub_v1/classes.rb +399 -518
  656. data/generated/google/apis/pubsub_v1/representations.rb +2 -0
  657. data/generated/google/apis/pubsub_v1/service.rb +221 -247
  658. data/generated/google/apis/pubsub_v1.rb +1 -1
  659. data/generated/google/apis/pubsub_v1beta1a/classes.rb +71 -86
  660. data/generated/google/apis/pubsub_v1beta1a/service.rb +31 -38
  661. data/generated/google/apis/pubsub_v1beta1a.rb +1 -1
  662. data/generated/google/apis/pubsub_v1beta2/classes.rb +251 -354
  663. data/generated/google/apis/pubsub_v1beta2/representations.rb +1 -0
  664. data/generated/google/apis/pubsub_v1beta2/service.rb +96 -108
  665. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  666. data/generated/google/apis/pubsublite_v1/classes.rb +461 -0
  667. data/generated/google/apis/pubsublite_v1/representations.rb +261 -0
  668. data/generated/google/apis/pubsublite_v1/service.rb +558 -0
  669. data/generated/google/apis/{memcache_v1.rb → pubsublite_v1.rb} +8 -9
  670. data/generated/google/apis/realtimebidding_v1/classes.rb +84 -123
  671. data/generated/google/apis/realtimebidding_v1/representations.rb +18 -32
  672. data/generated/google/apis/realtimebidding_v1/service.rb +4 -1
  673. data/generated/google/apis/realtimebidding_v1.rb +1 -1
  674. data/generated/google/apis/recommendationengine_v1beta1/classes.rb +367 -456
  675. data/generated/google/apis/recommendationengine_v1beta1/representations.rb +25 -16
  676. data/generated/google/apis/recommendationengine_v1beta1/service.rb +140 -206
  677. data/generated/google/apis/recommendationengine_v1beta1.rb +1 -1
  678. data/generated/google/apis/recommender_v1/classes.rb +1 -1
  679. data/generated/google/apis/recommender_v1/service.rb +4 -2
  680. data/generated/google/apis/recommender_v1.rb +1 -1
  681. data/generated/google/apis/recommender_v1beta1/classes.rb +1 -1
  682. data/generated/google/apis/recommender_v1beta1/service.rb +4 -2
  683. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  684. data/generated/google/apis/redis_v1/classes.rb +91 -513
  685. data/generated/google/apis/redis_v1/representations.rb +0 -139
  686. data/generated/google/apis/redis_v1/service.rb +92 -109
  687. data/generated/google/apis/redis_v1.rb +1 -1
  688. data/generated/google/apis/redis_v1beta1/classes.rb +123 -517
  689. data/generated/google/apis/redis_v1beta1/representations.rb +12 -137
  690. data/generated/google/apis/redis_v1beta1/service.rb +126 -109
  691. data/generated/google/apis/redis_v1beta1.rb +1 -1
  692. data/generated/google/apis/remotebuildexecution_v1/classes.rb +957 -1078
  693. data/generated/google/apis/remotebuildexecution_v1/representations.rb +62 -0
  694. data/generated/google/apis/remotebuildexecution_v1/service.rb +26 -33
  695. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  696. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +952 -1071
  697. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +62 -0
  698. data/generated/google/apis/remotebuildexecution_v1alpha/service.rb +103 -65
  699. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  700. data/generated/google/apis/remotebuildexecution_v2/classes.rb +1105 -1250
  701. data/generated/google/apis/remotebuildexecution_v2/representations.rb +62 -0
  702. data/generated/google/apis/remotebuildexecution_v2/service.rb +147 -206
  703. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  704. data/generated/google/apis/reseller_v1/classes.rb +151 -219
  705. data/generated/google/apis/reseller_v1/service.rb +122 -173
  706. data/generated/google/apis/reseller_v1.rb +2 -2
  707. data/generated/google/apis/run_v1/classes.rb +19 -138
  708. data/generated/google/apis/run_v1/representations.rb +1 -62
  709. data/generated/google/apis/run_v1/service.rb +0 -342
  710. data/generated/google/apis/run_v1.rb +1 -1
  711. data/generated/google/apis/run_v1alpha1/classes.rb +1 -1
  712. data/generated/google/apis/run_v1alpha1/representations.rb +1 -1
  713. data/generated/google/apis/run_v1alpha1.rb +1 -1
  714. data/generated/google/apis/run_v1beta1/classes.rb +3 -2
  715. data/generated/google/apis/run_v1beta1.rb +1 -1
  716. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +301 -412
  717. data/generated/google/apis/runtimeconfig_v1beta1/representations.rb +1 -0
  718. data/generated/google/apis/runtimeconfig_v1beta1/service.rb +135 -159
  719. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  720. data/generated/google/apis/safebrowsing_v4/classes.rb +55 -64
  721. data/generated/google/apis/safebrowsing_v4/service.rb +4 -4
  722. data/generated/google/apis/safebrowsing_v4.rb +1 -1
  723. data/generated/google/apis/sasportal_v1alpha1/classes.rb +26 -0
  724. data/generated/google/apis/sasportal_v1alpha1/representations.rb +14 -0
  725. data/generated/google/apis/sasportal_v1alpha1/service.rb +644 -56
  726. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  727. data/generated/google/apis/script_v1/classes.rb +88 -111
  728. data/generated/google/apis/script_v1/service.rb +63 -69
  729. data/generated/google/apis/script_v1.rb +1 -1
  730. data/generated/google/apis/searchconsole_v1/classes.rb +388 -0
  731. data/generated/google/apis/searchconsole_v1/representations.rb +162 -0
  732. data/generated/google/apis/searchconsole_v1/service.rb +287 -0
  733. data/generated/google/apis/searchconsole_v1.rb +7 -1
  734. data/generated/google/apis/secretmanager_v1/classes.rb +378 -365
  735. data/generated/google/apis/secretmanager_v1/representations.rb +92 -0
  736. data/generated/google/apis/secretmanager_v1/service.rb +66 -82
  737. data/generated/google/apis/secretmanager_v1.rb +1 -1
  738. data/generated/google/apis/secretmanager_v1beta1/classes.rb +217 -363
  739. data/generated/google/apis/secretmanager_v1beta1/representations.rb +1 -0
  740. data/generated/google/apis/secretmanager_v1beta1/service.rb +66 -82
  741. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  742. data/generated/google/apis/securitycenter_v1/classes.rb +20 -204
  743. data/generated/google/apis/securitycenter_v1/representations.rb +1 -72
  744. data/generated/google/apis/securitycenter_v1.rb +1 -1
  745. data/generated/google/apis/securitycenter_v1beta1/classes.rb +22 -204
  746. data/generated/google/apis/securitycenter_v1beta1/representations.rb +1 -72
  747. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  748. data/generated/google/apis/{securitycenter_v1p1alpha1 → securitycenter_v1beta2}/classes.rb +275 -291
  749. data/generated/google/apis/{securitycenter_v1p1alpha1 → securitycenter_v1beta2}/representations.rb +83 -84
  750. data/generated/google/apis/securitycenter_v1beta2/service.rb +1494 -0
  751. data/generated/google/apis/{securitycenter_v1p1beta1.rb → securitycenter_v1beta2.rb} +6 -6
  752. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +35 -123
  753. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +0 -18
  754. data/generated/google/apis/serviceconsumermanagement_v1/service.rb +32 -30
  755. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  756. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +24 -112
  757. data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +0 -18
  758. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  759. data/generated/google/apis/servicecontrol_v1/classes.rb +601 -642
  760. data/generated/google/apis/servicecontrol_v1/representations.rb +10 -0
  761. data/generated/google/apis/servicecontrol_v1/service.rb +36 -46
  762. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  763. data/generated/google/apis/servicecontrol_v2/classes.rb +343 -325
  764. data/generated/google/apis/servicecontrol_v2/representations.rb +8 -0
  765. data/generated/google/apis/servicecontrol_v2/service.rb +33 -43
  766. data/generated/google/apis/servicecontrol_v2.rb +1 -1
  767. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +221 -333
  768. data/generated/google/apis/servicedirectory_v1beta1/representations.rb +1 -0
  769. data/generated/google/apis/servicedirectory_v1beta1/service.rb +94 -129
  770. data/generated/google/apis/servicedirectory_v1beta1.rb +1 -1
  771. data/generated/google/apis/servicemanagement_v1/classes.rb +1244 -2174
  772. data/generated/google/apis/servicemanagement_v1/representations.rb +0 -31
  773. data/generated/google/apis/servicemanagement_v1/service.rb +141 -228
  774. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  775. data/generated/google/apis/servicenetworking_v1/classes.rb +278 -121
  776. data/generated/google/apis/servicenetworking_v1/representations.rb +115 -15
  777. data/generated/google/apis/servicenetworking_v1/service.rb +118 -2
  778. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  779. data/generated/google/apis/servicenetworking_v1beta/classes.rb +213 -112
  780. data/generated/google/apis/servicenetworking_v1beta/representations.rb +84 -14
  781. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  782. data/generated/google/apis/serviceusage_v1/classes.rb +57 -111
  783. data/generated/google/apis/serviceusage_v1/representations.rb +4 -18
  784. data/generated/google/apis/serviceusage_v1/service.rb +5 -1
  785. data/generated/google/apis/serviceusage_v1.rb +1 -1
  786. data/generated/google/apis/serviceusage_v1beta1/classes.rb +122 -112
  787. data/generated/google/apis/serviceusage_v1beta1/representations.rb +23 -18
  788. data/generated/google/apis/serviceusage_v1beta1/service.rb +36 -0
  789. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  790. data/generated/google/apis/sheets_v4/classes.rb +4029 -5014
  791. data/generated/google/apis/sheets_v4/representations.rb +625 -0
  792. data/generated/google/apis/sheets_v4/service.rb +113 -149
  793. data/generated/google/apis/sheets_v4.rb +1 -1
  794. data/generated/google/apis/site_verification_v1.rb +1 -1
  795. data/generated/google/apis/slides_v1/classes.rb +841 -1114
  796. data/generated/google/apis/slides_v1/service.rb +23 -30
  797. data/generated/google/apis/slides_v1.rb +1 -1
  798. data/generated/google/apis/smartdevicemanagement_v1/classes.rb +273 -0
  799. data/generated/google/apis/smartdevicemanagement_v1/representations.rb +157 -0
  800. data/generated/google/apis/smartdevicemanagement_v1/service.rb +304 -0
  801. data/generated/google/apis/smartdevicemanagement_v1.rb +35 -0
  802. data/generated/google/apis/sourcerepo_v1/classes.rb +250 -400
  803. data/generated/google/apis/sourcerepo_v1/service.rb +40 -49
  804. data/generated/google/apis/sourcerepo_v1.rb +1 -1
  805. data/generated/google/apis/spanner_v1/classes.rb +1553 -2157
  806. data/generated/google/apis/spanner_v1/representations.rb +1 -0
  807. data/generated/google/apis/spanner_v1/service.rb +443 -618
  808. data/generated/google/apis/spanner_v1.rb +1 -1
  809. data/generated/google/apis/speech_v1/classes.rb +174 -220
  810. data/generated/google/apis/speech_v1/service.rb +27 -32
  811. data/generated/google/apis/speech_v1.rb +1 -1
  812. data/generated/google/apis/speech_v1p1beta1/classes.rb +253 -306
  813. data/generated/google/apis/speech_v1p1beta1/service.rb +27 -32
  814. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  815. data/generated/google/apis/speech_v2beta1/classes.rb +66 -76
  816. data/generated/google/apis/speech_v2beta1/service.rb +10 -12
  817. data/generated/google/apis/speech_v2beta1.rb +1 -1
  818. data/generated/google/apis/{sql_v1beta4 → sqladmin_v1beta4}/classes.rb +537 -452
  819. data/generated/google/apis/{sql_v1beta4 → sqladmin_v1beta4}/representations.rb +142 -87
  820. data/generated/google/apis/{sql_v1beta4 → sqladmin_v1beta4}/service.rb +295 -300
  821. data/generated/google/apis/{sql_v1beta4.rb → sqladmin_v1beta4.rb} +5 -5
  822. data/generated/google/apis/storage_v1/classes.rb +10 -17
  823. data/generated/google/apis/storage_v1/representations.rb +2 -3
  824. data/generated/google/apis/storage_v1/service.rb +3 -2
  825. data/generated/google/apis/storage_v1.rb +1 -1
  826. data/generated/google/apis/storagetransfer_v1/classes.rb +301 -349
  827. data/generated/google/apis/storagetransfer_v1/representations.rb +13 -0
  828. data/generated/google/apis/storagetransfer_v1/service.rb +53 -72
  829. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  830. data/generated/google/apis/streetviewpublish_v1/classes.rb +110 -152
  831. data/generated/google/apis/streetviewpublish_v1/service.rb +94 -177
  832. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  833. data/generated/google/apis/sts_v1/classes.rb +121 -0
  834. data/generated/google/apis/sts_v1/representations.rb +59 -0
  835. data/generated/google/apis/sts_v1/service.rb +90 -0
  836. data/generated/google/apis/sts_v1.rb +32 -0
  837. data/generated/google/apis/sts_v1beta/classes.rb +191 -0
  838. data/generated/google/apis/sts_v1beta/representations.rb +61 -0
  839. data/generated/google/apis/sts_v1beta/service.rb +92 -0
  840. data/generated/google/apis/sts_v1beta.rb +32 -0
  841. data/generated/google/apis/tagmanager_v1/service.rb +2 -2
  842. data/generated/google/apis/tagmanager_v1.rb +1 -1
  843. data/generated/google/apis/tagmanager_v2/classes.rb +12 -0
  844. data/generated/google/apis/tagmanager_v2/representations.rb +3 -0
  845. data/generated/google/apis/tagmanager_v2/service.rb +2 -2
  846. data/generated/google/apis/tagmanager_v2.rb +1 -1
  847. data/generated/google/apis/tasks_v1/classes.rb +21 -22
  848. data/generated/google/apis/tasks_v1/service.rb +19 -19
  849. data/generated/google/apis/tasks_v1.rb +1 -1
  850. data/generated/google/apis/testing_v1/classes.rb +384 -390
  851. data/generated/google/apis/testing_v1/representations.rb +23 -0
  852. data/generated/google/apis/testing_v1/service.rb +22 -28
  853. data/generated/google/apis/testing_v1.rb +1 -1
  854. data/generated/google/apis/texttospeech_v1/classes.rb +51 -57
  855. data/generated/google/apis/texttospeech_v1/service.rb +9 -10
  856. data/generated/google/apis/texttospeech_v1.rb +1 -1
  857. data/generated/google/apis/texttospeech_v1beta1/classes.rb +96 -57
  858. data/generated/google/apis/texttospeech_v1beta1/representations.rb +19 -0
  859. data/generated/google/apis/texttospeech_v1beta1/service.rb +9 -10
  860. data/generated/google/apis/texttospeech_v1beta1.rb +1 -1
  861. data/generated/google/apis/toolresults_v1beta3/classes.rb +20 -0
  862. data/generated/google/apis/toolresults_v1beta3/representations.rb +13 -0
  863. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  864. data/generated/google/apis/tpu_v1/classes.rb +57 -3
  865. data/generated/google/apis/tpu_v1/representations.rb +19 -0
  866. data/generated/google/apis/tpu_v1/service.rb +8 -8
  867. data/generated/google/apis/tpu_v1.rb +1 -1
  868. data/generated/google/apis/tpu_v1alpha1/classes.rb +57 -3
  869. data/generated/google/apis/tpu_v1alpha1/representations.rb +19 -0
  870. data/generated/google/apis/tpu_v1alpha1/service.rb +8 -8
  871. data/generated/google/apis/tpu_v1alpha1.rb +1 -1
  872. data/generated/google/apis/trafficdirector_v2/classes.rb +1347 -0
  873. data/generated/google/apis/trafficdirector_v2/representations.rb +620 -0
  874. data/generated/google/apis/trafficdirector_v2/service.rb +89 -0
  875. data/generated/google/apis/trafficdirector_v2.rb +34 -0
  876. data/generated/google/apis/translate_v3/classes.rb +151 -177
  877. data/generated/google/apis/translate_v3/service.rb +122 -151
  878. data/generated/google/apis/translate_v3.rb +1 -1
  879. data/generated/google/apis/translate_v3beta1/classes.rb +150 -170
  880. data/generated/google/apis/translate_v3beta1/service.rb +122 -151
  881. data/generated/google/apis/translate_v3beta1.rb +1 -1
  882. data/generated/google/apis/vault_v1/classes.rb +413 -103
  883. data/generated/google/apis/vault_v1/representations.rb +162 -0
  884. data/generated/google/apis/vault_v1/service.rb +182 -37
  885. data/generated/google/apis/vault_v1.rb +1 -1
  886. data/generated/google/apis/vectortile_v1/classes.rb +185 -267
  887. data/generated/google/apis/vectortile_v1/service.rb +75 -88
  888. data/generated/google/apis/vectortile_v1.rb +1 -1
  889. data/generated/google/apis/verifiedaccess_v1/classes.rb +20 -27
  890. data/generated/google/apis/verifiedaccess_v1.rb +1 -1
  891. data/generated/google/apis/videointelligence_v1/classes.rb +1493 -935
  892. data/generated/google/apis/videointelligence_v1/representations.rb +402 -2
  893. data/generated/google/apis/videointelligence_v1/service.rb +38 -77
  894. data/generated/google/apis/videointelligence_v1.rb +1 -1
  895. data/generated/google/apis/videointelligence_v1beta2/classes.rb +1488 -928
  896. data/generated/google/apis/videointelligence_v1beta2/representations.rb +402 -2
  897. data/generated/google/apis/videointelligence_v1beta2/service.rb +4 -4
  898. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  899. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +1482 -922
  900. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +402 -2
  901. data/generated/google/apis/videointelligence_v1p1beta1/service.rb +4 -4
  902. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  903. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +1485 -925
  904. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +402 -2
  905. data/generated/google/apis/videointelligence_v1p2beta1/service.rb +4 -4
  906. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  907. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +1410 -937
  908. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +368 -2
  909. data/generated/google/apis/videointelligence_v1p3beta1/service.rb +4 -4
  910. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  911. data/generated/google/apis/vision_v1/classes.rb +16 -16
  912. data/generated/google/apis/vision_v1.rb +1 -1
  913. data/generated/google/apis/vision_v1p1beta1/classes.rb +16 -16
  914. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  915. data/generated/google/apis/vision_v1p2beta1/classes.rb +16 -16
  916. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  917. data/generated/google/apis/webfonts_v1/classes.rb +1 -2
  918. data/generated/google/apis/webfonts_v1/service.rb +2 -4
  919. data/generated/google/apis/webfonts_v1.rb +2 -3
  920. data/generated/google/apis/websecurityscanner_v1.rb +1 -1
  921. data/generated/google/apis/websecurityscanner_v1alpha.rb +1 -1
  922. data/generated/google/apis/websecurityscanner_v1beta.rb +1 -1
  923. data/generated/google/apis/workflowexecutions_v1beta/classes.rb +155 -0
  924. data/generated/google/apis/workflowexecutions_v1beta/representations.rb +88 -0
  925. data/generated/google/apis/{securitycenter_v1p1alpha1 → workflowexecutions_v1beta}/service.rb +73 -69
  926. data/generated/google/apis/workflowexecutions_v1beta.rb +34 -0
  927. data/generated/google/apis/workflows_v1beta/classes.rb +406 -0
  928. data/generated/google/apis/workflows_v1beta/representations.rb +173 -0
  929. data/generated/google/apis/workflows_v1beta/service.rb +438 -0
  930. data/generated/google/apis/workflows_v1beta.rb +35 -0
  931. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  932. data/generated/google/apis/youtube_v3/classes.rb +0 -586
  933. data/generated/google/apis/youtube_v3/representations.rb +0 -269
  934. data/generated/google/apis/youtube_v3/service.rb +3 -120
  935. data/generated/google/apis/youtube_v3.rb +1 -1
  936. data/google-api-client.gemspec +25 -24
  937. data/lib/google/apis/core/api_command.rb +1 -0
  938. data/lib/google/apis/core/http_command.rb +2 -1
  939. data/lib/google/apis/options.rb +8 -5
  940. data/lib/google/apis/version.rb +1 -1
  941. data/synth.py +40 -0
  942. metadata +134 -41
  943. data/generated/google/apis/accessapproval_v1beta1/classes.rb +0 -417
  944. data/generated/google/apis/accessapproval_v1beta1/representations.rb +0 -203
  945. data/generated/google/apis/accessapproval_v1beta1/service.rb +0 -857
  946. data/generated/google/apis/appsactivity_v1/classes.rb +0 -415
  947. data/generated/google/apis/appsactivity_v1/representations.rb +0 -209
  948. data/generated/google/apis/appsactivity_v1/service.rb +0 -126
  949. data/generated/google/apis/dns_v2beta1/classes.rb +0 -1447
  950. data/generated/google/apis/dns_v2beta1/representations.rb +0 -588
  951. data/generated/google/apis/dns_v2beta1/service.rb +0 -928
  952. data/generated/google/apis/dns_v2beta1.rb +0 -43
  953. data/generated/google/apis/memcache_v1/classes.rb +0 -1157
  954. data/generated/google/apis/plus_v1/classes.rb +0 -2094
  955. data/generated/google/apis/plus_v1/representations.rb +0 -907
  956. data/generated/google/apis/plus_v1/service.rb +0 -451
  957. data/generated/google/apis/plus_v1.rb +0 -43
  958. data/generated/google/apis/securitycenter_v1p1beta1/classes.rb +0 -2059
  959. data/generated/google/apis/securitycenter_v1p1beta1/representations.rb +0 -789
  960. data/generated/google/apis/securitycenter_v1p1beta1/service.rb +0 -1243
  961. data/generated/google/apis/storage_v1beta2/classes.rb +0 -1047
  962. data/generated/google/apis/storage_v1beta2/representations.rb +0 -425
  963. data/generated/google/apis/storage_v1beta2/service.rb +0 -1667
  964. data/generated/google/apis/storage_v1beta2.rb +0 -40
@@ -22,15 +22,100 @@ module Google
22
22
  module Apis
23
23
  module CloudassetV1
24
24
 
25
- # An asset in Google Cloud. An asset can be any resource in the Google Cloud
26
- # [resource
27
- # hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-
28
- # resource-hierarchy),
29
- # a resource outside the Google Cloud resource hierarchy (such as Google
30
- # Kubernetes Engine clusters and objects), or a policy (e.g. Cloud IAM policy).
31
- # See [Supported asset
32
- # types](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
33
- # for more information.
25
+ # Specifies roles and/or permissions to analyze, to determine both the
26
+ # identities possessing them and the resources they control. If multiple values
27
+ # are specified, results will include roles or permissions matching any of them.
28
+ # The total number of roles and permissions should be equal or less than 10.
29
+ class AccessSelector
30
+ include Google::Apis::Core::Hashable
31
+
32
+ # Optional. The permissions to appear in result.
33
+ # Corresponds to the JSON property `permissions`
34
+ # @return [Array<String>]
35
+ attr_accessor :permissions
36
+
37
+ # Optional. The roles to appear in result.
38
+ # Corresponds to the JSON property `roles`
39
+ # @return [Array<String>]
40
+ attr_accessor :roles
41
+
42
+ def initialize(**args)
43
+ update!(**args)
44
+ end
45
+
46
+ # Update properties of this object
47
+ def update!(**args)
48
+ @permissions = args[:permissions] if args.key?(:permissions)
49
+ @roles = args[:roles] if args.key?(:roles)
50
+ end
51
+ end
52
+
53
+ # A request message for AssetService.AnalyzeIamPolicyLongrunning.
54
+ class AnalyzeIamPolicyLongrunningRequest
55
+ include Google::Apis::Core::Hashable
56
+
57
+ # IAM policy analysis query message.
58
+ # Corresponds to the JSON property `analysisQuery`
59
+ # @return [Google::Apis::CloudassetV1::IamPolicyAnalysisQuery]
60
+ attr_accessor :analysis_query
61
+
62
+ # Output configuration for export IAM policy analysis destination.
63
+ # Corresponds to the JSON property `outputConfig`
64
+ # @return [Google::Apis::CloudassetV1::IamPolicyAnalysisOutputConfig]
65
+ attr_accessor :output_config
66
+
67
+ def initialize(**args)
68
+ update!(**args)
69
+ end
70
+
71
+ # Update properties of this object
72
+ def update!(**args)
73
+ @analysis_query = args[:analysis_query] if args.key?(:analysis_query)
74
+ @output_config = args[:output_config] if args.key?(:output_config)
75
+ end
76
+ end
77
+
78
+ # A response message for AssetService.AnalyzeIamPolicy.
79
+ class AnalyzeIamPolicyResponse
80
+ include Google::Apis::Core::Hashable
81
+
82
+ # Represents whether all entries in the main_analysis and
83
+ # service_account_impersonation_analysis have been fully explored to answer the
84
+ # query in the request.
85
+ # Corresponds to the JSON property `fullyExplored`
86
+ # @return [Boolean]
87
+ attr_accessor :fully_explored
88
+ alias_method :fully_explored?, :fully_explored
89
+
90
+ # An analysis message to group the query and results.
91
+ # Corresponds to the JSON property `mainAnalysis`
92
+ # @return [Google::Apis::CloudassetV1::IamPolicyAnalysis]
93
+ attr_accessor :main_analysis
94
+
95
+ # The service account impersonation analysis if AnalyzeIamPolicyRequest.
96
+ # analyze_service_account_impersonation is enabled.
97
+ # Corresponds to the JSON property `serviceAccountImpersonationAnalysis`
98
+ # @return [Array<Google::Apis::CloudassetV1::IamPolicyAnalysis>]
99
+ attr_accessor :service_account_impersonation_analysis
100
+
101
+ def initialize(**args)
102
+ update!(**args)
103
+ end
104
+
105
+ # Update properties of this object
106
+ def update!(**args)
107
+ @fully_explored = args[:fully_explored] if args.key?(:fully_explored)
108
+ @main_analysis = args[:main_analysis] if args.key?(:main_analysis)
109
+ @service_account_impersonation_analysis = args[:service_account_impersonation_analysis] if args.key?(:service_account_impersonation_analysis)
110
+ end
111
+ end
112
+
113
+ # An asset in Google Cloud. An asset can be any resource in the Google Cloud [
114
+ # resource hierarchy](https://cloud.google.com/resource-manager/docs/cloud-
115
+ # platform-resource-hierarchy), a resource outside the Google Cloud resource
116
+ # hierarchy (such as Google Kubernetes Engine clusters and objects), or a policy
117
+ # (e.g. Cloud IAM policy). See [Supported asset types](https://cloud.google.com/
118
+ # asset-inventory/docs/supported-asset-types) for more information.
34
119
  class Asset
35
120
  include Google::Apis::Core::Hashable
36
121
 
@@ -42,114 +127,74 @@ module Google
42
127
  attr_accessor :access_level
43
128
 
44
129
  # `AccessPolicy` is a container for `AccessLevels` (which define the necessary
45
- # attributes to use Google Cloud services) and `ServicePerimeters` (which
46
- # define regions of services able to freely pass data within a perimeter). An
47
- # access policy is globally visible within an organization, and the
48
- # restrictions it specifies apply to all projects within an organization.
130
+ # attributes to use Google Cloud services) and `ServicePerimeters` (which define
131
+ # regions of services able to freely pass data within a perimeter). An access
132
+ # policy is globally visible within an organization, and the restrictions it
133
+ # specifies apply to all projects within an organization.
49
134
  # Corresponds to the JSON property `accessPolicy`
50
135
  # @return [Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1AccessPolicy]
51
136
  attr_accessor :access_policy
52
137
 
53
- # The ancestry path of an asset in Google Cloud [resource
54
- # hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-
55
- # resource-hierarchy),
56
- # represented as a list of relative resource names. An ancestry path starts
57
- # with the closest ancestor in the hierarchy and ends at root. If the asset
58
- # is a project, folder, or organization, the ancestry path starts from the
59
- # asset itself.
60
- # Example: `["projects/123456789", "folders/5432", "organizations/1234"]`
138
+ # The ancestry path of an asset in Google Cloud [resource hierarchy](https://
139
+ # cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy),
140
+ # represented as a list of relative resource names. An ancestry path starts with
141
+ # the closest ancestor in the hierarchy and ends at root. If the asset is a
142
+ # project, folder, or organization, the ancestry path starts from the asset
143
+ # itself. Example: `["projects/123456789", "folders/5432", "organizations/1234"]`
61
144
  # Corresponds to the JSON property `ancestors`
62
145
  # @return [Array<String>]
63
146
  attr_accessor :ancestors
64
147
 
65
- # The type of the asset. Example: `compute.googleapis.com/Disk`
66
- # See [Supported asset
67
- # types](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
68
- # for more information.
148
+ # The type of the asset. Example: `compute.googleapis.com/Disk` See [Supported
149
+ # asset types](https://cloud.google.com/asset-inventory/docs/supported-asset-
150
+ # types) for more information.
69
151
  # Corresponds to the JSON property `assetType`
70
152
  # @return [String]
71
153
  attr_accessor :asset_type
72
154
 
73
155
  # An Identity and Access Management (IAM) policy, which specifies access
74
- # controls for Google Cloud resources.
75
- # A `Policy` is a collection of `bindings`. A `binding` binds one or more
76
- # `members` to a single `role`. Members can be user accounts, service accounts,
77
- # Google groups, and domains (such as G Suite). A `role` is a named list of
78
- # permissions; each `role` can be an IAM predefined role or a user-created
79
- # custom role.
80
- # For some types of Google Cloud resources, a `binding` can also specify a
81
- # `condition`, which is a logical expression that allows access to a resource
82
- # only if the expression evaluates to `true`. A condition can add constraints
83
- # based on attributes of the request, the resource, or both. To learn which
84
- # resources support conditions in their IAM policies, see the
85
- # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
86
- # policies).
87
- # **JSON example:**
88
- # `
89
- # "bindings": [
90
- # `
91
- # "role": "roles/resourcemanager.organizationAdmin",
92
- # "members": [
93
- # "user:mike@example.com",
94
- # "group:admins@example.com",
95
- # "domain:google.com",
96
- # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
97
- # ]
98
- # `,
99
- # `
100
- # "role": "roles/resourcemanager.organizationViewer",
101
- # "members": [
102
- # "user:eve@example.com"
103
- # ],
104
- # "condition": `
105
- # "title": "expirable access",
106
- # "description": "Does not grant access after Sep 2020",
107
- # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')
108
- # ",
109
- # `
110
- # `
111
- # ],
112
- # "etag": "BwWWja0YfJA=",
113
- # "version": 3
114
- # `
115
- # **YAML example:**
116
- # bindings:
117
- # - members:
118
- # - user:mike@example.com
119
- # - group:admins@example.com
120
- # - domain:google.com
121
- # - serviceAccount:my-project-id@appspot.gserviceaccount.com
122
- # role: roles/resourcemanager.organizationAdmin
123
- # - members:
124
- # - user:eve@example.com
125
- # role: roles/resourcemanager.organizationViewer
126
- # condition:
127
- # title: expirable access
128
- # description: Does not grant access after Sep 2020
129
- # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
130
- # - etag: BwWWja0YfJA=
131
- # - version: 3
132
- # For a description of IAM and its features, see the
133
- # [IAM documentation](https://cloud.google.com/iam/docs/).
156
+ # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
157
+ # A `binding` binds one or more `members` to a single `role`. Members can be
158
+ # user accounts, service accounts, Google groups, and domains (such as G Suite).
159
+ # A `role` is a named list of permissions; each `role` can be an IAM predefined
160
+ # role or a user-created custom role. For some types of Google Cloud resources,
161
+ # a `binding` can also specify a `condition`, which is a logical expression that
162
+ # allows access to a resource only if the expression evaluates to `true`. A
163
+ # condition can add constraints based on attributes of the request, the resource,
164
+ # or both. To learn which resources support conditions in their IAM policies,
165
+ # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
166
+ # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
167
+ # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
168
+ # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
169
+ # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
170
+ # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
171
+ # title": "expirable access", "description": "Does not grant access after Sep
172
+ # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
173
+ # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
174
+ # members: - user:mike@example.com - group:admins@example.com - domain:google.
175
+ # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
176
+ # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
177
+ # roles/resourcemanager.organizationViewer condition: title: expirable access
178
+ # description: Does not grant access after Sep 2020 expression: request.time <
179
+ # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
180
+ # description of IAM and its features, see the [IAM documentation](https://cloud.
181
+ # google.com/iam/docs/).
134
182
  # Corresponds to the JSON property `iamPolicy`
135
183
  # @return [Google::Apis::CloudassetV1::Policy]
136
184
  attr_accessor :iam_policy
137
185
 
138
- # The full name of the asset. Example:
139
- # `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/
140
- # instance1`
141
- # See [Resource
142
- # names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
143
- # for more information.
186
+ # The full name of the asset. Example: `//compute.googleapis.com/projects/
187
+ # my_project_123/zones/zone1/instances/instance1` See [Resource names](https://
188
+ # cloud.google.com/apis/design/resource_names#full_resource_name) for more
189
+ # information.
144
190
  # Corresponds to the JSON property `name`
145
191
  # @return [String]
146
192
  attr_accessor :name
147
193
 
148
- # A representation of an [organization
149
- # policy](https://cloud.google.com/resource-manager/docs/organization-policy/
150
- # overview#organization_policy).
151
- # There can be more than one organization policy with different constraints
152
- # set on a given resource.
194
+ # A representation of an [organization policy](https://cloud.google.com/resource-
195
+ # manager/docs/organization-policy/overview#organization_policy). There can be
196
+ # more than one organization policy with different constraints set on a given
197
+ # resource.
153
198
  # Corresponds to the JSON property `orgPolicy`
154
199
  # @return [Array<Google::Apis::CloudassetV1::GoogleCloudOrgpolicyV1Policy>]
155
200
  attr_accessor :org_policy
@@ -160,21 +205,20 @@ module Google
160
205
  attr_accessor :resource
161
206
 
162
207
  # `ServicePerimeter` describes a set of Google Cloud resources which can freely
163
- # import and export data amongst themselves, but not export outside of the
164
- # `ServicePerimeter`. If a request with a source within this `ServicePerimeter`
208
+ # import and export data amongst themselves, but not export outside of the `
209
+ # ServicePerimeter`. If a request with a source within this `ServicePerimeter`
165
210
  # has a target outside of the `ServicePerimeter`, the request will be blocked.
166
211
  # Otherwise the request is allowed. There are two types of Service Perimeter -
167
- # Regular and Bridge. Regular Service Perimeters cannot overlap, a single
168
- # Google Cloud project can only belong to a single regular Service Perimeter.
169
- # Service Perimeter Bridges can contain only Google Cloud projects as members,
170
- # a single Google Cloud project may belong to multiple Service Perimeter
171
- # Bridges.
212
+ # Regular and Bridge. Regular Service Perimeters cannot overlap, a single Google
213
+ # Cloud project can only belong to a single regular Service Perimeter. Service
214
+ # Perimeter Bridges can contain only Google Cloud projects as members, a single
215
+ # Google Cloud project may belong to multiple Service Perimeter Bridges.
172
216
  # Corresponds to the JSON property `servicePerimeter`
173
217
  # @return [Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1ServicePerimeter]
174
218
  attr_accessor :service_perimeter
175
219
 
176
- # The last update timestamp of an asset. update_time is updated when
177
- # create/update/delete operation is performed.
220
+ # The last update timestamp of an asset. update_time is updated when create/
221
+ # update/delete operation is performed.
178
222
  # Corresponds to the JSON property `updateTime`
179
223
  # @return [String]
180
224
  attr_accessor :update_time
@@ -198,53 +242,21 @@ module Google
198
242
  end
199
243
  end
200
244
 
201
- # Specifies the audit configuration for a service.
202
- # The configuration determines which permission types are logged, and what
203
- # identities, if any, are exempted from logging.
204
- # An AuditConfig must have one or more AuditLogConfigs.
205
- # If there are AuditConfigs for both `allServices` and a specific service,
206
- # the union of the two AuditConfigs is used for that service: the log_types
207
- # specified in each AuditConfig are enabled, and the exempted_members in each
208
- # AuditLogConfig are exempted.
209
- # Example Policy with multiple AuditConfigs:
210
- # `
211
- # "audit_configs": [
212
- # `
213
- # "service": "allServices",
214
- # "audit_log_configs": [
215
- # `
216
- # "log_type": "DATA_READ",
217
- # "exempted_members": [
218
- # "user:jose@example.com"
219
- # ]
220
- # `,
221
- # `
222
- # "log_type": "DATA_WRITE"
223
- # `,
224
- # `
225
- # "log_type": "ADMIN_READ"
226
- # `
227
- # ]
228
- # `,
229
- # `
230
- # "service": "sampleservice.googleapis.com",
231
- # "audit_log_configs": [
232
- # `
233
- # "log_type": "DATA_READ"
234
- # `,
235
- # `
236
- # "log_type": "DATA_WRITE",
237
- # "exempted_members": [
238
- # "user:aliya@example.com"
239
- # ]
240
- # `
241
- # ]
242
- # `
243
- # ]
244
- # `
245
- # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
246
- # logging. It also exempts jose@example.com from DATA_READ logging, and
247
- # aliya@example.com from DATA_WRITE logging.
245
+ # Specifies the audit configuration for a service. The configuration determines
246
+ # which permission types are logged, and what identities, if any, are exempted
247
+ # from logging. An AuditConfig must have one or more AuditLogConfigs. If there
248
+ # are AuditConfigs for both `allServices` and a specific service, the union of
249
+ # the two AuditConfigs is used for that service: the log_types specified in each
250
+ # AuditConfig are enabled, and the exempted_members in each AuditLogConfig are
251
+ # exempted. Example Policy with multiple AuditConfigs: ` "audit_configs": [ ` "
252
+ # service": "allServices", "audit_log_configs": [ ` "log_type": "DATA_READ", "
253
+ # exempted_members": [ "user:jose@example.com" ] `, ` "log_type": "DATA_WRITE" `,
254
+ # ` "log_type": "ADMIN_READ" ` ] `, ` "service": "sampleservice.googleapis.com",
255
+ # "audit_log_configs": [ ` "log_type": "DATA_READ" `, ` "log_type": "DATA_WRITE"
256
+ # , "exempted_members": [ "user:aliya@example.com" ] ` ] ` ] ` For sampleservice,
257
+ # this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also
258
+ # exempts jose@example.com from DATA_READ logging, and aliya@example.com from
259
+ # DATA_WRITE logging.
248
260
  class AuditConfig
249
261
  include Google::Apis::Core::Hashable
250
262
 
@@ -253,9 +265,9 @@ module Google
253
265
  # @return [Array<Google::Apis::CloudassetV1::AuditLogConfig>]
254
266
  attr_accessor :audit_log_configs
255
267
 
256
- # Specifies a service that will be enabled for audit logging.
257
- # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
258
- # `allServices` is a special value that covers all services.
268
+ # Specifies a service that will be enabled for audit logging. For example, `
269
+ # storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special
270
+ # value that covers all services.
259
271
  # Corresponds to the JSON property `service`
260
272
  # @return [String]
261
273
  attr_accessor :service
@@ -271,28 +283,15 @@ module Google
271
283
  end
272
284
  end
273
285
 
274
- # Provides the configuration for logging a type of permissions.
275
- # Example:
276
- # `
277
- # "audit_log_configs": [
278
- # `
279
- # "log_type": "DATA_READ",
280
- # "exempted_members": [
281
- # "user:jose@example.com"
282
- # ]
283
- # `,
284
- # `
285
- # "log_type": "DATA_WRITE"
286
- # `
287
- # ]
288
- # `
289
- # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
290
- # jose@example.com from DATA_READ logging.
286
+ # Provides the configuration for logging a type of permissions. Example: ` "
287
+ # audit_log_configs": [ ` "log_type": "DATA_READ", "exempted_members": [ "user:
288
+ # jose@example.com" ] `, ` "log_type": "DATA_WRITE" ` ] ` This enables '
289
+ # DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from
290
+ # DATA_READ logging.
291
291
  class AuditLogConfig
292
292
  include Google::Apis::Core::Hashable
293
293
 
294
- # Specifies the identities that do not cause logging for this type of
295
- # permission.
294
+ # Specifies the identities that do not cause logging for this type of permission.
296
295
  # Follows the same format of Binding.members.
297
296
  # Corresponds to the JSON property `exemptedMembers`
298
297
  # @return [Array<String>]
@@ -337,26 +336,55 @@ module Google
337
336
  class BigQueryDestination
338
337
  include Google::Apis::Core::Hashable
339
338
 
340
- # Required. The BigQuery dataset in format
341
- # "projects/projectId/datasets/datasetId", to which the snapshot result
342
- # should be exported. If this dataset does not exist, the export call returns
343
- # an INVALID_ARGUMENT error.
339
+ # Required. The BigQuery dataset in format "projects/projectId/datasets/
340
+ # datasetId", to which the snapshot result should be exported. If this dataset
341
+ # does not exist, the export call returns an INVALID_ARGUMENT error.
344
342
  # Corresponds to the JSON property `dataset`
345
343
  # @return [String]
346
344
  attr_accessor :dataset
347
345
 
348
- # If the destination table already exists and this flag is `TRUE`, the
349
- # table will be overwritten by the contents of assets snapshot. If the flag
350
- # is `FALSE` or unset and the destination table already exists, the export
351
- # call returns an INVALID_ARGUMEMT error.
346
+ # If the destination table already exists and this flag is `TRUE`, the table
347
+ # will be overwritten by the contents of assets snapshot. If the flag is `FALSE`
348
+ # or unset and the destination table already exists, the export call returns an
349
+ # INVALID_ARGUMEMT error.
352
350
  # Corresponds to the JSON property `force`
353
351
  # @return [Boolean]
354
352
  attr_accessor :force
355
353
  alias_method :force?, :force
356
354
 
357
- # Required. The BigQuery table to which the snapshot result should be
358
- # written. If this table does not exist, a new table with the given name
359
- # will be created.
355
+ # Specifications of BigQuery partitioned table as export destination.
356
+ # Corresponds to the JSON property `partitionSpec`
357
+ # @return [Google::Apis::CloudassetV1::PartitionSpec]
358
+ attr_accessor :partition_spec
359
+
360
+ # If this flag is `TRUE`, the snapshot results will be written to one or
361
+ # multiple tables, each of which contains results of one asset type. The [force]
362
+ # and [partition_spec] fields will apply to each of them. Field [table] will be
363
+ # concatenated with "_" and the asset type names (see https://cloud.google.com/
364
+ # asset-inventory/docs/supported-asset-types for supported asset types) to
365
+ # construct per-asset-type table names, in which all non-alphanumeric characters
366
+ # like "." and "/" will be substituted by "_". Example: if field [table] is "
367
+ # mytable" and snapshot results contain "storage.googleapis.com/Bucket" assets,
368
+ # the corresponding table name will be "mytable_storage_googleapis_com_Bucket".
369
+ # If any of these tables does not exist, a new table with the concatenated name
370
+ # will be created. When [content_type] in the ExportAssetsRequest is `RESOURCE`,
371
+ # the schema of each table will include RECORD-type columns mapped to the nested
372
+ # fields in the Asset.resource.data field of that asset type (up to the 15
373
+ # nested level BigQuery supports (https://cloud.google.com/bigquery/docs/nested-
374
+ # repeated#limitations)). The fields in >15 nested levels will be stored in JSON
375
+ # format string as a child column of its parent RECORD column. If error occurs
376
+ # when exporting to any table, the whole export call will return an error but
377
+ # the export results that already succeed will persist. Example: if exporting to
378
+ # table_type_A succeeds when exporting to table_type_B fails during one export
379
+ # call, the results in table_type_A will persist and there will not be partial
380
+ # results persisting in a table.
381
+ # Corresponds to the JSON property `separateTablesPerAssetType`
382
+ # @return [Boolean]
383
+ attr_accessor :separate_tables_per_asset_type
384
+ alias_method :separate_tables_per_asset_type?, :separate_tables_per_asset_type
385
+
386
+ # Required. The BigQuery table to which the snapshot result should be written.
387
+ # If this table does not exist, a new table with the given name will be created.
360
388
  # Corresponds to the JSON property `table`
361
389
  # @return [String]
362
390
  attr_accessor :table
@@ -369,6 +397,8 @@ module Google
369
397
  def update!(**args)
370
398
  @dataset = args[:dataset] if args.key?(:dataset)
371
399
  @force = args[:force] if args.key?(:force)
400
+ @partition_spec = args[:partition_spec] if args.key?(:partition_spec)
401
+ @separate_tables_per_asset_type = args[:separate_tables_per_asset_type] if args.key?(:separate_tables_per_asset_type)
372
402
  @table = args[:table] if args.key?(:table)
373
403
  end
374
404
  end
@@ -377,69 +407,57 @@ module Google
377
407
  class Binding
378
408
  include Google::Apis::Core::Hashable
379
409
 
380
- # Represents a textual expression in the Common Expression Language (CEL)
381
- # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
382
- # are documented at https://github.com/google/cel-spec.
383
- # Example (Comparison):
384
- # title: "Summary size limit"
385
- # description: "Determines if a summary is less than 100 chars"
386
- # expression: "document.summary.size() < 100"
387
- # Example (Equality):
388
- # title: "Requestor is owner"
389
- # description: "Determines if requestor is the document owner"
390
- # expression: "document.owner == request.auth.claims.email"
391
- # Example (Logic):
392
- # title: "Public documents"
393
- # description: "Determine whether the document should be publicly visible"
394
- # expression: "document.type != 'private' && document.type != 'internal'"
395
- # Example (Data Manipulation):
396
- # title: "Notification string"
397
- # description: "Create a notification string with a timestamp."
398
- # expression: "'New message received at ' + string(document.create_time)"
399
- # The exact variables and functions that may be referenced within an expression
400
- # are determined by the service that evaluates it. See the service
401
- # documentation for additional information.
410
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
411
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
412
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
413
+ # "Summary size limit" description: "Determines if a summary is less than 100
414
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
415
+ # Requestor is owner" description: "Determines if requestor is the document
416
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
417
+ # Logic): title: "Public documents" description: "Determine whether the document
418
+ # should be publicly visible" expression: "document.type != 'private' &&
419
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
420
+ # string" description: "Create a notification string with a timestamp."
421
+ # expression: "'New message received at ' + string(document.create_time)" The
422
+ # exact variables and functions that may be referenced within an expression are
423
+ # determined by the service that evaluates it. See the service documentation for
424
+ # additional information.
402
425
  # Corresponds to the JSON property `condition`
403
426
  # @return [Google::Apis::CloudassetV1::Expr]
404
427
  attr_accessor :condition
405
428
 
406
- # Specifies the identities requesting access for a Cloud Platform resource.
407
- # `members` can have the following values:
408
- # * `allUsers`: A special identifier that represents anyone who is
409
- # on the internet; with or without a Google account.
410
- # * `allAuthenticatedUsers`: A special identifier that represents anyone
411
- # who is authenticated with a Google account or a service account.
412
- # * `user:`emailid``: An email address that represents a specific Google
413
- # account. For example, `alice@example.com` .
414
- # * `serviceAccount:`emailid``: An email address that represents a service
415
- # account. For example, `my-other-app@appspot.gserviceaccount.com`.
416
- # * `group:`emailid``: An email address that represents a Google group.
417
- # For example, `admins@example.com`.
418
- # * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique
419
- # identifier) representing a user that has been recently deleted. For
420
- # example, `alice@example.com?uid=123456789012345678901`. If the user is
421
- # recovered, this value reverts to `user:`emailid`` and the recovered user
422
- # retains the role in the binding.
423
- # * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus
424
- # unique identifier) representing a service account that has been recently
425
- # deleted. For example,
426
- # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
427
- # If the service account is undeleted, this value reverts to
428
- # `serviceAccount:`emailid`` and the undeleted service account retains the
429
- # role in the binding.
430
- # * `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
431
- # identifier) representing a Google group that has been recently
432
- # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
433
- # the group is recovered, this value reverts to `group:`emailid`` and the
434
- # recovered group retains the role in the binding.
435
- # * `domain:`domain``: The G Suite domain (primary) that represents all the
436
- # users of that domain. For example, `google.com` or `example.com`.
429
+ # Specifies the identities requesting access for a Cloud Platform resource. `
430
+ # members` can have the following values: * `allUsers`: A special identifier
431
+ # that represents anyone who is on the internet; with or without a Google
432
+ # account. * `allAuthenticatedUsers`: A special identifier that represents
433
+ # anyone who is authenticated with a Google account or a service account. * `
434
+ # user:`emailid``: An email address that represents a specific Google account.
435
+ # For example, `alice@example.com` . * `serviceAccount:`emailid``: An email
436
+ # address that represents a service account. For example, `my-other-app@appspot.
437
+ # gserviceaccount.com`. * `group:`emailid``: An email address that represents a
438
+ # Google group. For example, `admins@example.com`. * `deleted:user:`emailid`?uid=
439
+ # `uniqueid``: An email address (plus unique identifier) representing a user
440
+ # that has been recently deleted. For example, `alice@example.com?uid=
441
+ # 123456789012345678901`. If the user is recovered, this value reverts to `user:`
442
+ # emailid`` and the recovered user retains the role in the binding. * `deleted:
443
+ # serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus unique
444
+ # identifier) representing a service account that has been recently deleted. For
445
+ # example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
446
+ # If the service account is undeleted, this value reverts to `serviceAccount:`
447
+ # emailid`` and the undeleted service account retains the role in the binding. *
448
+ # `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
449
+ # identifier) representing a Google group that has been recently deleted. For
450
+ # example, `admins@example.com?uid=123456789012345678901`. If the group is
451
+ # recovered, this value reverts to `group:`emailid`` and the recovered group
452
+ # retains the role in the binding. * `domain:`domain``: The G Suite domain (
453
+ # primary) that represents all the users of that domain. For example, `google.
454
+ # com` or `example.com`.
437
455
  # Corresponds to the JSON property `members`
438
456
  # @return [Array<String>]
439
457
  attr_accessor :members
440
458
 
441
- # Role that is assigned to `members`.
442
- # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
459
+ # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
460
+ # , or `roles/owner`.
443
461
  # Corresponds to the JSON property `role`
444
462
  # @return [String]
445
463
  attr_accessor :role
@@ -460,17 +478,16 @@ module Google
460
478
  class CreateFeedRequest
461
479
  include Google::Apis::Core::Hashable
462
480
 
463
- # An asset feed used to export asset updates to a destinations.
464
- # An asset feed filter controls what updates are exported.
465
- # The asset feed must be created within a project, organization, or
466
- # folder. Supported destinations are:
467
- # Pub/Sub topics.
481
+ # An asset feed used to export asset updates to a destinations. An asset feed
482
+ # filter controls what updates are exported. The asset feed must be created
483
+ # within a project, organization, or folder. Supported destinations are: Pub/Sub
484
+ # topics.
468
485
  # Corresponds to the JSON property `feed`
469
486
  # @return [Google::Apis::CloudassetV1::Feed]
470
487
  attr_accessor :feed
471
488
 
472
- # Required. This is the client-assigned asset feed identifier and it needs to
473
- # be unique under a specific parent project/folder/organization.
489
+ # Required. This is the client-assigned asset feed identifier and it needs to be
490
+ # unique under a specific parent project/folder/organization.
474
491
  # Corresponds to the JSON property `feedId`
475
492
  # @return [String]
476
493
  attr_accessor :feed_id
@@ -486,13 +503,11 @@ module Google
486
503
  end
487
504
  end
488
505
 
489
- # A generic empty message that you can re-use to avoid defining duplicated
490
- # empty messages in your APIs. A typical example is to use it as the request
491
- # or the response type of an API method. For instance:
492
- # service Foo `
493
- # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
494
- # `
495
- # The JSON representation for `Empty` is empty JSON object ````.
506
+ # A generic empty message that you can re-use to avoid defining duplicated empty
507
+ # messages in your APIs. A typical example is to use it as the request or the
508
+ # response type of an API method. For instance: service Foo ` rpc Bar(google.
509
+ # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
510
+ # `Empty` is empty JSON object ````.
496
511
  class Empty
497
512
  include Google::Apis::Core::Hashable
498
513
 
@@ -509,13 +524,13 @@ module Google
509
524
  class Explanation
510
525
  include Google::Apis::Core::Hashable
511
526
 
512
- # The map from roles to their included permissions that match the
513
- # permission query (i.e., a query containing `policy.role.permissions:`).
514
- # Example: if query `policy.role.permissions : "compute.disk.get"`
515
- # matches a policy binding that contains owner role, the
516
- # matched_permissions will be ``"roles/owner": ["compute.disk.get"]``. The
517
- # roles can also be found in the returned `policy` bindings. Note that the
518
- # map is populated only for requests with permission queries.
527
+ # The map from roles to their included permissions that match the permission
528
+ # query (i.e., a query containing `policy.role.permissions:`). Example: if query
529
+ # `policy.role.permissions:compute.disk.get` matches a policy binding that
530
+ # contains owner role, the matched_permissions will be ``"roles/owner": ["
531
+ # compute.disk.get"]``. The roles can also be found in the returned `policy`
532
+ # bindings. Note that the map is populated only for requests with permission
533
+ # queries.
519
534
  # Corresponds to the JSON property `matchedPermissions`
520
535
  # @return [Hash<String,Google::Apis::CloudassetV1::Permissions>]
521
536
  attr_accessor :matched_permissions
@@ -534,20 +549,17 @@ module Google
534
549
  class ExportAssetsRequest
535
550
  include Google::Apis::Core::Hashable
536
551
 
537
- # A list of asset types to take a snapshot for. For example:
538
- # "compute.googleapis.com/Disk".
539
- # Regular expressions are also supported. For example:
540
- # * "compute.googleapis.com.*" snapshots resources whose asset type starts
541
- # with "compute.googleapis.com".
542
- # * ".*Instance" snapshots resources whose asset type ends with "Instance".
543
- # * ".*Instance.*" snapshots resources whose asset type contains "Instance".
544
- # See [RE2](https://github.com/google/re2/wiki/Syntax) for all supported
545
- # regular expression syntax. If the regular expression does not match any
546
- # supported asset type, an INVALID_ARGUMENT error will be returned.
547
- # If specified, only matching assets will be returned, otherwise, it will
548
- # snapshot all asset types. See [Introduction to Cloud Asset
549
- # Inventory](https://cloud.google.com/asset-inventory/docs/overview)
550
- # for all supported asset types.
552
+ # A list of asset types to take a snapshot for. For example: "compute.googleapis.
553
+ # com/Disk". Regular expressions are also supported. For example: * "compute.
554
+ # googleapis.com.*" snapshots resources whose asset type starts with "compute.
555
+ # googleapis.com". * ".*Instance" snapshots resources whose asset type ends with
556
+ # "Instance". * ".*Instance.*" snapshots resources whose asset type contains "
557
+ # Instance". See [RE2](https://github.com/google/re2/wiki/Syntax) for all
558
+ # supported regular expression syntax. If the regular expression does not match
559
+ # any supported asset type, an INVALID_ARGUMENT error will be returned. If
560
+ # specified, only matching assets will be returned, otherwise, it will snapshot
561
+ # all asset types. See [Introduction to Cloud Asset Inventory](https://cloud.
562
+ # google.com/asset-inventory/docs/overview) for all supported asset types.
551
563
  # Corresponds to the JSON property `assetTypes`
552
564
  # @return [Array<String>]
553
565
  attr_accessor :asset_types
@@ -564,10 +576,10 @@ module Google
564
576
  attr_accessor :output_config
565
577
 
566
578
  # Timestamp to take an asset snapshot. This can only be set to a timestamp
567
- # between the current time and the current time minus 35 days (inclusive).
568
- # If not specified, the current time will be used. Due to delays in resource
569
- # data collection and indexing, there is a volatile window during which
570
- # running the same query may get different results.
579
+ # between the current time and the current time minus 35 days (inclusive). If
580
+ # not specified, the current time will be used. Due to delays in resource data
581
+ # collection and indexing, there is a volatile window during which running the
582
+ # same query may get different results.
571
583
  # Corresponds to the JSON property `readTime`
572
584
  # @return [String]
573
585
  attr_accessor :read_time
@@ -585,52 +597,43 @@ module Google
585
597
  end
586
598
  end
587
599
 
588
- # Represents a textual expression in the Common Expression Language (CEL)
589
- # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
590
- # are documented at https://github.com/google/cel-spec.
591
- # Example (Comparison):
592
- # title: "Summary size limit"
593
- # description: "Determines if a summary is less than 100 chars"
594
- # expression: "document.summary.size() < 100"
595
- # Example (Equality):
596
- # title: "Requestor is owner"
597
- # description: "Determines if requestor is the document owner"
598
- # expression: "document.owner == request.auth.claims.email"
599
- # Example (Logic):
600
- # title: "Public documents"
601
- # description: "Determine whether the document should be publicly visible"
602
- # expression: "document.type != 'private' && document.type != 'internal'"
603
- # Example (Data Manipulation):
604
- # title: "Notification string"
605
- # description: "Create a notification string with a timestamp."
606
- # expression: "'New message received at ' + string(document.create_time)"
607
- # The exact variables and functions that may be referenced within an expression
608
- # are determined by the service that evaluates it. See the service
609
- # documentation for additional information.
600
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
601
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
602
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
603
+ # "Summary size limit" description: "Determines if a summary is less than 100
604
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
605
+ # Requestor is owner" description: "Determines if requestor is the document
606
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
607
+ # Logic): title: "Public documents" description: "Determine whether the document
608
+ # should be publicly visible" expression: "document.type != 'private' &&
609
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
610
+ # string" description: "Create a notification string with a timestamp."
611
+ # expression: "'New message received at ' + string(document.create_time)" The
612
+ # exact variables and functions that may be referenced within an expression are
613
+ # determined by the service that evaluates it. See the service documentation for
614
+ # additional information.
610
615
  class Expr
611
616
  include Google::Apis::Core::Hashable
612
617
 
613
- # Optional. Description of the expression. This is a longer text which
614
- # describes the expression, e.g. when hovered over it in a UI.
618
+ # Optional. Description of the expression. This is a longer text which describes
619
+ # the expression, e.g. when hovered over it in a UI.
615
620
  # Corresponds to the JSON property `description`
616
621
  # @return [String]
617
622
  attr_accessor :description
618
623
 
619
- # Textual representation of an expression in Common Expression Language
620
- # syntax.
624
+ # Textual representation of an expression in Common Expression Language syntax.
621
625
  # Corresponds to the JSON property `expression`
622
626
  # @return [String]
623
627
  attr_accessor :expression
624
628
 
625
- # Optional. String indicating the location of the expression for error
626
- # reporting, e.g. a file name and a position in the file.
629
+ # Optional. String indicating the location of the expression for error reporting,
630
+ # e.g. a file name and a position in the file.
627
631
  # Corresponds to the JSON property `location`
628
632
  # @return [String]
629
633
  attr_accessor :location
630
634
 
631
- # Optional. Title for the expression, i.e. a short string describing
632
- # its purpose. This can be used e.g. in UIs which allow to enter the
633
- # expression.
635
+ # Optional. Title for the expression, i.e. a short string describing its purpose.
636
+ # This can be used e.g. in UIs which allow to enter the expression.
634
637
  # Corresponds to the JSON property `title`
635
638
  # @return [String]
636
639
  attr_accessor :title
@@ -648,66 +651,53 @@ module Google
648
651
  end
649
652
  end
650
653
 
651
- # An asset feed used to export asset updates to a destinations.
652
- # An asset feed filter controls what updates are exported.
653
- # The asset feed must be created within a project, organization, or
654
- # folder. Supported destinations are:
655
- # Pub/Sub topics.
654
+ # An asset feed used to export asset updates to a destinations. An asset feed
655
+ # filter controls what updates are exported. The asset feed must be created
656
+ # within a project, organization, or folder. Supported destinations are: Pub/Sub
657
+ # topics.
656
658
  class Feed
657
659
  include Google::Apis::Core::Hashable
658
660
 
659
661
  # A list of the full names of the assets to receive updates. You must specify
660
662
  # either or both of asset_names and asset_types. Only asset updates matching
661
- # specified asset_names or asset_types are exported to the feed.
662
- # Example:
663
- # `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/
664
- # instance1`.
665
- # See [Resource
666
- # Names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
667
- # for more info.
663
+ # specified asset_names or asset_types are exported to the feed. Example: `//
664
+ # compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1`
665
+ # . See [Resource Names](https://cloud.google.com/apis/design/resource_names#
666
+ # full_resource_name) for more info.
668
667
  # Corresponds to the JSON property `assetNames`
669
668
  # @return [Array<String>]
670
669
  attr_accessor :asset_names
671
670
 
672
- # A list of types of the assets to receive updates. You must specify either
673
- # or both of asset_names and asset_types. Only asset updates matching
674
- # specified asset_names or asset_types are exported to the feed.
675
- # Example: `"compute.googleapis.com/Disk"`
676
- # See [this
677
- # topic](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
678
- # for a list of all supported asset types.
671
+ # A list of types of the assets to receive updates. You must specify either or
672
+ # both of asset_names and asset_types. Only asset updates matching specified
673
+ # asset_names or asset_types are exported to the feed. Example: `"compute.
674
+ # googleapis.com/Disk"` See [this topic](https://cloud.google.com/asset-
675
+ # inventory/docs/supported-asset-types) for a list of all supported asset types.
679
676
  # Corresponds to the JSON property `assetTypes`
680
677
  # @return [Array<String>]
681
678
  attr_accessor :asset_types
682
679
 
683
- # Represents a textual expression in the Common Expression Language (CEL)
684
- # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
685
- # are documented at https://github.com/google/cel-spec.
686
- # Example (Comparison):
687
- # title: "Summary size limit"
688
- # description: "Determines if a summary is less than 100 chars"
689
- # expression: "document.summary.size() < 100"
690
- # Example (Equality):
691
- # title: "Requestor is owner"
692
- # description: "Determines if requestor is the document owner"
693
- # expression: "document.owner == request.auth.claims.email"
694
- # Example (Logic):
695
- # title: "Public documents"
696
- # description: "Determine whether the document should be publicly visible"
697
- # expression: "document.type != 'private' && document.type != 'internal'"
698
- # Example (Data Manipulation):
699
- # title: "Notification string"
700
- # description: "Create a notification string with a timestamp."
701
- # expression: "'New message received at ' + string(document.create_time)"
702
- # The exact variables and functions that may be referenced within an expression
703
- # are determined by the service that evaluates it. See the service
704
- # documentation for additional information.
680
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
681
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
682
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
683
+ # "Summary size limit" description: "Determines if a summary is less than 100
684
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
685
+ # Requestor is owner" description: "Determines if requestor is the document
686
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
687
+ # Logic): title: "Public documents" description: "Determine whether the document
688
+ # should be publicly visible" expression: "document.type != 'private' &&
689
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
690
+ # string" description: "Create a notification string with a timestamp."
691
+ # expression: "'New message received at ' + string(document.create_time)" The
692
+ # exact variables and functions that may be referenced within an expression are
693
+ # determined by the service that evaluates it. See the service documentation for
694
+ # additional information.
705
695
  # Corresponds to the JSON property `condition`
706
696
  # @return [Google::Apis::CloudassetV1::Expr]
707
697
  attr_accessor :condition
708
698
 
709
- # Asset content type. If not specified, no content but the asset name and
710
- # type will be returned.
699
+ # Asset content type. If not specified, no content but the asset name and type
700
+ # will be returned.
711
701
  # Corresponds to the JSON property `contentType`
712
702
  # @return [String]
713
703
  attr_accessor :content_type
@@ -717,12 +707,11 @@ module Google
717
707
  # @return [Google::Apis::CloudassetV1::FeedOutputConfig]
718
708
  attr_accessor :feed_output_config
719
709
 
720
- # Required. The format will be
721
- # projects/`project_number`/feeds/`client-assigned_feed_identifier` or
722
- # folders/`folder_number`/feeds/`client-assigned_feed_identifier` or
723
- # organizations/`organization_number`/feeds/`client-assigned_feed_identifier`
724
- # The client-assigned feed identifier must be unique within the parent
725
- # project/folder/organization.
710
+ # Required. The format will be projects/`project_number`/feeds/`client-
711
+ # assigned_feed_identifier` or folders/`folder_number`/feeds/`client-
712
+ # assigned_feed_identifier` or organizations/`organization_number`/feeds/`client-
713
+ # assigned_feed_identifier` The client-assigned feed identifier must be unique
714
+ # within the parent project/folder/organization.
726
715
  # Corresponds to the JSON property `name`
727
716
  # @return [String]
728
717
  attr_accessor :name
@@ -765,24 +754,22 @@ module Google
765
754
  class GcsDestination
766
755
  include Google::Apis::Core::Hashable
767
756
 
768
- # The uri of the Cloud Storage object. It's the same uri that is used by
769
- # gsutil. Example: "gs://bucket_name/object_name". See [Viewing and
770
- # Editing Object
771
- # Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata)
772
- # for more information.
757
+ # The uri of the Cloud Storage object. It's the same uri that is used by gsutil.
758
+ # Example: "gs://bucket_name/object_name". See [Viewing and Editing Object
759
+ # Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata) for
760
+ # more information.
773
761
  # Corresponds to the JSON property `uri`
774
762
  # @return [String]
775
763
  attr_accessor :uri
776
764
 
777
- # The uri prefix of all generated Cloud Storage objects. Example:
778
- # "gs://bucket_name/object_name_prefix". Each object uri is in format:
779
- # "gs://bucket_name/object_name_prefix/<asset type>/<shard number> and only
780
- # contains assets for that type. <shard number> starts from 0. Example:
781
- # "gs://bucket_name/object_name_prefix/compute.googleapis.com/Disk/0" is
782
- # the first shard of output objects containing all
783
- # compute.googleapis.com/Disk assets. An INVALID_ARGUMENT error will be
784
- # returned if file with the same name "gs://bucket_name/object_name_prefix"
785
- # already exists.
765
+ # The uri prefix of all generated Cloud Storage objects. Example: "gs://
766
+ # bucket_name/object_name_prefix". Each object uri is in format: "gs://
767
+ # bucket_name/object_name_prefix// and only contains assets for that type.
768
+ # starts from 0. Example: "gs://bucket_name/object_name_prefix/compute.
769
+ # googleapis.com/Disk/0" is the first shard of output objects containing all
770
+ # compute.googleapis.com/Disk assets. An INVALID_ARGUMENT error will be returned
771
+ # if file with the same name "gs://bucket_name/object_name_prefix" already
772
+ # exists.
786
773
  # Corresponds to the JSON property `uriPrefix`
787
774
  # @return [String]
788
775
  attr_accessor :uri_prefix
@@ -798,50 +785,301 @@ module Google
798
785
  end
799
786
  end
800
787
 
788
+ # An IAM role or permission under analysis.
789
+ class GoogleCloudAssetV1Access
790
+ include Google::Apis::Core::Hashable
791
+
792
+ # Represents the detailed state of an entity under analysis, such as a resource,
793
+ # an identity or an access.
794
+ # Corresponds to the JSON property `analysisState`
795
+ # @return [Google::Apis::CloudassetV1::IamPolicyAnalysisState]
796
+ attr_accessor :analysis_state
797
+
798
+ # The permission.
799
+ # Corresponds to the JSON property `permission`
800
+ # @return [String]
801
+ attr_accessor :permission
802
+
803
+ # The role.
804
+ # Corresponds to the JSON property `role`
805
+ # @return [String]
806
+ attr_accessor :role
807
+
808
+ def initialize(**args)
809
+ update!(**args)
810
+ end
811
+
812
+ # Update properties of this object
813
+ def update!(**args)
814
+ @analysis_state = args[:analysis_state] if args.key?(:analysis_state)
815
+ @permission = args[:permission] if args.key?(:permission)
816
+ @role = args[:role] if args.key?(:role)
817
+ end
818
+ end
819
+
820
+ # An access control list, derived from the above IAM policy binding, which
821
+ # contains a set of resources and accesses. May include one item from each set
822
+ # to compose an access control entry. NOTICE that there could be multiple access
823
+ # control lists for one IAM policy binding. The access control lists are created
824
+ # based on resource and access combinations. For example, assume we have the
825
+ # following cases in one IAM policy binding: - Permission P1 and P2 apply to
826
+ # resource R1 and R2; - Permission P3 applies to resource R2 and R3; This will
827
+ # result in the following access control lists: - AccessControlList 1: [R1, R2],
828
+ # [P1, P2] - AccessControlList 2: [R2, R3], [P3]
829
+ class GoogleCloudAssetV1AccessControlList
830
+ include Google::Apis::Core::Hashable
831
+
832
+ # The accesses that match one of the following conditions: - The access_selector,
833
+ # if it is specified in request; - Otherwise, access specifiers reachable from
834
+ # the policy binding's role.
835
+ # Corresponds to the JSON property `accesses`
836
+ # @return [Array<Google::Apis::CloudassetV1::GoogleCloudAssetV1Access>]
837
+ attr_accessor :accesses
838
+
839
+ # Resource edges of the graph starting from the policy attached resource to any
840
+ # descendant resources. The Edge.source_node contains the full resource name of
841
+ # a parent resource and Edge.target_node contains the full resource name of a
842
+ # child resource. This field is present only if the output_resource_edges option
843
+ # is enabled in request.
844
+ # Corresponds to the JSON property `resourceEdges`
845
+ # @return [Array<Google::Apis::CloudassetV1::GoogleCloudAssetV1Edge>]
846
+ attr_accessor :resource_edges
847
+
848
+ # The resources that match one of the following conditions: - The
849
+ # resource_selector, if it is specified in request; - Otherwise, resources
850
+ # reachable from the policy attached resource.
851
+ # Corresponds to the JSON property `resources`
852
+ # @return [Array<Google::Apis::CloudassetV1::GoogleCloudAssetV1Resource>]
853
+ attr_accessor :resources
854
+
855
+ def initialize(**args)
856
+ update!(**args)
857
+ end
858
+
859
+ # Update properties of this object
860
+ def update!(**args)
861
+ @accesses = args[:accesses] if args.key?(:accesses)
862
+ @resource_edges = args[:resource_edges] if args.key?(:resource_edges)
863
+ @resources = args[:resources] if args.key?(:resources)
864
+ end
865
+ end
866
+
867
+ # A BigQuery destination.
868
+ class GoogleCloudAssetV1BigQueryDestination
869
+ include Google::Apis::Core::Hashable
870
+
871
+ # Required. The BigQuery dataset in format "projects/projectId/datasets/
872
+ # datasetId", to which the analysis results should be exported. If this dataset
873
+ # does not exist, the export call will return an INVALID_ARGUMENT error.
874
+ # Corresponds to the JSON property `dataset`
875
+ # @return [String]
876
+ attr_accessor :dataset
877
+
878
+ # The partition key for BigQuery partitioned table.
879
+ # Corresponds to the JSON property `partitionKey`
880
+ # @return [String]
881
+ attr_accessor :partition_key
882
+
883
+ # Required. The prefix of the BigQuery tables to which the analysis results will
884
+ # be written. Tables will be created based on this table_prefix if not exist: *
885
+ # _analysis table will contain export operation's metadata. * _analysis_result
886
+ # will contain all the IamPolicyAnalysisResult. When [partition_key] is
887
+ # specified, both tables will be partitioned based on the [partition_key].
888
+ # Corresponds to the JSON property `tablePrefix`
889
+ # @return [String]
890
+ attr_accessor :table_prefix
891
+
892
+ # Optional. Specifies the action that occurs if the destination table or
893
+ # partition already exists. The following values are supported: * WRITE_TRUNCATE:
894
+ # If the table or partition already exists, BigQuery overwrites the entire
895
+ # table or all the partitions data. * WRITE_APPEND: If the table or partition
896
+ # already exists, BigQuery appends the data to the table or the latest partition.
897
+ # * WRITE_EMPTY: If the table already exists and contains data, an error is
898
+ # returned. The default value is WRITE_APPEND. Each action is atomic and only
899
+ # occurs if BigQuery is able to complete the job successfully. Details are at
900
+ # https://cloud.google.com/bigquery/docs/loading-data-local#
901
+ # appending_to_or_overwriting_a_table_using_a_local_file.
902
+ # Corresponds to the JSON property `writeDisposition`
903
+ # @return [String]
904
+ attr_accessor :write_disposition
905
+
906
+ def initialize(**args)
907
+ update!(**args)
908
+ end
909
+
910
+ # Update properties of this object
911
+ def update!(**args)
912
+ @dataset = args[:dataset] if args.key?(:dataset)
913
+ @partition_key = args[:partition_key] if args.key?(:partition_key)
914
+ @table_prefix = args[:table_prefix] if args.key?(:table_prefix)
915
+ @write_disposition = args[:write_disposition] if args.key?(:write_disposition)
916
+ end
917
+ end
918
+
919
+ # A directional edge.
920
+ class GoogleCloudAssetV1Edge
921
+ include Google::Apis::Core::Hashable
922
+
923
+ # The source node of the edge. For example, it could be a full resource name for
924
+ # a resource node or an email of an identity.
925
+ # Corresponds to the JSON property `sourceNode`
926
+ # @return [String]
927
+ attr_accessor :source_node
928
+
929
+ # The target node of the edge. For example, it could be a full resource name for
930
+ # a resource node or an email of an identity.
931
+ # Corresponds to the JSON property `targetNode`
932
+ # @return [String]
933
+ attr_accessor :target_node
934
+
935
+ def initialize(**args)
936
+ update!(**args)
937
+ end
938
+
939
+ # Update properties of this object
940
+ def update!(**args)
941
+ @source_node = args[:source_node] if args.key?(:source_node)
942
+ @target_node = args[:target_node] if args.key?(:target_node)
943
+ end
944
+ end
945
+
946
+ # A Cloud Storage location.
947
+ class GoogleCloudAssetV1GcsDestination
948
+ include Google::Apis::Core::Hashable
949
+
950
+ # Required. The uri of the Cloud Storage object. It's the same uri that is used
951
+ # by gsutil. For example: "gs://bucket_name/object_name". See [Quickstart: Using
952
+ # the gsutil tool] (https://cloud.google.com/storage/docs/quickstart-gsutil) for
953
+ # examples.
954
+ # Corresponds to the JSON property `uri`
955
+ # @return [String]
956
+ attr_accessor :uri
957
+
958
+ def initialize(**args)
959
+ update!(**args)
960
+ end
961
+
962
+ # Update properties of this object
963
+ def update!(**args)
964
+ @uri = args[:uri] if args.key?(:uri)
965
+ end
966
+ end
967
+
968
+ # An identity under analysis.
969
+ class GoogleCloudAssetV1Identity
970
+ include Google::Apis::Core::Hashable
971
+
972
+ # Represents the detailed state of an entity under analysis, such as a resource,
973
+ # an identity or an access.
974
+ # Corresponds to the JSON property `analysisState`
975
+ # @return [Google::Apis::CloudassetV1::IamPolicyAnalysisState]
976
+ attr_accessor :analysis_state
977
+
978
+ # The identity name in any form of members appear in [IAM policy binding](https:/
979
+ # /cloud.google.com/iam/reference/rest/v1/Binding), such as: - user:foo@google.
980
+ # com - group:group1@google.com - serviceAccount:s1@prj1.iam.gserviceaccount.com
981
+ # - projectOwner:some_project_id - domain:google.com - allUsers - etc.
982
+ # Corresponds to the JSON property `name`
983
+ # @return [String]
984
+ attr_accessor :name
985
+
986
+ def initialize(**args)
987
+ update!(**args)
988
+ end
989
+
990
+ # Update properties of this object
991
+ def update!(**args)
992
+ @analysis_state = args[:analysis_state] if args.key?(:analysis_state)
993
+ @name = args[:name] if args.key?(:name)
994
+ end
995
+ end
996
+
997
+ # The identities and group edges.
998
+ class GoogleCloudAssetV1IdentityList
999
+ include Google::Apis::Core::Hashable
1000
+
1001
+ # Group identity edges of the graph starting from the binding's group members to
1002
+ # any node of the identities. The Edge.source_node contains a group, such as `
1003
+ # group:parent@google.com`. The Edge.target_node contains a member of the group,
1004
+ # such as `group:child@google.com` or `user:foo@google.com`. This field is
1005
+ # present only if the output_group_edges option is enabled in request.
1006
+ # Corresponds to the JSON property `groupEdges`
1007
+ # @return [Array<Google::Apis::CloudassetV1::GoogleCloudAssetV1Edge>]
1008
+ attr_accessor :group_edges
1009
+
1010
+ # Only the identities that match one of the following conditions will be
1011
+ # presented: - The identity_selector, if it is specified in request; - Otherwise,
1012
+ # identities reachable from the policy binding's members.
1013
+ # Corresponds to the JSON property `identities`
1014
+ # @return [Array<Google::Apis::CloudassetV1::GoogleCloudAssetV1Identity>]
1015
+ attr_accessor :identities
1016
+
1017
+ def initialize(**args)
1018
+ update!(**args)
1019
+ end
1020
+
1021
+ # Update properties of this object
1022
+ def update!(**args)
1023
+ @group_edges = args[:group_edges] if args.key?(:group_edges)
1024
+ @identities = args[:identities] if args.key?(:identities)
1025
+ end
1026
+ end
1027
+
1028
+ # A Google Cloud resource under analysis.
1029
+ class GoogleCloudAssetV1Resource
1030
+ include Google::Apis::Core::Hashable
1031
+
1032
+ # Represents the detailed state of an entity under analysis, such as a resource,
1033
+ # an identity or an access.
1034
+ # Corresponds to the JSON property `analysisState`
1035
+ # @return [Google::Apis::CloudassetV1::IamPolicyAnalysisState]
1036
+ attr_accessor :analysis_state
1037
+
1038
+ # The [full resource name](https://cloud.google.com/asset-inventory/docs/
1039
+ # resource-name-format)
1040
+ # Corresponds to the JSON property `fullResourceName`
1041
+ # @return [String]
1042
+ attr_accessor :full_resource_name
1043
+
1044
+ def initialize(**args)
1045
+ update!(**args)
1046
+ end
1047
+
1048
+ # Update properties of this object
1049
+ def update!(**args)
1050
+ @analysis_state = args[:analysis_state] if args.key?(:analysis_state)
1051
+ @full_resource_name = args[:full_resource_name] if args.key?(:full_resource_name)
1052
+ end
1053
+ end
1054
+
801
1055
  # Used in `policy_type` to specify how `boolean_policy` will behave at this
802
1056
  # resource.
803
1057
  class GoogleCloudOrgpolicyV1BooleanPolicy
804
1058
  include Google::Apis::Core::Hashable
805
1059
 
806
- # If `true`, then the `Policy` is enforced. If `false`, then any
807
- # configuration is acceptable.
808
- # Suppose you have a `Constraint`
809
- # `constraints/compute.disableSerialPortAccess` with `constraint_default`
810
- # set to `ALLOW`. A `Policy` for that `Constraint` exhibits the following
811
- # behavior:
812
- # - If the `Policy` at this resource has enforced set to `false`, serial
813
- # port connection attempts will be allowed.
814
- # - If the `Policy` at this resource has enforced set to `true`, serial
815
- # port connection attempts will be refused.
816
- # - If the `Policy` at this resource is `RestoreDefault`, serial port
817
- # connection attempts will be allowed.
818
- # - If no `Policy` is set at this resource or anywhere higher in the
819
- # resource hierarchy, serial port connection attempts will be allowed.
820
- # - If no `Policy` is set at this resource, but one exists higher in the
821
- # resource hierarchy, the behavior is as if the`Policy` were set at
822
- # this resource.
823
- # The following examples demonstrate the different possible layerings:
824
- # Example 1 (nearest `Constraint` wins):
825
- # `organizations/foo` has a `Policy` with:
826
- # `enforced: false`
827
- # `projects/bar` has no `Policy` set.
828
- # The constraint at `projects/bar` and `organizations/foo` will not be
829
- # enforced.
830
- # Example 2 (enforcement gets replaced):
831
- # `organizations/foo` has a `Policy` with:
832
- # `enforced: false`
833
- # `projects/bar` has a `Policy` with:
834
- # `enforced: true`
835
- # The constraint at `organizations/foo` is not enforced.
836
- # The constraint at `projects/bar` is enforced.
837
- # Example 3 (RestoreDefault):
838
- # `organizations/foo` has a `Policy` with:
839
- # `enforced: true`
840
- # `projects/bar` has a `Policy` with:
841
- # `RestoreDefault: ```
842
- # The constraint at `organizations/foo` is enforced.
843
- # The constraint at `projects/bar` is not enforced, because
844
- # `constraint_default` for the `Constraint` is `ALLOW`.
1060
+ # If `true`, then the `Policy` is enforced. If `false`, then any configuration
1061
+ # is acceptable. Suppose you have a `Constraint` `constraints/compute.
1062
+ # disableSerialPortAccess` with `constraint_default` set to `ALLOW`. A `Policy`
1063
+ # for that `Constraint` exhibits the following behavior: - If the `Policy` at
1064
+ # this resource has enforced set to `false`, serial port connection attempts
1065
+ # will be allowed. - If the `Policy` at this resource has enforced set to `true`,
1066
+ # serial port connection attempts will be refused. - If the `Policy` at this
1067
+ # resource is `RestoreDefault`, serial port connection attempts will be allowed.
1068
+ # - If no `Policy` is set at this resource or anywhere higher in the resource
1069
+ # hierarchy, serial port connection attempts will be allowed. - If no `Policy`
1070
+ # is set at this resource, but one exists higher in the resource hierarchy, the
1071
+ # behavior is as if the`Policy` were set at this resource. The following
1072
+ # examples demonstrate the different possible layerings: Example 1 (nearest `
1073
+ # Constraint` wins): `organizations/foo` has a `Policy` with: `enforced: false` `
1074
+ # projects/bar` has no `Policy` set. The constraint at `projects/bar` and `
1075
+ # organizations/foo` will not be enforced. Example 2 (enforcement gets replaced):
1076
+ # `organizations/foo` has a `Policy` with: `enforced: false` `projects/bar` has
1077
+ # a `Policy` with: `enforced: true` The constraint at `organizations/foo` is not
1078
+ # enforced. The constraint at `projects/bar` is enforced. Example 3 (
1079
+ # RestoreDefault): `organizations/foo` has a `Policy` with: `enforced: true` `
1080
+ # projects/bar` has a `Policy` with: `RestoreDefault: ``` The constraint at `
1081
+ # organizations/foo` is enforced. The constraint at `projects/bar` is not
1082
+ # enforced, because `constraint_default` for the `Constraint` is `ALLOW`.
845
1083
  # Corresponds to the JSON property `enforced`
846
1084
  # @return [Boolean]
847
1085
  attr_accessor :enforced
@@ -857,26 +1095,22 @@ module Google
857
1095
  end
858
1096
  end
859
1097
 
860
- # Used in `policy_type` to specify how `list_policy` behaves at this
861
- # resource.
862
- # `ListPolicy` can define specific values and subtrees of Cloud Resource
863
- # Manager resource hierarchy (`Organizations`, `Folders`, `Projects`) that
864
- # are allowed or denied by setting the `allowed_values` and `denied_values`
865
- # fields. This is achieved by using the `under:` and optional `is:` prefixes.
866
- # The `under:` prefix is used to denote resource subtree values.
867
- # The `is:` prefix is used to denote specific values, and is required only
868
- # if the value contains a ":". Values prefixed with "is:" are treated the
869
- # same as values with no prefix.
870
- # Ancestry subtrees must be in one of the following formats:
871
- # - "projects/<project-id>", e.g. "projects/tokyo-rain-123"
872
- # - "folders/<folder-id>", e.g. "folders/1234"
873
- # - "organizations/<organization-id>", e.g. "organizations/1234"
874
- # The `supports_under` field of the associated `Constraint` defines whether
875
- # ancestry prefixes can be used. You can set `allowed_values` and
876
- # `denied_values` in the same `Policy` if `all_values` is
877
- # `ALL_VALUES_UNSPECIFIED`. `ALLOW` or `DENY` are used to allow or deny all
878
- # values. If `all_values` is set to either `ALLOW` or `DENY`,
879
- # `allowed_values` and `denied_values` must be unset.
1098
+ # Used in `policy_type` to specify how `list_policy` behaves at this resource. `
1099
+ # ListPolicy` can define specific values and subtrees of Cloud Resource Manager
1100
+ # resource hierarchy (`Organizations`, `Folders`, `Projects`) that are allowed
1101
+ # or denied by setting the `allowed_values` and `denied_values` fields. This is
1102
+ # achieved by using the `under:` and optional `is:` prefixes. The `under:`
1103
+ # prefix is used to denote resource subtree values. The `is:` prefix is used to
1104
+ # denote specific values, and is required only if the value contains a ":".
1105
+ # Values prefixed with "is:" are treated the same as values with no prefix.
1106
+ # Ancestry subtrees must be in one of the following formats: - "projects/", e.g.
1107
+ # "projects/tokyo-rain-123" - "folders/", e.g. "folders/1234" - "organizations/",
1108
+ # e.g. "organizations/1234" The `supports_under` field of the associated `
1109
+ # Constraint` defines whether ancestry prefixes can be used. You can set `
1110
+ # allowed_values` and `denied_values` in the same `Policy` if `all_values` is `
1111
+ # ALL_VALUES_UNSPECIFIED`. `ALLOW` or `DENY` are used to allow or deny all
1112
+ # values. If `all_values` is set to either `ALLOW` or `DENY`, `allowed_values`
1113
+ # and `denied_values` must be unset.
880
1114
  class GoogleCloudOrgpolicyV1ListPolicy
881
1115
  include Google::Apis::Core::Hashable
882
1116
 
@@ -885,112 +1119,83 @@ module Google
885
1119
  # @return [String]
886
1120
  attr_accessor :all_values
887
1121
 
888
- # List of values allowed at this resource. Can only be set if `all_values`
889
- # is set to `ALL_VALUES_UNSPECIFIED`.
1122
+ # List of values allowed at this resource. Can only be set if `all_values` is
1123
+ # set to `ALL_VALUES_UNSPECIFIED`.
890
1124
  # Corresponds to the JSON property `allowedValues`
891
1125
  # @return [Array<String>]
892
1126
  attr_accessor :allowed_values
893
1127
 
894
- # List of values denied at this resource. Can only be set if `all_values`
895
- # is set to `ALL_VALUES_UNSPECIFIED`.
1128
+ # List of values denied at this resource. Can only be set if `all_values` is set
1129
+ # to `ALL_VALUES_UNSPECIFIED`.
896
1130
  # Corresponds to the JSON property `deniedValues`
897
1131
  # @return [Array<String>]
898
1132
  attr_accessor :denied_values
899
1133
 
900
- # Determines the inheritance behavior for this `Policy`.
901
- # By default, a `ListPolicy` set at a resource supersedes any `Policy` set
902
- # anywhere up the resource hierarchy. However, if `inherit_from_parent` is
903
- # set to `true`, then the values from the effective `Policy` of the parent
904
- # resource are inherited, meaning the values set in this `Policy` are
905
- # added to the values inherited up the hierarchy.
906
- # Setting `Policy` hierarchies that inherit both allowed values and denied
907
- # values isn't recommended in most circumstances to keep the configuration
908
- # simple and understandable. However, it is possible to set a `Policy` with
909
- # `allowed_values` set that inherits a `Policy` with `denied_values` set.
910
- # In this case, the values that are allowed must be in `allowed_values` and
911
- # not present in `denied_values`.
912
- # For example, suppose you have a `Constraint`
913
- # `constraints/serviceuser.services`, which has a `constraint_type` of
914
- # `list_constraint`, and with `constraint_default` set to `ALLOW`.
915
- # Suppose that at the Organization level, a `Policy` is applied that
916
- # restricts the allowed API activations to ``E1`, `E2``. Then, if a
917
- # `Policy` is applied to a project below the Organization that has
918
- # `inherit_from_parent` set to `false` and field all_values set to DENY,
919
- # then an attempt to activate any API will be denied.
920
- # The following examples demonstrate different possible layerings for
921
- # `projects/bar` parented by `organizations/foo`:
922
- # Example 1 (no inherited values):
923
- # `organizations/foo` has a `Policy` with values:
924
- # `allowed_values: "E1" allowed_values:"E2"`
925
- # `projects/bar` has `inherit_from_parent` `false` and values:
926
- # `allowed_values: "E3" allowed_values: "E4"`
927
- # The accepted values at `organizations/foo` are `E1`, `E2`.
928
- # The accepted values at `projects/bar` are `E3`, and `E4`.
929
- # Example 2 (inherited values):
930
- # `organizations/foo` has a `Policy` with values:
931
- # `allowed_values: "E1" allowed_values:"E2"`
932
- # `projects/bar` has a `Policy` with values:
933
- # `value: "E3" value: "E4" inherit_from_parent: true`
934
- # The accepted values at `organizations/foo` are `E1`, `E2`.
935
- # The accepted values at `projects/bar` are `E1`, `E2`, `E3`, and `E4`.
936
- # Example 3 (inheriting both allowed and denied values):
937
- # `organizations/foo` has a `Policy` with values:
938
- # `allowed_values: "E1" allowed_values: "E2"`
939
- # `projects/bar` has a `Policy` with:
940
- # `denied_values: "E1"`
941
- # The accepted values at `organizations/foo` are `E1`, `E2`.
942
- # The value accepted at `projects/bar` is `E2`.
943
- # Example 4 (RestoreDefault):
944
- # `organizations/foo` has a `Policy` with values:
945
- # `allowed_values: "E1" allowed_values:"E2"`
946
- # `projects/bar` has a `Policy` with values:
947
- # `RestoreDefault: ```
948
- # The accepted values at `organizations/foo` are `E1`, `E2`.
949
- # The accepted values at `projects/bar` are either all or none depending on
950
- # the value of `constraint_default` (if `ALLOW`, all; if
951
- # `DENY`, none).
952
- # Example 5 (no policy inherits parent policy):
953
- # `organizations/foo` has no `Policy` set.
954
- # `projects/bar` has no `Policy` set.
955
- # The accepted values at both levels are either all or none depending on
956
- # the value of `constraint_default` (if `ALLOW`, all; if
957
- # `DENY`, none).
958
- # Example 6 (ListConstraint allowing all):
959
- # `organizations/foo` has a `Policy` with values:
960
- # `allowed_values: "E1" allowed_values: "E2"`
961
- # `projects/bar` has a `Policy` with:
962
- # `all: ALLOW`
963
- # The accepted values at `organizations/foo` are `E1`, E2`.
964
- # Any value is accepted at `projects/bar`.
965
- # Example 7 (ListConstraint allowing none):
966
- # `organizations/foo` has a `Policy` with values:
967
- # `allowed_values: "E1" allowed_values: "E2"`
968
- # `projects/bar` has a `Policy` with:
969
- # `all: DENY`
970
- # The accepted values at `organizations/foo` are `E1`, E2`.
971
- # No value is accepted at `projects/bar`.
972
- # Example 10 (allowed and denied subtrees of Resource Manager hierarchy):
973
- # Given the following resource hierarchy
974
- # O1->`F1, F2`; F1->`P1`; F2->`P2, P3`,
975
- # `organizations/foo` has a `Policy` with values:
976
- # `allowed_values: "under:organizations/O1"`
977
- # `projects/bar` has a `Policy` with:
978
- # `allowed_values: "under:projects/P3"`
979
- # `denied_values: "under:folders/F2"`
980
- # The accepted values at `organizations/foo` are `organizations/O1`,
981
- # `folders/F1`, `folders/F2`, `projects/P1`, `projects/P2`,
982
- # `projects/P3`.
983
- # The accepted values at `projects/bar` are `organizations/O1`,
984
- # `folders/F1`, `projects/P1`.
1134
+ # Determines the inheritance behavior for this `Policy`. By default, a `
1135
+ # ListPolicy` set at a resource supersedes any `Policy` set anywhere up the
1136
+ # resource hierarchy. However, if `inherit_from_parent` is set to `true`, then
1137
+ # the values from the effective `Policy` of the parent resource are inherited,
1138
+ # meaning the values set in this `Policy` are added to the values inherited up
1139
+ # the hierarchy. Setting `Policy` hierarchies that inherit both allowed values
1140
+ # and denied values isn't recommended in most circumstances to keep the
1141
+ # configuration simple and understandable. However, it is possible to set a `
1142
+ # Policy` with `allowed_values` set that inherits a `Policy` with `denied_values`
1143
+ # set. In this case, the values that are allowed must be in `allowed_values`
1144
+ # and not present in `denied_values`. For example, suppose you have a `
1145
+ # Constraint` `constraints/serviceuser.services`, which has a `constraint_type`
1146
+ # of `list_constraint`, and with `constraint_default` set to `ALLOW`. Suppose
1147
+ # that at the Organization level, a `Policy` is applied that restricts the
1148
+ # allowed API activations to ``E1`, `E2``. Then, if a `Policy` is applied to a
1149
+ # project below the Organization that has `inherit_from_parent` set to `false`
1150
+ # and field all_values set to DENY, then an attempt to activate any API will be
1151
+ # denied. The following examples demonstrate different possible layerings for `
1152
+ # projects/bar` parented by `organizations/foo`: Example 1 (no inherited values):
1153
+ # `organizations/foo` has a `Policy` with values: `allowed_values: "E1"
1154
+ # allowed_values:"E2"` `projects/bar` has `inherit_from_parent` `false` and
1155
+ # values: `allowed_values: "E3" allowed_values: "E4"` The accepted values at `
1156
+ # organizations/foo` are `E1`, `E2`. The accepted values at `projects/bar` are `
1157
+ # E3`, and `E4`. Example 2 (inherited values): `organizations/foo` has a `Policy`
1158
+ # with values: `allowed_values: "E1" allowed_values:"E2"` `projects/bar` has a `
1159
+ # Policy` with values: `value: "E3" value: "E4" inherit_from_parent: true` The
1160
+ # accepted values at `organizations/foo` are `E1`, `E2`. The accepted values at `
1161
+ # projects/bar` are `E1`, `E2`, `E3`, and `E4`. Example 3 (inheriting both
1162
+ # allowed and denied values): `organizations/foo` has a `Policy` with values: `
1163
+ # allowed_values: "E1" allowed_values: "E2"` `projects/bar` has a `Policy` with:
1164
+ # `denied_values: "E1"` The accepted values at `organizations/foo` are `E1`, `E2`
1165
+ # . The value accepted at `projects/bar` is `E2`. Example 4 (RestoreDefault): `
1166
+ # organizations/foo` has a `Policy` with values: `allowed_values: "E1"
1167
+ # allowed_values:"E2"` `projects/bar` has a `Policy` with values: `
1168
+ # RestoreDefault: ``` The accepted values at `organizations/foo` are `E1`, `E2`.
1169
+ # The accepted values at `projects/bar` are either all or none depending on the
1170
+ # value of `constraint_default` (if `ALLOW`, all; if `DENY`, none). Example 5 (
1171
+ # no policy inherits parent policy): `organizations/foo` has no `Policy` set. `
1172
+ # projects/bar` has no `Policy` set. The accepted values at both levels are
1173
+ # either all or none depending on the value of `constraint_default` (if `ALLOW`,
1174
+ # all; if `DENY`, none). Example 6 (ListConstraint allowing all): `organizations/
1175
+ # foo` has a `Policy` with values: `allowed_values: "E1" allowed_values: "E2"` `
1176
+ # projects/bar` has a `Policy` with: `all: ALLOW` The accepted values at `
1177
+ # organizations/foo` are `E1`, E2`. Any value is accepted at `projects/bar`.
1178
+ # Example 7 (ListConstraint allowing none): `organizations/foo` has a `Policy`
1179
+ # with values: `allowed_values: "E1" allowed_values: "E2"` `projects/bar` has a `
1180
+ # Policy` with: `all: DENY` The accepted values at `organizations/foo` are `E1`,
1181
+ # E2`. No value is accepted at `projects/bar`. Example 10 (allowed and denied
1182
+ # subtrees of Resource Manager hierarchy): Given the following resource
1183
+ # hierarchy O1->`F1, F2`; F1->`P1`; F2->`P2, P3`, `organizations/foo` has a `
1184
+ # Policy` with values: `allowed_values: "under:organizations/O1"` `projects/bar`
1185
+ # has a `Policy` with: `allowed_values: "under:projects/P3"` `denied_values: "
1186
+ # under:folders/F2"` The accepted values at `organizations/foo` are `
1187
+ # organizations/O1`, `folders/F1`, `folders/F2`, `projects/P1`, `projects/P2`, `
1188
+ # projects/P3`. The accepted values at `projects/bar` are `organizations/O1`, `
1189
+ # folders/F1`, `projects/P1`.
985
1190
  # Corresponds to the JSON property `inheritFromParent`
986
1191
  # @return [Boolean]
987
1192
  attr_accessor :inherit_from_parent
988
1193
  alias_method :inherit_from_parent?, :inherit_from_parent
989
1194
 
990
- # Optional. The Google Cloud Console will try to default to a configuration
991
- # that matches the value specified in this `Policy`. If `suggested_value`
992
- # is not set, it will inherit the value specified higher in the hierarchy,
993
- # unless `inherit_from_parent` is `false`.
1195
+ # Optional. The Google Cloud Console will try to default to a configuration that
1196
+ # matches the value specified in this `Policy`. If `suggested_value` is not set,
1197
+ # it will inherit the value specified higher in the hierarchy, unless `
1198
+ # inherit_from_parent` is `false`.
994
1199
  # Corresponds to the JSON property `suggestedValue`
995
1200
  # @return [String]
996
1201
  attr_accessor :suggested_value
@@ -1020,76 +1225,65 @@ module Google
1020
1225
  # @return [Google::Apis::CloudassetV1::GoogleCloudOrgpolicyV1BooleanPolicy]
1021
1226
  attr_accessor :boolean_policy
1022
1227
 
1023
- # The name of the `Constraint` the `Policy` is configuring, for example,
1024
- # `constraints/serviceuser.services`.
1025
- # A [list of available
1026
- # constraints](/resource-manager/docs/organization-policy/org-policy-constraints)
1027
- # is available.
1228
+ # The name of the `Constraint` the `Policy` is configuring, for example, `
1229
+ # constraints/serviceuser.services`. A [list of available constraints](/resource-
1230
+ # manager/docs/organization-policy/org-policy-constraints) is available.
1028
1231
  # Immutable after creation.
1029
1232
  # Corresponds to the JSON property `constraint`
1030
1233
  # @return [String]
1031
1234
  attr_accessor :constraint
1032
1235
 
1033
1236
  # An opaque tag indicating the current version of the `Policy`, used for
1034
- # concurrency control.
1035
- # When the `Policy` is returned from either a `GetPolicy` or a
1036
- # `ListOrgPolicy` request, this `etag` indicates the version of the current
1037
- # `Policy` to use when executing a read-modify-write loop.
1038
- # When the `Policy` is returned from a `GetEffectivePolicy` request, the
1039
- # `etag` will be unset.
1040
- # When the `Policy` is used in a `SetOrgPolicy` method, use the `etag` value
1041
- # that was returned from a `GetOrgPolicy` request as part of a
1042
- # read-modify-write loop for concurrency control. Not setting the `etag`in a
1043
- # `SetOrgPolicy` request will result in an unconditional write of the
1044
- # `Policy`.
1237
+ # concurrency control. When the `Policy` is returned from either a `GetPolicy`
1238
+ # or a `ListOrgPolicy` request, this `etag` indicates the version of the current
1239
+ # `Policy` to use when executing a read-modify-write loop. When the `Policy` is
1240
+ # returned from a `GetEffectivePolicy` request, the `etag` will be unset. When
1241
+ # the `Policy` is used in a `SetOrgPolicy` method, use the `etag` value that was
1242
+ # returned from a `GetOrgPolicy` request as part of a read-modify-write loop for
1243
+ # concurrency control. Not setting the `etag`in a `SetOrgPolicy` request will
1244
+ # result in an unconditional write of the `Policy`.
1045
1245
  # Corresponds to the JSON property `etag`
1046
1246
  # NOTE: Values are automatically base64 encoded/decoded in the client library.
1047
1247
  # @return [String]
1048
1248
  attr_accessor :etag
1049
1249
 
1050
- # Used in `policy_type` to specify how `list_policy` behaves at this
1051
- # resource.
1052
- # `ListPolicy` can define specific values and subtrees of Cloud Resource
1053
- # Manager resource hierarchy (`Organizations`, `Folders`, `Projects`) that
1054
- # are allowed or denied by setting the `allowed_values` and `denied_values`
1055
- # fields. This is achieved by using the `under:` and optional `is:` prefixes.
1056
- # The `under:` prefix is used to denote resource subtree values.
1057
- # The `is:` prefix is used to denote specific values, and is required only
1058
- # if the value contains a ":". Values prefixed with "is:" are treated the
1059
- # same as values with no prefix.
1060
- # Ancestry subtrees must be in one of the following formats:
1061
- # - "projects/<project-id>", e.g. "projects/tokyo-rain-123"
1062
- # - "folders/<folder-id>", e.g. "folders/1234"
1063
- # - "organizations/<organization-id>", e.g. "organizations/1234"
1064
- # The `supports_under` field of the associated `Constraint` defines whether
1065
- # ancestry prefixes can be used. You can set `allowed_values` and
1066
- # `denied_values` in the same `Policy` if `all_values` is
1067
- # `ALL_VALUES_UNSPECIFIED`. `ALLOW` or `DENY` are used to allow or deny all
1068
- # values. If `all_values` is set to either `ALLOW` or `DENY`,
1069
- # `allowed_values` and `denied_values` must be unset.
1250
+ # Used in `policy_type` to specify how `list_policy` behaves at this resource. `
1251
+ # ListPolicy` can define specific values and subtrees of Cloud Resource Manager
1252
+ # resource hierarchy (`Organizations`, `Folders`, `Projects`) that are allowed
1253
+ # or denied by setting the `allowed_values` and `denied_values` fields. This is
1254
+ # achieved by using the `under:` and optional `is:` prefixes. The `under:`
1255
+ # prefix is used to denote resource subtree values. The `is:` prefix is used to
1256
+ # denote specific values, and is required only if the value contains a ":".
1257
+ # Values prefixed with "is:" are treated the same as values with no prefix.
1258
+ # Ancestry subtrees must be in one of the following formats: - "projects/", e.g.
1259
+ # "projects/tokyo-rain-123" - "folders/", e.g. "folders/1234" - "organizations/",
1260
+ # e.g. "organizations/1234" The `supports_under` field of the associated `
1261
+ # Constraint` defines whether ancestry prefixes can be used. You can set `
1262
+ # allowed_values` and `denied_values` in the same `Policy` if `all_values` is `
1263
+ # ALL_VALUES_UNSPECIFIED`. `ALLOW` or `DENY` are used to allow or deny all
1264
+ # values. If `all_values` is set to either `ALLOW` or `DENY`, `allowed_values`
1265
+ # and `denied_values` must be unset.
1070
1266
  # Corresponds to the JSON property `listPolicy`
1071
1267
  # @return [Google::Apis::CloudassetV1::GoogleCloudOrgpolicyV1ListPolicy]
1072
1268
  attr_accessor :list_policy
1073
1269
 
1074
- # Ignores policies set above this resource and restores the
1075
- # `constraint_default` enforcement behavior of the specific `Constraint` at
1076
- # this resource.
1077
- # Suppose that `constraint_default` is set to `ALLOW` for the
1078
- # `Constraint` `constraints/serviceuser.services`. Suppose that organization
1079
- # foo.com sets a `Policy` at their Organization resource node that restricts
1080
- # the allowed service activations to deny all service activations. They
1081
- # could then set a `Policy` with the `policy_type` `restore_default` on
1082
- # several experimental projects, restoring the `constraint_default`
1083
- # enforcement of the `Constraint` for only those projects, allowing those
1084
- # projects to have all services activated.
1270
+ # Ignores policies set above this resource and restores the `constraint_default`
1271
+ # enforcement behavior of the specific `Constraint` at this resource. Suppose
1272
+ # that `constraint_default` is set to `ALLOW` for the `Constraint` `constraints/
1273
+ # serviceuser.services`. Suppose that organization foo.com sets a `Policy` at
1274
+ # their Organization resource node that restricts the allowed service
1275
+ # activations to deny all service activations. They could then set a `Policy`
1276
+ # with the `policy_type` `restore_default` on several experimental projects,
1277
+ # restoring the `constraint_default` enforcement of the `Constraint` for only
1278
+ # those projects, allowing those projects to have all services activated.
1085
1279
  # Corresponds to the JSON property `restoreDefault`
1086
1280
  # @return [Google::Apis::CloudassetV1::GoogleCloudOrgpolicyV1RestoreDefault]
1087
1281
  attr_accessor :restore_default
1088
1282
 
1089
- # The time stamp the `Policy` was previously updated. This is set by the
1090
- # server, not specified by the caller, and represents the last time a call to
1091
- # `SetOrgPolicy` was made for that `Policy`. Any value set by the client will
1092
- # be ignored.
1283
+ # The time stamp the `Policy` was previously updated. This is set by the server,
1284
+ # not specified by the caller, and represents the last time a call to `
1285
+ # SetOrgPolicy` was made for that `Policy`. Any value set by the client will be
1286
+ # ignored.
1093
1287
  # Corresponds to the JSON property `updateTime`
1094
1288
  # @return [String]
1095
1289
  attr_accessor :update_time
@@ -1115,17 +1309,15 @@ module Google
1115
1309
  end
1116
1310
  end
1117
1311
 
1118
- # Ignores policies set above this resource and restores the
1119
- # `constraint_default` enforcement behavior of the specific `Constraint` at
1120
- # this resource.
1121
- # Suppose that `constraint_default` is set to `ALLOW` for the
1122
- # `Constraint` `constraints/serviceuser.services`. Suppose that organization
1123
- # foo.com sets a `Policy` at their Organization resource node that restricts
1124
- # the allowed service activations to deny all service activations. They
1125
- # could then set a `Policy` with the `policy_type` `restore_default` on
1126
- # several experimental projects, restoring the `constraint_default`
1127
- # enforcement of the `Constraint` for only those projects, allowing those
1128
- # projects to have all services activated.
1312
+ # Ignores policies set above this resource and restores the `constraint_default`
1313
+ # enforcement behavior of the specific `Constraint` at this resource. Suppose
1314
+ # that `constraint_default` is set to `ALLOW` for the `Constraint` `constraints/
1315
+ # serviceuser.services`. Suppose that organization foo.com sets a `Policy` at
1316
+ # their Organization resource node that restricts the allowed service
1317
+ # activations to deny all service activations. They could then set a `Policy`
1318
+ # with the `policy_type` `restore_default` on several experimental projects,
1319
+ # restoring the `constraint_default` enforcement of the `Constraint` for only
1320
+ # those projects, allowing those projects to have all services activated.
1129
1321
  class GoogleCloudOrgpolicyV1RestoreDefault
1130
1322
  include Google::Apis::Core::Hashable
1131
1323
 
@@ -1150,8 +1342,8 @@ module Google
1150
1342
  attr_accessor :basic
1151
1343
 
1152
1344
  # `CustomLevel` is an `AccessLevel` using the Cloud Common Expression Language
1153
- # to represent the necessary conditions for the level to apply to a request.
1154
- # See CEL spec at: https://github.com/google/cel-spec
1345
+ # to represent the necessary conditions for the level to apply to a request. See
1346
+ # CEL spec at: https://github.com/google/cel-spec
1155
1347
  # Corresponds to the JSON property `custom`
1156
1348
  # @return [Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1CustomLevel]
1157
1349
  attr_accessor :custom
@@ -1161,10 +1353,10 @@ module Google
1161
1353
  # @return [String]
1162
1354
  attr_accessor :description
1163
1355
 
1164
- # Required. Resource name for the Access Level. The `short_name` component
1165
- # must begin with a letter and only include alphanumeric and '_'. Format:
1166
- # `accessPolicies/`policy_id`/accessLevels/`short_name``. The maximum length
1167
- # of the `short_name` component is 50 characters.
1356
+ # Required. Resource name for the Access Level. The `short_name` component must
1357
+ # begin with a letter and only include alphanumeric and '_'. Format: `
1358
+ # accessPolicies/`policy_id`/accessLevels/`short_name``. The maximum length of
1359
+ # the `short_name` component is 50 characters.
1168
1360
  # Corresponds to the JSON property `name`
1169
1361
  # @return [String]
1170
1362
  attr_accessor :name
@@ -1189,30 +1381,29 @@ module Google
1189
1381
  end
1190
1382
 
1191
1383
  # `AccessPolicy` is a container for `AccessLevels` (which define the necessary
1192
- # attributes to use Google Cloud services) and `ServicePerimeters` (which
1193
- # define regions of services able to freely pass data within a perimeter). An
1194
- # access policy is globally visible within an organization, and the
1195
- # restrictions it specifies apply to all projects within an organization.
1384
+ # attributes to use Google Cloud services) and `ServicePerimeters` (which define
1385
+ # regions of services able to freely pass data within a perimeter). An access
1386
+ # policy is globally visible within an organization, and the restrictions it
1387
+ # specifies apply to all projects within an organization.
1196
1388
  class GoogleIdentityAccesscontextmanagerV1AccessPolicy
1197
1389
  include Google::Apis::Core::Hashable
1198
1390
 
1199
- # Output only. An opaque identifier for the current version of the
1200
- # `AccessPolicy`. This will always be a strongly validated etag, meaning that
1201
- # two Access Polices will be identical if and only if their etags are
1202
- # identical. Clients should not expect this to be in any specific format.
1391
+ # Output only. An opaque identifier for the current version of the `AccessPolicy`
1392
+ # . This will always be a strongly validated etag, meaning that two Access
1393
+ # Polices will be identical if and only if their etags are identical. Clients
1394
+ # should not expect this to be in any specific format.
1203
1395
  # Corresponds to the JSON property `etag`
1204
1396
  # @return [String]
1205
1397
  attr_accessor :etag
1206
1398
 
1207
- # Output only. Resource name of the `AccessPolicy`. Format:
1208
- # `accessPolicies/`policy_id``
1399
+ # Output only. Resource name of the `AccessPolicy`. Format: `accessPolicies/`
1400
+ # policy_id``
1209
1401
  # Corresponds to the JSON property `name`
1210
1402
  # @return [String]
1211
1403
  attr_accessor :name
1212
1404
 
1213
- # Required. The parent of this `AccessPolicy` in the Cloud Resource
1214
- # Hierarchy. Currently immutable once created. Format:
1215
- # `organizations/`organization_id``
1405
+ # Required. The parent of this `AccessPolicy` in the Cloud Resource Hierarchy.
1406
+ # Currently immutable once created. Format: `organizations/`organization_id``
1216
1407
  # Corresponds to the JSON property `parent`
1217
1408
  # @return [String]
1218
1409
  attr_accessor :parent
@@ -1240,10 +1431,10 @@ module Google
1240
1431
  include Google::Apis::Core::Hashable
1241
1432
 
1242
1433
  # How the `conditions` list should be combined to determine if a request is
1243
- # granted this `AccessLevel`. If AND is used, each `Condition` in
1244
- # `conditions` must be satisfied for the `AccessLevel` to be applied. If OR
1245
- # is used, at least one `Condition` in `conditions` must be satisfied for the
1246
- # `AccessLevel` to be applied. Default behavior is AND.
1434
+ # granted this `AccessLevel`. If AND is used, each `Condition` in `conditions`
1435
+ # must be satisfied for the `AccessLevel` to be applied. If OR is used, at least
1436
+ # one `Condition` in `conditions` must be satisfied for the `AccessLevel` to be
1437
+ # applied. Default behavior is AND.
1247
1438
  # Corresponds to the JSON property `combiningFunction`
1248
1439
  # @return [String]
1249
1440
  attr_accessor :combining_function
@@ -1277,54 +1468,48 @@ module Google
1277
1468
  # devices to be granted access levels, it does not do any enforcement on the
1278
1469
  # device. `DevicePolicy` acts as an AND over all specified fields, and each
1279
1470
  # repeated field is an OR over its elements. Any unset fields are ignored. For
1280
- # example, if the proto is ` os_type : DESKTOP_WINDOWS, os_type :
1281
- # DESKTOP_LINUX, encryption_status: ENCRYPTED`, then the DevicePolicy will be
1282
- # true for requests originating from encrypted Linux desktops and encrypted
1283
- # Windows desktops.
1471
+ # example, if the proto is ` os_type : DESKTOP_WINDOWS, os_type : DESKTOP_LINUX,
1472
+ # encryption_status: ENCRYPTED`, then the DevicePolicy will be true for requests
1473
+ # originating from encrypted Linux desktops and encrypted Windows desktops.
1284
1474
  # Corresponds to the JSON property `devicePolicy`
1285
1475
  # @return [Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1DevicePolicy]
1286
1476
  attr_accessor :device_policy
1287
1477
 
1288
- # CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that for
1289
- # a CIDR IP address block, the specified IP address portion must be properly
1478
+ # CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that for a
1479
+ # CIDR IP address block, the specified IP address portion must be properly
1290
1480
  # truncated (i.e. all the host bits must be zero) or the input is considered
1291
- # malformed. For example, "192.0.2.0/24" is accepted but "192.0.2.1/24" is
1292
- # not. Similarly, for IPv6, "2001:db8::/32" is accepted whereas
1293
- # "2001:db8::1/32" is not. The originating IP of a request must be in one of
1294
- # the listed subnets in order for this Condition to be true. If empty, all IP
1295
- # addresses are allowed.
1481
+ # malformed. For example, "192.0.2.0/24" is accepted but "192.0.2.1/24" is not.
1482
+ # Similarly, for IPv6, "2001:db8::/32" is accepted whereas "2001:db8::1/32" is
1483
+ # not. The originating IP of a request must be in one of the listed subnets in
1484
+ # order for this Condition to be true. If empty, all IP addresses are allowed.
1296
1485
  # Corresponds to the JSON property `ipSubnetworks`
1297
1486
  # @return [Array<String>]
1298
1487
  attr_accessor :ip_subnetworks
1299
1488
 
1300
- # The request must be made by one of the provided user or service
1301
- # accounts. Groups are not supported.
1302
- # Syntax:
1303
- # `user:`emailid``
1304
- # `serviceAccount:`emailid``
1489
+ # The request must be made by one of the provided user or service accounts.
1490
+ # Groups are not supported. Syntax: `user:`emailid`` `serviceAccount:`emailid``
1305
1491
  # If not specified, a request may come from any user.
1306
1492
  # Corresponds to the JSON property `members`
1307
1493
  # @return [Array<String>]
1308
1494
  attr_accessor :members
1309
1495
 
1310
1496
  # Whether to negate the Condition. If true, the Condition becomes a NAND over
1311
- # its non-empty fields, each field must be false for the Condition overall to
1312
- # be satisfied. Defaults to false.
1497
+ # its non-empty fields, each field must be false for the Condition overall to be
1498
+ # satisfied. Defaults to false.
1313
1499
  # Corresponds to the JSON property `negate`
1314
1500
  # @return [Boolean]
1315
1501
  attr_accessor :negate
1316
1502
  alias_method :negate?, :negate
1317
1503
 
1318
- # The request must originate from one of the provided countries/regions.
1319
- # Must be valid ISO 3166-1 alpha-2 codes.
1504
+ # The request must originate from one of the provided countries/regions. Must be
1505
+ # valid ISO 3166-1 alpha-2 codes.
1320
1506
  # Corresponds to the JSON property `regions`
1321
1507
  # @return [Array<String>]
1322
1508
  attr_accessor :regions
1323
1509
 
1324
1510
  # A list of other access levels defined in the same `Policy`, referenced by
1325
- # resource name. Referencing an `AccessLevel` which does not exist is an
1326
- # error. All access levels listed must be granted for the Condition
1327
- # to be true. Example:
1511
+ # resource name. Referencing an `AccessLevel` which does not exist is an error.
1512
+ # All access levels listed must be granted for the Condition to be true. Example:
1328
1513
  # "`accessPolicies/MY_POLICY/accessLevels/LEVEL_NAME"`
1329
1514
  # Corresponds to the JSON property `requiredAccessLevels`
1330
1515
  # @return [Array<String>]
@@ -1346,33 +1531,26 @@ module Google
1346
1531
  end
1347
1532
 
1348
1533
  # `CustomLevel` is an `AccessLevel` using the Cloud Common Expression Language
1349
- # to represent the necessary conditions for the level to apply to a request.
1350
- # See CEL spec at: https://github.com/google/cel-spec
1534
+ # to represent the necessary conditions for the level to apply to a request. See
1535
+ # CEL spec at: https://github.com/google/cel-spec
1351
1536
  class GoogleIdentityAccesscontextmanagerV1CustomLevel
1352
1537
  include Google::Apis::Core::Hashable
1353
1538
 
1354
- # Represents a textual expression in the Common Expression Language (CEL)
1355
- # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
1356
- # are documented at https://github.com/google/cel-spec.
1357
- # Example (Comparison):
1358
- # title: "Summary size limit"
1359
- # description: "Determines if a summary is less than 100 chars"
1360
- # expression: "document.summary.size() < 100"
1361
- # Example (Equality):
1362
- # title: "Requestor is owner"
1363
- # description: "Determines if requestor is the document owner"
1364
- # expression: "document.owner == request.auth.claims.email"
1365
- # Example (Logic):
1366
- # title: "Public documents"
1367
- # description: "Determine whether the document should be publicly visible"
1368
- # expression: "document.type != 'private' && document.type != 'internal'"
1369
- # Example (Data Manipulation):
1370
- # title: "Notification string"
1371
- # description: "Create a notification string with a timestamp."
1372
- # expression: "'New message received at ' + string(document.create_time)"
1373
- # The exact variables and functions that may be referenced within an expression
1374
- # are determined by the service that evaluates it. See the service
1375
- # documentation for additional information.
1539
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
1540
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
1541
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
1542
+ # "Summary size limit" description: "Determines if a summary is less than 100
1543
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
1544
+ # Requestor is owner" description: "Determines if requestor is the document
1545
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
1546
+ # Logic): title: "Public documents" description: "Determine whether the document
1547
+ # should be publicly visible" expression: "document.type != 'private' &&
1548
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
1549
+ # string" description: "Create a notification string with a timestamp."
1550
+ # expression: "'New message received at ' + string(document.create_time)" The
1551
+ # exact variables and functions that may be referenced within an expression are
1552
+ # determined by the service that evaluates it. See the service documentation for
1553
+ # additional information.
1376
1554
  # Corresponds to the JSON property `expr`
1377
1555
  # @return [Google::Apis::CloudassetV1::Expr]
1378
1556
  attr_accessor :expr
@@ -1392,15 +1570,13 @@ module Google
1392
1570
  # devices to be granted access levels, it does not do any enforcement on the
1393
1571
  # device. `DevicePolicy` acts as an AND over all specified fields, and each
1394
1572
  # repeated field is an OR over its elements. Any unset fields are ignored. For
1395
- # example, if the proto is ` os_type : DESKTOP_WINDOWS, os_type :
1396
- # DESKTOP_LINUX, encryption_status: ENCRYPTED`, then the DevicePolicy will be
1397
- # true for requests originating from encrypted Linux desktops and encrypted
1398
- # Windows desktops.
1573
+ # example, if the proto is ` os_type : DESKTOP_WINDOWS, os_type : DESKTOP_LINUX,
1574
+ # encryption_status: ENCRYPTED`, then the DevicePolicy will be true for requests
1575
+ # originating from encrypted Linux desktops and encrypted Windows desktops.
1399
1576
  class GoogleIdentityAccesscontextmanagerV1DevicePolicy
1400
1577
  include Google::Apis::Core::Hashable
1401
1578
 
1402
- # Allowed device management levels, an empty list allows all management
1403
- # levels.
1579
+ # Allowed device management levels, an empty list allows all management levels.
1404
1580
  # Corresponds to the JSON property `allowedDeviceManagementLevels`
1405
1581
  # @return [Array<String>]
1406
1582
  attr_accessor :allowed_device_management_levels
@@ -1453,9 +1629,9 @@ module Google
1453
1629
  class GoogleIdentityAccesscontextmanagerV1OsConstraint
1454
1630
  include Google::Apis::Core::Hashable
1455
1631
 
1456
- # The minimum allowed OS version. If not set, any version of this OS
1457
- # satisfies the constraint. Format: `"major.minor.patch"`.
1458
- # Examples: `"10.5.301"`, `"9.2.1"`.
1632
+ # The minimum allowed OS version. If not set, any version of this OS satisfies
1633
+ # the constraint. Format: `"major.minor.patch"`. Examples: `"10.5.301"`, `"9.2.1"
1634
+ # `.
1459
1635
  # Corresponds to the JSON property `minimumVersion`
1460
1636
  # @return [String]
1461
1637
  attr_accessor :minimum_version
@@ -1465,10 +1641,10 @@ module Google
1465
1641
  # @return [String]
1466
1642
  attr_accessor :os_type
1467
1643
 
1468
- # Only allows requests from devices with a verified Chrome OS.
1469
- # Verifications includes requirements that the device is enterprise-managed,
1470
- # conformant to domain policies, and the caller has permission to call
1471
- # the API targeted by the request.
1644
+ # Only allows requests from devices with a verified Chrome OS. Verifications
1645
+ # includes requirements that the device is enterprise-managed, conformant to
1646
+ # domain policies, and the caller has permission to call the API targeted by the
1647
+ # request.
1472
1648
  # Corresponds to the JSON property `requireVerifiedChromeOs`
1473
1649
  # @return [Boolean]
1474
1650
  attr_accessor :require_verified_chrome_os
@@ -1487,37 +1663,34 @@ module Google
1487
1663
  end
1488
1664
 
1489
1665
  # `ServicePerimeter` describes a set of Google Cloud resources which can freely
1490
- # import and export data amongst themselves, but not export outside of the
1491
- # `ServicePerimeter`. If a request with a source within this `ServicePerimeter`
1666
+ # import and export data amongst themselves, but not export outside of the `
1667
+ # ServicePerimeter`. If a request with a source within this `ServicePerimeter`
1492
1668
  # has a target outside of the `ServicePerimeter`, the request will be blocked.
1493
1669
  # Otherwise the request is allowed. There are two types of Service Perimeter -
1494
- # Regular and Bridge. Regular Service Perimeters cannot overlap, a single
1495
- # Google Cloud project can only belong to a single regular Service Perimeter.
1496
- # Service Perimeter Bridges can contain only Google Cloud projects as members,
1497
- # a single Google Cloud project may belong to multiple Service Perimeter
1498
- # Bridges.
1670
+ # Regular and Bridge. Regular Service Perimeters cannot overlap, a single Google
1671
+ # Cloud project can only belong to a single regular Service Perimeter. Service
1672
+ # Perimeter Bridges can contain only Google Cloud projects as members, a single
1673
+ # Google Cloud project may belong to multiple Service Perimeter Bridges.
1499
1674
  class GoogleIdentityAccesscontextmanagerV1ServicePerimeter
1500
1675
  include Google::Apis::Core::Hashable
1501
1676
 
1502
- # Description of the `ServicePerimeter` and its use. Does not affect
1503
- # behavior.
1677
+ # Description of the `ServicePerimeter` and its use. Does not affect behavior.
1504
1678
  # Corresponds to the JSON property `description`
1505
1679
  # @return [String]
1506
1680
  attr_accessor :description
1507
1681
 
1508
- # Required. Resource name for the ServicePerimeter. The `short_name`
1509
- # component must begin with a letter and only include alphanumeric and '_'.
1510
- # Format: `accessPolicies/`policy_id`/servicePerimeters/`short_name``
1682
+ # Required. Resource name for the ServicePerimeter. The `short_name` component
1683
+ # must begin with a letter and only include alphanumeric and '_'. Format: `
1684
+ # accessPolicies/`policy_id`/servicePerimeters/`short_name``
1511
1685
  # Corresponds to the JSON property `name`
1512
1686
  # @return [String]
1513
1687
  attr_accessor :name
1514
1688
 
1515
- # Perimeter type indicator. A single project is
1516
- # allowed to be a member of single regular perimeter, but multiple service
1517
- # perimeter bridges. A project cannot be a included in a perimeter bridge
1518
- # without being included in regular perimeter. For perimeter bridges,
1519
- # the restricted service list as well as access level lists must be
1520
- # empty.
1689
+ # Perimeter type indicator. A single project is allowed to be a member of single
1690
+ # regular perimeter, but multiple service perimeter bridges. A project cannot be
1691
+ # a included in a perimeter bridge without being included in regular perimeter.
1692
+ # For perimeter bridges, the restricted service list as well as access level
1693
+ # lists must be empty.
1521
1694
  # Corresponds to the JSON property `perimeterType`
1522
1695
  # @return [String]
1523
1696
  attr_accessor :perimeter_type
@@ -1539,16 +1712,15 @@ module Google
1539
1712
  # @return [String]
1540
1713
  attr_accessor :title
1541
1714
 
1542
- # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly
1543
- # exists for all Service Perimeters, and that spec is identical to the
1544
- # status for those Service Perimeters. When this flag is set, it inhibits the
1545
- # generation of the implicit spec, thereby allowing the user to explicitly
1546
- # provide a configuration ("spec") to use in a dry-run version of the Service
1547
- # Perimeter. This allows the user to test changes to the enforced config
1548
- # ("status") without actually enforcing them. This testing is done through
1549
- # analyzing the differences between currently enforced and suggested
1550
- # restrictions. use_explicit_dry_run_spec must bet set to True if any of the
1551
- # fields in the spec are set to non-default values.
1715
+ # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly exists
1716
+ # for all Service Perimeters, and that spec is identical to the status for those
1717
+ # Service Perimeters. When this flag is set, it inhibits the generation of the
1718
+ # implicit spec, thereby allowing the user to explicitly provide a configuration
1719
+ # ("spec") to use in a dry-run version of the Service Perimeter. This allows the
1720
+ # user to test changes to the enforced config ("status") without actually
1721
+ # enforcing them. This testing is done through analyzing the differences between
1722
+ # currently enforced and suggested restrictions. use_explicit_dry_run_spec must
1723
+ # bet set to True if any of the fields in the spec are set to non-default values.
1552
1724
  # Corresponds to the JSON property `useExplicitDryRunSpec`
1553
1725
  # @return [Boolean]
1554
1726
  attr_accessor :use_explicit_dry_run_spec
@@ -1575,14 +1747,13 @@ module Google
1575
1747
  class GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig
1576
1748
  include Google::Apis::Core::Hashable
1577
1749
 
1578
- # A list of `AccessLevel` resource names that allow resources within the
1579
- # `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed
1580
- # must be in the same policy as this `ServicePerimeter`. Referencing a
1581
- # nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are
1582
- # listed, resources within the perimeter can only be accessed via Google
1583
- # Cloud calls with request origins within the perimeter. Example:
1584
- # `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`.
1585
- # For Service Perimeter Bridge, must be empty.
1750
+ # A list of `AccessLevel` resource names that allow resources within the `
1751
+ # ServicePerimeter` to be accessed from the internet. `AccessLevels` listed must
1752
+ # be in the same policy as this `ServicePerimeter`. Referencing a nonexistent `
1753
+ # AccessLevel` is a syntax error. If no `AccessLevel` names are listed,
1754
+ # resources within the perimeter can only be accessed via Google Cloud calls
1755
+ # with request origins within the perimeter. Example: `"accessPolicies/MY_POLICY/
1756
+ # accessLevels/MY_LEVEL"`. For Service Perimeter Bridge, must be empty.
1586
1757
  # Corresponds to the JSON property `accessLevels`
1587
1758
  # @return [Array<String>]
1588
1759
  attr_accessor :access_levels
@@ -1593,16 +1764,14 @@ module Google
1593
1764
  # @return [Array<String>]
1594
1765
  attr_accessor :resources
1595
1766
 
1596
- # Google Cloud services that are subject to the Service Perimeter
1597
- # restrictions. For example, if `storage.googleapis.com` is specified, access
1598
- # to the storage buckets inside the perimeter must meet the perimeter's
1599
- # access restrictions.
1767
+ # Google Cloud services that are subject to the Service Perimeter restrictions.
1768
+ # For example, if `storage.googleapis.com` is specified, access to the storage
1769
+ # buckets inside the perimeter must meet the perimeter's access restrictions.
1600
1770
  # Corresponds to the JSON property `restrictedServices`
1601
1771
  # @return [Array<String>]
1602
1772
  attr_accessor :restricted_services
1603
1773
 
1604
- # Specifies how APIs are allowed to communicate within the Service
1605
- # Perimeter.
1774
+ # Specifies how APIs are allowed to communicate within the Service Perimeter.
1606
1775
  # Corresponds to the JSON property `vpcAccessibleServices`
1607
1776
  # @return [Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices]
1608
1777
  attr_accessor :vpc_accessible_services
@@ -1620,21 +1789,20 @@ module Google
1620
1789
  end
1621
1790
  end
1622
1791
 
1623
- # Specifies how APIs are allowed to communicate within the Service
1624
- # Perimeter.
1792
+ # Specifies how APIs are allowed to communicate within the Service Perimeter.
1625
1793
  class GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices
1626
1794
  include Google::Apis::Core::Hashable
1627
1795
 
1628
- # The list of APIs usable within the Service Perimeter. Must be empty
1629
- # unless 'enable_restriction' is True. You can specify a list of individual
1630
- # services, as well as include the 'RESTRICTED-SERVICES' value, which
1631
- # automatically includes all of the services protected by the perimeter.
1796
+ # The list of APIs usable within the Service Perimeter. Must be empty unless '
1797
+ # enable_restriction' is True. You can specify a list of individual services, as
1798
+ # well as include the 'RESTRICTED-SERVICES' value, which automatically includes
1799
+ # all of the services protected by the perimeter.
1632
1800
  # Corresponds to the JSON property `allowedServices`
1633
1801
  # @return [Array<String>]
1634
1802
  attr_accessor :allowed_services
1635
1803
 
1636
- # Whether to restrict API calls within the Service Perimeter to the list of
1637
- # APIs specified in 'allowed_services'.
1804
+ # Whether to restrict API calls within the Service Perimeter to the list of APIs
1805
+ # specified in 'allowed_services'.
1638
1806
  # Corresponds to the JSON property `enableRestriction`
1639
1807
  # @return [Boolean]
1640
1808
  attr_accessor :enable_restriction
@@ -1651,6 +1819,206 @@ module Google
1651
1819
  end
1652
1820
  end
1653
1821
 
1822
+ # An analysis message to group the query and results.
1823
+ class IamPolicyAnalysis
1824
+ include Google::Apis::Core::Hashable
1825
+
1826
+ # IAM policy analysis query message.
1827
+ # Corresponds to the JSON property `analysisQuery`
1828
+ # @return [Google::Apis::CloudassetV1::IamPolicyAnalysisQuery]
1829
+ attr_accessor :analysis_query
1830
+
1831
+ # A list of IamPolicyAnalysisResult that matches the analysis query, or empty if
1832
+ # no result is found.
1833
+ # Corresponds to the JSON property `analysisResults`
1834
+ # @return [Array<Google::Apis::CloudassetV1::IamPolicyAnalysisResult>]
1835
+ attr_accessor :analysis_results
1836
+
1837
+ # Represents whether all entries in the analysis_results have been fully
1838
+ # explored to answer the query.
1839
+ # Corresponds to the JSON property `fullyExplored`
1840
+ # @return [Boolean]
1841
+ attr_accessor :fully_explored
1842
+ alias_method :fully_explored?, :fully_explored
1843
+
1844
+ # A list of non-critical errors happened during the query handling.
1845
+ # Corresponds to the JSON property `nonCriticalErrors`
1846
+ # @return [Array<Google::Apis::CloudassetV1::IamPolicyAnalysisState>]
1847
+ attr_accessor :non_critical_errors
1848
+
1849
+ def initialize(**args)
1850
+ update!(**args)
1851
+ end
1852
+
1853
+ # Update properties of this object
1854
+ def update!(**args)
1855
+ @analysis_query = args[:analysis_query] if args.key?(:analysis_query)
1856
+ @analysis_results = args[:analysis_results] if args.key?(:analysis_results)
1857
+ @fully_explored = args[:fully_explored] if args.key?(:fully_explored)
1858
+ @non_critical_errors = args[:non_critical_errors] if args.key?(:non_critical_errors)
1859
+ end
1860
+ end
1861
+
1862
+ # Output configuration for export IAM policy analysis destination.
1863
+ class IamPolicyAnalysisOutputConfig
1864
+ include Google::Apis::Core::Hashable
1865
+
1866
+ # A BigQuery destination.
1867
+ # Corresponds to the JSON property `bigqueryDestination`
1868
+ # @return [Google::Apis::CloudassetV1::GoogleCloudAssetV1BigQueryDestination]
1869
+ attr_accessor :bigquery_destination
1870
+
1871
+ # A Cloud Storage location.
1872
+ # Corresponds to the JSON property `gcsDestination`
1873
+ # @return [Google::Apis::CloudassetV1::GoogleCloudAssetV1GcsDestination]
1874
+ attr_accessor :gcs_destination
1875
+
1876
+ def initialize(**args)
1877
+ update!(**args)
1878
+ end
1879
+
1880
+ # Update properties of this object
1881
+ def update!(**args)
1882
+ @bigquery_destination = args[:bigquery_destination] if args.key?(:bigquery_destination)
1883
+ @gcs_destination = args[:gcs_destination] if args.key?(:gcs_destination)
1884
+ end
1885
+ end
1886
+
1887
+ # IAM policy analysis query message.
1888
+ class IamPolicyAnalysisQuery
1889
+ include Google::Apis::Core::Hashable
1890
+
1891
+ # Specifies roles and/or permissions to analyze, to determine both the
1892
+ # identities possessing them and the resources they control. If multiple values
1893
+ # are specified, results will include roles or permissions matching any of them.
1894
+ # The total number of roles and permissions should be equal or less than 10.
1895
+ # Corresponds to the JSON property `accessSelector`
1896
+ # @return [Google::Apis::CloudassetV1::AccessSelector]
1897
+ attr_accessor :access_selector
1898
+
1899
+ # Specifies an identity for which to determine resource access, based on roles
1900
+ # assigned either directly to them or to the groups they belong to, directly or
1901
+ # indirectly.
1902
+ # Corresponds to the JSON property `identitySelector`
1903
+ # @return [Google::Apis::CloudassetV1::IdentitySelector]
1904
+ attr_accessor :identity_selector
1905
+
1906
+ # Contains query options.
1907
+ # Corresponds to the JSON property `options`
1908
+ # @return [Google::Apis::CloudassetV1::Options]
1909
+ attr_accessor :options
1910
+
1911
+ # Specifies the resource to analyze for access policies, which may be set
1912
+ # directly on the resource, or on ancestors such as organizations, folders or
1913
+ # projects.
1914
+ # Corresponds to the JSON property `resourceSelector`
1915
+ # @return [Google::Apis::CloudassetV1::ResourceSelector]
1916
+ attr_accessor :resource_selector
1917
+
1918
+ # Required. The relative name of the root asset. Only resources and IAM policies
1919
+ # within the scope will be analyzed. This can only be an organization number (
1920
+ # such as "organizations/123"), a folder number (such as "folders/123"), a
1921
+ # project ID (such as "projects/my-project-id"), or a project number (such as "
1922
+ # projects/12345"). To know how to get organization id, visit [here ](https://
1923
+ # cloud.google.com/resource-manager/docs/creating-managing-organization#
1924
+ # retrieving_your_organization_id). To know how to get folder or project id,
1925
+ # visit [here ](https://cloud.google.com/resource-manager/docs/creating-managing-
1926
+ # folders#viewing_or_listing_folders_and_projects).
1927
+ # Corresponds to the JSON property `scope`
1928
+ # @return [String]
1929
+ attr_accessor :scope
1930
+
1931
+ def initialize(**args)
1932
+ update!(**args)
1933
+ end
1934
+
1935
+ # Update properties of this object
1936
+ def update!(**args)
1937
+ @access_selector = args[:access_selector] if args.key?(:access_selector)
1938
+ @identity_selector = args[:identity_selector] if args.key?(:identity_selector)
1939
+ @options = args[:options] if args.key?(:options)
1940
+ @resource_selector = args[:resource_selector] if args.key?(:resource_selector)
1941
+ @scope = args[:scope] if args.key?(:scope)
1942
+ end
1943
+ end
1944
+
1945
+ # IAM Policy analysis result, consisting of one IAM policy binding and derived
1946
+ # access control lists.
1947
+ class IamPolicyAnalysisResult
1948
+ include Google::Apis::Core::Hashable
1949
+
1950
+ # The access control lists derived from the iam_binding that match or
1951
+ # potentially match resource and access selectors specified in the request.
1952
+ # Corresponds to the JSON property `accessControlLists`
1953
+ # @return [Array<Google::Apis::CloudassetV1::GoogleCloudAssetV1AccessControlList>]
1954
+ attr_accessor :access_control_lists
1955
+
1956
+ # The [full resource name](https://cloud.google.com/asset-inventory/docs/
1957
+ # resource-name-format) of the resource to which the iam_binding policy attaches.
1958
+ # Corresponds to the JSON property `attachedResourceFullName`
1959
+ # @return [String]
1960
+ attr_accessor :attached_resource_full_name
1961
+
1962
+ # Represents whether all analyses on the iam_binding have successfully finished.
1963
+ # Corresponds to the JSON property `fullyExplored`
1964
+ # @return [Boolean]
1965
+ attr_accessor :fully_explored
1966
+ alias_method :fully_explored?, :fully_explored
1967
+
1968
+ # Associates `members` with a `role`.
1969
+ # Corresponds to the JSON property `iamBinding`
1970
+ # @return [Google::Apis::CloudassetV1::Binding]
1971
+ attr_accessor :iam_binding
1972
+
1973
+ # The identities and group edges.
1974
+ # Corresponds to the JSON property `identityList`
1975
+ # @return [Google::Apis::CloudassetV1::GoogleCloudAssetV1IdentityList]
1976
+ attr_accessor :identity_list
1977
+
1978
+ def initialize(**args)
1979
+ update!(**args)
1980
+ end
1981
+
1982
+ # Update properties of this object
1983
+ def update!(**args)
1984
+ @access_control_lists = args[:access_control_lists] if args.key?(:access_control_lists)
1985
+ @attached_resource_full_name = args[:attached_resource_full_name] if args.key?(:attached_resource_full_name)
1986
+ @fully_explored = args[:fully_explored] if args.key?(:fully_explored)
1987
+ @iam_binding = args[:iam_binding] if args.key?(:iam_binding)
1988
+ @identity_list = args[:identity_list] if args.key?(:identity_list)
1989
+ end
1990
+ end
1991
+
1992
+ # Represents the detailed state of an entity under analysis, such as a resource,
1993
+ # an identity or an access.
1994
+ class IamPolicyAnalysisState
1995
+ include Google::Apis::Core::Hashable
1996
+
1997
+ # The human-readable description of the cause of failure.
1998
+ # Corresponds to the JSON property `cause`
1999
+ # @return [String]
2000
+ attr_accessor :cause
2001
+
2002
+ # The Google standard error code that best describes the state. For example: -
2003
+ # OK means the analysis on this entity has been successfully finished; -
2004
+ # PERMISSION_DENIED means an access denied error is encountered; -
2005
+ # DEADLINE_EXCEEDED means the analysis on this entity hasn't been started in
2006
+ # time;
2007
+ # Corresponds to the JSON property `code`
2008
+ # @return [String]
2009
+ attr_accessor :code
2010
+
2011
+ def initialize(**args)
2012
+ update!(**args)
2013
+ end
2014
+
2015
+ # Update properties of this object
2016
+ def update!(**args)
2017
+ @cause = args[:cause] if args.key?(:cause)
2018
+ @code = args[:code] if args.key?(:code)
2019
+ end
2020
+ end
2021
+
1654
2022
  # A result of IAM Policy search, containing information of an IAM policy.
1655
2023
  class IamPolicySearchResult
1656
2024
  include Google::Apis::Core::Hashable
@@ -1661,90 +2029,52 @@ module Google
1661
2029
  attr_accessor :explanation
1662
2030
 
1663
2031
  # An Identity and Access Management (IAM) policy, which specifies access
1664
- # controls for Google Cloud resources.
1665
- # A `Policy` is a collection of `bindings`. A `binding` binds one or more
1666
- # `members` to a single `role`. Members can be user accounts, service accounts,
1667
- # Google groups, and domains (such as G Suite). A `role` is a named list of
1668
- # permissions; each `role` can be an IAM predefined role or a user-created
1669
- # custom role.
1670
- # For some types of Google Cloud resources, a `binding` can also specify a
1671
- # `condition`, which is a logical expression that allows access to a resource
1672
- # only if the expression evaluates to `true`. A condition can add constraints
1673
- # based on attributes of the request, the resource, or both. To learn which
1674
- # resources support conditions in their IAM policies, see the
1675
- # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
1676
- # policies).
1677
- # **JSON example:**
1678
- # `
1679
- # "bindings": [
1680
- # `
1681
- # "role": "roles/resourcemanager.organizationAdmin",
1682
- # "members": [
1683
- # "user:mike@example.com",
1684
- # "group:admins@example.com",
1685
- # "domain:google.com",
1686
- # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
1687
- # ]
1688
- # `,
1689
- # `
1690
- # "role": "roles/resourcemanager.organizationViewer",
1691
- # "members": [
1692
- # "user:eve@example.com"
1693
- # ],
1694
- # "condition": `
1695
- # "title": "expirable access",
1696
- # "description": "Does not grant access after Sep 2020",
1697
- # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')
1698
- # ",
1699
- # `
1700
- # `
1701
- # ],
1702
- # "etag": "BwWWja0YfJA=",
1703
- # "version": 3
1704
- # `
1705
- # **YAML example:**
1706
- # bindings:
1707
- # - members:
1708
- # - user:mike@example.com
1709
- # - group:admins@example.com
1710
- # - domain:google.com
1711
- # - serviceAccount:my-project-id@appspot.gserviceaccount.com
1712
- # role: roles/resourcemanager.organizationAdmin
1713
- # - members:
1714
- # - user:eve@example.com
1715
- # role: roles/resourcemanager.organizationViewer
1716
- # condition:
1717
- # title: expirable access
1718
- # description: Does not grant access after Sep 2020
1719
- # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
1720
- # - etag: BwWWja0YfJA=
1721
- # - version: 3
1722
- # For a description of IAM and its features, see the
1723
- # [IAM documentation](https://cloud.google.com/iam/docs/).
2032
+ # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
2033
+ # A `binding` binds one or more `members` to a single `role`. Members can be
2034
+ # user accounts, service accounts, Google groups, and domains (such as G Suite).
2035
+ # A `role` is a named list of permissions; each `role` can be an IAM predefined
2036
+ # role or a user-created custom role. For some types of Google Cloud resources,
2037
+ # a `binding` can also specify a `condition`, which is a logical expression that
2038
+ # allows access to a resource only if the expression evaluates to `true`. A
2039
+ # condition can add constraints based on attributes of the request, the resource,
2040
+ # or both. To learn which resources support conditions in their IAM policies,
2041
+ # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
2042
+ # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
2043
+ # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
2044
+ # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
2045
+ # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
2046
+ # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
2047
+ # title": "expirable access", "description": "Does not grant access after Sep
2048
+ # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
2049
+ # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
2050
+ # members: - user:mike@example.com - group:admins@example.com - domain:google.
2051
+ # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
2052
+ # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
2053
+ # roles/resourcemanager.organizationViewer condition: title: expirable access
2054
+ # description: Does not grant access after Sep 2020 expression: request.time <
2055
+ # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
2056
+ # description of IAM and its features, see the [IAM documentation](https://cloud.
2057
+ # google.com/iam/docs/).
1724
2058
  # Corresponds to the JSON property `policy`
1725
2059
  # @return [Google::Apis::CloudassetV1::Policy]
1726
2060
  attr_accessor :policy
1727
2061
 
1728
2062
  # The project that the associated GCP resource belongs to, in the form of
1729
2063
  # projects/`PROJECT_NUMBER`. If an IAM policy is set on a resource (like VM
1730
- # instance, Cloud Storage bucket), the project field will indicate the
1731
- # project that contains the resource. If an IAM policy is set on a folder or
1732
- # orgnization, the project field will be empty.
1733
- # To search against the `project`:
1734
- # * specify the `scope` field as this project in your search request.
2064
+ # instance, Cloud Storage bucket), the project field will indicate the project
2065
+ # that contains the resource. If an IAM policy is set on a folder or orgnization,
2066
+ # the project field will be empty. To search against the `project`: * specify
2067
+ # the `scope` field as this project in your search request.
1735
2068
  # Corresponds to the JSON property `project`
1736
2069
  # @return [String]
1737
2070
  attr_accessor :project
1738
2071
 
1739
2072
  # The full resource name of the resource associated with this IAM policy.
1740
- # Example:
1741
- # `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/
1742
- # instance1`.
1743
- # See [Cloud Asset Inventory Resource Name
1744
- # Format](https://cloud.google.com/asset-inventory/docs/resource-name-format)
1745
- # for more information.
1746
- # To search against the `resource`:
1747
- # * use a field query. Example: `resource : "organizations/123"`
2073
+ # Example: `//compute.googleapis.com/projects/my_project_123/zones/zone1/
2074
+ # instances/instance1`. See [Cloud Asset Inventory Resource Name Format](https://
2075
+ # cloud.google.com/asset-inventory/docs/resource-name-format) for more
2076
+ # information. To search against the `resource`: * use a field query. Example: `
2077
+ # resource:organizations/123`
1748
2078
  # Corresponds to the JSON property `resource`
1749
2079
  # @return [String]
1750
2080
  attr_accessor :resource
@@ -1762,6 +2092,32 @@ module Google
1762
2092
  end
1763
2093
  end
1764
2094
 
2095
+ # Specifies an identity for which to determine resource access, based on roles
2096
+ # assigned either directly to them or to the groups they belong to, directly or
2097
+ # indirectly.
2098
+ class IdentitySelector
2099
+ include Google::Apis::Core::Hashable
2100
+
2101
+ # Required. The identity appear in the form of members in [IAM policy binding](
2102
+ # https://cloud.google.com/iam/reference/rest/v1/Binding). The examples of
2103
+ # supported forms are: "user:mike@example.com", "group:admins@example.com", "
2104
+ # domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com".
2105
+ # Notice that wildcard characters (such as * and ?) are not supported. You must
2106
+ # give a specific identity.
2107
+ # Corresponds to the JSON property `identity`
2108
+ # @return [String]
2109
+ attr_accessor :identity
2110
+
2111
+ def initialize(**args)
2112
+ update!(**args)
2113
+ end
2114
+
2115
+ # Update properties of this object
2116
+ def update!(**args)
2117
+ @identity = args[:identity] if args.key?(:identity)
2118
+ end
2119
+ end
2120
+
1765
2121
  #
1766
2122
  class ListFeedsResponse
1767
2123
  include Google::Apis::Core::Hashable
@@ -1786,47 +2142,45 @@ module Google
1786
2142
  class Operation
1787
2143
  include Google::Apis::Core::Hashable
1788
2144
 
1789
- # If the value is `false`, it means the operation is still in progress.
1790
- # If `true`, the operation is completed, and either `error` or `response` is
1791
- # available.
2145
+ # If the value is `false`, it means the operation is still in progress. If `true`
2146
+ # , the operation is completed, and either `error` or `response` is available.
1792
2147
  # Corresponds to the JSON property `done`
1793
2148
  # @return [Boolean]
1794
2149
  attr_accessor :done
1795
2150
  alias_method :done?, :done
1796
2151
 
1797
- # The `Status` type defines a logical error model that is suitable for
1798
- # different programming environments, including REST APIs and RPC APIs. It is
1799
- # used by [gRPC](https://github.com/grpc). Each `Status` message contains
1800
- # three pieces of data: error code, error message, and error details.
1801
- # You can find out more about this error model and how to work with it in the
1802
- # [API Design Guide](https://cloud.google.com/apis/design/errors).
2152
+ # The `Status` type defines a logical error model that is suitable for different
2153
+ # programming environments, including REST APIs and RPC APIs. It is used by [
2154
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
2155
+ # data: error code, error message, and error details. You can find out more
2156
+ # about this error model and how to work with it in the [API Design Guide](https:
2157
+ # //cloud.google.com/apis/design/errors).
1803
2158
  # Corresponds to the JSON property `error`
1804
2159
  # @return [Google::Apis::CloudassetV1::Status]
1805
2160
  attr_accessor :error
1806
2161
 
1807
- # Service-specific metadata associated with the operation. It typically
1808
- # contains progress information and common metadata such as create time.
1809
- # Some services might not provide such metadata. Any method that returns a
1810
- # long-running operation should document the metadata type, if any.
2162
+ # Service-specific metadata associated with the operation. It typically contains
2163
+ # progress information and common metadata such as create time. Some services
2164
+ # might not provide such metadata. Any method that returns a long-running
2165
+ # operation should document the metadata type, if any.
1811
2166
  # Corresponds to the JSON property `metadata`
1812
2167
  # @return [Hash<String,Object>]
1813
2168
  attr_accessor :metadata
1814
2169
 
1815
2170
  # The server-assigned name, which is only unique within the same service that
1816
- # originally returns it. If you use the default HTTP mapping, the
1817
- # `name` should be a resource name ending with `operations/`unique_id``.
2171
+ # originally returns it. If you use the default HTTP mapping, the `name` should
2172
+ # be a resource name ending with `operations/`unique_id``.
1818
2173
  # Corresponds to the JSON property `name`
1819
2174
  # @return [String]
1820
2175
  attr_accessor :name
1821
2176
 
1822
- # The normal response of the operation in case of success. If the original
1823
- # method returns no data on success, such as `Delete`, the response is
1824
- # `google.protobuf.Empty`. If the original method is standard
1825
- # `Get`/`Create`/`Update`, the response should be the resource. For other
1826
- # methods, the response should have the type `XxxResponse`, where `Xxx`
1827
- # is the original method name. For example, if the original method name
1828
- # is `TakeSnapshot()`, the inferred response type is
1829
- # `TakeSnapshotResponse`.
2177
+ # The normal response of the operation in case of success. If the original
2178
+ # method returns no data on success, such as `Delete`, the response is `google.
2179
+ # protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`,
2180
+ # the response should be the resource. For other methods, the response should
2181
+ # have the type `XxxResponse`, where `Xxx` is the original method name. For
2182
+ # example, if the original method name is `TakeSnapshot()`, the inferred
2183
+ # response type is `TakeSnapshotResponse`.
1830
2184
  # Corresponds to the JSON property `response`
1831
2185
  # @return [Hash<String,Object>]
1832
2186
  attr_accessor :response
@@ -1845,6 +2199,98 @@ module Google
1845
2199
  end
1846
2200
  end
1847
2201
 
2202
+ # Contains query options.
2203
+ class Options
2204
+ include Google::Apis::Core::Hashable
2205
+
2206
+ # Optional. If true, the response will include access analysis from identities
2207
+ # to resources via service account impersonation. This is a very expensive
2208
+ # operation, because many derived queries will be executed. We highly recommend
2209
+ # you use AssetService.AnalyzeIamPolicyLongrunning rpc instead. For example, if
2210
+ # the request analyzes for which resources user A has permission P, and there's
2211
+ # an IAM policy states user A has iam.serviceAccounts.getAccessToken permission
2212
+ # to a service account SA, and there's another IAM policy states service account
2213
+ # SA has permission P to a GCP folder F, then user A potentially has access to
2214
+ # the GCP folder F. And those advanced analysis results will be included in
2215
+ # AnalyzeIamPolicyResponse.service_account_impersonation_analysis. Another
2216
+ # example, if the request analyzes for who has permission P to a GCP folder F,
2217
+ # and there's an IAM policy states user A has iam.serviceAccounts.actAs
2218
+ # permission to a service account SA, and there's another IAM policy states
2219
+ # service account SA has permission P to the GCP folder F, then user A
2220
+ # potentially has access to the GCP folder F. And those advanced analysis
2221
+ # results will be included in AnalyzeIamPolicyResponse.
2222
+ # service_account_impersonation_analysis. Default is false.
2223
+ # Corresponds to the JSON property `analyzeServiceAccountImpersonation`
2224
+ # @return [Boolean]
2225
+ attr_accessor :analyze_service_account_impersonation
2226
+ alias_method :analyze_service_account_impersonation?, :analyze_service_account_impersonation
2227
+
2228
+ # Optional. If true, the identities section of the result will expand any Google
2229
+ # groups appearing in an IAM policy binding. If IamPolicyAnalysisQuery.
2230
+ # identity_selector is specified, the identity in the result will be determined
2231
+ # by the selector, and this flag is not allowed to set. Default is false.
2232
+ # Corresponds to the JSON property `expandGroups`
2233
+ # @return [Boolean]
2234
+ attr_accessor :expand_groups
2235
+ alias_method :expand_groups?, :expand_groups
2236
+
2237
+ # Optional. If true and IamPolicyAnalysisQuery.resource_selector is not
2238
+ # specified, the resource section of the result will expand any resource
2239
+ # attached to an IAM policy to include resources lower in the resource hierarchy.
2240
+ # For example, if the request analyzes for which resources user A has
2241
+ # permission P, and the results include an IAM policy with P on a GCP folder,
2242
+ # the results will also include resources in that folder with permission P. If
2243
+ # true and IamPolicyAnalysisQuery.resource_selector is specified, the resource
2244
+ # section of the result will expand the specified resource to include resources
2245
+ # lower in the resource hierarchy. Only project or lower resources are supported.
2246
+ # Folder and organization resource cannot be used together with this option.
2247
+ # For example, if the request analyzes for which users have permission P on a
2248
+ # GCP project with this option enabled, the results will include all users who
2249
+ # have permission P on that project or any lower resource. Default is false.
2250
+ # Corresponds to the JSON property `expandResources`
2251
+ # @return [Boolean]
2252
+ attr_accessor :expand_resources
2253
+ alias_method :expand_resources?, :expand_resources
2254
+
2255
+ # Optional. If true, the access section of result will expand any roles
2256
+ # appearing in IAM policy bindings to include their permissions. If
2257
+ # IamPolicyAnalysisQuery.access_selector is specified, the access section of the
2258
+ # result will be determined by the selector, and this flag is not allowed to set.
2259
+ # Default is false.
2260
+ # Corresponds to the JSON property `expandRoles`
2261
+ # @return [Boolean]
2262
+ attr_accessor :expand_roles
2263
+ alias_method :expand_roles?, :expand_roles
2264
+
2265
+ # Optional. If true, the result will output group identity edges, starting from
2266
+ # the binding's group members, to any expanded identities. Default is false.
2267
+ # Corresponds to the JSON property `outputGroupEdges`
2268
+ # @return [Boolean]
2269
+ attr_accessor :output_group_edges
2270
+ alias_method :output_group_edges?, :output_group_edges
2271
+
2272
+ # Optional. If true, the result will output resource edges, starting from the
2273
+ # policy attached resource, to any expanded resources. Default is false.
2274
+ # Corresponds to the JSON property `outputResourceEdges`
2275
+ # @return [Boolean]
2276
+ attr_accessor :output_resource_edges
2277
+ alias_method :output_resource_edges?, :output_resource_edges
2278
+
2279
+ def initialize(**args)
2280
+ update!(**args)
2281
+ end
2282
+
2283
+ # Update properties of this object
2284
+ def update!(**args)
2285
+ @analyze_service_account_impersonation = args[:analyze_service_account_impersonation] if args.key?(:analyze_service_account_impersonation)
2286
+ @expand_groups = args[:expand_groups] if args.key?(:expand_groups)
2287
+ @expand_resources = args[:expand_resources] if args.key?(:expand_resources)
2288
+ @expand_roles = args[:expand_roles] if args.key?(:expand_roles)
2289
+ @output_group_edges = args[:output_group_edges] if args.key?(:output_group_edges)
2290
+ @output_resource_edges = args[:output_resource_edges] if args.key?(:output_resource_edges)
2291
+ end
2292
+ end
2293
+
1848
2294
  # Output configuration for export assets destination.
1849
2295
  class OutputConfig
1850
2296
  include Google::Apis::Core::Hashable
@@ -1870,6 +2316,25 @@ module Google
1870
2316
  end
1871
2317
  end
1872
2318
 
2319
+ # Specifications of BigQuery partitioned table as export destination.
2320
+ class PartitionSpec
2321
+ include Google::Apis::Core::Hashable
2322
+
2323
+ # The partition key for BigQuery partitioned table.
2324
+ # Corresponds to the JSON property `partitionKey`
2325
+ # @return [String]
2326
+ attr_accessor :partition_key
2327
+
2328
+ def initialize(**args)
2329
+ update!(**args)
2330
+ end
2331
+
2332
+ # Update properties of this object
2333
+ def update!(**args)
2334
+ @partition_key = args[:partition_key] if args.key?(:partition_key)
2335
+ end
2336
+ end
2337
+
1873
2338
  # IAM permissions
1874
2339
  class Permissions
1875
2340
  include Google::Apis::Core::Hashable
@@ -1890,66 +2355,32 @@ module Google
1890
2355
  end
1891
2356
 
1892
2357
  # An Identity and Access Management (IAM) policy, which specifies access
1893
- # controls for Google Cloud resources.
1894
- # A `Policy` is a collection of `bindings`. A `binding` binds one or more
1895
- # `members` to a single `role`. Members can be user accounts, service accounts,
1896
- # Google groups, and domains (such as G Suite). A `role` is a named list of
1897
- # permissions; each `role` can be an IAM predefined role or a user-created
1898
- # custom role.
1899
- # For some types of Google Cloud resources, a `binding` can also specify a
1900
- # `condition`, which is a logical expression that allows access to a resource
1901
- # only if the expression evaluates to `true`. A condition can add constraints
1902
- # based on attributes of the request, the resource, or both. To learn which
1903
- # resources support conditions in their IAM policies, see the
1904
- # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
1905
- # policies).
1906
- # **JSON example:**
1907
- # `
1908
- # "bindings": [
1909
- # `
1910
- # "role": "roles/resourcemanager.organizationAdmin",
1911
- # "members": [
1912
- # "user:mike@example.com",
1913
- # "group:admins@example.com",
1914
- # "domain:google.com",
1915
- # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
1916
- # ]
1917
- # `,
1918
- # `
1919
- # "role": "roles/resourcemanager.organizationViewer",
1920
- # "members": [
1921
- # "user:eve@example.com"
1922
- # ],
1923
- # "condition": `
1924
- # "title": "expirable access",
1925
- # "description": "Does not grant access after Sep 2020",
1926
- # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')
1927
- # ",
1928
- # `
1929
- # `
1930
- # ],
1931
- # "etag": "BwWWja0YfJA=",
1932
- # "version": 3
1933
- # `
1934
- # **YAML example:**
1935
- # bindings:
1936
- # - members:
1937
- # - user:mike@example.com
1938
- # - group:admins@example.com
1939
- # - domain:google.com
1940
- # - serviceAccount:my-project-id@appspot.gserviceaccount.com
1941
- # role: roles/resourcemanager.organizationAdmin
1942
- # - members:
1943
- # - user:eve@example.com
1944
- # role: roles/resourcemanager.organizationViewer
1945
- # condition:
1946
- # title: expirable access
1947
- # description: Does not grant access after Sep 2020
1948
- # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
1949
- # - etag: BwWWja0YfJA=
1950
- # - version: 3
1951
- # For a description of IAM and its features, see the
1952
- # [IAM documentation](https://cloud.google.com/iam/docs/).
2358
+ # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
2359
+ # A `binding` binds one or more `members` to a single `role`. Members can be
2360
+ # user accounts, service accounts, Google groups, and domains (such as G Suite).
2361
+ # A `role` is a named list of permissions; each `role` can be an IAM predefined
2362
+ # role or a user-created custom role. For some types of Google Cloud resources,
2363
+ # a `binding` can also specify a `condition`, which is a logical expression that
2364
+ # allows access to a resource only if the expression evaluates to `true`. A
2365
+ # condition can add constraints based on attributes of the request, the resource,
2366
+ # or both. To learn which resources support conditions in their IAM policies,
2367
+ # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
2368
+ # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
2369
+ # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
2370
+ # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
2371
+ # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
2372
+ # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
2373
+ # title": "expirable access", "description": "Does not grant access after Sep
2374
+ # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
2375
+ # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
2376
+ # members: - user:mike@example.com - group:admins@example.com - domain:google.
2377
+ # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
2378
+ # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
2379
+ # roles/resourcemanager.organizationViewer condition: title: expirable access
2380
+ # description: Does not grant access after Sep 2020 expression: request.time <
2381
+ # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
2382
+ # description of IAM and its features, see the [IAM documentation](https://cloud.
2383
+ # google.com/iam/docs/).
1953
2384
  class Policy
1954
2385
  include Google::Apis::Core::Hashable
1955
2386
 
@@ -1958,48 +2389,44 @@ module Google
1958
2389
  # @return [Array<Google::Apis::CloudassetV1::AuditConfig>]
1959
2390
  attr_accessor :audit_configs
1960
2391
 
1961
- # Associates a list of `members` to a `role`. Optionally, may specify a
1962
- # `condition` that determines how and when the `bindings` are applied. Each
1963
- # of the `bindings` must contain at least one member.
2392
+ # Associates a list of `members` to a `role`. Optionally, may specify a `
2393
+ # condition` that determines how and when the `bindings` are applied. Each of
2394
+ # the `bindings` must contain at least one member.
1964
2395
  # Corresponds to the JSON property `bindings`
1965
2396
  # @return [Array<Google::Apis::CloudassetV1::Binding>]
1966
2397
  attr_accessor :bindings
1967
2398
 
1968
- # `etag` is used for optimistic concurrency control as a way to help
1969
- # prevent simultaneous updates of a policy from overwriting each other.
1970
- # It is strongly suggested that systems make use of the `etag` in the
1971
- # read-modify-write cycle to perform policy updates in order to avoid race
1972
- # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1973
- # systems are expected to put that etag in the request to `setIamPolicy` to
1974
- # ensure that their change will be applied to the same version of the policy.
1975
- # **Important:** If you use IAM Conditions, you must include the `etag` field
1976
- # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1977
- # you to overwrite a version `3` policy with a version `1` policy, and all of
1978
- # the conditions in the version `3` policy are lost.
2399
+ # `etag` is used for optimistic concurrency control as a way to help prevent
2400
+ # simultaneous updates of a policy from overwriting each other. It is strongly
2401
+ # suggested that systems make use of the `etag` in the read-modify-write cycle
2402
+ # to perform policy updates in order to avoid race conditions: An `etag` is
2403
+ # returned in the response to `getIamPolicy`, and systems are expected to put
2404
+ # that etag in the request to `setIamPolicy` to ensure that their change will be
2405
+ # applied to the same version of the policy. **Important:** If you use IAM
2406
+ # Conditions, you must include the `etag` field whenever you call `setIamPolicy`.
2407
+ # If you omit this field, then IAM allows you to overwrite a version `3` policy
2408
+ # with a version `1` policy, and all of the conditions in the version `3` policy
2409
+ # are lost.
1979
2410
  # Corresponds to the JSON property `etag`
1980
2411
  # NOTE: Values are automatically base64 encoded/decoded in the client library.
1981
2412
  # @return [String]
1982
2413
  attr_accessor :etag
1983
2414
 
1984
- # Specifies the format of the policy.
1985
- # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
1986
- # are rejected.
1987
- # Any operation that affects conditional role bindings must specify version
1988
- # `3`. This requirement applies to the following operations:
1989
- # * Getting a policy that includes a conditional role binding
1990
- # * Adding a conditional role binding to a policy
1991
- # * Changing a conditional role binding in a policy
1992
- # * Removing any role binding, with or without a condition, from a policy
1993
- # that includes conditions
1994
- # **Important:** If you use IAM Conditions, you must include the `etag` field
1995
- # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1996
- # you to overwrite a version `3` policy with a version `1` policy, and all of
1997
- # the conditions in the version `3` policy are lost.
1998
- # If a policy does not include any conditions, operations on that policy may
1999
- # specify any valid version or leave the field unset.
2000
- # To learn which resources support conditions in their IAM policies, see the
2001
- # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
2002
- # policies).
2415
+ # Specifies the format of the policy. Valid values are `0`, `1`, and `3`.
2416
+ # Requests that specify an invalid value are rejected. Any operation that
2417
+ # affects conditional role bindings must specify version `3`. This requirement
2418
+ # applies to the following operations: * Getting a policy that includes a
2419
+ # conditional role binding * Adding a conditional role binding to a policy *
2420
+ # Changing a conditional role binding in a policy * Removing any role binding,
2421
+ # with or without a condition, from a policy that includes conditions **
2422
+ # Important:** If you use IAM Conditions, you must include the `etag` field
2423
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows you
2424
+ # to overwrite a version `3` policy with a version `1` policy, and all of the
2425
+ # conditions in the version `3` policy are lost. If a policy does not include
2426
+ # any conditions, operations on that policy may specify any valid version or
2427
+ # leave the field unset. To learn which resources support conditions in their
2428
+ # IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/
2429
+ # conditions/resource-policies).
2003
2430
  # Corresponds to the JSON property `version`
2004
2431
  # @return [Fixnum]
2005
2432
  attr_accessor :version
@@ -2021,8 +2448,8 @@ module Google
2021
2448
  class PubsubDestination
2022
2449
  include Google::Apis::Core::Hashable
2023
2450
 
2024
- # The name of the Pub/Sub topic to publish to.
2025
- # Example: `projects/PROJECT_ID/topics/TOPIC_ID`.
2451
+ # The name of the Pub/Sub topic to publish to. Example: `projects/PROJECT_ID/
2452
+ # topics/TOPIC_ID`.
2026
2453
  # Corresponds to the JSON property `topic`
2027
2454
  # @return [String]
2028
2455
  attr_accessor :topic
@@ -2041,53 +2468,48 @@ module Google
2041
2468
  class Resource
2042
2469
  include Google::Apis::Core::Hashable
2043
2470
 
2044
- # The content of the resource, in which some sensitive fields are removed
2045
- # and may not be present.
2471
+ # The content of the resource, in which some sensitive fields are removed and
2472
+ # may not be present.
2046
2473
  # Corresponds to the JSON property `data`
2047
2474
  # @return [Hash<String,Object>]
2048
2475
  attr_accessor :data
2049
2476
 
2050
2477
  # The URL of the discovery document containing the resource's JSON schema.
2051
- # Example:
2052
- # `https://www.googleapis.com/discovery/v1/apis/compute/v1/rest`
2053
- # This value is unspecified for resources that do not have an API based on a
2478
+ # Example: `https://www.googleapis.com/discovery/v1/apis/compute/v1/rest` This
2479
+ # value is unspecified for resources that do not have an API based on a
2054
2480
  # discovery document, such as Cloud Bigtable.
2055
2481
  # Corresponds to the JSON property `discoveryDocumentUri`
2056
2482
  # @return [String]
2057
2483
  attr_accessor :discovery_document_uri
2058
2484
 
2059
- # The JSON schema name listed in the discovery document. Example:
2060
- # `Project`
2061
- # This value is unspecified for resources that do not have an API based on a
2485
+ # The JSON schema name listed in the discovery document. Example: `Project` This
2486
+ # value is unspecified for resources that do not have an API based on a
2062
2487
  # discovery document, such as Cloud Bigtable.
2063
2488
  # Corresponds to the JSON property `discoveryName`
2064
2489
  # @return [String]
2065
2490
  attr_accessor :discovery_name
2066
2491
 
2067
- # The location of the resource in Google Cloud, such as its zone and region.
2068
- # For more information, see https://cloud.google.com/about/locations/.
2492
+ # The location of the resource in Google Cloud, such as its zone and region. For
2493
+ # more information, see https://cloud.google.com/about/locations/.
2069
2494
  # Corresponds to the JSON property `location`
2070
2495
  # @return [String]
2071
2496
  attr_accessor :location
2072
2497
 
2073
- # The full name of the immediate parent of this resource. See
2074
- # [Resource
2075
- # Names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
2076
- # for more information.
2077
- # For Google Cloud assets, this value is the parent resource defined in the
2078
- # [Cloud IAM policy
2079
- # hierarchy](https://cloud.google.com/iam/docs/overview#policy_hierarchy).
2080
- # Example:
2081
- # `//cloudresourcemanager.googleapis.com/projects/my_project_123`
2082
- # For third-party assets, this field may be set differently.
2498
+ # The full name of the immediate parent of this resource. See [Resource Names](
2499
+ # https://cloud.google.com/apis/design/resource_names#full_resource_name) for
2500
+ # more information. For Google Cloud assets, this value is the parent resource
2501
+ # defined in the [Cloud IAM policy hierarchy](https://cloud.google.com/iam/docs/
2502
+ # overview#policy_hierarchy). Example: `//cloudresourcemanager.googleapis.com/
2503
+ # projects/my_project_123` For third-party assets, this field may be set
2504
+ # differently.
2083
2505
  # Corresponds to the JSON property `parent`
2084
2506
  # @return [String]
2085
2507
  attr_accessor :parent
2086
2508
 
2087
- # The REST URL for accessing the resource. An HTTP `GET` request using this
2088
- # URL returns the resource itself. Example:
2089
- # `https://cloudresourcemanager.googleapis.com/v1/projects/my-project-123`
2090
- # This value is unspecified for resources without a REST API.
2509
+ # The REST URL for accessing the resource. An HTTP `GET` request using this URL
2510
+ # returns the resource itself. Example: `https://cloudresourcemanager.googleapis.
2511
+ # com/v1/projects/my-project-123` This value is unspecified for resources
2512
+ # without a REST API.
2091
2513
  # Corresponds to the JSON property `resourceUrl`
2092
2514
  # @return [String]
2093
2515
  attr_accessor :resource_url
@@ -2117,103 +2539,86 @@ module Google
2117
2539
  class ResourceSearchResult
2118
2540
  include Google::Apis::Core::Hashable
2119
2541
 
2120
- # The additional searchable attributes of this resource. The attributes may
2121
- # vary from one resource type to another. Examples: `projectId` for Project,
2122
- # `dnsName` for DNS ManagedZone. This field contains a subset of the resource
2123
- # metadata fields that are returned by the List or Get APIs provided by the
2124
- # corresponding GCP service (e.g., Compute Engine). see [API references and
2125
- # supported searchable
2126
- # attributes](https://cloud.google.com/asset-inventory/docs/supported-asset-
2127
- # types#searchable_asset_types)
2128
- # for more information.
2129
- # You can search values of these fields through free text search. However,
2130
- # you should not consume the field programically as the field names and
2131
- # values may change as the GCP service updates to a new incompatible API
2132
- # version.
2133
- # To search against the `additional_attributes`:
2134
- # * use a free text query to match the attributes values. Example: to search
2135
- # `additional_attributes = ` dnsName: "foobar" ``, you can issue a query
2136
- # `"foobar"`.
2542
+ # The additional searchable attributes of this resource. The attributes may vary
2543
+ # from one resource type to another. Examples: `projectId` for Project, `dnsName`
2544
+ # for DNS ManagedZone. This field contains a subset of the resource metadata
2545
+ # fields that are returned by the List or Get APIs provided by the corresponding
2546
+ # GCP service (e.g., Compute Engine). see [API references and supported
2547
+ # searchable attributes](https://cloud.google.com/asset-inventory/docs/supported-
2548
+ # asset-types#searchable_asset_types) for more information. You can search
2549
+ # values of these fields through free text search. However, you should not
2550
+ # consume the field programically as the field names and values may change as
2551
+ # the GCP service updates to a new incompatible API version. To search against
2552
+ # the `additional_attributes`: * use a free text query to match the attributes
2553
+ # values. Example: to search `additional_attributes = ` dnsName: "foobar" ``,
2554
+ # you can issue a query `foobar`.
2137
2555
  # Corresponds to the JSON property `additionalAttributes`
2138
2556
  # @return [Hash<String,Object>]
2139
2557
  attr_accessor :additional_attributes
2140
2558
 
2141
- # The type of this resource. Example: `compute.googleapis.com/Disk`.
2142
- # To search against the `asset_type`:
2143
- # * specify the `asset_type` field in your search request.
2559
+ # The type of this resource. Example: `compute.googleapis.com/Disk`. To search
2560
+ # against the `asset_type`: * specify the `asset_type` field in your search
2561
+ # request.
2144
2562
  # Corresponds to the JSON property `assetType`
2145
2563
  # @return [String]
2146
2564
  attr_accessor :asset_type
2147
2565
 
2148
2566
  # One or more paragraphs of text description of this resource. Maximum length
2149
- # could be up to 1M bytes.
2150
- # To search against the `description`:
2151
- # * use a field query. Example: `description : "*important instance*"`
2152
- # * use a free text query. Example: `"*important instance*"`
2567
+ # could be up to 1M bytes. To search against the `description`: * use a field
2568
+ # query. Example: `description:"*important instance*"` * use a free text query.
2569
+ # Example: `"*important instance*"`
2153
2570
  # Corresponds to the JSON property `description`
2154
2571
  # @return [String]
2155
2572
  attr_accessor :description
2156
2573
 
2157
- # The display name of this resource.
2158
- # To search against the `display_name`:
2159
- # * use a field query. Example: `displayName : "My Instance"`
2160
- # * use a free text query. Example: `"My Instance"`
2574
+ # The display name of this resource. To search against the `display_name`: * use
2575
+ # a field query. Example: `displayName:"My Instance"` * use a free text query.
2576
+ # Example: `"My Instance"`
2161
2577
  # Corresponds to the JSON property `displayName`
2162
2578
  # @return [String]
2163
2579
  attr_accessor :display_name
2164
2580
 
2165
2581
  # Labels associated with this resource. See [Labelling and grouping GCP
2166
2582
  # resources](https://cloud.google.com/blog/products/gcp/labelling-and-grouping-
2167
- # your-google-cloud-platform-resources)
2168
- # for more information.
2169
- # To search against the `labels`:
2170
- # * use a field query, as following:
2171
- # - query on any label's key or value. Example: `labels : "prod"`
2172
- # - query by a given label. Example: `labels.env : "prod"`
2173
- # - query by a given label'sexistence. Example: `labels.env : *`
2174
- # * use a free text query. Example: `"prod"`
2583
+ # your-google-cloud-platform-resources) for more information. To search against
2584
+ # the `labels`: * use a field query: - query on any label's key or value.
2585
+ # Example: `labels:prod` - query by a given label. Example: `labels.env:prod` -
2586
+ # query by a given label's existence. Example: `labels.env:*` * use a free text
2587
+ # query. Example: `prod`
2175
2588
  # Corresponds to the JSON property `labels`
2176
2589
  # @return [Hash<String,String>]
2177
2590
  attr_accessor :labels
2178
2591
 
2179
- # Location can be `global`, regional like `us-east1`, or zonal like
2180
- # `us-west1-b`.
2181
- # To search against the `location`:
2182
- # * use a field query. Example: `location : "us-west*"`
2183
- # * use a free text query. Example: `"us-west*"`
2592
+ # Location can be `global`, regional like `us-east1`, or zonal like `us-west1-b`.
2593
+ # To search against the `location`: * use a field query. Example: `location:us-
2594
+ # west*` * use a free text query. Example: `us-west*`
2184
2595
  # Corresponds to the JSON property `location`
2185
2596
  # @return [String]
2186
2597
  attr_accessor :location
2187
2598
 
2188
- # The full resource name of this resource. Example:
2189
- # `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/
2190
- # instance1`.
2191
- # See [Cloud Asset Inventory Resource Name
2192
- # Format](https://cloud.google.com/asset-inventory/docs/resource-name-format)
2193
- # for more information.
2194
- # To search against the `name`:
2195
- # * use a field query. Example: `name : "instance1"`
2196
- # * use a free text query. Example: `"instance1"`
2599
+ # The full resource name of this resource. Example: `//compute.googleapis.com/
2600
+ # projects/my_project_123/zones/zone1/instances/instance1`. See [Cloud Asset
2601
+ # Inventory Resource Name Format](https://cloud.google.com/asset-inventory/docs/
2602
+ # resource-name-format) for more information. To search against the `name`: *
2603
+ # use a field query. Example: `name:instance1` * use a free text query. Example:
2604
+ # `instance1`
2197
2605
  # Corresponds to the JSON property `name`
2198
2606
  # @return [String]
2199
2607
  attr_accessor :name
2200
2608
 
2201
2609
  # Network tags associated with this resource. Like labels, network tags are a
2202
- # type of annotations used to group GCP resources. See [Labelling GCP
2203
- # resources](https://cloud.google.com/blog/products/gcp/labelling-and-grouping-
2204
- # your-google-cloud-platform-resources)
2205
- # for more information.
2206
- # To search against the `network_tags`:
2207
- # * use a field query. Example: `networkTags : "internal"`
2208
- # * use a free text query. Example: `"internal"`
2610
+ # type of annotations used to group GCP resources. See [Labelling GCP resources](
2611
+ # https://cloud.google.com/blog/products/gcp/labelling-and-grouping-your-google-
2612
+ # cloud-platform-resources) for more information. To search against the `
2613
+ # network_tags`: * use a field query. Example: `networkTags:internal` * use a
2614
+ # free text query. Example: `internal`
2209
2615
  # Corresponds to the JSON property `networkTags`
2210
2616
  # @return [Array<String>]
2211
2617
  attr_accessor :network_tags
2212
2618
 
2213
- # The project that this resource belongs to, in the form of
2214
- # projects/`PROJECT_NUMBER`.
2215
- # To search against the `project`:
2216
- # * specify the `scope` field as this project in your search request.
2619
+ # The project that this resource belongs to, in the form of projects/`
2620
+ # PROJECT_NUMBER`. To search against the `project`: * specify the `scope` field
2621
+ # as this project in your search request.
2217
2622
  # Corresponds to the JSON property `project`
2218
2623
  # @return [String]
2219
2624
  attr_accessor :project
@@ -2236,19 +2641,43 @@ module Google
2236
2641
  end
2237
2642
  end
2238
2643
 
2644
+ # Specifies the resource to analyze for access policies, which may be set
2645
+ # directly on the resource, or on ancestors such as organizations, folders or
2646
+ # projects.
2647
+ class ResourceSelector
2648
+ include Google::Apis::Core::Hashable
2649
+
2650
+ # Required. The [full resource name] (https://cloud.google.com/asset-inventory/
2651
+ # docs/resource-name-format) of a resource of [supported resource types](https://
2652
+ # cloud.google.com/asset-inventory/docs/supported-asset-types#
2653
+ # analyzable_asset_types).
2654
+ # Corresponds to the JSON property `fullResourceName`
2655
+ # @return [String]
2656
+ attr_accessor :full_resource_name
2657
+
2658
+ def initialize(**args)
2659
+ update!(**args)
2660
+ end
2661
+
2662
+ # Update properties of this object
2663
+ def update!(**args)
2664
+ @full_resource_name = args[:full_resource_name] if args.key?(:full_resource_name)
2665
+ end
2666
+ end
2667
+
2239
2668
  # Search all IAM policies response.
2240
2669
  class SearchAllIamPoliciesResponse
2241
2670
  include Google::Apis::Core::Hashable
2242
2671
 
2243
2672
  # Set if there are more results than those appearing in this response; to get
2244
- # the next set of results, call this method again, using this value as the
2245
- # `page_token`.
2673
+ # the next set of results, call this method again, using this value as the `
2674
+ # page_token`.
2246
2675
  # Corresponds to the JSON property `nextPageToken`
2247
2676
  # @return [String]
2248
2677
  attr_accessor :next_page_token
2249
2678
 
2250
- # A list of IamPolicy that match the search query. Related information such
2251
- # as the associated resource is returned along with the policy.
2679
+ # A list of IamPolicy that match the search query. Related information such as
2680
+ # the associated resource is returned along with the policy.
2252
2681
  # Corresponds to the JSON property `results`
2253
2682
  # @return [Array<Google::Apis::CloudassetV1::IamPolicySearchResult>]
2254
2683
  attr_accessor :results
@@ -2268,9 +2697,9 @@ module Google
2268
2697
  class SearchAllResourcesResponse
2269
2698
  include Google::Apis::Core::Hashable
2270
2699
 
2271
- # If there are more results than those appearing in this response, then
2272
- # `next_page_token` is included. To get the next set of results, call this
2273
- # method again using the value of `next_page_token` as `page_token`.
2700
+ # If there are more results than those appearing in this response, then `
2701
+ # next_page_token` is included. To get the next set of results, call this method
2702
+ # again using the value of `next_page_token` as `page_token`.
2274
2703
  # Corresponds to the JSON property `nextPageToken`
2275
2704
  # @return [String]
2276
2705
  attr_accessor :next_page_token
@@ -2292,12 +2721,12 @@ module Google
2292
2721
  end
2293
2722
  end
2294
2723
 
2295
- # The `Status` type defines a logical error model that is suitable for
2296
- # different programming environments, including REST APIs and RPC APIs. It is
2297
- # used by [gRPC](https://github.com/grpc). Each `Status` message contains
2298
- # three pieces of data: error code, error message, and error details.
2299
- # You can find out more about this error model and how to work with it in the
2300
- # [API Design Guide](https://cloud.google.com/apis/design/errors).
2724
+ # The `Status` type defines a logical error model that is suitable for different
2725
+ # programming environments, including REST APIs and RPC APIs. It is used by [
2726
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
2727
+ # data: error code, error message, and error details. You can find out more
2728
+ # about this error model and how to work with it in the [API Design Guide](https:
2729
+ # //cloud.google.com/apis/design/errors).
2301
2730
  class Status
2302
2731
  include Google::Apis::Core::Hashable
2303
2732
 
@@ -2306,15 +2735,15 @@ module Google
2306
2735
  # @return [Fixnum]
2307
2736
  attr_accessor :code
2308
2737
 
2309
- # A list of messages that carry the error details. There is a common set of
2738
+ # A list of messages that carry the error details. There is a common set of
2310
2739
  # message types for APIs to use.
2311
2740
  # Corresponds to the JSON property `details`
2312
2741
  # @return [Array<Hash<String,Object>>]
2313
2742
  attr_accessor :details
2314
2743
 
2315
- # A developer-facing error message, which should be in English. Any
2316
- # user-facing error message should be localized and sent in the
2317
- # google.rpc.Status.details field, or localized by the client.
2744
+ # A developer-facing error message, which should be in English. Any user-facing
2745
+ # error message should be localized and sent in the google.rpc.Status.details
2746
+ # field, or localized by the client.
2318
2747
  # Corresponds to the JSON property `message`
2319
2748
  # @return [String]
2320
2749
  attr_accessor :message
@@ -2336,15 +2765,12 @@ module Google
2336
2765
  class TemporalAsset
2337
2766
  include Google::Apis::Core::Hashable
2338
2767
 
2339
- # An asset in Google Cloud. An asset can be any resource in the Google Cloud
2340
- # [resource
2341
- # hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-
2342
- # resource-hierarchy),
2343
- # a resource outside the Google Cloud resource hierarchy (such as Google
2344
- # Kubernetes Engine clusters and objects), or a policy (e.g. Cloud IAM policy).
2345
- # See [Supported asset
2346
- # types](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
2347
- # for more information.
2768
+ # An asset in Google Cloud. An asset can be any resource in the Google Cloud [
2769
+ # resource hierarchy](https://cloud.google.com/resource-manager/docs/cloud-
2770
+ # platform-resource-hierarchy), a resource outside the Google Cloud resource
2771
+ # hierarchy (such as Google Kubernetes Engine clusters and objects), or a policy
2772
+ # (e.g. Cloud IAM policy). See [Supported asset types](https://cloud.google.com/
2773
+ # asset-inventory/docs/supported-asset-types) for more information.
2348
2774
  # Corresponds to the JSON property `asset`
2349
2775
  # @return [Google::Apis::CloudassetV1::Asset]
2350
2776
  attr_accessor :asset
@@ -2355,15 +2781,12 @@ module Google
2355
2781
  attr_accessor :deleted
2356
2782
  alias_method :deleted?, :deleted
2357
2783
 
2358
- # An asset in Google Cloud. An asset can be any resource in the Google Cloud
2359
- # [resource
2360
- # hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-
2361
- # resource-hierarchy),
2362
- # a resource outside the Google Cloud resource hierarchy (such as Google
2363
- # Kubernetes Engine clusters and objects), or a policy (e.g. Cloud IAM policy).
2364
- # See [Supported asset
2365
- # types](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
2366
- # for more information.
2784
+ # An asset in Google Cloud. An asset can be any resource in the Google Cloud [
2785
+ # resource hierarchy](https://cloud.google.com/resource-manager/docs/cloud-
2786
+ # platform-resource-hierarchy), a resource outside the Google Cloud resource
2787
+ # hierarchy (such as Google Kubernetes Engine clusters and objects), or a policy
2788
+ # (e.g. Cloud IAM policy). See [Supported asset types](https://cloud.google.com/
2789
+ # asset-inventory/docs/supported-asset-types) for more information.
2367
2790
  # Corresponds to the JSON property `priorAsset`
2368
2791
  # @return [Google::Apis::CloudassetV1::Asset]
2369
2792
  attr_accessor :prior_asset
@@ -2422,18 +2845,17 @@ module Google
2422
2845
  class UpdateFeedRequest
2423
2846
  include Google::Apis::Core::Hashable
2424
2847
 
2425
- # An asset feed used to export asset updates to a destinations.
2426
- # An asset feed filter controls what updates are exported.
2427
- # The asset feed must be created within a project, organization, or
2428
- # folder. Supported destinations are:
2429
- # Pub/Sub topics.
2848
+ # An asset feed used to export asset updates to a destinations. An asset feed
2849
+ # filter controls what updates are exported. The asset feed must be created
2850
+ # within a project, organization, or folder. Supported destinations are: Pub/Sub
2851
+ # topics.
2430
2852
  # Corresponds to the JSON property `feed`
2431
2853
  # @return [Google::Apis::CloudassetV1::Feed]
2432
2854
  attr_accessor :feed
2433
2855
 
2434
- # Required. Only updates the `feed` fields indicated by this mask.
2435
- # The field mask must not be empty, and it must not contain fields that
2436
- # are immutable or only set by the server.
2856
+ # Required. Only updates the `feed` fields indicated by this mask. The field
2857
+ # mask must not be empty, and it must not contain fields that are immutable or
2858
+ # only set by the server.
2437
2859
  # Corresponds to the JSON property `updateMask`
2438
2860
  # @return [String]
2439
2861
  attr_accessor :update_mask