google-api-client 0.45.0 → 0.48.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (542) 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 +664 -188
  7. data/Gemfile +1 -0
  8. data/Rakefile +31 -3
  9. data/api_list_config.yaml +8 -0
  10. data/bin/generate-api +77 -15
  11. data/generated/google/apis/acceleratedmobilepageurl_v1/classes.rb +7 -9
  12. data/generated/google/apis/acceleratedmobilepageurl_v1/service.rb +2 -2
  13. data/generated/google/apis/acceleratedmobilepageurl_v1.rb +1 -1
  14. data/generated/google/apis/accessapproval_v1/classes.rb +23 -16
  15. data/generated/google/apis/accessapproval_v1/service.rb +27 -27
  16. data/generated/google/apis/accessapproval_v1.rb +1 -1
  17. data/generated/google/apis/accesscontextmanager_v1/classes.rb +68 -0
  18. data/generated/google/apis/accesscontextmanager_v1/representations.rb +30 -0
  19. data/generated/google/apis/accesscontextmanager_v1/service.rb +180 -0
  20. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  21. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +30 -30
  22. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  23. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +25 -0
  24. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +15 -0
  25. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  26. data/generated/google/apis/admin_directory_v1/classes.rb +135 -0
  27. data/generated/google/apis/admin_directory_v1/representations.rb +62 -0
  28. data/generated/google/apis/admin_directory_v1/service.rb +72 -0
  29. data/generated/google/apis/admin_directory_v1.rb +1 -1
  30. data/generated/google/apis/admin_reports_v1.rb +1 -1
  31. data/generated/google/apis/admob_v1/classes.rb +29 -29
  32. data/generated/google/apis/admob_v1/service.rb +2 -1
  33. data/generated/google/apis/admob_v1.rb +3 -2
  34. data/generated/google/apis/adsense_v1_4/service.rb +4 -1
  35. data/generated/google/apis/adsense_v1_4.rb +1 -1
  36. data/generated/google/apis/analyticsadmin_v1alpha/classes.rb +1361 -0
  37. data/generated/google/apis/analyticsadmin_v1alpha/representations.rb +610 -0
  38. data/generated/google/apis/analyticsadmin_v1alpha/service.rb +2134 -0
  39. data/generated/google/apis/analyticsadmin_v1alpha.rb +43 -0
  40. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +56 -11
  41. data/generated/google/apis/analyticsdata_v1alpha/representations.rb +17 -0
  42. data/generated/google/apis/analyticsdata_v1alpha/service.rb +41 -0
  43. data/generated/google/apis/analyticsdata_v1alpha.rb +1 -1
  44. data/generated/google/apis/androidmanagement_v1/classes.rb +29 -26
  45. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  46. data/generated/google/apis/androidpublisher_v3/classes.rb +9 -1
  47. data/generated/google/apis/androidpublisher_v3/representations.rb +1 -0
  48. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  49. data/generated/google/apis/apigee_v1/classes.rb +252 -66
  50. data/generated/google/apis/apigee_v1/representations.rb +88 -19
  51. data/generated/google/apis/apigee_v1/service.rb +244 -38
  52. data/generated/google/apis/apigee_v1.rb +1 -1
  53. data/generated/google/apis/appsmarket_v2.rb +1 -1
  54. data/generated/google/apis/area120tables_v1alpha1/classes.rb +423 -0
  55. data/generated/google/apis/{apigateway_v1alpha1 → area120tables_v1alpha1}/representations.rb +67 -69
  56. data/generated/google/apis/area120tables_v1alpha1/service.rb +381 -0
  57. data/generated/google/apis/area120tables_v1alpha1.rb +46 -0
  58. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +7 -0
  59. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +1 -0
  60. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  61. data/generated/google/apis/assuredworkloads_v1beta1/classes.rb +264 -0
  62. data/generated/google/apis/assuredworkloads_v1beta1/representations.rb +129 -0
  63. data/generated/google/apis/assuredworkloads_v1beta1.rb +1 -1
  64. data/generated/google/apis/bigquery_v2/classes.rb +212 -23
  65. data/generated/google/apis/bigquery_v2/representations.rb +69 -0
  66. data/generated/google/apis/bigquery_v2/service.rb +47 -1
  67. data/generated/google/apis/bigquery_v2.rb +1 -1
  68. data/generated/google/apis/billingbudgets_v1/classes.rb +373 -0
  69. data/generated/google/apis/billingbudgets_v1/representations.rb +171 -0
  70. data/generated/google/apis/billingbudgets_v1/service.rb +249 -0
  71. data/generated/google/apis/billingbudgets_v1.rb +38 -0
  72. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +12 -1
  73. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +1 -0
  74. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  75. data/generated/google/apis/binaryauthorization_v1/classes.rb +189 -2
  76. data/generated/google/apis/binaryauthorization_v1/representations.rb +74 -0
  77. data/generated/google/apis/binaryauthorization_v1/service.rb +35 -0
  78. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  79. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +189 -2
  80. data/generated/google/apis/binaryauthorization_v1beta1/representations.rb +74 -0
  81. data/generated/google/apis/binaryauthorization_v1beta1/service.rb +35 -0
  82. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  83. data/generated/google/apis/books_v1/service.rb +54 -54
  84. data/generated/google/apis/books_v1.rb +1 -1
  85. data/generated/google/apis/calendar_v3/classes.rb +2 -1
  86. data/generated/google/apis/calendar_v3.rb +1 -1
  87. data/generated/google/apis/chat_v1/classes.rb +84 -2
  88. data/generated/google/apis/chat_v1/representations.rb +36 -0
  89. data/generated/google/apis/chat_v1.rb +1 -1
  90. data/generated/google/apis/civicinfo_v2/classes.rb +0 -24
  91. data/generated/google/apis/civicinfo_v2/representations.rb +0 -3
  92. data/generated/google/apis/civicinfo_v2.rb +1 -1
  93. data/generated/google/apis/classroom_v1/classes.rb +21 -21
  94. data/generated/google/apis/classroom_v1.rb +1 -1
  95. data/generated/google/apis/cloudasset_v1/classes.rb +697 -0
  96. data/generated/google/apis/cloudasset_v1/representations.rb +304 -0
  97. data/generated/google/apis/cloudasset_v1/service.rb +171 -0
  98. data/generated/google/apis/cloudasset_v1.rb +1 -1
  99. data/generated/google/apis/cloudasset_v1p4beta1/classes.rb +3 -3
  100. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  101. data/generated/google/apis/cloudbilling_v1/classes.rb +1 -1
  102. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  103. data/generated/google/apis/cloudbuild_v1/classes.rb +2 -35
  104. data/generated/google/apis/cloudbuild_v1/representations.rb +0 -15
  105. data/generated/google/apis/cloudbuild_v1/service.rb +17 -6
  106. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  107. data/generated/google/apis/cloudfunctions_v1/classes.rb +12 -1
  108. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -0
  109. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  110. data/generated/google/apis/cloudidentity_v1/classes.rb +78 -98
  111. data/generated/google/apis/cloudidentity_v1/representations.rb +0 -17
  112. data/generated/google/apis/cloudidentity_v1/service.rb +85 -69
  113. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  114. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +188 -0
  115. data/generated/google/apis/cloudidentity_v1beta1/representations.rb +94 -0
  116. data/generated/google/apis/cloudidentity_v1beta1/service.rb +179 -0
  117. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  118. data/generated/google/apis/cloudresourcemanager_v1/service.rb +2 -2
  119. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  120. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +2 -2
  121. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  122. data/generated/google/apis/cloudresourcemanager_v2/service.rb +7 -7
  123. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  124. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +7 -7
  125. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  126. data/generated/google/apis/cloudsearch_v1/classes.rb +2 -1
  127. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  128. data/generated/google/apis/cloudshell_v1/classes.rb +342 -0
  129. data/generated/google/apis/cloudshell_v1/representations.rb +200 -0
  130. data/generated/google/apis/cloudshell_v1/service.rb +177 -0
  131. data/generated/google/apis/cloudshell_v1.rb +1 -1
  132. data/generated/google/apis/composer_v1/classes.rb +2 -3
  133. data/generated/google/apis/composer_v1.rb +1 -1
  134. data/generated/google/apis/composer_v1beta1/classes.rb +4 -4
  135. data/generated/google/apis/composer_v1beta1/service.rb +37 -35
  136. data/generated/google/apis/composer_v1beta1.rb +1 -1
  137. data/generated/google/apis/compute_alpha/classes.rb +633 -146
  138. data/generated/google/apis/compute_alpha/representations.rb +131 -8
  139. data/generated/google/apis/compute_alpha/service.rb +1995 -1013
  140. data/generated/google/apis/compute_alpha.rb +1 -1
  141. data/generated/google/apis/compute_beta/classes.rb +566 -94
  142. data/generated/google/apis/compute_beta/representations.rb +100 -1
  143. data/generated/google/apis/compute_beta/service.rb +805 -136
  144. data/generated/google/apis/compute_beta.rb +1 -1
  145. data/generated/google/apis/compute_v1/classes.rb +586 -72
  146. data/generated/google/apis/compute_v1/representations.rb +98 -1
  147. data/generated/google/apis/compute_v1/service.rb +741 -133
  148. data/generated/google/apis/compute_v1.rb +1 -1
  149. data/generated/google/apis/container_v1/classes.rb +22 -10
  150. data/generated/google/apis/container_v1.rb +1 -1
  151. data/generated/google/apis/container_v1beta1/classes.rb +22 -10
  152. data/generated/google/apis/container_v1beta1.rb +1 -1
  153. data/generated/google/apis/content_v2/classes.rb +510 -1217
  154. data/generated/google/apis/content_v2/service.rb +377 -650
  155. data/generated/google/apis/content_v2.rb +3 -4
  156. data/generated/google/apis/content_v2_1/classes.rb +1001 -1053
  157. data/generated/google/apis/content_v2_1/representations.rb +253 -0
  158. data/generated/google/apis/content_v2_1/service.rb +943 -802
  159. data/generated/google/apis/content_v2_1.rb +3 -4
  160. data/generated/google/apis/datacatalog_v1beta1/classes.rb +25 -1
  161. data/generated/google/apis/datacatalog_v1beta1/representations.rb +5 -0
  162. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  163. data/generated/google/apis/dataflow_v1b3/classes.rb +32 -8
  164. data/generated/google/apis/dataflow_v1b3/representations.rb +3 -0
  165. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  166. data/generated/google/apis/datafusion_v1.rb +1 -1
  167. data/generated/google/apis/datalabeling_v1beta1/classes.rb +6207 -0
  168. data/generated/google/apis/datalabeling_v1beta1/representations.rb +3156 -0
  169. data/generated/google/apis/datalabeling_v1beta1/service.rb +1762 -0
  170. data/generated/google/apis/datalabeling_v1beta1.rb +34 -0
  171. data/generated/google/apis/dataproc_v1/classes.rb +41 -3
  172. data/generated/google/apis/dataproc_v1/representations.rb +16 -0
  173. data/generated/google/apis/dataproc_v1.rb +1 -1
  174. data/generated/google/apis/dataproc_v1beta2/classes.rb +41 -3
  175. data/generated/google/apis/dataproc_v1beta2/representations.rb +16 -0
  176. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  177. data/generated/google/apis/datastore_v1/classes.rb +4 -4
  178. data/generated/google/apis/datastore_v1.rb +1 -1
  179. data/generated/google/apis/datastore_v1beta3/classes.rb +4 -4
  180. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  181. data/generated/google/apis/deploymentmanager_v2/classes.rb +203 -558
  182. data/generated/google/apis/deploymentmanager_v2/representations.rb +0 -132
  183. data/generated/google/apis/deploymentmanager_v2/service.rb +169 -213
  184. data/generated/google/apis/deploymentmanager_v2.rb +6 -4
  185. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +247 -609
  186. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +0 -132
  187. data/generated/google/apis/deploymentmanager_v2beta/service.rb +278 -359
  188. data/generated/google/apis/deploymentmanager_v2beta.rb +6 -5
  189. data/generated/google/apis/dfareporting_v3_3/classes.rb +0 -164
  190. data/generated/google/apis/dfareporting_v3_3/representations.rb +0 -42
  191. data/generated/google/apis/dfareporting_v3_3.rb +1 -1
  192. data/generated/google/apis/dfareporting_v3_4/classes.rb +0 -164
  193. data/generated/google/apis/dfareporting_v3_4/representations.rb +0 -42
  194. data/generated/google/apis/dfareporting_v3_4.rb +1 -1
  195. data/generated/google/apis/dialogflow_v2/classes.rb +677 -204
  196. data/generated/google/apis/dialogflow_v2/representations.rb +300 -87
  197. data/generated/google/apis/dialogflow_v2.rb +1 -1
  198. data/generated/google/apis/dialogflow_v2beta1/classes.rb +684 -212
  199. data/generated/google/apis/dialogflow_v2beta1/representations.rb +300 -87
  200. data/generated/google/apis/dialogflow_v2beta1/service.rb +62 -12
  201. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  202. data/generated/google/apis/dialogflow_v3beta1/classes.rb +813 -207
  203. data/generated/google/apis/dialogflow_v3beta1/representations.rb +354 -90
  204. data/generated/google/apis/dialogflow_v3beta1/service.rb +22 -9
  205. data/generated/google/apis/dialogflow_v3beta1.rb +1 -1
  206. data/generated/google/apis/displayvideo_v1/classes.rb +216 -30
  207. data/generated/google/apis/displayvideo_v1/representations.rb +78 -0
  208. data/generated/google/apis/displayvideo_v1/service.rb +261 -18
  209. data/generated/google/apis/displayvideo_v1.rb +1 -1
  210. data/generated/google/apis/dlp_v2/classes.rb +59 -32
  211. data/generated/google/apis/dlp_v2/representations.rb +16 -0
  212. data/generated/google/apis/dlp_v2/service.rb +328 -328
  213. data/generated/google/apis/dlp_v2.rb +1 -1
  214. data/generated/google/apis/dns_v1/classes.rb +181 -0
  215. data/generated/google/apis/dns_v1/representations.rb +83 -0
  216. data/generated/google/apis/dns_v1/service.rb +11 -11
  217. data/generated/google/apis/dns_v1.rb +2 -2
  218. data/generated/google/apis/dns_v1beta2/classes.rb +182 -1
  219. data/generated/google/apis/dns_v1beta2/representations.rb +83 -0
  220. data/generated/google/apis/dns_v1beta2/service.rb +11 -11
  221. data/generated/google/apis/dns_v1beta2.rb +2 -2
  222. data/generated/google/apis/documentai_v1beta3/classes.rb +6149 -0
  223. data/generated/google/apis/documentai_v1beta3/representations.rb +2666 -0
  224. data/generated/google/apis/documentai_v1beta3/service.rb +263 -0
  225. data/generated/google/apis/documentai_v1beta3.rb +36 -0
  226. data/generated/google/apis/domains_v1alpha2/classes.rb +1540 -0
  227. data/generated/google/apis/domains_v1alpha2/representations.rb +606 -0
  228. data/generated/google/apis/domains_v1alpha2/service.rb +805 -0
  229. data/generated/google/apis/domains_v1alpha2.rb +34 -0
  230. data/generated/google/apis/domains_v1beta1/classes.rb +1540 -0
  231. data/generated/google/apis/domains_v1beta1/representations.rb +606 -0
  232. data/generated/google/apis/domains_v1beta1/service.rb +805 -0
  233. data/generated/google/apis/domains_v1beta1.rb +34 -0
  234. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +2 -1
  235. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  236. data/generated/google/apis/doubleclickbidmanager_v1_1/classes.rb +4 -3
  237. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  238. data/generated/google/apis/drive_v2/classes.rb +4 -1
  239. data/generated/google/apis/drive_v2.rb +1 -1
  240. data/generated/google/apis/drive_v3/classes.rb +4 -2
  241. data/generated/google/apis/drive_v3.rb +1 -1
  242. data/generated/google/apis/{apigateway_v1alpha1 → eventarc_v1beta1}/classes.rb +327 -29
  243. data/generated/google/apis/eventarc_v1beta1/representations.rb +379 -0
  244. data/generated/google/apis/{apigateway_v1alpha1 → eventarc_v1beta1}/service.rb +224 -268
  245. data/generated/google/apis/{apigateway_v1alpha1.rb → eventarc_v1beta1.rb} +8 -8
  246. data/generated/google/apis/file_v1/classes.rb +1 -1
  247. data/generated/google/apis/file_v1.rb +1 -1
  248. data/generated/google/apis/file_v1beta1/classes.rb +1 -1
  249. data/generated/google/apis/file_v1beta1.rb +1 -1
  250. data/generated/google/apis/firebase_v1beta1/service.rb +17 -4
  251. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  252. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +2 -0
  253. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  254. data/generated/google/apis/firestore_v1/classes.rb +4 -4
  255. data/generated/google/apis/firestore_v1.rb +1 -1
  256. data/generated/google/apis/firestore_v1beta1/classes.rb +4 -4
  257. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  258. data/generated/google/apis/fitness_v1/service.rb +3 -1
  259. data/generated/google/apis/fitness_v1.rb +13 -1
  260. data/generated/google/apis/games_v1/classes.rb +300 -0
  261. data/generated/google/apis/games_v1/representations.rb +116 -0
  262. data/generated/google/apis/games_v1/service.rb +34 -0
  263. data/generated/google/apis/games_v1.rb +1 -1
  264. data/generated/google/apis/gameservices_v1/classes.rb +15 -14
  265. data/generated/google/apis/gameservices_v1/service.rb +54 -51
  266. data/generated/google/apis/gameservices_v1.rb +1 -1
  267. data/generated/google/apis/gameservices_v1beta/classes.rb +15 -14
  268. data/generated/google/apis/gameservices_v1beta/service.rb +54 -51
  269. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  270. data/generated/google/apis/genomics_v2alpha1/classes.rb +104 -0
  271. data/generated/google/apis/genomics_v2alpha1/representations.rb +47 -0
  272. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  273. data/generated/google/apis/gmail_v1/service.rb +1 -1
  274. data/generated/google/apis/gmail_v1.rb +1 -1
  275. data/generated/google/apis/gmailpostmastertools_v1beta1/service.rb +10 -10
  276. data/generated/google/apis/gmailpostmastertools_v1beta1.rb +1 -1
  277. data/generated/google/apis/healthcare_v1/classes.rb +7 -5
  278. data/generated/google/apis/healthcare_v1/service.rb +2 -1
  279. data/generated/google/apis/healthcare_v1.rb +1 -1
  280. data/generated/google/apis/healthcare_v1beta1/classes.rb +1190 -285
  281. data/generated/google/apis/healthcare_v1beta1/representations.rb +516 -68
  282. data/generated/google/apis/healthcare_v1beta1/service.rb +1500 -228
  283. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  284. data/generated/google/apis/iam_v1/service.rb +1 -4
  285. data/generated/google/apis/iam_v1.rb +2 -5
  286. data/generated/google/apis/iamcredentials_v1/service.rb +2 -3
  287. data/generated/google/apis/iamcredentials_v1.rb +3 -4
  288. data/generated/google/apis/jobs_v2/classes.rb +798 -0
  289. data/generated/google/apis/jobs_v2/representations.rb +272 -0
  290. data/generated/google/apis/jobs_v2.rb +1 -1
  291. data/generated/google/apis/jobs_v3/classes.rb +798 -0
  292. data/generated/google/apis/jobs_v3/representations.rb +272 -0
  293. data/generated/google/apis/jobs_v3.rb +1 -1
  294. data/generated/google/apis/jobs_v3p1beta1/classes.rb +759 -0
  295. data/generated/google/apis/jobs_v3p1beta1/representations.rb +257 -0
  296. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  297. data/generated/google/apis/licensing_v1/service.rb +2 -2
  298. data/generated/google/apis/licensing_v1.rb +1 -1
  299. data/generated/google/apis/lifesciences_v2beta/classes.rb +104 -0
  300. data/generated/google/apis/lifesciences_v2beta/representations.rb +47 -0
  301. data/generated/google/apis/lifesciences_v2beta.rb +1 -1
  302. data/generated/google/apis/localservices_v1/classes.rb +7 -0
  303. data/generated/google/apis/localservices_v1/representations.rb +2 -0
  304. data/generated/google/apis/localservices_v1/service.rb +20 -20
  305. data/generated/google/apis/localservices_v1.rb +1 -1
  306. data/generated/google/apis/logging_v2/classes.rb +174 -60
  307. data/generated/google/apis/logging_v2/representations.rb +64 -0
  308. data/generated/google/apis/logging_v2/service.rb +1422 -127
  309. data/generated/google/apis/logging_v2.rb +1 -1
  310. data/generated/google/apis/managedidentities_v1/classes.rb +8 -1
  311. data/generated/google/apis/managedidentities_v1/representations.rb +1 -0
  312. data/generated/google/apis/managedidentities_v1/service.rb +1 -4
  313. data/generated/google/apis/managedidentities_v1.rb +1 -1
  314. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +87 -9
  315. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +34 -1
  316. data/generated/google/apis/managedidentities_v1alpha1/service.rb +83 -5
  317. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  318. data/generated/google/apis/managedidentities_v1beta1/classes.rb +88 -9
  319. data/generated/google/apis/managedidentities_v1beta1/representations.rb +34 -1
  320. data/generated/google/apis/managedidentities_v1beta1/service.rb +83 -5
  321. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  322. data/generated/google/apis/memcache_v1beta2/classes.rb +1 -1
  323. data/generated/google/apis/memcache_v1beta2/service.rb +5 -5
  324. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  325. data/generated/google/apis/ml_v1/classes.rb +238 -77
  326. data/generated/google/apis/ml_v1/representations.rb +17 -0
  327. data/generated/google/apis/ml_v1.rb +1 -1
  328. data/generated/google/apis/monitoring_v3/classes.rb +71 -17
  329. data/generated/google/apis/monitoring_v3/representations.rb +18 -0
  330. data/generated/google/apis/monitoring_v3/service.rb +55 -6
  331. data/generated/google/apis/monitoring_v3.rb +1 -1
  332. data/generated/google/apis/oauth2_v2/classes.rb +165 -0
  333. data/generated/google/apis/oauth2_v2/representations.rb +68 -0
  334. data/generated/google/apis/oauth2_v2/service.rb +158 -0
  335. data/generated/google/apis/oauth2_v2.rb +40 -0
  336. data/generated/google/apis/osconfig_v1/service.rb +4 -4
  337. data/generated/google/apis/osconfig_v1.rb +3 -3
  338. data/generated/google/apis/osconfig_v1beta/service.rb +4 -4
  339. data/generated/google/apis/osconfig_v1beta.rb +3 -3
  340. data/generated/google/apis/oslogin_v1alpha/classes.rb +2 -2
  341. data/generated/google/apis/oslogin_v1alpha/service.rb +13 -13
  342. data/generated/google/apis/oslogin_v1alpha.rb +1 -1
  343. data/generated/google/apis/people_v1/classes.rb +52 -51
  344. data/generated/google/apis/people_v1/service.rb +24 -22
  345. data/generated/google/apis/people_v1.rb +1 -1
  346. data/generated/google/apis/playablelocations_v3/classes.rb +6 -6
  347. data/generated/google/apis/playablelocations_v3.rb +1 -1
  348. data/generated/google/apis/playcustomapp_v1.rb +1 -1
  349. data/generated/google/apis/poly_v1/classes.rb +65 -79
  350. data/generated/google/apis/poly_v1/service.rb +50 -63
  351. data/generated/google/apis/poly_v1.rb +3 -4
  352. data/generated/google/apis/privateca_v1beta1/classes.rb +2466 -0
  353. data/generated/google/apis/privateca_v1beta1/representations.rb +996 -0
  354. data/generated/google/apis/privateca_v1beta1/service.rb +1487 -0
  355. data/generated/google/apis/{appsactivity_v1.rb → privateca_v1beta1.rb} +11 -11
  356. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +109 -0
  357. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  358. data/generated/google/apis/pubsub_v1/service.rb +2 -2
  359. data/generated/google/apis/pubsub_v1.rb +1 -1
  360. data/generated/google/apis/pubsublite_v1/classes.rb +2 -2
  361. data/generated/google/apis/pubsublite_v1.rb +1 -1
  362. data/generated/google/apis/realtimebidding_v1/classes.rb +84 -123
  363. data/generated/google/apis/realtimebidding_v1/representations.rb +18 -32
  364. data/generated/google/apis/realtimebidding_v1/service.rb +4 -1
  365. data/generated/google/apis/realtimebidding_v1.rb +1 -1
  366. data/generated/google/apis/recommendationengine_v1beta1/classes.rb +32 -0
  367. data/generated/google/apis/recommendationengine_v1beta1/representations.rb +25 -0
  368. data/generated/google/apis/recommendationengine_v1beta1.rb +1 -1
  369. data/generated/google/apis/recommender_v1/classes.rb +1 -1
  370. data/generated/google/apis/recommender_v1/service.rb +4 -2
  371. data/generated/google/apis/recommender_v1.rb +1 -1
  372. data/generated/google/apis/recommender_v1beta1/classes.rb +1 -1
  373. data/generated/google/apis/recommender_v1beta1/service.rb +4 -2
  374. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  375. data/generated/google/apis/redis_v1/classes.rb +5 -5
  376. data/generated/google/apis/redis_v1/service.rb +2 -2
  377. data/generated/google/apis/redis_v1.rb +1 -1
  378. data/generated/google/apis/redis_v1beta1/classes.rb +33 -5
  379. data/generated/google/apis/redis_v1beta1/representations.rb +14 -0
  380. data/generated/google/apis/redis_v1beta1/service.rb +36 -2
  381. data/generated/google/apis/redis_v1beta1.rb +1 -1
  382. data/generated/google/apis/remotebuildexecution_v1/classes.rb +6 -0
  383. data/generated/google/apis/remotebuildexecution_v1/representations.rb +1 -0
  384. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  385. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +6 -0
  386. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +1 -0
  387. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  388. data/generated/google/apis/remotebuildexecution_v2/classes.rb +6 -0
  389. data/generated/google/apis/remotebuildexecution_v2/representations.rb +1 -0
  390. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  391. data/generated/google/apis/run_v1/classes.rb +12 -132
  392. data/generated/google/apis/run_v1/representations.rb +0 -61
  393. data/generated/google/apis/run_v1/service.rb +0 -342
  394. data/generated/google/apis/run_v1.rb +1 -1
  395. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +1 -2
  396. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  397. data/generated/google/apis/safebrowsing_v4.rb +1 -1
  398. data/generated/google/apis/sasportal_v1alpha1/service.rb +109 -0
  399. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  400. data/generated/google/apis/searchconsole_v1/classes.rb +388 -0
  401. data/generated/google/apis/searchconsole_v1/representations.rb +162 -0
  402. data/generated/google/apis/searchconsole_v1/service.rb +287 -0
  403. data/generated/google/apis/searchconsole_v1.rb +7 -1
  404. data/generated/google/apis/secretmanager_v1/classes.rb +1 -2
  405. data/generated/google/apis/secretmanager_v1.rb +1 -1
  406. data/generated/google/apis/secretmanager_v1beta1/classes.rb +1 -2
  407. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  408. data/generated/google/apis/securitycenter_v1/classes.rb +5 -199
  409. data/generated/google/apis/securitycenter_v1/representations.rb +0 -72
  410. data/generated/google/apis/securitycenter_v1.rb +1 -1
  411. data/generated/google/apis/securitycenter_v1beta1/classes.rb +2 -196
  412. data/generated/google/apis/securitycenter_v1beta1/representations.rb +0 -72
  413. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  414. data/generated/google/apis/securitycenter_v1beta2/classes.rb +2 -196
  415. data/generated/google/apis/securitycenter_v1beta2/representations.rb +0 -72
  416. data/generated/google/apis/securitycenter_v1beta2.rb +1 -1
  417. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +5 -63
  418. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +0 -18
  419. data/generated/google/apis/serviceconsumermanagement_v1/service.rb +1 -1
  420. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  421. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +5 -63
  422. data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +0 -18
  423. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  424. data/generated/google/apis/servicecontrol_v1/classes.rb +78 -4
  425. data/generated/google/apis/servicecontrol_v1/representations.rb +10 -0
  426. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  427. data/generated/google/apis/servicecontrol_v2/classes.rb +63 -2
  428. data/generated/google/apis/servicecontrol_v2/representations.rb +8 -0
  429. data/generated/google/apis/servicecontrol_v2.rb +1 -1
  430. data/generated/google/apis/servicemanagement_v1/classes.rb +5 -85
  431. data/generated/google/apis/servicemanagement_v1/representations.rb +0 -31
  432. data/generated/google/apis/servicemanagement_v1/service.rb +0 -36
  433. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  434. data/generated/google/apis/servicenetworking_v1/classes.rb +185 -64
  435. data/generated/google/apis/servicenetworking_v1/representations.rb +63 -14
  436. data/generated/google/apis/servicenetworking_v1/service.rb +2 -2
  437. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  438. data/generated/google/apis/servicenetworking_v1beta/classes.rb +139 -64
  439. data/generated/google/apis/servicenetworking_v1beta/representations.rb +46 -14
  440. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  441. data/generated/google/apis/serviceusage_v1/classes.rb +5 -63
  442. data/generated/google/apis/serviceusage_v1/representations.rb +0 -18
  443. data/generated/google/apis/serviceusage_v1.rb +1 -1
  444. data/generated/google/apis/serviceusage_v1beta1/classes.rb +35 -63
  445. data/generated/google/apis/serviceusage_v1beta1/representations.rb +15 -18
  446. data/generated/google/apis/serviceusage_v1beta1/service.rb +36 -0
  447. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  448. data/generated/google/apis/sheets_v4/classes.rb +174 -84
  449. data/generated/google/apis/sheets_v4.rb +1 -1
  450. data/generated/google/apis/smartdevicemanagement_v1/classes.rb +273 -0
  451. data/generated/google/apis/smartdevicemanagement_v1/representations.rb +157 -0
  452. data/generated/google/apis/smartdevicemanagement_v1/service.rb +304 -0
  453. data/generated/google/apis/smartdevicemanagement_v1.rb +35 -0
  454. data/generated/google/apis/sourcerepo_v1/classes.rb +250 -400
  455. data/generated/google/apis/sourcerepo_v1/service.rb +40 -49
  456. data/generated/google/apis/sourcerepo_v1.rb +1 -1
  457. data/generated/google/apis/sqladmin_v1beta4/classes.rb +156 -57
  458. data/generated/google/apis/sqladmin_v1beta4/representations.rb +53 -17
  459. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  460. data/generated/google/apis/storage_v1/classes.rb +2 -10
  461. data/generated/google/apis/storage_v1/representations.rb +0 -1
  462. data/generated/google/apis/storage_v1/service.rb +3 -2
  463. data/generated/google/apis/storage_v1.rb +1 -1
  464. data/generated/google/apis/storagetransfer_v1/classes.rb +64 -34
  465. data/generated/google/apis/storagetransfer_v1/representations.rb +13 -0
  466. data/generated/google/apis/storagetransfer_v1/service.rb +22 -20
  467. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  468. data/generated/google/apis/streetviewpublish_v1/classes.rb +4 -4
  469. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  470. data/generated/google/apis/sts_v1/classes.rb +10 -9
  471. data/generated/google/apis/sts_v1.rb +1 -1
  472. data/generated/google/apis/sts_v1beta/classes.rb +67 -67
  473. data/generated/google/apis/sts_v1beta/service.rb +2 -2
  474. data/generated/google/apis/sts_v1beta.rb +1 -1
  475. data/generated/google/apis/tagmanager_v2/classes.rb +12 -0
  476. data/generated/google/apis/tagmanager_v2/representations.rb +3 -0
  477. data/generated/google/apis/tagmanager_v2.rb +1 -1
  478. data/generated/google/apis/testing_v1/classes.rb +92 -33
  479. data/generated/google/apis/testing_v1/representations.rb +21 -0
  480. data/generated/google/apis/testing_v1/service.rb +4 -4
  481. data/generated/google/apis/testing_v1.rb +1 -1
  482. data/generated/google/apis/texttospeech_v1beta1.rb +1 -1
  483. data/generated/google/apis/toolresults_v1beta3/classes.rb +13 -0
  484. data/generated/google/apis/toolresults_v1beta3/representations.rb +12 -0
  485. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  486. data/generated/google/apis/tpu_v1/classes.rb +3 -3
  487. data/generated/google/apis/tpu_v1/service.rb +8 -8
  488. data/generated/google/apis/tpu_v1.rb +1 -1
  489. data/generated/google/apis/tpu_v1alpha1/classes.rb +3 -3
  490. data/generated/google/apis/tpu_v1alpha1/service.rb +8 -8
  491. data/generated/google/apis/tpu_v1alpha1.rb +1 -1
  492. data/generated/google/apis/translate_v3/classes.rb +4 -3
  493. data/generated/google/apis/translate_v3.rb +1 -1
  494. data/generated/google/apis/translate_v3beta1/classes.rb +2 -1
  495. data/generated/google/apis/translate_v3beta1.rb +1 -1
  496. data/generated/google/apis/vault_v1/classes.rb +333 -0
  497. data/generated/google/apis/vault_v1/representations.rb +162 -0
  498. data/generated/google/apis/vault_v1/service.rb +151 -0
  499. data/generated/google/apis/vault_v1.rb +1 -1
  500. data/generated/google/apis/videointelligence_v1/classes.rb +751 -28
  501. data/generated/google/apis/videointelligence_v1/representations.rb +402 -2
  502. data/generated/google/apis/videointelligence_v1/service.rb +0 -62
  503. data/generated/google/apis/videointelligence_v1.rb +1 -1
  504. data/generated/google/apis/videointelligence_v1beta2/classes.rb +751 -28
  505. data/generated/google/apis/videointelligence_v1beta2/representations.rb +402 -2
  506. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  507. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +749 -26
  508. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +402 -2
  509. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  510. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +734 -11
  511. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +402 -2
  512. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  513. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +667 -28
  514. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +368 -2
  515. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  516. data/generated/google/apis/vision_v1/classes.rb +16 -16
  517. data/generated/google/apis/vision_v1.rb +1 -1
  518. data/generated/google/apis/vision_v1p1beta1/classes.rb +16 -16
  519. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  520. data/generated/google/apis/vision_v1p2beta1/classes.rb +16 -16
  521. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  522. data/generated/google/apis/websecurityscanner_v1.rb +1 -1
  523. data/generated/google/apis/websecurityscanner_v1beta.rb +1 -1
  524. data/generated/google/apis/workflowexecutions_v1beta/service.rb +1 -1
  525. data/generated/google/apis/workflowexecutions_v1beta.rb +2 -2
  526. data/generated/google/apis/workflows_v1beta/service.rb +2 -1
  527. data/generated/google/apis/workflows_v1beta.rb +3 -2
  528. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  529. data/generated/google/apis/youtube_v3/classes.rb +0 -134
  530. data/generated/google/apis/youtube_v3/representations.rb +0 -55
  531. data/generated/google/apis/youtube_v3/service.rb +1 -1
  532. data/generated/google/apis/youtube_v3.rb +1 -1
  533. data/google-api-client.gemspec +25 -25
  534. data/lib/google/apis/core/api_command.rb +1 -0
  535. data/lib/google/apis/core/http_command.rb +2 -1
  536. data/lib/google/apis/options.rb +8 -5
  537. data/lib/google/apis/version.rb +1 -1
  538. data/synth.py +40 -0
  539. metadata +51 -12
  540. data/generated/google/apis/appsactivity_v1/classes.rb +0 -415
  541. data/generated/google/apis/appsactivity_v1/representations.rb +0 -209
  542. data/generated/google/apis/appsactivity_v1/service.rb +0 -126
@@ -22,6 +22,94 @@ module Google
22
22
  module Apis
23
23
  module CloudassetV1
24
24
 
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
+
25
113
  # An asset in Google Cloud. An asset can be any resource in the Google Cloud [
26
114
  # resource hierarchy](https://cloud.google.com/resource-manager/docs/cloud-
27
115
  # platform-resource-hierarchy), a resource outside the Google Cloud resource
@@ -697,6 +785,273 @@ module Google
697
785
  end
698
786
  end
699
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
+
700
1055
  # Used in `policy_type` to specify how `boolean_policy` will behave at this
701
1056
  # resource.
702
1057
  class GoogleCloudOrgpolicyV1BooleanPolicy
@@ -1464,6 +1819,206 @@ module Google
1464
1819
  end
1465
1820
  end
1466
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
+
1467
2022
  # A result of IAM Policy search, containing information of an IAM policy.
1468
2023
  class IamPolicySearchResult
1469
2024
  include Google::Apis::Core::Hashable
@@ -1537,6 +2092,32 @@ module Google
1537
2092
  end
1538
2093
  end
1539
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
+
1540
2121
  #
1541
2122
  class ListFeedsResponse
1542
2123
  include Google::Apis::Core::Hashable
@@ -1618,6 +2199,98 @@ module Google
1618
2199
  end
1619
2200
  end
1620
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
+
1621
2294
  # Output configuration for export assets destination.
1622
2295
  class OutputConfig
1623
2296
  include Google::Apis::Core::Hashable
@@ -1968,6 +2641,30 @@ module Google
1968
2641
  end
1969
2642
  end
1970
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
+
1971
2668
  # Search all IAM policies response.
1972
2669
  class SearchAllIamPoliciesResponse
1973
2670
  include Google::Apis::Core::Hashable