google-api-client 0.46.0 → 0.49.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 (557) 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 +643 -190
  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/accessapproval_v1.rb +1 -1
  12. data/generated/google/apis/accessapproval_v1/classes.rb +13 -15
  13. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  14. data/generated/google/apis/accesscontextmanager_v1/classes.rb +68 -0
  15. data/generated/google/apis/accesscontextmanager_v1/representations.rb +30 -0
  16. data/generated/google/apis/accesscontextmanager_v1/service.rb +180 -0
  17. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  18. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +30 -30
  19. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  20. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +25 -0
  21. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +15 -0
  22. data/generated/google/apis/admin_directory_v1.rb +1 -1
  23. data/generated/google/apis/admin_directory_v1/classes.rb +135 -0
  24. data/generated/google/apis/admin_directory_v1/representations.rb +62 -0
  25. data/generated/google/apis/admin_directory_v1/service.rb +72 -0
  26. data/generated/google/apis/admin_reports_v1.rb +1 -1
  27. data/generated/google/apis/admob_v1.rb +3 -2
  28. data/generated/google/apis/admob_v1/classes.rb +29 -29
  29. data/generated/google/apis/admob_v1/service.rb +2 -1
  30. data/generated/google/apis/adsense_v1_4.rb +1 -1
  31. data/generated/google/apis/adsense_v1_4/service.rb +4 -1
  32. data/generated/google/apis/analyticsadmin_v1alpha.rb +1 -1
  33. data/generated/google/apis/analyticsadmin_v1alpha/classes.rb +19 -18
  34. data/generated/google/apis/analyticsadmin_v1alpha/service.rb +12 -13
  35. data/generated/google/apis/analyticsdata_v1alpha.rb +1 -1
  36. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +201 -17
  37. data/generated/google/apis/analyticsdata_v1alpha/representations.rb +69 -0
  38. data/generated/google/apis/analyticsdata_v1alpha/service.rb +79 -0
  39. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  40. data/generated/google/apis/androidmanagement_v1/classes.rb +29 -26
  41. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  42. data/generated/google/apis/androidpublisher_v3/classes.rb +2 -1
  43. data/generated/google/apis/apigateway_v1beta.rb +1 -1
  44. data/generated/google/apis/apigateway_v1beta/classes.rb +8 -5
  45. data/generated/google/apis/apigateway_v1beta/representations.rb +1 -0
  46. data/generated/google/apis/apigee_v1.rb +1 -1
  47. data/generated/google/apis/apigee_v1/classes.rb +500 -133
  48. data/generated/google/apis/apigee_v1/representations.rb +158 -18
  49. data/generated/google/apis/apigee_v1/service.rb +504 -55
  50. data/generated/google/apis/appsmarket_v2.rb +1 -1
  51. data/generated/google/apis/area120tables_v1alpha1.rb +46 -0
  52. data/generated/google/apis/area120tables_v1alpha1/classes.rb +481 -0
  53. data/generated/google/apis/area120tables_v1alpha1/representations.rb +279 -0
  54. data/generated/google/apis/area120tables_v1alpha1/service.rb +448 -0
  55. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  56. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +8 -2
  57. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +1 -0
  58. data/generated/google/apis/assuredworkloads_v1beta1.rb +1 -1
  59. data/generated/google/apis/assuredworkloads_v1beta1/classes.rb +10 -2
  60. data/generated/google/apis/assuredworkloads_v1beta1/service.rb +5 -1
  61. data/generated/google/apis/bigquery_v2.rb +1 -1
  62. data/generated/google/apis/bigquery_v2/classes.rb +158 -5
  63. data/generated/google/apis/bigquery_v2/representations.rb +67 -0
  64. data/generated/google/apis/bigquery_v2/service.rb +46 -0
  65. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  66. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +6 -0
  67. data/generated/google/apis/bigqueryconnection_v1beta1/representations.rb +1 -0
  68. data/generated/google/apis/billingbudgets_v1.rb +38 -0
  69. data/generated/google/apis/billingbudgets_v1/classes.rb +373 -0
  70. data/generated/google/apis/billingbudgets_v1/representations.rb +171 -0
  71. data/generated/google/apis/billingbudgets_v1/service.rb +249 -0
  72. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  73. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +12 -1
  74. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +1 -0
  75. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  76. data/generated/google/apis/binaryauthorization_v1/classes.rb +3 -4
  77. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  78. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +3 -4
  79. data/generated/google/apis/books_v1.rb +1 -1
  80. data/generated/google/apis/books_v1/service.rb +52 -52
  81. data/generated/google/apis/calendar_v3.rb +1 -1
  82. data/generated/google/apis/calendar_v3/classes.rb +2 -2
  83. data/generated/google/apis/chat_v1.rb +1 -1
  84. data/generated/google/apis/chat_v1/classes.rb +7 -0
  85. data/generated/google/apis/chat_v1/representations.rb +1 -0
  86. data/generated/google/apis/civicinfo_v2.rb +1 -1
  87. data/generated/google/apis/civicinfo_v2/classes.rb +0 -24
  88. data/generated/google/apis/civicinfo_v2/representations.rb +0 -3
  89. data/generated/google/apis/classroom_v1.rb +1 -1
  90. data/generated/google/apis/classroom_v1/classes.rb +21 -21
  91. data/generated/google/apis/cloudasset_v1.rb +1 -1
  92. data/generated/google/apis/cloudasset_v1/classes.rb +703 -0
  93. data/generated/google/apis/cloudasset_v1/representations.rb +305 -0
  94. data/generated/google/apis/cloudasset_v1/service.rb +171 -0
  95. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  96. data/generated/google/apis/cloudasset_v1beta1/classes.rb +6 -0
  97. data/generated/google/apis/cloudasset_v1beta1/representations.rb +1 -0
  98. data/generated/google/apis/cloudasset_v1p1beta1.rb +1 -1
  99. data/generated/google/apis/cloudasset_v1p1beta1/classes.rb +6 -0
  100. data/generated/google/apis/cloudasset_v1p1beta1/representations.rb +1 -0
  101. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  102. data/generated/google/apis/cloudasset_v1p4beta1/classes.rb +9 -3
  103. data/generated/google/apis/cloudasset_v1p4beta1/representations.rb +1 -0
  104. data/generated/google/apis/cloudasset_v1p5beta1.rb +1 -1
  105. data/generated/google/apis/cloudasset_v1p5beta1/classes.rb +6 -0
  106. data/generated/google/apis/cloudasset_v1p5beta1/representations.rb +1 -0
  107. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  108. data/generated/google/apis/cloudbilling_v1/classes.rb +1 -1
  109. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  110. data/generated/google/apis/cloudbuild_v1/classes.rb +2 -1
  111. data/generated/google/apis/cloudbuild_v1/service.rb +10 -2
  112. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  113. data/generated/google/apis/cloudfunctions_v1/classes.rb +6 -0
  114. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -0
  115. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  116. data/generated/google/apis/cloudidentity_v1beta1/service.rb +22 -14
  117. data/generated/google/apis/cloudiot_v1.rb +1 -1
  118. data/generated/google/apis/cloudiot_v1/classes.rb +1 -2
  119. data/generated/google/apis/cloudkms_v1.rb +1 -1
  120. data/generated/google/apis/cloudkms_v1/classes.rb +1 -2
  121. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  122. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +79 -2
  123. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +32 -0
  124. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  125. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +79 -2
  126. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +32 -0
  127. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  128. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +83 -6
  129. data/generated/google/apis/cloudresourcemanager_v2/representations.rb +32 -0
  130. data/generated/google/apis/cloudresourcemanager_v2/service.rb +10 -10
  131. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  132. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +83 -6
  133. data/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb +32 -0
  134. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +10 -10
  135. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  136. data/generated/google/apis/cloudsearch_v1/classes.rb +2 -1
  137. data/generated/google/apis/cloudshell_v1.rb +1 -1
  138. data/generated/google/apis/cloudshell_v1/classes.rb +342 -0
  139. data/generated/google/apis/cloudshell_v1/representations.rb +200 -0
  140. data/generated/google/apis/cloudshell_v1/service.rb +177 -0
  141. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  142. data/generated/google/apis/cloudtasks_v2/classes.rb +1 -2
  143. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  144. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +1 -2
  145. data/generated/google/apis/cloudtasks_v2beta2/service.rb +12 -2
  146. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  147. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +1 -2
  148. data/generated/google/apis/composer_v1.rb +1 -1
  149. data/generated/google/apis/composer_v1/classes.rb +2 -3
  150. data/generated/google/apis/composer_v1beta1.rb +1 -1
  151. data/generated/google/apis/composer_v1beta1/classes.rb +2 -3
  152. data/generated/google/apis/composer_v1beta1/service.rb +37 -35
  153. data/generated/google/apis/compute_alpha.rb +1 -1
  154. data/generated/google/apis/compute_alpha/classes.rb +126 -21
  155. data/generated/google/apis/compute_alpha/representations.rb +7 -0
  156. data/generated/google/apis/compute_alpha/service.rb +62 -3
  157. data/generated/google/apis/compute_beta.rb +1 -1
  158. data/generated/google/apis/compute_beta/classes.rb +83 -19
  159. data/generated/google/apis/compute_beta/representations.rb +4 -0
  160. data/generated/google/apis/compute_beta/service.rb +3 -3
  161. data/generated/google/apis/compute_v1.rb +1 -1
  162. data/generated/google/apis/compute_v1/classes.rb +278 -27
  163. data/generated/google/apis/compute_v1/representations.rb +44 -0
  164. data/generated/google/apis/compute_v1/service.rb +5 -3
  165. data/generated/google/apis/container_v1.rb +1 -1
  166. data/generated/google/apis/container_v1/classes.rb +22 -10
  167. data/generated/google/apis/container_v1beta1.rb +1 -1
  168. data/generated/google/apis/container_v1beta1/classes.rb +51 -10
  169. data/generated/google/apis/container_v1beta1/representations.rb +15 -0
  170. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  171. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +1 -2
  172. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  173. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +1 -2
  174. data/generated/google/apis/content_v2.rb +3 -4
  175. data/generated/google/apis/content_v2/classes.rb +511 -1219
  176. data/generated/google/apis/content_v2/service.rb +377 -650
  177. data/generated/google/apis/content_v2_1.rb +3 -4
  178. data/generated/google/apis/content_v2_1/classes.rb +1006 -1057
  179. data/generated/google/apis/content_v2_1/representations.rb +253 -0
  180. data/generated/google/apis/content_v2_1/service.rb +942 -801
  181. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  182. data/generated/google/apis/datacatalog_v1beta1/classes.rb +26 -12
  183. data/generated/google/apis/datacatalog_v1beta1/representations.rb +5 -0
  184. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  185. data/generated/google/apis/dataflow_v1b3/classes.rb +12 -0
  186. data/generated/google/apis/dataflow_v1b3/representations.rb +3 -0
  187. data/generated/google/apis/datalabeling_v1beta1.rb +34 -0
  188. data/generated/google/apis/datalabeling_v1beta1/classes.rb +6207 -0
  189. data/generated/google/apis/datalabeling_v1beta1/representations.rb +3156 -0
  190. data/generated/google/apis/datalabeling_v1beta1/service.rb +1762 -0
  191. data/generated/google/apis/datamigration_v1beta1.rb +34 -0
  192. data/generated/google/apis/datamigration_v1beta1/classes.rb +1670 -0
  193. data/generated/google/apis/datamigration_v1beta1/representations.rb +678 -0
  194. data/generated/google/apis/datamigration_v1beta1/service.rb +1172 -0
  195. data/generated/google/apis/dataproc_v1.rb +1 -1
  196. data/generated/google/apis/dataproc_v1/classes.rb +18 -7
  197. data/generated/google/apis/dataproc_v1/representations.rb +1 -0
  198. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  199. data/generated/google/apis/dataproc_v1beta2/classes.rb +18 -7
  200. data/generated/google/apis/dataproc_v1beta2/representations.rb +1 -0
  201. data/generated/google/apis/datastore_v1.rb +1 -1
  202. data/generated/google/apis/datastore_v1/classes.rb +4 -4
  203. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  204. data/generated/google/apis/datastore_v1beta3/classes.rb +4 -4
  205. data/generated/google/apis/deploymentmanager_v2.rb +6 -4
  206. data/generated/google/apis/deploymentmanager_v2/classes.rb +209 -558
  207. data/generated/google/apis/deploymentmanager_v2/representations.rb +1 -132
  208. data/generated/google/apis/deploymentmanager_v2/service.rb +169 -213
  209. data/generated/google/apis/deploymentmanager_v2beta.rb +6 -5
  210. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +253 -609
  211. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +1 -132
  212. data/generated/google/apis/deploymentmanager_v2beta/service.rb +278 -359
  213. data/generated/google/apis/dfareporting_v3_3.rb +2 -2
  214. data/generated/google/apis/dfareporting_v3_3/classes.rb +6 -6
  215. data/generated/google/apis/dfareporting_v3_3/service.rb +12 -12
  216. data/generated/google/apis/dfareporting_v3_4.rb +2 -2
  217. data/generated/google/apis/dfareporting_v3_4/classes.rb +6 -6
  218. data/generated/google/apis/dfareporting_v3_4/service.rb +12 -12
  219. data/generated/google/apis/dialogflow_v2.rb +1 -1
  220. data/generated/google/apis/dialogflow_v2/classes.rb +677 -364
  221. data/generated/google/apis/dialogflow_v2/representations.rb +284 -167
  222. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  223. data/generated/google/apis/dialogflow_v2beta1/classes.rb +677 -364
  224. data/generated/google/apis/dialogflow_v2beta1/representations.rb +288 -171
  225. data/generated/google/apis/dialogflow_v2beta1/service.rb +56 -6
  226. data/generated/google/apis/dialogflow_v3beta1.rb +1 -1
  227. data/generated/google/apis/dialogflow_v3beta1/classes.rb +754 -371
  228. data/generated/google/apis/dialogflow_v3beta1/representations.rb +307 -170
  229. data/generated/google/apis/dialogflow_v3beta1/service.rb +22 -9
  230. data/generated/google/apis/displayvideo_v1.rb +1 -1
  231. data/generated/google/apis/displayvideo_v1/classes.rb +241 -63
  232. data/generated/google/apis/displayvideo_v1/representations.rb +77 -0
  233. data/generated/google/apis/displayvideo_v1/service.rb +261 -18
  234. data/generated/google/apis/dlp_v2.rb +1 -1
  235. data/generated/google/apis/dlp_v2/classes.rb +33 -32
  236. data/generated/google/apis/dns_v1.rb +2 -2
  237. data/generated/google/apis/dns_v1/classes.rb +181 -0
  238. data/generated/google/apis/dns_v1/representations.rb +83 -0
  239. data/generated/google/apis/dns_v1/service.rb +11 -11
  240. data/generated/google/apis/dns_v1beta2.rb +2 -2
  241. data/generated/google/apis/dns_v1beta2/classes.rb +195 -1
  242. data/generated/google/apis/dns_v1beta2/representations.rb +95 -0
  243. data/generated/google/apis/dns_v1beta2/service.rb +187 -11
  244. data/generated/google/apis/documentai_v1beta3.rb +36 -0
  245. data/generated/google/apis/documentai_v1beta3/classes.rb +6149 -0
  246. data/generated/google/apis/documentai_v1beta3/representations.rb +2666 -0
  247. data/generated/google/apis/documentai_v1beta3/service.rb +263 -0
  248. data/generated/google/apis/domains_v1alpha2.rb +34 -0
  249. data/generated/google/apis/domains_v1alpha2/classes.rb +1540 -0
  250. data/generated/google/apis/domains_v1alpha2/representations.rb +606 -0
  251. data/generated/google/apis/domains_v1alpha2/service.rb +805 -0
  252. data/generated/google/apis/domains_v1beta1.rb +34 -0
  253. data/generated/google/apis/domains_v1beta1/classes.rb +1540 -0
  254. data/generated/google/apis/domains_v1beta1/representations.rb +606 -0
  255. data/generated/google/apis/domains_v1beta1/service.rb +805 -0
  256. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  257. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +2 -1
  258. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  259. data/generated/google/apis/doubleclickbidmanager_v1_1/classes.rb +4 -3
  260. data/generated/google/apis/drive_v2.rb +1 -1
  261. data/generated/google/apis/drive_v2/classes.rb +23 -20
  262. data/generated/google/apis/drive_v2/service.rb +2 -2
  263. data/generated/google/apis/drive_v3.rb +1 -1
  264. data/generated/google/apis/drive_v3/classes.rb +10 -7
  265. data/generated/google/apis/eventarc_v1beta1.rb +34 -0
  266. data/generated/google/apis/eventarc_v1beta1/classes.rb +937 -0
  267. data/generated/google/apis/eventarc_v1beta1/representations.rb +380 -0
  268. data/generated/google/apis/eventarc_v1beta1/service.rb +579 -0
  269. data/generated/google/apis/file_v1.rb +1 -1
  270. data/generated/google/apis/file_v1/classes.rb +505 -4
  271. data/generated/google/apis/file_v1/representations.rb +203 -0
  272. data/generated/google/apis/file_v1/service.rb +229 -1
  273. data/generated/google/apis/file_v1beta1.rb +1 -1
  274. data/generated/google/apis/file_v1beta1/classes.rb +346 -6
  275. data/generated/google/apis/file_v1beta1/representations.rb +149 -0
  276. data/generated/google/apis/file_v1beta1/service.rb +6 -2
  277. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  278. data/generated/google/apis/firebase_v1beta1/service.rb +17 -4
  279. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  280. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +2 -0
  281. data/generated/google/apis/firestore_v1.rb +1 -1
  282. data/generated/google/apis/firestore_v1/classes.rb +4 -4
  283. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  284. data/generated/google/apis/firestore_v1beta1/classes.rb +4 -4
  285. data/generated/google/apis/fitness_v1.rb +13 -1
  286. data/generated/google/apis/fitness_v1/service.rb +3 -1
  287. data/generated/google/apis/games_v1.rb +1 -1
  288. data/generated/google/apis/games_v1/classes.rb +300 -0
  289. data/generated/google/apis/games_v1/representations.rb +116 -0
  290. data/generated/google/apis/games_v1/service.rb +34 -0
  291. data/generated/google/apis/gameservices_v1.rb +1 -1
  292. data/generated/google/apis/gameservices_v1/classes.rb +16 -16
  293. data/generated/google/apis/gameservices_v1/service.rb +54 -51
  294. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  295. data/generated/google/apis/gameservices_v1beta/classes.rb +16 -16
  296. data/generated/google/apis/gameservices_v1beta/service.rb +54 -51
  297. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  298. data/generated/google/apis/genomics_v2alpha1/classes.rb +25 -0
  299. data/generated/google/apis/genomics_v2alpha1/representations.rb +15 -0
  300. data/generated/google/apis/gmailpostmastertools_v1beta1.rb +1 -1
  301. data/generated/google/apis/gmailpostmastertools_v1beta1/service.rb +10 -10
  302. data/generated/google/apis/healthcare_v1.rb +1 -1
  303. data/generated/google/apis/healthcare_v1/classes.rb +4 -4
  304. data/generated/google/apis/healthcare_v1/service.rb +2 -1
  305. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  306. data/generated/google/apis/healthcare_v1beta1/classes.rb +468 -295
  307. data/generated/google/apis/healthcare_v1beta1/representations.rb +202 -80
  308. data/generated/google/apis/healthcare_v1beta1/service.rb +156 -74
  309. data/generated/google/apis/iam_v1.rb +2 -5
  310. data/generated/google/apis/iam_v1/classes.rb +8 -11
  311. data/generated/google/apis/iam_v1/representations.rb +0 -1
  312. data/generated/google/apis/iam_v1/service.rb +1 -4
  313. data/generated/google/apis/iamcredentials_v1.rb +3 -4
  314. data/generated/google/apis/iamcredentials_v1/service.rb +2 -3
  315. data/generated/google/apis/iap_v1.rb +1 -1
  316. data/generated/google/apis/iap_v1/classes.rb +1 -13
  317. data/generated/google/apis/iap_v1/representations.rb +0 -1
  318. data/generated/google/apis/iap_v1beta1.rb +1 -1
  319. data/generated/google/apis/iap_v1beta1/classes.rb +1 -2
  320. data/generated/google/apis/licensing_v1.rb +1 -1
  321. data/generated/google/apis/licensing_v1/service.rb +2 -2
  322. data/generated/google/apis/lifesciences_v2beta.rb +1 -1
  323. data/generated/google/apis/lifesciences_v2beta/classes.rb +104 -0
  324. data/generated/google/apis/lifesciences_v2beta/representations.rb +47 -0
  325. data/generated/google/apis/localservices_v1.rb +1 -1
  326. data/generated/google/apis/localservices_v1/classes.rb +7 -0
  327. data/generated/google/apis/localservices_v1/representations.rb +2 -0
  328. data/generated/google/apis/localservices_v1/service.rb +20 -20
  329. data/generated/google/apis/logging_v2.rb +1 -1
  330. data/generated/google/apis/logging_v2/classes.rb +182 -8
  331. data/generated/google/apis/logging_v2/representations.rb +77 -0
  332. data/generated/google/apis/logging_v2/service.rb +426 -5
  333. data/generated/google/apis/managedidentities_v1.rb +1 -1
  334. data/generated/google/apis/managedidentities_v1/classes.rb +2 -3
  335. data/generated/google/apis/managedidentities_v1/service.rb +1 -4
  336. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  337. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +81 -11
  338. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +33 -1
  339. data/generated/google/apis/managedidentities_v1alpha1/service.rb +83 -5
  340. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  341. data/generated/google/apis/managedidentities_v1beta1/classes.rb +82 -11
  342. data/generated/google/apis/managedidentities_v1beta1/representations.rb +33 -1
  343. data/generated/google/apis/managedidentities_v1beta1/service.rb +83 -5
  344. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  345. data/generated/google/apis/memcache_v1beta2/classes.rb +1 -1
  346. data/generated/google/apis/ml_v1.rb +1 -1
  347. data/generated/google/apis/ml_v1/classes.rb +273 -79
  348. data/generated/google/apis/ml_v1/representations.rb +43 -0
  349. data/generated/google/apis/ml_v1/service.rb +35 -0
  350. data/generated/google/apis/monitoring_v3.rb +1 -1
  351. data/generated/google/apis/monitoring_v3/classes.rb +64 -10
  352. data/generated/google/apis/monitoring_v3/representations.rb +18 -0
  353. data/generated/google/apis/monitoring_v3/service.rb +50 -1
  354. data/generated/google/apis/networkmanagement_v1.rb +1 -1
  355. data/generated/google/apis/networkmanagement_v1/classes.rb +6 -0
  356. data/generated/google/apis/networkmanagement_v1/representations.rb +1 -0
  357. data/generated/google/apis/networkmanagement_v1beta1.rb +1 -1
  358. data/generated/google/apis/networkmanagement_v1beta1/classes.rb +57 -0
  359. data/generated/google/apis/networkmanagement_v1beta1/representations.rb +31 -0
  360. data/generated/google/apis/oauth2_v2.rb +40 -0
  361. data/generated/google/apis/oauth2_v2/classes.rb +165 -0
  362. data/generated/google/apis/{displayvideo_v1dev → oauth2_v2}/representations.rb +22 -26
  363. data/generated/google/apis/oauth2_v2/service.rb +158 -0
  364. data/generated/google/apis/people_v1.rb +1 -1
  365. data/generated/google/apis/people_v1/classes.rb +52 -51
  366. data/generated/google/apis/people_v1/service.rb +16 -16
  367. data/generated/google/apis/playablelocations_v3.rb +1 -1
  368. data/generated/google/apis/playablelocations_v3/classes.rb +6 -6
  369. data/generated/google/apis/playcustomapp_v1.rb +1 -1
  370. data/generated/google/apis/policytroubleshooter_v1.rb +1 -1
  371. data/generated/google/apis/policytroubleshooter_v1/classes.rb +6 -0
  372. data/generated/google/apis/policytroubleshooter_v1/representations.rb +1 -0
  373. data/generated/google/apis/policytroubleshooter_v1beta.rb +1 -1
  374. data/generated/google/apis/policytroubleshooter_v1beta/classes.rb +6 -0
  375. data/generated/google/apis/policytroubleshooter_v1beta/representations.rb +1 -0
  376. data/generated/google/apis/poly_v1.rb +3 -4
  377. data/generated/google/apis/poly_v1/classes.rb +65 -79
  378. data/generated/google/apis/poly_v1/service.rb +50 -63
  379. data/generated/google/apis/privateca_v1beta1.rb +36 -0
  380. data/generated/google/apis/privateca_v1beta1/classes.rb +2472 -0
  381. data/generated/google/apis/privateca_v1beta1/representations.rb +997 -0
  382. data/generated/google/apis/privateca_v1beta1/service.rb +1489 -0
  383. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  384. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +109 -0
  385. data/generated/google/apis/pubsub_v1.rb +1 -1
  386. data/generated/google/apis/pubsub_v1/classes.rb +1 -2
  387. data/generated/google/apis/pubsub_v1/service.rb +2 -2
  388. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  389. data/generated/google/apis/pubsub_v1beta2/classes.rb +1 -2
  390. data/generated/google/apis/realtimebidding_v1.rb +1 -1
  391. data/generated/google/apis/realtimebidding_v1/classes.rb +88 -127
  392. data/generated/google/apis/realtimebidding_v1/representations.rb +18 -32
  393. data/generated/google/apis/realtimebidding_v1/service.rb +4 -4
  394. data/generated/google/apis/recommendationengine_v1beta1.rb +1 -1
  395. data/generated/google/apis/recommendationengine_v1beta1/classes.rb +32 -0
  396. data/generated/google/apis/recommendationengine_v1beta1/representations.rb +25 -0
  397. data/generated/google/apis/recommender_v1.rb +1 -1
  398. data/generated/google/apis/recommender_v1/classes.rb +1 -1
  399. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  400. data/generated/google/apis/recommender_v1beta1/classes.rb +1 -1
  401. data/generated/google/apis/redis_v1.rb +1 -1
  402. data/generated/google/apis/redis_v1/classes.rb +28 -0
  403. data/generated/google/apis/redis_v1/representations.rb +14 -0
  404. data/generated/google/apis/redis_v1/service.rb +34 -0
  405. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  406. data/generated/google/apis/remotebuildexecution_v1/classes.rb +6 -0
  407. data/generated/google/apis/remotebuildexecution_v1/representations.rb +1 -0
  408. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  409. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +6 -0
  410. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +1 -0
  411. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  412. data/generated/google/apis/remotebuildexecution_v2/classes.rb +6 -0
  413. data/generated/google/apis/remotebuildexecution_v2/representations.rb +1 -0
  414. data/generated/google/apis/run_v1.rb +1 -1
  415. data/generated/google/apis/run_v1/classes.rb +18 -8
  416. data/generated/google/apis/run_v1/representations.rb +1 -0
  417. data/generated/google/apis/run_v1alpha1.rb +1 -1
  418. data/generated/google/apis/run_v1alpha1/classes.rb +6 -0
  419. data/generated/google/apis/run_v1alpha1/representations.rb +1 -0
  420. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  421. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +1 -2
  422. data/generated/google/apis/safebrowsing_v4.rb +1 -1
  423. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  424. data/generated/google/apis/sasportal_v1alpha1/service.rb +109 -0
  425. data/generated/google/apis/secretmanager_v1.rb +1 -1
  426. data/generated/google/apis/secretmanager_v1/classes.rb +1 -2
  427. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  428. data/generated/google/apis/secretmanager_v1beta1/classes.rb +1 -2
  429. data/generated/google/apis/securitycenter_v1.rb +1 -1
  430. data/generated/google/apis/securitycenter_v1/classes.rb +6 -0
  431. data/generated/google/apis/securitycenter_v1/representations.rb +1 -0
  432. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  433. data/generated/google/apis/securitycenter_v1beta1/classes.rb +6 -0
  434. data/generated/google/apis/securitycenter_v1beta1/representations.rb +1 -0
  435. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  436. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +6 -64
  437. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +0 -18
  438. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  439. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +6 -64
  440. data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +0 -18
  441. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  442. data/generated/google/apis/servicecontrol_v1/classes.rb +77 -2
  443. data/generated/google/apis/servicecontrol_v1/representations.rb +10 -0
  444. data/generated/google/apis/servicecontrol_v2.rb +1 -1
  445. data/generated/google/apis/servicecontrol_v2/classes.rb +62 -0
  446. data/generated/google/apis/servicecontrol_v2/representations.rb +8 -0
  447. data/generated/google/apis/servicedirectory_v1beta1.rb +1 -1
  448. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +1 -2
  449. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  450. data/generated/google/apis/servicemanagement_v1/classes.rb +11 -63
  451. data/generated/google/apis/servicemanagement_v1/representations.rb +1 -18
  452. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  453. data/generated/google/apis/servicenetworking_v1/classes.rb +207 -65
  454. data/generated/google/apis/servicenetworking_v1/representations.rb +77 -14
  455. data/generated/google/apis/servicenetworking_v1/service.rb +44 -2
  456. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  457. data/generated/google/apis/servicenetworking_v1beta/classes.rb +140 -65
  458. data/generated/google/apis/servicenetworking_v1beta/representations.rb +46 -14
  459. data/generated/google/apis/serviceusage_v1.rb +1 -1
  460. data/generated/google/apis/serviceusage_v1/classes.rb +6 -64
  461. data/generated/google/apis/serviceusage_v1/representations.rb +0 -18
  462. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  463. data/generated/google/apis/serviceusage_v1beta1/classes.rb +36 -64
  464. data/generated/google/apis/serviceusage_v1beta1/representations.rb +15 -18
  465. data/generated/google/apis/serviceusage_v1beta1/service.rb +36 -0
  466. data/generated/google/apis/sheets_v4.rb +1 -1
  467. data/generated/google/apis/sheets_v4/classes.rb +23 -7
  468. data/generated/google/apis/sheets_v4/representations.rb +3 -0
  469. data/generated/google/apis/smartdevicemanagement_v1.rb +1 -1
  470. data/generated/google/apis/smartdevicemanagement_v1/classes.rb +4 -44
  471. data/generated/google/apis/smartdevicemanagement_v1/representations.rb +0 -17
  472. data/generated/google/apis/smartdevicemanagement_v1/service.rb +4 -12
  473. data/generated/google/apis/spanner_v1.rb +1 -1
  474. data/generated/google/apis/spanner_v1/classes.rb +2 -3
  475. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  476. data/generated/google/apis/sqladmin_v1beta4/classes.rb +77 -9
  477. data/generated/google/apis/sqladmin_v1beta4/representations.rb +20 -0
  478. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  479. data/generated/google/apis/storagetransfer_v1/classes.rb +64 -34
  480. data/generated/google/apis/storagetransfer_v1/representations.rb +13 -0
  481. data/generated/google/apis/storagetransfer_v1/service.rb +22 -20
  482. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  483. data/generated/google/apis/streetviewpublish_v1/classes.rb +4 -4
  484. data/generated/google/apis/sts_v1.rb +1 -1
  485. data/generated/google/apis/sts_v1/classes.rb +10 -9
  486. data/generated/google/apis/sts_v1beta.rb +1 -1
  487. data/generated/google/apis/sts_v1beta/classes.rb +67 -70
  488. data/generated/google/apis/sts_v1beta/service.rb +2 -2
  489. data/generated/google/apis/tagmanager_v2.rb +1 -1
  490. data/generated/google/apis/tagmanager_v2/classes.rb +12 -0
  491. data/generated/google/apis/tagmanager_v2/representations.rb +3 -0
  492. data/generated/google/apis/testing_v1.rb +1 -1
  493. data/generated/google/apis/testing_v1/classes.rb +92 -33
  494. data/generated/google/apis/testing_v1/representations.rb +21 -0
  495. data/generated/google/apis/testing_v1/service.rb +4 -4
  496. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  497. data/generated/google/apis/toolresults_v1beta3/classes.rb +13 -0
  498. data/generated/google/apis/toolresults_v1beta3/representations.rb +12 -0
  499. data/generated/google/apis/tpu_v1.rb +1 -1
  500. data/generated/google/apis/tpu_v1/classes.rb +3 -3
  501. data/generated/google/apis/tpu_v1/service.rb +8 -8
  502. data/generated/google/apis/tpu_v1alpha1.rb +1 -1
  503. data/generated/google/apis/tpu_v1alpha1/classes.rb +3 -3
  504. data/generated/google/apis/tpu_v1alpha1/service.rb +8 -8
  505. data/generated/google/apis/translate_v3.rb +1 -1
  506. data/generated/google/apis/translate_v3/classes.rb +2 -1
  507. data/generated/google/apis/translate_v3beta1.rb +1 -1
  508. data/generated/google/apis/translate_v3beta1/classes.rb +2 -1
  509. data/generated/google/apis/vault_v1.rb +1 -1
  510. data/generated/google/apis/vault_v1/classes.rb +333 -0
  511. data/generated/google/apis/vault_v1/representations.rb +162 -0
  512. data/generated/google/apis/vault_v1/service.rb +151 -0
  513. data/generated/google/apis/videointelligence_v1.rb +1 -1
  514. data/generated/google/apis/videointelligence_v1/classes.rb +430 -2
  515. data/generated/google/apis/videointelligence_v1/representations.rb +241 -0
  516. data/generated/google/apis/videointelligence_v1/service.rb +0 -62
  517. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  518. data/generated/google/apis/videointelligence_v1beta2/classes.rb +430 -2
  519. data/generated/google/apis/videointelligence_v1beta2/representations.rb +241 -0
  520. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  521. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +430 -2
  522. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +241 -0
  523. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  524. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +430 -2
  525. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +241 -0
  526. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  527. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +430 -2
  528. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +241 -0
  529. data/generated/google/apis/vision_v1.rb +1 -1
  530. data/generated/google/apis/vision_v1/classes.rb +16 -16
  531. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  532. data/generated/google/apis/vision_v1p1beta1/classes.rb +16 -16
  533. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  534. data/generated/google/apis/vision_v1p2beta1/classes.rb +16 -16
  535. data/generated/google/apis/workflows_v1beta.rb +3 -2
  536. data/generated/google/apis/workflows_v1beta/service.rb +2 -1
  537. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  538. data/generated/google/apis/youtube_v3.rb +1 -1
  539. data/generated/google/apis/youtube_v3/service.rb +2 -2
  540. data/google-api-client.gemspec +25 -25
  541. data/lib/google/apis/core/api_command.rb +1 -0
  542. data/lib/google/apis/core/http_command.rb +2 -1
  543. data/lib/google/apis/options.rb +8 -5
  544. data/lib/google/apis/version.rb +1 -1
  545. data/synth.py +40 -0
  546. metadata +47 -16
  547. data/generated/google/apis/displayvideo_v1beta.rb +0 -38
  548. data/generated/google/apis/displayvideo_v1beta/classes.rb +0 -146
  549. data/generated/google/apis/displayvideo_v1beta/representations.rb +0 -72
  550. data/generated/google/apis/displayvideo_v1beta/service.rb +0 -161
  551. data/generated/google/apis/displayvideo_v1beta2.rb +0 -38
  552. data/generated/google/apis/displayvideo_v1beta2/classes.rb +0 -146
  553. data/generated/google/apis/displayvideo_v1beta2/representations.rb +0 -72
  554. data/generated/google/apis/displayvideo_v1beta2/service.rb +0 -130
  555. data/generated/google/apis/displayvideo_v1dev.rb +0 -38
  556. data/generated/google/apis/displayvideo_v1dev/classes.rb +0 -146
  557. data/generated/google/apis/displayvideo_v1dev/service.rb +0 -130
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/google-apps/calendar/firstapp
26
26
  module CalendarV3
27
27
  VERSION = 'V3'
28
- REVISION = '20200917'
28
+ REVISION = '20201028'
29
29
 
30
30
  # See, edit, share, and permanently delete all the calendars you can access using Google Calendar
31
31
  AUTH_CALENDAR = 'https://www.googleapis.com/auth/calendar'
@@ -819,8 +819,8 @@ module Google
819
819
  # display the entry points. However, it should disallow modifications.
820
820
  # The possible values are:
821
821
  # - "eventHangout" for Hangouts for consumers (http://hangouts.google.com)
822
- # - "eventNamedHangout" for classic Hangouts for G Suite users (http://hangouts.
823
- # google.com)
822
+ # - "eventNamedHangout" for classic Hangouts for Google Workspace users (http://
823
+ # hangouts.google.com)
824
824
  # - "hangoutsMeet" for Google Meet (http://meet.google.com)
825
825
  # - "addOn" for 3P conference providers
826
826
  # Corresponds to the JSON property `type`
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/hangouts/chat
26
26
  module ChatV1
27
27
  VERSION = 'V1'
28
- REVISION = '20200919'
28
+ REVISION = '20201028'
29
29
  end
30
30
  end
31
31
  end
@@ -1088,6 +1088,12 @@ module Google
1088
1088
  # @return [String]
1089
1089
  attr_accessor :domain_id
1090
1090
 
1091
+ # True when the user is deleted or the user's proifle is not visible.
1092
+ # Corresponds to the JSON property `isAnonymous`
1093
+ # @return [Boolean]
1094
+ attr_accessor :is_anonymous
1095
+ alias_method :is_anonymous?, :is_anonymous
1096
+
1091
1097
  # Resource name, in the format "users/*".
1092
1098
  # Corresponds to the JSON property `name`
1093
1099
  # @return [String]
@@ -1106,6 +1112,7 @@ module Google
1106
1112
  def update!(**args)
1107
1113
  @display_name = args[:display_name] if args.key?(:display_name)
1108
1114
  @domain_id = args[:domain_id] if args.key?(:domain_id)
1115
+ @is_anonymous = args[:is_anonymous] if args.key?(:is_anonymous)
1109
1116
  @name = args[:name] if args.key?(:name)
1110
1117
  @type = args[:type] if args.key?(:type)
1111
1118
  end
@@ -540,6 +540,7 @@ module Google
540
540
  class Representation < Google::Apis::Core::JsonRepresentation
541
541
  property :display_name, as: 'displayName'
542
542
  property :domain_id, as: 'domainId'
543
+ property :is_anonymous, as: 'isAnonymous'
543
544
  property :name, as: 'name'
544
545
  property :type, as: 'type'
545
546
  end
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://developers.google.com/civic-information/
27
27
  module CivicinfoV2
28
28
  VERSION = 'V2'
29
- REVISION = '20200908'
29
+ REVISION = '20201012'
30
30
  end
31
31
  end
32
32
  end
@@ -32,13 +32,6 @@ module Google
32
32
  # @return [Google::Apis::CivicinfoV2::AdministrativeBody]
33
33
  attr_accessor :election_administration_body
34
34
 
35
- # An ID for this object. IDs may change in future requests and should not be
36
- # cached. Access to this field requires special access that can be requested
37
- # from the Request more link on the Quotas page.
38
- # Corresponds to the JSON property `id`
39
- # @return [String]
40
- attr_accessor :id
41
-
42
35
  # Describes information about a regional election administrative area.
43
36
  # Corresponds to the JSON property `local_jurisdiction`
44
37
  # @return [Google::Apis::CivicinfoV2::AdministrationRegion]
@@ -62,7 +55,6 @@ module Google
62
55
  # Update properties of this object
63
56
  def update!(**args)
64
57
  @election_administration_body = args[:election_administration_body] if args.key?(:election_administration_body)
65
- @id = args[:id] if args.key?(:id)
66
58
  @local_jurisdiction = args[:local_jurisdiction] if args.key?(:local_jurisdiction)
67
59
  @name = args[:name] if args.key?(:name)
68
60
  @sources = args[:sources] if args.key?(:sources)
@@ -300,13 +292,6 @@ module Google
300
292
  # @return [String]
301
293
  attr_accessor :electorate_specifications
302
294
 
303
- # An ID for this object. IDs may change in future requests and should not be
304
- # cached. Access to this field requires special access that can be requested
305
- # from the Request more link on the Quotas page.
306
- # Corresponds to the JSON property `id`
307
- # @return [String]
308
- attr_accessor :id
309
-
310
295
  # The levels of government of the office for this contest. There may be more
311
296
  # than one in cases where a jurisdiction effectively acts at two different
312
297
  # levels of government; for example, the mayor of the District of Columbia acts
@@ -441,7 +426,6 @@ module Google
441
426
  @candidates = args[:candidates] if args.key?(:candidates)
442
427
  @district = args[:district] if args.key?(:district)
443
428
  @electorate_specifications = args[:electorate_specifications] if args.key?(:electorate_specifications)
444
- @id = args[:id] if args.key?(:id)
445
429
  @level = args[:level] if args.key?(:level)
446
430
  @number_elected = args[:number_elected] if args.key?(:number_elected)
447
431
  @number_voting_for = args[:number_voting_for] if args.key?(:number_voting_for)
@@ -845,13 +829,6 @@ module Google
845
829
  # @return [String]
846
830
  attr_accessor :end_date
847
831
 
848
- # An ID for this object. IDs may change in future requests and should not be
849
- # cached. Access to this field requires special access that can be requested
850
- # from the Request more link on the Quotas page.
851
- # Corresponds to the JSON property `id`
852
- # @return [String]
853
- attr_accessor :id
854
-
855
832
  # Latitude of the location, in degrees north of the equator. Note this field may
856
833
  # not be available for some locations.
857
834
  # Corresponds to the JSON property `latitude`
@@ -906,7 +883,6 @@ module Google
906
883
  def update!(**args)
907
884
  @address = args[:address] if args.key?(:address)
908
885
  @end_date = args[:end_date] if args.key?(:end_date)
909
- @id = args[:id] if args.key?(:id)
910
886
  @latitude = args[:latitude] if args.key?(:latitude)
911
887
  @longitude = args[:longitude] if args.key?(:longitude)
912
888
  @name = args[:name] if args.key?(:name)
@@ -147,7 +147,6 @@ module Google
147
147
  class Representation < Google::Apis::Core::JsonRepresentation
148
148
  property :election_administration_body, as: 'electionAdministrationBody', class: Google::Apis::CivicinfoV2::AdministrativeBody, decorator: Google::Apis::CivicinfoV2::AdministrativeBody::Representation
149
149
 
150
- property :id, as: 'id'
151
150
  property :local_jurisdiction, as: 'local_jurisdiction', class: Google::Apis::CivicinfoV2::AdministrationRegion, decorator: Google::Apis::CivicinfoV2::AdministrationRegion::Representation
152
151
 
153
152
  property :name, as: 'name'
@@ -213,7 +212,6 @@ module Google
213
212
  property :district, as: 'district', class: Google::Apis::CivicinfoV2::ElectoralDistrict, decorator: Google::Apis::CivicinfoV2::ElectoralDistrict::Representation
214
213
 
215
214
  property :electorate_specifications, as: 'electorateSpecifications'
216
- property :id, as: 'id'
217
215
  collection :level, as: 'level'
218
216
  property :number_elected, :numeric_string => true, as: 'numberElected'
219
217
  property :number_voting_for, :numeric_string => true, as: 'numberVotingFor'
@@ -339,7 +337,6 @@ module Google
339
337
  property :address, as: 'address', class: Google::Apis::CivicinfoV2::SimpleAddressType, decorator: Google::Apis::CivicinfoV2::SimpleAddressType::Representation
340
338
 
341
339
  property :end_date, as: 'endDate'
342
- property :id, as: 'id'
343
340
  property :latitude, as: 'latitude'
344
341
  property :longitude, as: 'longitude'
345
342
  property :name, as: 'name'
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/classroom/
26
26
  module ClassroomV1
27
27
  VERSION = 'V1'
28
- REVISION = '20200915'
28
+ REVISION = '20201012'
29
29
 
30
30
  # View and manage announcements in Google Classroom
31
31
  AUTH_CLASSROOM_ANNOUNCEMENTS = 'https://www.googleapis.com/auth/classroom.announcements'
@@ -526,14 +526,14 @@ module Google
526
526
  # @return [String]
527
527
  attr_accessor :description
528
528
 
529
- # Represents a whole or partial calendar date, e.g. a birthday. The time of day
530
- # and time zone are either specified elsewhere or are not significant. The date
531
- # is relative to the Proleptic Gregorian Calendar. This can represent: * A full
532
- # date, with non-zero year, month and day values * A month and day value, with a
533
- # zero year, e.g. an anniversary * A year on its own, with zero month and day
534
- # values * A year and month value, with a zero day, e.g. a credit card
535
- # expiration date Related types are google.type.TimeOfDay and `google.protobuf.
536
- # Timestamp`.
529
+ # Represents a whole or partial calendar date, such as a birthday. The time of
530
+ # day and time zone are either specified elsewhere or are insignificant. The
531
+ # date is relative to the Gregorian Calendar. This can represent one of the
532
+ # following: * A full date, with non-zero year, month, and day values * A month
533
+ # and day value, with a zero year, such as an anniversary * A year on its own,
534
+ # with zero month and day values * A year and month value, with a zero day, such
535
+ # as a credit card expiration date Related types are google.type.TimeOfDay and `
536
+ # google.protobuf.Timestamp`.
537
537
  # Corresponds to the JSON property `dueDate`
538
538
  # @return [Google::Apis::ClassroomV1::Date]
539
539
  attr_accessor :due_date
@@ -768,31 +768,31 @@ module Google
768
768
  end
769
769
  end
770
770
 
771
- # Represents a whole or partial calendar date, e.g. a birthday. The time of day
772
- # and time zone are either specified elsewhere or are not significant. The date
773
- # is relative to the Proleptic Gregorian Calendar. This can represent: * A full
774
- # date, with non-zero year, month and day values * A month and day value, with a
775
- # zero year, e.g. an anniversary * A year on its own, with zero month and day
776
- # values * A year and month value, with a zero day, e.g. a credit card
777
- # expiration date Related types are google.type.TimeOfDay and `google.protobuf.
778
- # Timestamp`.
771
+ # Represents a whole or partial calendar date, such as a birthday. The time of
772
+ # day and time zone are either specified elsewhere or are insignificant. The
773
+ # date is relative to the Gregorian Calendar. This can represent one of the
774
+ # following: * A full date, with non-zero year, month, and day values * A month
775
+ # and day value, with a zero year, such as an anniversary * A year on its own,
776
+ # with zero month and day values * A year and month value, with a zero day, such
777
+ # as a credit card expiration date Related types are google.type.TimeOfDay and `
778
+ # google.protobuf.Timestamp`.
779
779
  class Date
780
780
  include Google::Apis::Core::Hashable
781
781
 
782
- # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if
783
- # specifying a year by itself or a year and month where the day is not
784
- # significant.
782
+ # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to
783
+ # specify a year by itself or a year and month where the day isn't significant.
785
784
  # Corresponds to the JSON property `day`
786
785
  # @return [Fixnum]
787
786
  attr_accessor :day
788
787
 
789
- # Month of year. Must be from 1 to 12, or 0 if specifying a year without a month
788
+ # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month
790
789
  # and day.
791
790
  # Corresponds to the JSON property `month`
792
791
  # @return [Fixnum]
793
792
  attr_accessor :month
794
793
 
795
- # Year of date. Must be from 1 to 9999, or 0 if specifying a date without a year.
794
+ # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a
795
+ # year.
796
796
  # Corresponds to the JSON property `year`
797
797
  # @return [Fixnum]
798
798
  attr_accessor :year
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/asset-inventory/docs/quickstart
26
26
  module CloudassetV1
27
27
  VERSION = 'V1'
28
- REVISION = '20200911'
28
+ REVISION = '20201030'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -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
@@ -319,6 +407,11 @@ module Google
319
407
  class Binding
320
408
  include Google::Apis::Core::Hashable
321
409
 
410
+ #
411
+ # Corresponds to the JSON property `bindingId`
412
+ # @return [String]
413
+ attr_accessor :binding_id
414
+
322
415
  # Represents a textual expression in the Common Expression Language (CEL) syntax.
323
416
  # CEL is a C-like expression language. The syntax and semantics of CEL are
324
417
  # documented at https://github.com/google/cel-spec. Example (Comparison): title:
@@ -380,6 +473,7 @@ module Google
380
473
 
381
474
  # Update properties of this object
382
475
  def update!(**args)
476
+ @binding_id = args[:binding_id] if args.key?(:binding_id)
383
477
  @condition = args[:condition] if args.key?(:condition)
384
478
  @members = args[:members] if args.key?(:members)
385
479
  @role = args[:role] if args.key?(:role)
@@ -697,6 +791,273 @@ module Google
697
791
  end
698
792
  end
699
793
 
794
+ # An IAM role or permission under analysis.
795
+ class GoogleCloudAssetV1Access
796
+ include Google::Apis::Core::Hashable
797
+
798
+ # Represents the detailed state of an entity under analysis, such as a resource,
799
+ # an identity or an access.
800
+ # Corresponds to the JSON property `analysisState`
801
+ # @return [Google::Apis::CloudassetV1::IamPolicyAnalysisState]
802
+ attr_accessor :analysis_state
803
+
804
+ # The permission.
805
+ # Corresponds to the JSON property `permission`
806
+ # @return [String]
807
+ attr_accessor :permission
808
+
809
+ # The role.
810
+ # Corresponds to the JSON property `role`
811
+ # @return [String]
812
+ attr_accessor :role
813
+
814
+ def initialize(**args)
815
+ update!(**args)
816
+ end
817
+
818
+ # Update properties of this object
819
+ def update!(**args)
820
+ @analysis_state = args[:analysis_state] if args.key?(:analysis_state)
821
+ @permission = args[:permission] if args.key?(:permission)
822
+ @role = args[:role] if args.key?(:role)
823
+ end
824
+ end
825
+
826
+ # An access control list, derived from the above IAM policy binding, which
827
+ # contains a set of resources and accesses. May include one item from each set
828
+ # to compose an access control entry. NOTICE that there could be multiple access
829
+ # control lists for one IAM policy binding. The access control lists are created
830
+ # based on resource and access combinations. For example, assume we have the
831
+ # following cases in one IAM policy binding: - Permission P1 and P2 apply to
832
+ # resource R1 and R2; - Permission P3 applies to resource R2 and R3; This will
833
+ # result in the following access control lists: - AccessControlList 1: [R1, R2],
834
+ # [P1, P2] - AccessControlList 2: [R2, R3], [P3]
835
+ class GoogleCloudAssetV1AccessControlList
836
+ include Google::Apis::Core::Hashable
837
+
838
+ # The accesses that match one of the following conditions: - The access_selector,
839
+ # if it is specified in request; - Otherwise, access specifiers reachable from
840
+ # the policy binding's role.
841
+ # Corresponds to the JSON property `accesses`
842
+ # @return [Array<Google::Apis::CloudassetV1::GoogleCloudAssetV1Access>]
843
+ attr_accessor :accesses
844
+
845
+ # Resource edges of the graph starting from the policy attached resource to any
846
+ # descendant resources. The Edge.source_node contains the full resource name of
847
+ # a parent resource and Edge.target_node contains the full resource name of a
848
+ # child resource. This field is present only if the output_resource_edges option
849
+ # is enabled in request.
850
+ # Corresponds to the JSON property `resourceEdges`
851
+ # @return [Array<Google::Apis::CloudassetV1::GoogleCloudAssetV1Edge>]
852
+ attr_accessor :resource_edges
853
+
854
+ # The resources that match one of the following conditions: - The
855
+ # resource_selector, if it is specified in request; - Otherwise, resources
856
+ # reachable from the policy attached resource.
857
+ # Corresponds to the JSON property `resources`
858
+ # @return [Array<Google::Apis::CloudassetV1::GoogleCloudAssetV1Resource>]
859
+ attr_accessor :resources
860
+
861
+ def initialize(**args)
862
+ update!(**args)
863
+ end
864
+
865
+ # Update properties of this object
866
+ def update!(**args)
867
+ @accesses = args[:accesses] if args.key?(:accesses)
868
+ @resource_edges = args[:resource_edges] if args.key?(:resource_edges)
869
+ @resources = args[:resources] if args.key?(:resources)
870
+ end
871
+ end
872
+
873
+ # A BigQuery destination.
874
+ class GoogleCloudAssetV1BigQueryDestination
875
+ include Google::Apis::Core::Hashable
876
+
877
+ # Required. The BigQuery dataset in format "projects/projectId/datasets/
878
+ # datasetId", to which the analysis results should be exported. If this dataset
879
+ # does not exist, the export call will return an INVALID_ARGUMENT error.
880
+ # Corresponds to the JSON property `dataset`
881
+ # @return [String]
882
+ attr_accessor :dataset
883
+
884
+ # The partition key for BigQuery partitioned table.
885
+ # Corresponds to the JSON property `partitionKey`
886
+ # @return [String]
887
+ attr_accessor :partition_key
888
+
889
+ # Required. The prefix of the BigQuery tables to which the analysis results will
890
+ # be written. Tables will be created based on this table_prefix if not exist: *
891
+ # _analysis table will contain export operation's metadata. * _analysis_result
892
+ # will contain all the IamPolicyAnalysisResult. When [partition_key] is
893
+ # specified, both tables will be partitioned based on the [partition_key].
894
+ # Corresponds to the JSON property `tablePrefix`
895
+ # @return [String]
896
+ attr_accessor :table_prefix
897
+
898
+ # Optional. Specifies the action that occurs if the destination table or
899
+ # partition already exists. The following values are supported: * WRITE_TRUNCATE:
900
+ # If the table or partition already exists, BigQuery overwrites the entire
901
+ # table or all the partitions data. * WRITE_APPEND: If the table or partition
902
+ # already exists, BigQuery appends the data to the table or the latest partition.
903
+ # * WRITE_EMPTY: If the table already exists and contains data, an error is
904
+ # returned. The default value is WRITE_APPEND. Each action is atomic and only
905
+ # occurs if BigQuery is able to complete the job successfully. Details are at
906
+ # https://cloud.google.com/bigquery/docs/loading-data-local#
907
+ # appending_to_or_overwriting_a_table_using_a_local_file.
908
+ # Corresponds to the JSON property `writeDisposition`
909
+ # @return [String]
910
+ attr_accessor :write_disposition
911
+
912
+ def initialize(**args)
913
+ update!(**args)
914
+ end
915
+
916
+ # Update properties of this object
917
+ def update!(**args)
918
+ @dataset = args[:dataset] if args.key?(:dataset)
919
+ @partition_key = args[:partition_key] if args.key?(:partition_key)
920
+ @table_prefix = args[:table_prefix] if args.key?(:table_prefix)
921
+ @write_disposition = args[:write_disposition] if args.key?(:write_disposition)
922
+ end
923
+ end
924
+
925
+ # A directional edge.
926
+ class GoogleCloudAssetV1Edge
927
+ include Google::Apis::Core::Hashable
928
+
929
+ # The source 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 `sourceNode`
932
+ # @return [String]
933
+ attr_accessor :source_node
934
+
935
+ # The target node of the edge. For example, it could be a full resource name for
936
+ # a resource node or an email of an identity.
937
+ # Corresponds to the JSON property `targetNode`
938
+ # @return [String]
939
+ attr_accessor :target_node
940
+
941
+ def initialize(**args)
942
+ update!(**args)
943
+ end
944
+
945
+ # Update properties of this object
946
+ def update!(**args)
947
+ @source_node = args[:source_node] if args.key?(:source_node)
948
+ @target_node = args[:target_node] if args.key?(:target_node)
949
+ end
950
+ end
951
+
952
+ # A Cloud Storage location.
953
+ class GoogleCloudAssetV1GcsDestination
954
+ include Google::Apis::Core::Hashable
955
+
956
+ # Required. The uri of the Cloud Storage object. It's the same uri that is used
957
+ # by gsutil. For example: "gs://bucket_name/object_name". See [Quickstart: Using
958
+ # the gsutil tool] (https://cloud.google.com/storage/docs/quickstart-gsutil) for
959
+ # examples.
960
+ # Corresponds to the JSON property `uri`
961
+ # @return [String]
962
+ attr_accessor :uri
963
+
964
+ def initialize(**args)
965
+ update!(**args)
966
+ end
967
+
968
+ # Update properties of this object
969
+ def update!(**args)
970
+ @uri = args[:uri] if args.key?(:uri)
971
+ end
972
+ end
973
+
974
+ # An identity under analysis.
975
+ class GoogleCloudAssetV1Identity
976
+ include Google::Apis::Core::Hashable
977
+
978
+ # Represents the detailed state of an entity under analysis, such as a resource,
979
+ # an identity or an access.
980
+ # Corresponds to the JSON property `analysisState`
981
+ # @return [Google::Apis::CloudassetV1::IamPolicyAnalysisState]
982
+ attr_accessor :analysis_state
983
+
984
+ # The identity name in any form of members appear in [IAM policy binding](https:/
985
+ # /cloud.google.com/iam/reference/rest/v1/Binding), such as: - user:foo@google.
986
+ # com - group:group1@google.com - serviceAccount:s1@prj1.iam.gserviceaccount.com
987
+ # - projectOwner:some_project_id - domain:google.com - allUsers - etc.
988
+ # Corresponds to the JSON property `name`
989
+ # @return [String]
990
+ attr_accessor :name
991
+
992
+ def initialize(**args)
993
+ update!(**args)
994
+ end
995
+
996
+ # Update properties of this object
997
+ def update!(**args)
998
+ @analysis_state = args[:analysis_state] if args.key?(:analysis_state)
999
+ @name = args[:name] if args.key?(:name)
1000
+ end
1001
+ end
1002
+
1003
+ # The identities and group edges.
1004
+ class GoogleCloudAssetV1IdentityList
1005
+ include Google::Apis::Core::Hashable
1006
+
1007
+ # Group identity edges of the graph starting from the binding's group members to
1008
+ # any node of the identities. The Edge.source_node contains a group, such as `
1009
+ # group:parent@google.com`. The Edge.target_node contains a member of the group,
1010
+ # such as `group:child@google.com` or `user:foo@google.com`. This field is
1011
+ # present only if the output_group_edges option is enabled in request.
1012
+ # Corresponds to the JSON property `groupEdges`
1013
+ # @return [Array<Google::Apis::CloudassetV1::GoogleCloudAssetV1Edge>]
1014
+ attr_accessor :group_edges
1015
+
1016
+ # Only the identities that match one of the following conditions will be
1017
+ # presented: - The identity_selector, if it is specified in request; - Otherwise,
1018
+ # identities reachable from the policy binding's members.
1019
+ # Corresponds to the JSON property `identities`
1020
+ # @return [Array<Google::Apis::CloudassetV1::GoogleCloudAssetV1Identity>]
1021
+ attr_accessor :identities
1022
+
1023
+ def initialize(**args)
1024
+ update!(**args)
1025
+ end
1026
+
1027
+ # Update properties of this object
1028
+ def update!(**args)
1029
+ @group_edges = args[:group_edges] if args.key?(:group_edges)
1030
+ @identities = args[:identities] if args.key?(:identities)
1031
+ end
1032
+ end
1033
+
1034
+ # A Google Cloud resource under analysis.
1035
+ class GoogleCloudAssetV1Resource
1036
+ include Google::Apis::Core::Hashable
1037
+
1038
+ # Represents the detailed state of an entity under analysis, such as a resource,
1039
+ # an identity or an access.
1040
+ # Corresponds to the JSON property `analysisState`
1041
+ # @return [Google::Apis::CloudassetV1::IamPolicyAnalysisState]
1042
+ attr_accessor :analysis_state
1043
+
1044
+ # The [full resource name](https://cloud.google.com/asset-inventory/docs/
1045
+ # resource-name-format)
1046
+ # Corresponds to the JSON property `fullResourceName`
1047
+ # @return [String]
1048
+ attr_accessor :full_resource_name
1049
+
1050
+ def initialize(**args)
1051
+ update!(**args)
1052
+ end
1053
+
1054
+ # Update properties of this object
1055
+ def update!(**args)
1056
+ @analysis_state = args[:analysis_state] if args.key?(:analysis_state)
1057
+ @full_resource_name = args[:full_resource_name] if args.key?(:full_resource_name)
1058
+ end
1059
+ end
1060
+
700
1061
  # Used in `policy_type` to specify how `boolean_policy` will behave at this
701
1062
  # resource.
702
1063
  class GoogleCloudOrgpolicyV1BooleanPolicy
@@ -1464,6 +1825,206 @@ module Google
1464
1825
  end
1465
1826
  end
1466
1827
 
1828
+ # An analysis message to group the query and results.
1829
+ class IamPolicyAnalysis
1830
+ include Google::Apis::Core::Hashable
1831
+
1832
+ # IAM policy analysis query message.
1833
+ # Corresponds to the JSON property `analysisQuery`
1834
+ # @return [Google::Apis::CloudassetV1::IamPolicyAnalysisQuery]
1835
+ attr_accessor :analysis_query
1836
+
1837
+ # A list of IamPolicyAnalysisResult that matches the analysis query, or empty if
1838
+ # no result is found.
1839
+ # Corresponds to the JSON property `analysisResults`
1840
+ # @return [Array<Google::Apis::CloudassetV1::IamPolicyAnalysisResult>]
1841
+ attr_accessor :analysis_results
1842
+
1843
+ # Represents whether all entries in the analysis_results have been fully
1844
+ # explored to answer the query.
1845
+ # Corresponds to the JSON property `fullyExplored`
1846
+ # @return [Boolean]
1847
+ attr_accessor :fully_explored
1848
+ alias_method :fully_explored?, :fully_explored
1849
+
1850
+ # A list of non-critical errors happened during the query handling.
1851
+ # Corresponds to the JSON property `nonCriticalErrors`
1852
+ # @return [Array<Google::Apis::CloudassetV1::IamPolicyAnalysisState>]
1853
+ attr_accessor :non_critical_errors
1854
+
1855
+ def initialize(**args)
1856
+ update!(**args)
1857
+ end
1858
+
1859
+ # Update properties of this object
1860
+ def update!(**args)
1861
+ @analysis_query = args[:analysis_query] if args.key?(:analysis_query)
1862
+ @analysis_results = args[:analysis_results] if args.key?(:analysis_results)
1863
+ @fully_explored = args[:fully_explored] if args.key?(:fully_explored)
1864
+ @non_critical_errors = args[:non_critical_errors] if args.key?(:non_critical_errors)
1865
+ end
1866
+ end
1867
+
1868
+ # Output configuration for export IAM policy analysis destination.
1869
+ class IamPolicyAnalysisOutputConfig
1870
+ include Google::Apis::Core::Hashable
1871
+
1872
+ # A BigQuery destination.
1873
+ # Corresponds to the JSON property `bigqueryDestination`
1874
+ # @return [Google::Apis::CloudassetV1::GoogleCloudAssetV1BigQueryDestination]
1875
+ attr_accessor :bigquery_destination
1876
+
1877
+ # A Cloud Storage location.
1878
+ # Corresponds to the JSON property `gcsDestination`
1879
+ # @return [Google::Apis::CloudassetV1::GoogleCloudAssetV1GcsDestination]
1880
+ attr_accessor :gcs_destination
1881
+
1882
+ def initialize(**args)
1883
+ update!(**args)
1884
+ end
1885
+
1886
+ # Update properties of this object
1887
+ def update!(**args)
1888
+ @bigquery_destination = args[:bigquery_destination] if args.key?(:bigquery_destination)
1889
+ @gcs_destination = args[:gcs_destination] if args.key?(:gcs_destination)
1890
+ end
1891
+ end
1892
+
1893
+ # IAM policy analysis query message.
1894
+ class IamPolicyAnalysisQuery
1895
+ include Google::Apis::Core::Hashable
1896
+
1897
+ # Specifies roles and/or permissions to analyze, to determine both the
1898
+ # identities possessing them and the resources they control. If multiple values
1899
+ # are specified, results will include roles or permissions matching any of them.
1900
+ # The total number of roles and permissions should be equal or less than 10.
1901
+ # Corresponds to the JSON property `accessSelector`
1902
+ # @return [Google::Apis::CloudassetV1::AccessSelector]
1903
+ attr_accessor :access_selector
1904
+
1905
+ # Specifies an identity for which to determine resource access, based on roles
1906
+ # assigned either directly to them or to the groups they belong to, directly or
1907
+ # indirectly.
1908
+ # Corresponds to the JSON property `identitySelector`
1909
+ # @return [Google::Apis::CloudassetV1::IdentitySelector]
1910
+ attr_accessor :identity_selector
1911
+
1912
+ # Contains query options.
1913
+ # Corresponds to the JSON property `options`
1914
+ # @return [Google::Apis::CloudassetV1::Options]
1915
+ attr_accessor :options
1916
+
1917
+ # Specifies the resource to analyze for access policies, which may be set
1918
+ # directly on the resource, or on ancestors such as organizations, folders or
1919
+ # projects.
1920
+ # Corresponds to the JSON property `resourceSelector`
1921
+ # @return [Google::Apis::CloudassetV1::ResourceSelector]
1922
+ attr_accessor :resource_selector
1923
+
1924
+ # Required. The relative name of the root asset. Only resources and IAM policies
1925
+ # within the scope will be analyzed. This can only be an organization number (
1926
+ # such as "organizations/123"), a folder number (such as "folders/123"), a
1927
+ # project ID (such as "projects/my-project-id"), or a project number (such as "
1928
+ # projects/12345"). To know how to get organization id, visit [here ](https://
1929
+ # cloud.google.com/resource-manager/docs/creating-managing-organization#
1930
+ # retrieving_your_organization_id). To know how to get folder or project id,
1931
+ # visit [here ](https://cloud.google.com/resource-manager/docs/creating-managing-
1932
+ # folders#viewing_or_listing_folders_and_projects).
1933
+ # Corresponds to the JSON property `scope`
1934
+ # @return [String]
1935
+ attr_accessor :scope
1936
+
1937
+ def initialize(**args)
1938
+ update!(**args)
1939
+ end
1940
+
1941
+ # Update properties of this object
1942
+ def update!(**args)
1943
+ @access_selector = args[:access_selector] if args.key?(:access_selector)
1944
+ @identity_selector = args[:identity_selector] if args.key?(:identity_selector)
1945
+ @options = args[:options] if args.key?(:options)
1946
+ @resource_selector = args[:resource_selector] if args.key?(:resource_selector)
1947
+ @scope = args[:scope] if args.key?(:scope)
1948
+ end
1949
+ end
1950
+
1951
+ # IAM Policy analysis result, consisting of one IAM policy binding and derived
1952
+ # access control lists.
1953
+ class IamPolicyAnalysisResult
1954
+ include Google::Apis::Core::Hashable
1955
+
1956
+ # The access control lists derived from the iam_binding that match or
1957
+ # potentially match resource and access selectors specified in the request.
1958
+ # Corresponds to the JSON property `accessControlLists`
1959
+ # @return [Array<Google::Apis::CloudassetV1::GoogleCloudAssetV1AccessControlList>]
1960
+ attr_accessor :access_control_lists
1961
+
1962
+ # The [full resource name](https://cloud.google.com/asset-inventory/docs/
1963
+ # resource-name-format) of the resource to which the iam_binding policy attaches.
1964
+ # Corresponds to the JSON property `attachedResourceFullName`
1965
+ # @return [String]
1966
+ attr_accessor :attached_resource_full_name
1967
+
1968
+ # Represents whether all analyses on the iam_binding have successfully finished.
1969
+ # Corresponds to the JSON property `fullyExplored`
1970
+ # @return [Boolean]
1971
+ attr_accessor :fully_explored
1972
+ alias_method :fully_explored?, :fully_explored
1973
+
1974
+ # Associates `members` with a `role`.
1975
+ # Corresponds to the JSON property `iamBinding`
1976
+ # @return [Google::Apis::CloudassetV1::Binding]
1977
+ attr_accessor :iam_binding
1978
+
1979
+ # The identities and group edges.
1980
+ # Corresponds to the JSON property `identityList`
1981
+ # @return [Google::Apis::CloudassetV1::GoogleCloudAssetV1IdentityList]
1982
+ attr_accessor :identity_list
1983
+
1984
+ def initialize(**args)
1985
+ update!(**args)
1986
+ end
1987
+
1988
+ # Update properties of this object
1989
+ def update!(**args)
1990
+ @access_control_lists = args[:access_control_lists] if args.key?(:access_control_lists)
1991
+ @attached_resource_full_name = args[:attached_resource_full_name] if args.key?(:attached_resource_full_name)
1992
+ @fully_explored = args[:fully_explored] if args.key?(:fully_explored)
1993
+ @iam_binding = args[:iam_binding] if args.key?(:iam_binding)
1994
+ @identity_list = args[:identity_list] if args.key?(:identity_list)
1995
+ end
1996
+ end
1997
+
1998
+ # Represents the detailed state of an entity under analysis, such as a resource,
1999
+ # an identity or an access.
2000
+ class IamPolicyAnalysisState
2001
+ include Google::Apis::Core::Hashable
2002
+
2003
+ # The human-readable description of the cause of failure.
2004
+ # Corresponds to the JSON property `cause`
2005
+ # @return [String]
2006
+ attr_accessor :cause
2007
+
2008
+ # The Google standard error code that best describes the state. For example: -
2009
+ # OK means the analysis on this entity has been successfully finished; -
2010
+ # PERMISSION_DENIED means an access denied error is encountered; -
2011
+ # DEADLINE_EXCEEDED means the analysis on this entity hasn't been started in
2012
+ # time;
2013
+ # Corresponds to the JSON property `code`
2014
+ # @return [String]
2015
+ attr_accessor :code
2016
+
2017
+ def initialize(**args)
2018
+ update!(**args)
2019
+ end
2020
+
2021
+ # Update properties of this object
2022
+ def update!(**args)
2023
+ @cause = args[:cause] if args.key?(:cause)
2024
+ @code = args[:code] if args.key?(:code)
2025
+ end
2026
+ end
2027
+
1467
2028
  # A result of IAM Policy search, containing information of an IAM policy.
1468
2029
  class IamPolicySearchResult
1469
2030
  include Google::Apis::Core::Hashable
@@ -1537,6 +2098,32 @@ module Google
1537
2098
  end
1538
2099
  end
1539
2100
 
2101
+ # Specifies an identity for which to determine resource access, based on roles
2102
+ # assigned either directly to them or to the groups they belong to, directly or
2103
+ # indirectly.
2104
+ class IdentitySelector
2105
+ include Google::Apis::Core::Hashable
2106
+
2107
+ # Required. The identity appear in the form of members in [IAM policy binding](
2108
+ # https://cloud.google.com/iam/reference/rest/v1/Binding). The examples of
2109
+ # supported forms are: "user:mike@example.com", "group:admins@example.com", "
2110
+ # domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com".
2111
+ # Notice that wildcard characters (such as * and ?) are not supported. You must
2112
+ # give a specific identity.
2113
+ # Corresponds to the JSON property `identity`
2114
+ # @return [String]
2115
+ attr_accessor :identity
2116
+
2117
+ def initialize(**args)
2118
+ update!(**args)
2119
+ end
2120
+
2121
+ # Update properties of this object
2122
+ def update!(**args)
2123
+ @identity = args[:identity] if args.key?(:identity)
2124
+ end
2125
+ end
2126
+
1540
2127
  #
1541
2128
  class ListFeedsResponse
1542
2129
  include Google::Apis::Core::Hashable
@@ -1618,6 +2205,98 @@ module Google
1618
2205
  end
1619
2206
  end
1620
2207
 
2208
+ # Contains query options.
2209
+ class Options
2210
+ include Google::Apis::Core::Hashable
2211
+
2212
+ # Optional. If true, the response will include access analysis from identities
2213
+ # to resources via service account impersonation. This is a very expensive
2214
+ # operation, because many derived queries will be executed. We highly recommend
2215
+ # you use AssetService.AnalyzeIamPolicyLongrunning rpc instead. For example, if
2216
+ # the request analyzes for which resources user A has permission P, and there's
2217
+ # an IAM policy states user A has iam.serviceAccounts.getAccessToken permission
2218
+ # to a service account SA, and there's another IAM policy states service account
2219
+ # SA has permission P to a GCP folder F, then user A potentially has access to
2220
+ # the GCP folder F. And those advanced analysis results will be included in
2221
+ # AnalyzeIamPolicyResponse.service_account_impersonation_analysis. Another
2222
+ # example, if the request analyzes for who has permission P to a GCP folder F,
2223
+ # and there's an IAM policy states user A has iam.serviceAccounts.actAs
2224
+ # permission to a service account SA, and there's another IAM policy states
2225
+ # service account SA has permission P to the GCP folder F, then user A
2226
+ # potentially has access to the GCP folder F. And those advanced analysis
2227
+ # results will be included in AnalyzeIamPolicyResponse.
2228
+ # service_account_impersonation_analysis. Default is false.
2229
+ # Corresponds to the JSON property `analyzeServiceAccountImpersonation`
2230
+ # @return [Boolean]
2231
+ attr_accessor :analyze_service_account_impersonation
2232
+ alias_method :analyze_service_account_impersonation?, :analyze_service_account_impersonation
2233
+
2234
+ # Optional. If true, the identities section of the result will expand any Google
2235
+ # groups appearing in an IAM policy binding. If IamPolicyAnalysisQuery.
2236
+ # identity_selector is specified, the identity in the result will be determined
2237
+ # by the selector, and this flag is not allowed to set. Default is false.
2238
+ # Corresponds to the JSON property `expandGroups`
2239
+ # @return [Boolean]
2240
+ attr_accessor :expand_groups
2241
+ alias_method :expand_groups?, :expand_groups
2242
+
2243
+ # Optional. If true and IamPolicyAnalysisQuery.resource_selector is not
2244
+ # specified, the resource section of the result will expand any resource
2245
+ # attached to an IAM policy to include resources lower in the resource hierarchy.
2246
+ # For example, if the request analyzes for which resources user A has
2247
+ # permission P, and the results include an IAM policy with P on a GCP folder,
2248
+ # the results will also include resources in that folder with permission P. If
2249
+ # true and IamPolicyAnalysisQuery.resource_selector is specified, the resource
2250
+ # section of the result will expand the specified resource to include resources
2251
+ # lower in the resource hierarchy. Only project or lower resources are supported.
2252
+ # Folder and organization resource cannot be used together with this option.
2253
+ # For example, if the request analyzes for which users have permission P on a
2254
+ # GCP project with this option enabled, the results will include all users who
2255
+ # have permission P on that project or any lower resource. Default is false.
2256
+ # Corresponds to the JSON property `expandResources`
2257
+ # @return [Boolean]
2258
+ attr_accessor :expand_resources
2259
+ alias_method :expand_resources?, :expand_resources
2260
+
2261
+ # Optional. If true, the access section of result will expand any roles
2262
+ # appearing in IAM policy bindings to include their permissions. If
2263
+ # IamPolicyAnalysisQuery.access_selector is specified, the access section of the
2264
+ # result will be determined by the selector, and this flag is not allowed to set.
2265
+ # Default is false.
2266
+ # Corresponds to the JSON property `expandRoles`
2267
+ # @return [Boolean]
2268
+ attr_accessor :expand_roles
2269
+ alias_method :expand_roles?, :expand_roles
2270
+
2271
+ # Optional. If true, the result will output group identity edges, starting from
2272
+ # the binding's group members, to any expanded identities. Default is false.
2273
+ # Corresponds to the JSON property `outputGroupEdges`
2274
+ # @return [Boolean]
2275
+ attr_accessor :output_group_edges
2276
+ alias_method :output_group_edges?, :output_group_edges
2277
+
2278
+ # Optional. If true, the result will output resource edges, starting from the
2279
+ # policy attached resource, to any expanded resources. Default is false.
2280
+ # Corresponds to the JSON property `outputResourceEdges`
2281
+ # @return [Boolean]
2282
+ attr_accessor :output_resource_edges
2283
+ alias_method :output_resource_edges?, :output_resource_edges
2284
+
2285
+ def initialize(**args)
2286
+ update!(**args)
2287
+ end
2288
+
2289
+ # Update properties of this object
2290
+ def update!(**args)
2291
+ @analyze_service_account_impersonation = args[:analyze_service_account_impersonation] if args.key?(:analyze_service_account_impersonation)
2292
+ @expand_groups = args[:expand_groups] if args.key?(:expand_groups)
2293
+ @expand_resources = args[:expand_resources] if args.key?(:expand_resources)
2294
+ @expand_roles = args[:expand_roles] if args.key?(:expand_roles)
2295
+ @output_group_edges = args[:output_group_edges] if args.key?(:output_group_edges)
2296
+ @output_resource_edges = args[:output_resource_edges] if args.key?(:output_resource_edges)
2297
+ end
2298
+ end
2299
+
1621
2300
  # Output configuration for export assets destination.
1622
2301
  class OutputConfig
1623
2302
  include Google::Apis::Core::Hashable
@@ -1968,6 +2647,30 @@ module Google
1968
2647
  end
1969
2648
  end
1970
2649
 
2650
+ # Specifies the resource to analyze for access policies, which may be set
2651
+ # directly on the resource, or on ancestors such as organizations, folders or
2652
+ # projects.
2653
+ class ResourceSelector
2654
+ include Google::Apis::Core::Hashable
2655
+
2656
+ # Required. The [full resource name] (https://cloud.google.com/asset-inventory/
2657
+ # docs/resource-name-format) of a resource of [supported resource types](https://
2658
+ # cloud.google.com/asset-inventory/docs/supported-asset-types#
2659
+ # analyzable_asset_types).
2660
+ # Corresponds to the JSON property `fullResourceName`
2661
+ # @return [String]
2662
+ attr_accessor :full_resource_name
2663
+
2664
+ def initialize(**args)
2665
+ update!(**args)
2666
+ end
2667
+
2668
+ # Update properties of this object
2669
+ def update!(**args)
2670
+ @full_resource_name = args[:full_resource_name] if args.key?(:full_resource_name)
2671
+ end
2672
+ end
2673
+
1971
2674
  # Search all IAM policies response.
1972
2675
  class SearchAllIamPoliciesResponse
1973
2676
  include Google::Apis::Core::Hashable