google-api-client 0.38.0 → 0.39.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (329) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +124 -0
  3. data/api_list_config.yaml +1 -2
  4. data/bin/generate-api +1 -1
  5. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  6. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +22 -1
  7. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +3 -0
  8. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  9. data/generated/google/apis/androidenterprise_v1/classes.rb +2 -1
  10. data/generated/google/apis/androidpublisher_v1.rb +1 -4
  11. data/generated/google/apis/androidpublisher_v1/classes.rb +0 -41
  12. data/generated/google/apis/androidpublisher_v1/representations.rb +0 -16
  13. data/generated/google/apis/androidpublisher_v1/service.rb +1 -81
  14. data/generated/google/apis/androidpublisher_v1_1.rb +1 -1
  15. data/generated/google/apis/androidpublisher_v1_1/classes.rb +0 -41
  16. data/generated/google/apis/androidpublisher_v1_1/representations.rb +0 -16
  17. data/generated/google/apis/androidpublisher_v1_1/service.rb +0 -80
  18. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  19. data/generated/google/apis/androidpublisher_v2/classes.rb +36 -1661
  20. data/generated/google/apis/androidpublisher_v2/representations.rb +0 -739
  21. data/generated/google/apis/androidpublisher_v2/service.rb +0 -2359
  22. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  23. data/generated/google/apis/androidpublisher_v3/classes.rb +3 -2
  24. data/generated/google/apis/androidpublisher_v3/service.rb +4 -3
  25. data/generated/google/apis/apigee_v1.rb +40 -0
  26. data/generated/google/apis/apigee_v1/classes.rb +5205 -0
  27. data/generated/google/apis/apigee_v1/representations.rb +1944 -0
  28. data/generated/google/apis/apigee_v1/service.rb +6068 -0
  29. data/generated/google/apis/bigquery_v2.rb +1 -1
  30. data/generated/google/apis/bigquery_v2/classes.rb +51 -19
  31. data/generated/google/apis/bigquery_v2/representations.rb +21 -4
  32. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  33. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +1 -2
  34. data/generated/google/apis/bigqueryconnection_v1beta1/service.rb +2 -2
  35. data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
  36. data/generated/google/apis/bigqueryreservation_v1/classes.rb +12 -12
  37. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  38. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +12 -12
  39. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  40. data/generated/google/apis/binaryauthorization_v1/classes.rb +23 -10
  41. data/generated/google/apis/binaryauthorization_v1/service.rb +10 -4
  42. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  43. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +23 -10
  44. data/generated/google/apis/binaryauthorization_v1beta1/service.rb +10 -4
  45. data/generated/google/apis/calendar_v3.rb +1 -1
  46. data/generated/google/apis/calendar_v3/classes.rb +5 -5
  47. data/generated/google/apis/classroom_v1.rb +1 -1
  48. data/generated/google/apis/classroom_v1/classes.rb +14 -14
  49. data/generated/google/apis/classroom_v1/service.rb +11 -11
  50. data/generated/google/apis/cloudasset_v1p1beta1.rb +1 -1
  51. data/generated/google/apis/cloudasset_v1p1beta1/service.rb +2 -0
  52. data/generated/google/apis/{osconfig_v1beta.rb → cloudasset_v1p4beta1.rb} +8 -9
  53. data/generated/google/apis/cloudasset_v1p4beta1/classes.rb +924 -0
  54. data/generated/google/apis/cloudasset_v1p4beta1/representations.rb +377 -0
  55. data/generated/google/apis/cloudasset_v1p4beta1/service.rb +217 -0
  56. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  57. data/generated/google/apis/cloudbilling_v1/classes.rb +24 -12
  58. data/generated/google/apis/cloudbilling_v1/service.rb +3 -0
  59. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  60. data/generated/google/apis/cloudbuild_v1/classes.rb +2 -2
  61. data/generated/google/apis/clouddebugger_v2.rb +1 -1
  62. data/generated/google/apis/clouddebugger_v2/classes.rb +26 -0
  63. data/generated/google/apis/clouddebugger_v2/representations.rb +4 -0
  64. data/generated/google/apis/clouddebugger_v2/service.rb +9 -2
  65. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  66. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +214 -66
  67. data/generated/google/apis/cloudidentity_v1beta1/representations.rb +64 -10
  68. data/generated/google/apis/cloudiot_v1.rb +1 -1
  69. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  70. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +1 -2
  71. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  72. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +1 -2
  73. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  74. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +1 -2
  75. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  76. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +1 -2
  77. data/generated/google/apis/cloudscheduler_v1.rb +1 -1
  78. data/generated/google/apis/cloudscheduler_v1/classes.rb +1 -1
  79. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  80. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +1 -1
  81. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  82. data/generated/google/apis/cloudsearch_v1/classes.rb +6 -4
  83. data/generated/google/apis/cloudsearch_v1/service.rb +3 -1
  84. data/generated/google/apis/cloudshell_v1.rb +1 -1
  85. data/generated/google/apis/cloudshell_v1alpha1.rb +1 -1
  86. data/generated/google/apis/cloudshell_v1alpha1/classes.rb +6 -0
  87. data/generated/google/apis/cloudshell_v1alpha1/representations.rb +2 -0
  88. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  89. data/generated/google/apis/cloudtasks_v2/classes.rb +6 -9
  90. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  91. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +6 -9
  92. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  93. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +6 -9
  94. data/generated/google/apis/cloudtrace_v2.rb +1 -1
  95. data/generated/google/apis/cloudtrace_v2/classes.rb +3 -4
  96. data/generated/google/apis/composer_v1beta1.rb +1 -1
  97. data/generated/google/apis/composer_v1beta1/classes.rb +1 -2
  98. data/generated/google/apis/compute_alpha.rb +1 -1
  99. data/generated/google/apis/compute_alpha/classes.rb +414 -29
  100. data/generated/google/apis/compute_alpha/representations.rb +141 -0
  101. data/generated/google/apis/compute_alpha/service.rb +351 -1
  102. data/generated/google/apis/compute_beta.rb +1 -1
  103. data/generated/google/apis/compute_beta/classes.rb +34 -29
  104. data/generated/google/apis/compute_beta/service.rb +3 -1
  105. data/generated/google/apis/compute_v1.rb +1 -1
  106. data/generated/google/apis/compute_v1/classes.rb +129 -10
  107. data/generated/google/apis/compute_v1/representations.rb +38 -0
  108. data/generated/google/apis/compute_v1/service.rb +3 -1
  109. data/generated/google/apis/container_v1.rb +1 -1
  110. data/generated/google/apis/container_v1/classes.rb +145 -132
  111. data/generated/google/apis/container_v1/service.rb +168 -159
  112. data/generated/google/apis/container_v1beta1.rb +1 -1
  113. data/generated/google/apis/container_v1beta1/classes.rb +186 -134
  114. data/generated/google/apis/container_v1beta1/representations.rb +16 -0
  115. data/generated/google/apis/container_v1beta1/service.rb +169 -160
  116. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  117. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +26 -10
  118. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  119. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +360 -10
  120. data/generated/google/apis/containeranalysis_v1beta1/representations.rb +159 -0
  121. data/generated/google/apis/content_v2.rb +1 -1
  122. data/generated/google/apis/content_v2/classes.rb +1176 -1094
  123. data/generated/google/apis/content_v2/representations.rb +31 -0
  124. data/generated/google/apis/content_v2/service.rb +45 -45
  125. data/generated/google/apis/content_v2_1.rb +1 -1
  126. data/generated/google/apis/content_v2_1/classes.rb +1801 -931
  127. data/generated/google/apis/content_v2_1/representations.rb +351 -0
  128. data/generated/google/apis/content_v2_1/service.rb +299 -47
  129. data/generated/google/apis/customsearch_v1.rb +1 -1
  130. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  131. data/generated/google/apis/datacatalog_v1beta1/classes.rb +67 -7
  132. data/generated/google/apis/datacatalog_v1beta1/representations.rb +3 -0
  133. data/generated/google/apis/datacatalog_v1beta1/service.rb +43 -33
  134. data/generated/google/apis/dataproc_v1.rb +1 -1
  135. data/generated/google/apis/dataproc_v1/classes.rb +69 -36
  136. data/generated/google/apis/dataproc_v1/service.rb +14 -14
  137. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  138. data/generated/google/apis/dataproc_v1beta2/classes.rb +46 -26
  139. data/generated/google/apis/dialogflow_v2.rb +1 -1
  140. data/generated/google/apis/dialogflow_v2/classes.rb +203 -35
  141. data/generated/google/apis/dialogflow_v2/representations.rb +46 -0
  142. data/generated/google/apis/dialogflow_v2/service.rb +39 -0
  143. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  144. data/generated/google/apis/dialogflow_v2beta1/classes.rb +261 -36
  145. data/generated/google/apis/dialogflow_v2beta1/representations.rb +64 -0
  146. data/generated/google/apis/dialogflow_v2beta1/service.rb +88 -10
  147. data/generated/google/apis/displayvideo_v1.rb +1 -1
  148. data/generated/google/apis/displayvideo_v1/classes.rb +7216 -220
  149. data/generated/google/apis/displayvideo_v1/representations.rb +2846 -55
  150. data/generated/google/apis/displayvideo_v1/service.rb +2665 -0
  151. data/generated/google/apis/dlp_v2.rb +1 -1
  152. data/generated/google/apis/dlp_v2/classes.rb +6 -1
  153. data/generated/google/apis/drive_v2.rb +1 -1
  154. data/generated/google/apis/drive_v2/classes.rb +1 -0
  155. data/generated/google/apis/drive_v2/service.rb +51 -57
  156. data/generated/google/apis/drive_v3.rb +1 -1
  157. data/generated/google/apis/drive_v3/service.rb +28 -29
  158. data/generated/google/apis/driveactivity_v2.rb +1 -1
  159. data/generated/google/apis/driveactivity_v2/classes.rb +9 -5
  160. data/generated/google/apis/file_v1.rb +1 -1
  161. data/generated/google/apis/file_v1/classes.rb +1 -1
  162. data/generated/google/apis/file_v1/service.rb +5 -5
  163. data/generated/google/apis/file_v1beta1.rb +1 -1
  164. data/generated/google/apis/file_v1beta1/classes.rb +1 -1
  165. data/generated/google/apis/file_v1beta1/service.rb +10 -7
  166. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  167. data/generated/google/apis/firebase_v1beta1/service.rb +5 -2
  168. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  169. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +8 -58
  170. data/generated/google/apis/firebasehosting_v1beta1/representations.rb +1 -31
  171. data/generated/google/apis/firebasehosting_v1beta1/service.rb +0 -70
  172. data/generated/google/apis/firebaseml_v1beta2.rb +34 -0
  173. data/generated/google/apis/firebaseml_v1beta2/classes.rb +344 -0
  174. data/generated/google/apis/firebaseml_v1beta2/representations.rb +154 -0
  175. data/generated/google/apis/firebaseml_v1beta2/service.rb +267 -0
  176. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  177. data/generated/google/apis/games_configuration_v1configuration/classes.rb +9 -10
  178. data/generated/google/apis/games_configuration_v1configuration/service.rb +2 -2
  179. data/generated/google/apis/games_management_v1management.rb +1 -1
  180. data/generated/google/apis/games_management_v1management/classes.rb +0 -6
  181. data/generated/google/apis/games_management_v1management/representations.rb +0 -1
  182. data/generated/google/apis/games_v1.rb +1 -1
  183. data/generated/google/apis/games_v1/classes.rb +1 -7
  184. data/generated/google/apis/games_v1/representations.rb +0 -1
  185. data/generated/google/apis/games_v1/service.rb +3 -12
  186. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  187. data/generated/google/apis/gameservices_v1beta/classes.rb +1 -2
  188. data/generated/google/apis/gameservices_v1beta/service.rb +2 -2
  189. data/generated/google/apis/healthcare_v1.rb +1 -1
  190. data/generated/google/apis/healthcare_v1/classes.rb +0 -1
  191. data/generated/google/apis/healthcare_v1/service.rb +9 -7
  192. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  193. data/generated/google/apis/healthcare_v1beta1/service.rb +124 -1
  194. data/generated/google/apis/homegraph_v1.rb +1 -1
  195. data/generated/google/apis/homegraph_v1/classes.rb +8 -6
  196. data/generated/google/apis/iamcredentials_v1.rb +1 -1
  197. data/generated/google/apis/iamcredentials_v1/classes.rb +9 -4
  198. data/generated/google/apis/managedidentities_v1.rb +1 -1
  199. data/generated/google/apis/managedidentities_v1/service.rb +2 -2
  200. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  201. data/generated/google/apis/managedidentities_v1alpha1/service.rb +2 -2
  202. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  203. data/generated/google/apis/managedidentities_v1beta1/service.rb +2 -2
  204. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  205. data/generated/google/apis/memcache_v1beta2/classes.rb +7 -7
  206. data/generated/google/apis/memcache_v1beta2/service.rb +1 -1
  207. data/generated/google/apis/ml_v1.rb +1 -1
  208. data/generated/google/apis/ml_v1/classes.rb +41 -38
  209. data/generated/google/apis/ml_v1/service.rb +17 -11
  210. data/generated/google/apis/monitoring_v3.rb +1 -1
  211. data/generated/google/apis/monitoring_v3/classes.rb +27 -38
  212. data/generated/google/apis/monitoring_v3/representations.rb +3 -16
  213. data/generated/google/apis/monitoring_v3/service.rb +6 -5
  214. data/generated/google/apis/people_v1.rb +7 -1
  215. data/generated/google/apis/policytroubleshooter_v1.rb +1 -1
  216. data/generated/google/apis/policytroubleshooter_v1/classes.rb +23 -10
  217. data/generated/google/apis/policytroubleshooter_v1beta.rb +1 -1
  218. data/generated/google/apis/policytroubleshooter_v1beta/classes.rb +23 -10
  219. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  220. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +13 -0
  221. data/generated/google/apis/prod_tt_sasportal_v1alpha1/representations.rb +2 -0
  222. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +6 -0
  223. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  224. data/generated/google/apis/remotebuildexecution_v1/classes.rb +57 -1
  225. data/generated/google/apis/remotebuildexecution_v1/representations.rb +19 -0
  226. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  227. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +57 -1
  228. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +19 -0
  229. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  230. data/generated/google/apis/remotebuildexecution_v2/classes.rb +57 -1
  231. data/generated/google/apis/remotebuildexecution_v2/representations.rb +19 -0
  232. data/generated/google/apis/run_v1.rb +1 -1
  233. data/generated/google/apis/run_v1/classes.rb +22 -46
  234. data/generated/google/apis/run_v1/representations.rb +5 -19
  235. data/generated/google/apis/run_v1alpha1.rb +1 -1
  236. data/generated/google/apis/run_v1alpha1/classes.rb +1 -2
  237. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  238. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +23 -10
  239. data/generated/google/apis/runtimeconfig_v1beta1/service.rb +8 -5
  240. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  241. data/generated/google/apis/sasportal_v1alpha1/classes.rb +13 -0
  242. data/generated/google/apis/sasportal_v1alpha1/representations.rb +2 -0
  243. data/generated/google/apis/sasportal_v1alpha1/service.rb +6 -0
  244. data/generated/google/apis/script_v1.rb +1 -1
  245. data/generated/google/apis/script_v1/classes.rb +4 -22
  246. data/generated/google/apis/secretmanager_v1.rb +1 -1
  247. data/generated/google/apis/secretmanager_v1/classes.rb +1 -2
  248. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  249. data/generated/google/apis/secretmanager_v1beta1/classes.rb +1 -2
  250. data/generated/google/apis/securitycenter_v1.rb +1 -1
  251. data/generated/google/apis/securitycenter_v1/classes.rb +0 -12
  252. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  253. data/generated/google/apis/securitycenter_v1beta1/classes.rb +0 -8
  254. data/generated/google/apis/securitycenter_v1p1alpha1.rb +1 -1
  255. data/generated/google/apis/securitycenter_v1p1alpha1/classes.rb +0 -8
  256. data/generated/google/apis/securitycenter_v1p1beta1.rb +1 -1
  257. data/generated/google/apis/securitycenter_v1p1beta1/classes.rb +0 -8
  258. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  259. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +34 -14
  260. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  261. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +34 -14
  262. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  263. data/generated/google/apis/servicedirectory_v1beta1.rb +1 -1
  264. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  265. data/generated/google/apis/servicemanagement_v1/service.rb +6 -1
  266. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  267. data/generated/google/apis/servicenetworking_v1/classes.rb +34 -14
  268. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  269. data/generated/google/apis/servicenetworking_v1beta/classes.rb +34 -14
  270. data/generated/google/apis/serviceusage_v1.rb +1 -1
  271. data/generated/google/apis/serviceusage_v1/classes.rb +34 -14
  272. data/generated/google/apis/serviceusage_v1/service.rb +1 -1
  273. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  274. data/generated/google/apis/serviceusage_v1beta1/classes.rb +34 -14
  275. data/generated/google/apis/sheets_v4.rb +1 -1
  276. data/generated/google/apis/sheets_v4/classes.rb +2 -2
  277. data/generated/google/apis/slides_v1.rb +1 -1
  278. data/generated/google/apis/slides_v1/classes.rb +1 -1
  279. data/generated/google/apis/slides_v1/service.rb +1 -1
  280. data/generated/google/apis/sourcerepo_v1.rb +1 -1
  281. data/generated/google/apis/sourcerepo_v1/classes.rb +1 -2
  282. data/generated/google/apis/speech_v1.rb +1 -1
  283. data/generated/google/apis/speech_v1/classes.rb +2 -1
  284. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  285. data/generated/google/apis/speech_v1p1beta1/classes.rb +182 -1
  286. data/generated/google/apis/speech_v1p1beta1/representations.rb +77 -0
  287. data/generated/google/apis/storage_v1.rb +1 -1
  288. data/generated/google/apis/storage_v1/classes.rb +21 -0
  289. data/generated/google/apis/storage_v1/representations.rb +5 -0
  290. data/generated/google/apis/tagmanager_v1.rb +1 -1
  291. data/generated/google/apis/tagmanager_v1/service.rb +1 -1
  292. data/generated/google/apis/tagmanager_v2.rb +1 -1
  293. data/generated/google/apis/tagmanager_v2/service.rb +1 -1
  294. data/generated/google/apis/testing_v1.rb +1 -1
  295. data/generated/google/apis/testing_v1/classes.rb +9 -0
  296. data/generated/google/apis/testing_v1/representations.rb +1 -0
  297. data/generated/google/apis/toolresults_v1beta3.rb +2 -2
  298. data/generated/google/apis/toolresults_v1beta3/classes.rb +1431 -1231
  299. data/generated/google/apis/toolresults_v1beta3/representations.rb +442 -2
  300. data/generated/google/apis/toolresults_v1beta3/service.rb +647 -720
  301. data/generated/google/apis/vault_v1.rb +1 -1
  302. data/generated/google/apis/vault_v1/classes.rb +6 -6
  303. data/generated/google/apis/vault_v1/service.rb +7 -7
  304. data/generated/google/apis/videointelligence_v1.rb +1 -1
  305. data/generated/google/apis/videointelligence_v1/classes.rb +215 -76
  306. data/generated/google/apis/videointelligence_v1/representations.rb +23 -0
  307. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  308. data/generated/google/apis/videointelligence_v1beta2/classes.rb +215 -76
  309. data/generated/google/apis/videointelligence_v1beta2/representations.rb +23 -0
  310. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  311. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +215 -76
  312. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +23 -0
  313. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  314. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +215 -76
  315. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +23 -0
  316. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  317. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +222 -83
  318. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +23 -0
  319. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  320. data/generated/google/apis/youtube_v3.rb +1 -1
  321. data/lib/google/apis/version.rb +1 -1
  322. metadata +15 -11
  323. data/generated/google/apis/commentanalyzer_v1alpha1.rb +0 -39
  324. data/generated/google/apis/commentanalyzer_v1alpha1/classes.rb +0 -480
  325. data/generated/google/apis/commentanalyzer_v1alpha1/representations.rb +0 -210
  326. data/generated/google/apis/commentanalyzer_v1alpha1/service.rb +0 -124
  327. data/generated/google/apis/osconfig_v1beta/classes.rb +0 -2365
  328. data/generated/google/apis/osconfig_v1beta/representations.rb +0 -966
  329. data/generated/google/apis/osconfig_v1beta/service.rb +0 -605
@@ -0,0 +1,924 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module CloudassetV1p4beta1
24
+
25
+ # Specifies roles and/or permissions to analyze, to determine both the
26
+ # identities possessing them and the resources they control. If multiple
27
+ # values are specified, results will include identities and resources
28
+ # matching any of them.
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 response message for AssetService.AnalyzeIamPolicy.
54
+ class AnalyzeIamPolicyResponse
55
+ include Google::Apis::Core::Hashable
56
+
57
+ # Represents whether all entries in the main_analysis and
58
+ # service_account_impersonation_analysis have been fully explored to
59
+ # answer the query in the request.
60
+ # Corresponds to the JSON property `fullyExplored`
61
+ # @return [Boolean]
62
+ attr_accessor :fully_explored
63
+ alias_method :fully_explored?, :fully_explored
64
+
65
+ # An analysis message to group the query and results.
66
+ # Corresponds to the JSON property `mainAnalysis`
67
+ # @return [Google::Apis::CloudassetV1p4beta1::IamPolicyAnalysis]
68
+ attr_accessor :main_analysis
69
+
70
+ # A list of non-critical errors happened during the request handling to
71
+ # explain why `fully_explored` is false, or empty if no error happened.
72
+ # Corresponds to the JSON property `nonCriticalErrors`
73
+ # @return [Array<Google::Apis::CloudassetV1p4beta1::GoogleCloudAssetV1p4beta1AnalysisState>]
74
+ attr_accessor :non_critical_errors
75
+
76
+ # The service account impersonation analysis if
77
+ # AnalyzeIamPolicyRequest.analyze_service_account_impersonation is
78
+ # enabled.
79
+ # Corresponds to the JSON property `serviceAccountImpersonationAnalysis`
80
+ # @return [Array<Google::Apis::CloudassetV1p4beta1::IamPolicyAnalysis>]
81
+ attr_accessor :service_account_impersonation_analysis
82
+
83
+ def initialize(**args)
84
+ update!(**args)
85
+ end
86
+
87
+ # Update properties of this object
88
+ def update!(**args)
89
+ @fully_explored = args[:fully_explored] if args.key?(:fully_explored)
90
+ @main_analysis = args[:main_analysis] if args.key?(:main_analysis)
91
+ @non_critical_errors = args[:non_critical_errors] if args.key?(:non_critical_errors)
92
+ @service_account_impersonation_analysis = args[:service_account_impersonation_analysis] if args.key?(:service_account_impersonation_analysis)
93
+ end
94
+ end
95
+
96
+ # Associates `members` with a `role`.
97
+ class Binding
98
+ include Google::Apis::Core::Hashable
99
+
100
+ # Represents a textual expression in the Common Expression Language (CEL)
101
+ # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
102
+ # are documented at https://github.com/google/cel-spec.
103
+ # Example (Comparison):
104
+ # title: "Summary size limit"
105
+ # description: "Determines if a summary is less than 100 chars"
106
+ # expression: "document.summary.size() < 100"
107
+ # Example (Equality):
108
+ # title: "Requestor is owner"
109
+ # description: "Determines if requestor is the document owner"
110
+ # expression: "document.owner == request.auth.claims.email"
111
+ # Example (Logic):
112
+ # title: "Public documents"
113
+ # description: "Determine whether the document should be publicly visible"
114
+ # expression: "document.type != 'private' && document.type != 'internal'"
115
+ # Example (Data Manipulation):
116
+ # title: "Notification string"
117
+ # description: "Create a notification string with a timestamp."
118
+ # expression: "'New message received at ' + string(document.create_time)"
119
+ # The exact variables and functions that may be referenced within an expression
120
+ # are determined by the service that evaluates it. See the service
121
+ # documentation for additional information.
122
+ # Corresponds to the JSON property `condition`
123
+ # @return [Google::Apis::CloudassetV1p4beta1::Expr]
124
+ attr_accessor :condition
125
+
126
+ # Specifies the identities requesting access for a Cloud Platform resource.
127
+ # `members` can have the following values:
128
+ # * `allUsers`: A special identifier that represents anyone who is
129
+ # on the internet; with or without a Google account.
130
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
131
+ # who is authenticated with a Google account or a service account.
132
+ # * `user:`emailid``: An email address that represents a specific Google
133
+ # account. For example, `alice@example.com` .
134
+ # * `serviceAccount:`emailid``: An email address that represents a service
135
+ # account. For example, `my-other-app@appspot.gserviceaccount.com`.
136
+ # * `group:`emailid``: An email address that represents a Google group.
137
+ # For example, `admins@example.com`.
138
+ # * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique
139
+ # identifier) representing a user that has been recently deleted. For
140
+ # example, `alice@example.com?uid=123456789012345678901`. If the user is
141
+ # recovered, this value reverts to `user:`emailid`` and the recovered user
142
+ # retains the role in the binding.
143
+ # * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus
144
+ # unique identifier) representing a service account that has been recently
145
+ # deleted. For example,
146
+ # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
147
+ # If the service account is undeleted, this value reverts to
148
+ # `serviceAccount:`emailid`` and the undeleted service account retains the
149
+ # role in the binding.
150
+ # * `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
151
+ # identifier) representing a Google group that has been recently
152
+ # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
153
+ # the group is recovered, this value reverts to `group:`emailid`` and the
154
+ # recovered group retains the role in the binding.
155
+ # * `domain:`domain``: The G Suite domain (primary) that represents all the
156
+ # users of that domain. For example, `google.com` or `example.com`.
157
+ # Corresponds to the JSON property `members`
158
+ # @return [Array<String>]
159
+ attr_accessor :members
160
+
161
+ # Role that is assigned to `members`.
162
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
163
+ # Corresponds to the JSON property `role`
164
+ # @return [String]
165
+ attr_accessor :role
166
+
167
+ def initialize(**args)
168
+ update!(**args)
169
+ end
170
+
171
+ # Update properties of this object
172
+ def update!(**args)
173
+ @condition = args[:condition] if args.key?(:condition)
174
+ @members = args[:members] if args.key?(:members)
175
+ @role = args[:role] if args.key?(:role)
176
+ end
177
+ end
178
+
179
+ # A request message for AssetService.ExportIamPolicyAnalysis.
180
+ class ExportIamPolicyAnalysisRequest
181
+ include Google::Apis::Core::Hashable
182
+
183
+ # IAM policy analysis query message.
184
+ # Corresponds to the JSON property `analysisQuery`
185
+ # @return [Google::Apis::CloudassetV1p4beta1::IamPolicyAnalysisQuery]
186
+ attr_accessor :analysis_query
187
+
188
+ # Contains request options.
189
+ # Corresponds to the JSON property `options`
190
+ # @return [Google::Apis::CloudassetV1p4beta1::Options]
191
+ attr_accessor :options
192
+
193
+ # Output configuration for export IAM policy analysis destination.
194
+ # Corresponds to the JSON property `outputConfig`
195
+ # @return [Google::Apis::CloudassetV1p4beta1::IamPolicyAnalysisOutputConfig]
196
+ attr_accessor :output_config
197
+
198
+ def initialize(**args)
199
+ update!(**args)
200
+ end
201
+
202
+ # Update properties of this object
203
+ def update!(**args)
204
+ @analysis_query = args[:analysis_query] if args.key?(:analysis_query)
205
+ @options = args[:options] if args.key?(:options)
206
+ @output_config = args[:output_config] if args.key?(:output_config)
207
+ end
208
+ end
209
+
210
+ # Represents a textual expression in the Common Expression Language (CEL)
211
+ # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
212
+ # are documented at https://github.com/google/cel-spec.
213
+ # Example (Comparison):
214
+ # title: "Summary size limit"
215
+ # description: "Determines if a summary is less than 100 chars"
216
+ # expression: "document.summary.size() < 100"
217
+ # Example (Equality):
218
+ # title: "Requestor is owner"
219
+ # description: "Determines if requestor is the document owner"
220
+ # expression: "document.owner == request.auth.claims.email"
221
+ # Example (Logic):
222
+ # title: "Public documents"
223
+ # description: "Determine whether the document should be publicly visible"
224
+ # expression: "document.type != 'private' && document.type != 'internal'"
225
+ # Example (Data Manipulation):
226
+ # title: "Notification string"
227
+ # description: "Create a notification string with a timestamp."
228
+ # expression: "'New message received at ' + string(document.create_time)"
229
+ # The exact variables and functions that may be referenced within an expression
230
+ # are determined by the service that evaluates it. See the service
231
+ # documentation for additional information.
232
+ class Expr
233
+ include Google::Apis::Core::Hashable
234
+
235
+ # Optional. Description of the expression. This is a longer text which
236
+ # describes the expression, e.g. when hovered over it in a UI.
237
+ # Corresponds to the JSON property `description`
238
+ # @return [String]
239
+ attr_accessor :description
240
+
241
+ # Textual representation of an expression in Common Expression Language
242
+ # syntax.
243
+ # Corresponds to the JSON property `expression`
244
+ # @return [String]
245
+ attr_accessor :expression
246
+
247
+ # Optional. String indicating the location of the expression for error
248
+ # reporting, e.g. a file name and a position in the file.
249
+ # Corresponds to the JSON property `location`
250
+ # @return [String]
251
+ attr_accessor :location
252
+
253
+ # Optional. Title for the expression, i.e. a short string describing
254
+ # its purpose. This can be used e.g. in UIs which allow to enter the
255
+ # expression.
256
+ # Corresponds to the JSON property `title`
257
+ # @return [String]
258
+ attr_accessor :title
259
+
260
+ def initialize(**args)
261
+ update!(**args)
262
+ end
263
+
264
+ # Update properties of this object
265
+ def update!(**args)
266
+ @description = args[:description] if args.key?(:description)
267
+ @expression = args[:expression] if args.key?(:expression)
268
+ @location = args[:location] if args.key?(:location)
269
+ @title = args[:title] if args.key?(:title)
270
+ end
271
+ end
272
+
273
+ # A Cloud Storage location.
274
+ class GcsDestination
275
+ include Google::Apis::Core::Hashable
276
+
277
+ # Required. The uri of the Cloud Storage object. It's the same uri that is used
278
+ # by
279
+ # gsutil. For example: "gs://bucket_name/object_name". See [Viewing and
280
+ # Editing Object
281
+ # Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata)
282
+ # for more information.
283
+ # Corresponds to the JSON property `uri`
284
+ # @return [String]
285
+ attr_accessor :uri
286
+
287
+ def initialize(**args)
288
+ update!(**args)
289
+ end
290
+
291
+ # Update properties of this object
292
+ def update!(**args)
293
+ @uri = args[:uri] if args.key?(:uri)
294
+ end
295
+ end
296
+
297
+ # A role or permission that appears in an access control list.
298
+ class GoogleCloudAssetV1p4beta1Access
299
+ include Google::Apis::Core::Hashable
300
+
301
+ # Represents analysis state of each node in the result graph or non-critical
302
+ # errors in the response.
303
+ # Corresponds to the JSON property `analysisState`
304
+ # @return [Google::Apis::CloudassetV1p4beta1::GoogleCloudAssetV1p4beta1AnalysisState]
305
+ attr_accessor :analysis_state
306
+
307
+ # The permission.
308
+ # Corresponds to the JSON property `permission`
309
+ # @return [String]
310
+ attr_accessor :permission
311
+
312
+ # The role.
313
+ # Corresponds to the JSON property `role`
314
+ # @return [String]
315
+ attr_accessor :role
316
+
317
+ def initialize(**args)
318
+ update!(**args)
319
+ end
320
+
321
+ # Update properties of this object
322
+ def update!(**args)
323
+ @analysis_state = args[:analysis_state] if args.key?(:analysis_state)
324
+ @permission = args[:permission] if args.key?(:permission)
325
+ @role = args[:role] if args.key?(:role)
326
+ end
327
+ end
328
+
329
+ # An access control list, derived from the above IAM policy binding, which
330
+ # contains a set of resources and accesses. May include one
331
+ # item from each set to compose an access control entry.
332
+ # NOTICE that there could be multiple access control lists for one IAM policy
333
+ # binding. The access control lists are created based on resource and access
334
+ # combinations.
335
+ # For example, assume we have the following cases in one IAM policy binding:
336
+ # - Permission P1 and P2 apply to resource R1 and R2;
337
+ # - Permission P3 applies to resource R2 and R3;
338
+ # This will result in the following access control lists:
339
+ # - AccessControlList 1: [R1, R2], [P1, P2]
340
+ # - AccessControlList 2: [R2, R3], [P3]
341
+ class GoogleCloudAssetV1p4beta1AccessControlList
342
+ include Google::Apis::Core::Hashable
343
+
344
+ # The accesses that match one of the following conditions:
345
+ # - The access_selector, if it is specified in request;
346
+ # - Otherwise, access specifiers reachable from the policy binding's role.
347
+ # Corresponds to the JSON property `accesses`
348
+ # @return [Array<Google::Apis::CloudassetV1p4beta1::GoogleCloudAssetV1p4beta1Access>]
349
+ attr_accessor :accesses
350
+
351
+ # Resource edges of the graph starting from the policy attached
352
+ # resource to any descendant resources. The Edge.source_node contains
353
+ # the full resource name of a parent resource and Edge.target_node
354
+ # contains the full resource name of a child resource. This field is
355
+ # present only if the output_resource_edges option is enabled in request.
356
+ # Corresponds to the JSON property `resourceEdges`
357
+ # @return [Array<Google::Apis::CloudassetV1p4beta1::GoogleCloudAssetV1p4beta1Edge>]
358
+ attr_accessor :resource_edges
359
+
360
+ # The resources that match one of the following conditions:
361
+ # - The resource_selector, if it is specified in request;
362
+ # - Otherwise, resources reachable from the policy attached resource.
363
+ # Corresponds to the JSON property `resources`
364
+ # @return [Array<Google::Apis::CloudassetV1p4beta1::GoogleCloudAssetV1p4beta1Resource>]
365
+ attr_accessor :resources
366
+
367
+ def initialize(**args)
368
+ update!(**args)
369
+ end
370
+
371
+ # Update properties of this object
372
+ def update!(**args)
373
+ @accesses = args[:accesses] if args.key?(:accesses)
374
+ @resource_edges = args[:resource_edges] if args.key?(:resource_edges)
375
+ @resources = args[:resources] if args.key?(:resources)
376
+ end
377
+ end
378
+
379
+ # Represents analysis state of each node in the result graph or non-critical
380
+ # errors in the response.
381
+ class GoogleCloudAssetV1p4beta1AnalysisState
382
+ include Google::Apis::Core::Hashable
383
+
384
+ # The human-readable description of the cause of failure.
385
+ # Corresponds to the JSON property `cause`
386
+ # @return [String]
387
+ attr_accessor :cause
388
+
389
+ # The Google standard error code that best describes the state.
390
+ # For example:
391
+ # - OK means the node has been successfully explored;
392
+ # - PERMISSION_DENIED means an access denied error is encountered;
393
+ # - DEADLINE_EXCEEDED means the node hasn't been explored in time;
394
+ # Corresponds to the JSON property `code`
395
+ # @return [String]
396
+ attr_accessor :code
397
+
398
+ def initialize(**args)
399
+ update!(**args)
400
+ end
401
+
402
+ # Update properties of this object
403
+ def update!(**args)
404
+ @cause = args[:cause] if args.key?(:cause)
405
+ @code = args[:code] if args.key?(:code)
406
+ end
407
+ end
408
+
409
+ # A directional edge.
410
+ class GoogleCloudAssetV1p4beta1Edge
411
+ include Google::Apis::Core::Hashable
412
+
413
+ # The source node of the edge.
414
+ # Corresponds to the JSON property `sourceNode`
415
+ # @return [String]
416
+ attr_accessor :source_node
417
+
418
+ # The target node of the edge.
419
+ # Corresponds to the JSON property `targetNode`
420
+ # @return [String]
421
+ attr_accessor :target_node
422
+
423
+ def initialize(**args)
424
+ update!(**args)
425
+ end
426
+
427
+ # Update properties of this object
428
+ def update!(**args)
429
+ @source_node = args[:source_node] if args.key?(:source_node)
430
+ @target_node = args[:target_node] if args.key?(:target_node)
431
+ end
432
+ end
433
+
434
+ # An identity that appears in an access control list.
435
+ class GoogleCloudAssetV1p4beta1Identity
436
+ include Google::Apis::Core::Hashable
437
+
438
+ # Represents analysis state of each node in the result graph or non-critical
439
+ # errors in the response.
440
+ # Corresponds to the JSON property `analysisState`
441
+ # @return [Google::Apis::CloudassetV1p4beta1::GoogleCloudAssetV1p4beta1AnalysisState]
442
+ attr_accessor :analysis_state
443
+
444
+ # The identity name in any form of members appear in
445
+ # [IAM policy
446
+ # binding](https://cloud.google.com/iam/reference/rest/v1/Binding), such
447
+ # as:
448
+ # - user:foo@google.com
449
+ # - group:group1@google.com
450
+ # - serviceAccount:s1@prj1.iam.gserviceaccount.com
451
+ # - projectOwner:some_project_id
452
+ # - domain:google.com
453
+ # - allUsers
454
+ # - etc.
455
+ # Corresponds to the JSON property `name`
456
+ # @return [String]
457
+ attr_accessor :name
458
+
459
+ def initialize(**args)
460
+ update!(**args)
461
+ end
462
+
463
+ # Update properties of this object
464
+ def update!(**args)
465
+ @analysis_state = args[:analysis_state] if args.key?(:analysis_state)
466
+ @name = args[:name] if args.key?(:name)
467
+ end
468
+ end
469
+
470
+ #
471
+ class GoogleCloudAssetV1p4beta1IdentityList
472
+ include Google::Apis::Core::Hashable
473
+
474
+ # Group identity edges of the graph starting from the binding's
475
+ # group members to any node of the identities. The Edge.source_node
476
+ # contains a group, such as "group:parent@google.com". The
477
+ # Edge.target_node contains a member of the group,
478
+ # such as "group:child@google.com" or "user:foo@google.com".
479
+ # This field is present only if the output_group_edges option is enabled in
480
+ # request.
481
+ # Corresponds to the JSON property `groupEdges`
482
+ # @return [Array<Google::Apis::CloudassetV1p4beta1::GoogleCloudAssetV1p4beta1Edge>]
483
+ attr_accessor :group_edges
484
+
485
+ # Only the identities that match one of the following conditions will be
486
+ # presented:
487
+ # - The identity_selector, if it is specified in request;
488
+ # - Otherwise, identities reachable from the policy binding's members.
489
+ # Corresponds to the JSON property `identities`
490
+ # @return [Array<Google::Apis::CloudassetV1p4beta1::GoogleCloudAssetV1p4beta1Identity>]
491
+ attr_accessor :identities
492
+
493
+ def initialize(**args)
494
+ update!(**args)
495
+ end
496
+
497
+ # Update properties of this object
498
+ def update!(**args)
499
+ @group_edges = args[:group_edges] if args.key?(:group_edges)
500
+ @identities = args[:identities] if args.key?(:identities)
501
+ end
502
+ end
503
+
504
+ # A GCP resource that appears in an access control list.
505
+ class GoogleCloudAssetV1p4beta1Resource
506
+ include Google::Apis::Core::Hashable
507
+
508
+ # Represents analysis state of each node in the result graph or non-critical
509
+ # errors in the response.
510
+ # Corresponds to the JSON property `analysisState`
511
+ # @return [Google::Apis::CloudassetV1p4beta1::GoogleCloudAssetV1p4beta1AnalysisState]
512
+ attr_accessor :analysis_state
513
+
514
+ # The [full resource name](https://aip.dev/122#full-resource-names).
515
+ # Corresponds to the JSON property `fullResourceName`
516
+ # @return [String]
517
+ attr_accessor :full_resource_name
518
+
519
+ def initialize(**args)
520
+ update!(**args)
521
+ end
522
+
523
+ # Update properties of this object
524
+ def update!(**args)
525
+ @analysis_state = args[:analysis_state] if args.key?(:analysis_state)
526
+ @full_resource_name = args[:full_resource_name] if args.key?(:full_resource_name)
527
+ end
528
+ end
529
+
530
+ # An analysis message to group the query and results.
531
+ class IamPolicyAnalysis
532
+ include Google::Apis::Core::Hashable
533
+
534
+ # IAM policy analysis query message.
535
+ # Corresponds to the JSON property `analysisQuery`
536
+ # @return [Google::Apis::CloudassetV1p4beta1::IamPolicyAnalysisQuery]
537
+ attr_accessor :analysis_query
538
+
539
+ # A list of IamPolicyAnalysisResult that matches the analysis query, or
540
+ # empty if no result is found.
541
+ # Corresponds to the JSON property `analysisResults`
542
+ # @return [Array<Google::Apis::CloudassetV1p4beta1::IamPolicyAnalysisResult>]
543
+ attr_accessor :analysis_results
544
+
545
+ # Represents whether all entries in the analysis_results have been
546
+ # fully explored to answer the query.
547
+ # Corresponds to the JSON property `fullyExplored`
548
+ # @return [Boolean]
549
+ attr_accessor :fully_explored
550
+ alias_method :fully_explored?, :fully_explored
551
+
552
+ def initialize(**args)
553
+ update!(**args)
554
+ end
555
+
556
+ # Update properties of this object
557
+ def update!(**args)
558
+ @analysis_query = args[:analysis_query] if args.key?(:analysis_query)
559
+ @analysis_results = args[:analysis_results] if args.key?(:analysis_results)
560
+ @fully_explored = args[:fully_explored] if args.key?(:fully_explored)
561
+ end
562
+ end
563
+
564
+ # Output configuration for export IAM policy analysis destination.
565
+ class IamPolicyAnalysisOutputConfig
566
+ include Google::Apis::Core::Hashable
567
+
568
+ # A Cloud Storage location.
569
+ # Corresponds to the JSON property `gcsDestination`
570
+ # @return [Google::Apis::CloudassetV1p4beta1::GcsDestination]
571
+ attr_accessor :gcs_destination
572
+
573
+ def initialize(**args)
574
+ update!(**args)
575
+ end
576
+
577
+ # Update properties of this object
578
+ def update!(**args)
579
+ @gcs_destination = args[:gcs_destination] if args.key?(:gcs_destination)
580
+ end
581
+ end
582
+
583
+ # IAM policy analysis query message.
584
+ class IamPolicyAnalysisQuery
585
+ include Google::Apis::Core::Hashable
586
+
587
+ # Specifies roles and/or permissions to analyze, to determine both the
588
+ # identities possessing them and the resources they control. If multiple
589
+ # values are specified, results will include identities and resources
590
+ # matching any of them.
591
+ # Corresponds to the JSON property `accessSelector`
592
+ # @return [Google::Apis::CloudassetV1p4beta1::AccessSelector]
593
+ attr_accessor :access_selector
594
+
595
+ # Specifies an identity for which to determine resource access, based on
596
+ # roles assigned either directly to them or to the groups they belong to,
597
+ # directly or indirectly.
598
+ # Corresponds to the JSON property `identitySelector`
599
+ # @return [Google::Apis::CloudassetV1p4beta1::IdentitySelector]
600
+ attr_accessor :identity_selector
601
+
602
+ # Required. The relative name of the root asset. Only resources and IAM policies
603
+ # within
604
+ # the parent will be analyzed. This can only be an organization number (such
605
+ # as "organizations/123") or a folder number (such as "folders/123").
606
+ # Corresponds to the JSON property `parent`
607
+ # @return [String]
608
+ attr_accessor :parent
609
+
610
+ # Specifies the resource to analyze for access policies, which may be set
611
+ # directly on the resource, or on ancestors such as organizations, folders or
612
+ # projects. At least one of ResourceSelector, IdentitySelector or
613
+ # AccessSelector must be specified in a request.
614
+ # Corresponds to the JSON property `resourceSelector`
615
+ # @return [Google::Apis::CloudassetV1p4beta1::ResourceSelector]
616
+ attr_accessor :resource_selector
617
+
618
+ def initialize(**args)
619
+ update!(**args)
620
+ end
621
+
622
+ # Update properties of this object
623
+ def update!(**args)
624
+ @access_selector = args[:access_selector] if args.key?(:access_selector)
625
+ @identity_selector = args[:identity_selector] if args.key?(:identity_selector)
626
+ @parent = args[:parent] if args.key?(:parent)
627
+ @resource_selector = args[:resource_selector] if args.key?(:resource_selector)
628
+ end
629
+ end
630
+
631
+ # IAM Policy analysis result, consisting of one IAM policy binding and derived
632
+ # access control lists.
633
+ class IamPolicyAnalysisResult
634
+ include Google::Apis::Core::Hashable
635
+
636
+ # The access control lists derived from the iam_binding that match or
637
+ # potentially match resource and access selectors specified in the request.
638
+ # Corresponds to the JSON property `accessControlLists`
639
+ # @return [Array<Google::Apis::CloudassetV1p4beta1::GoogleCloudAssetV1p4beta1AccessControlList>]
640
+ attr_accessor :access_control_lists
641
+
642
+ # The full name of the resource to which the iam_binding policy attaches.
643
+ # Corresponds to the JSON property `attachedResourceFullName`
644
+ # @return [String]
645
+ attr_accessor :attached_resource_full_name
646
+
647
+ # Represents whether all nodes in the transitive closure of the
648
+ # iam_binding node have been explored.
649
+ # Corresponds to the JSON property `fullyExplored`
650
+ # @return [Boolean]
651
+ attr_accessor :fully_explored
652
+ alias_method :fully_explored?, :fully_explored
653
+
654
+ # Associates `members` with a `role`.
655
+ # Corresponds to the JSON property `iamBinding`
656
+ # @return [Google::Apis::CloudassetV1p4beta1::Binding]
657
+ attr_accessor :iam_binding
658
+
659
+ # The identity list derived from members of the iam_binding that match or
660
+ # potentially match identity selector specified in the request.
661
+ # Corresponds to the JSON property `identityList`
662
+ # @return [Google::Apis::CloudassetV1p4beta1::GoogleCloudAssetV1p4beta1IdentityList]
663
+ attr_accessor :identity_list
664
+
665
+ def initialize(**args)
666
+ update!(**args)
667
+ end
668
+
669
+ # Update properties of this object
670
+ def update!(**args)
671
+ @access_control_lists = args[:access_control_lists] if args.key?(:access_control_lists)
672
+ @attached_resource_full_name = args[:attached_resource_full_name] if args.key?(:attached_resource_full_name)
673
+ @fully_explored = args[:fully_explored] if args.key?(:fully_explored)
674
+ @iam_binding = args[:iam_binding] if args.key?(:iam_binding)
675
+ @identity_list = args[:identity_list] if args.key?(:identity_list)
676
+ end
677
+ end
678
+
679
+ # Specifies an identity for which to determine resource access, based on
680
+ # roles assigned either directly to them or to the groups they belong to,
681
+ # directly or indirectly.
682
+ class IdentitySelector
683
+ include Google::Apis::Core::Hashable
684
+
685
+ # Required. The identity appear in the form of members in
686
+ # [IAM policy
687
+ # binding](https://cloud.google.com/iam/reference/rest/v1/Binding).
688
+ # Corresponds to the JSON property `identity`
689
+ # @return [String]
690
+ attr_accessor :identity
691
+
692
+ def initialize(**args)
693
+ update!(**args)
694
+ end
695
+
696
+ # Update properties of this object
697
+ def update!(**args)
698
+ @identity = args[:identity] if args.key?(:identity)
699
+ end
700
+ end
701
+
702
+ # This resource represents a long-running operation that is the result of a
703
+ # network API call.
704
+ class Operation
705
+ include Google::Apis::Core::Hashable
706
+
707
+ # If the value is `false`, it means the operation is still in progress.
708
+ # If `true`, the operation is completed, and either `error` or `response` is
709
+ # available.
710
+ # Corresponds to the JSON property `done`
711
+ # @return [Boolean]
712
+ attr_accessor :done
713
+ alias_method :done?, :done
714
+
715
+ # The `Status` type defines a logical error model that is suitable for
716
+ # different programming environments, including REST APIs and RPC APIs. It is
717
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
718
+ # three pieces of data: error code, error message, and error details.
719
+ # You can find out more about this error model and how to work with it in the
720
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
721
+ # Corresponds to the JSON property `error`
722
+ # @return [Google::Apis::CloudassetV1p4beta1::Status]
723
+ attr_accessor :error
724
+
725
+ # Service-specific metadata associated with the operation. It typically
726
+ # contains progress information and common metadata such as create time.
727
+ # Some services might not provide such metadata. Any method that returns a
728
+ # long-running operation should document the metadata type, if any.
729
+ # Corresponds to the JSON property `metadata`
730
+ # @return [Hash<String,Object>]
731
+ attr_accessor :metadata
732
+
733
+ # The server-assigned name, which is only unique within the same service that
734
+ # originally returns it. If you use the default HTTP mapping, the
735
+ # `name` should be a resource name ending with `operations/`unique_id``.
736
+ # Corresponds to the JSON property `name`
737
+ # @return [String]
738
+ attr_accessor :name
739
+
740
+ # The normal response of the operation in case of success. If the original
741
+ # method returns no data on success, such as `Delete`, the response is
742
+ # `google.protobuf.Empty`. If the original method is standard
743
+ # `Get`/`Create`/`Update`, the response should be the resource. For other
744
+ # methods, the response should have the type `XxxResponse`, where `Xxx`
745
+ # is the original method name. For example, if the original method name
746
+ # is `TakeSnapshot()`, the inferred response type is
747
+ # `TakeSnapshotResponse`.
748
+ # Corresponds to the JSON property `response`
749
+ # @return [Hash<String,Object>]
750
+ attr_accessor :response
751
+
752
+ def initialize(**args)
753
+ update!(**args)
754
+ end
755
+
756
+ # Update properties of this object
757
+ def update!(**args)
758
+ @done = args[:done] if args.key?(:done)
759
+ @error = args[:error] if args.key?(:error)
760
+ @metadata = args[:metadata] if args.key?(:metadata)
761
+ @name = args[:name] if args.key?(:name)
762
+ @response = args[:response] if args.key?(:response)
763
+ end
764
+ end
765
+
766
+ # Contains request options.
767
+ class Options
768
+ include Google::Apis::Core::Hashable
769
+
770
+ # Optional. If true, the response will include access analysis from identities
771
+ # to
772
+ # resources via service account impersonation. This is a very expensive
773
+ # operation, because many derived queries will be executed.
774
+ # For example, if the request analyzes for which resources user A has
775
+ # permission P, and there's an IAM policy states user A has
776
+ # iam.serviceAccounts.getAccessToken permission to a service account SA,
777
+ # and there's another IAM policy states service account SA has permission P
778
+ # to a GCP folder F, then user A potentially has access to the GCP folder
779
+ # F. And those advanced analysis results will be included in
780
+ # AnalyzeIamPolicyResponse.service_account_impersonation_analysis.
781
+ # Another example, if the request analyzes for who has
782
+ # permission P to a GCP folder F, and there's an IAM policy states user A
783
+ # has iam.serviceAccounts.actAs permission to a service account SA, and
784
+ # there's another IAM policy states service account SA has permission P to
785
+ # the GCP folder F, then user A potentially has access to the GCP folder
786
+ # F. And those advanced analysis results will be included in
787
+ # AnalyzeIamPolicyResponse.service_account_impersonation_analysis.
788
+ # Default is false.
789
+ # Corresponds to the JSON property `analyzeServiceAccountImpersonation`
790
+ # @return [Boolean]
791
+ attr_accessor :analyze_service_account_impersonation
792
+ alias_method :analyze_service_account_impersonation?, :analyze_service_account_impersonation
793
+
794
+ # Optional. If true, the identities section of the result will expand any
795
+ # Google groups appearing in an IAM policy binding.
796
+ # If identity_selector is specified, the identity in the result will
797
+ # be determined by the selector, and this flag will have no effect.
798
+ # Default is false.
799
+ # Corresponds to the JSON property `expandGroups`
800
+ # @return [Boolean]
801
+ attr_accessor :expand_groups
802
+ alias_method :expand_groups?, :expand_groups
803
+
804
+ # Optional. If true, the resource section of the result will expand any
805
+ # resource attached to an IAM policy to include resources lower in the
806
+ # resource hierarchy.
807
+ # For example, if the request analyzes for which resources user A has
808
+ # permission P, and the results include an IAM policy with P on a GCP
809
+ # folder, the results will also include resources in that folder with
810
+ # permission P.
811
+ # If resource_selector is specified, the resource section of the result
812
+ # will be determined by the selector, and this flag will have no effect.
813
+ # Default is false.
814
+ # Corresponds to the JSON property `expandResources`
815
+ # @return [Boolean]
816
+ attr_accessor :expand_resources
817
+ alias_method :expand_resources?, :expand_resources
818
+
819
+ # Optional. If true, the access section of result will expand any roles
820
+ # appearing in IAM policy bindings to include their permissions.
821
+ # If access_selector is specified, the access section of the result
822
+ # will be determined by the selector, and this flag will have no effect.
823
+ # Default is false.
824
+ # Corresponds to the JSON property `expandRoles`
825
+ # @return [Boolean]
826
+ attr_accessor :expand_roles
827
+ alias_method :expand_roles?, :expand_roles
828
+
829
+ # Optional. If true, the result will output group identity edges, starting
830
+ # from the binding's group members, to any expanded identities.
831
+ # Default is false.
832
+ # Corresponds to the JSON property `outputGroupEdges`
833
+ # @return [Boolean]
834
+ attr_accessor :output_group_edges
835
+ alias_method :output_group_edges?, :output_group_edges
836
+
837
+ # Optional. If true, the result will output resource edges, starting
838
+ # from the policy attached resource, to any expanded resources.
839
+ # Default is false.
840
+ # Corresponds to the JSON property `outputResourceEdges`
841
+ # @return [Boolean]
842
+ attr_accessor :output_resource_edges
843
+ alias_method :output_resource_edges?, :output_resource_edges
844
+
845
+ def initialize(**args)
846
+ update!(**args)
847
+ end
848
+
849
+ # Update properties of this object
850
+ def update!(**args)
851
+ @analyze_service_account_impersonation = args[:analyze_service_account_impersonation] if args.key?(:analyze_service_account_impersonation)
852
+ @expand_groups = args[:expand_groups] if args.key?(:expand_groups)
853
+ @expand_resources = args[:expand_resources] if args.key?(:expand_resources)
854
+ @expand_roles = args[:expand_roles] if args.key?(:expand_roles)
855
+ @output_group_edges = args[:output_group_edges] if args.key?(:output_group_edges)
856
+ @output_resource_edges = args[:output_resource_edges] if args.key?(:output_resource_edges)
857
+ end
858
+ end
859
+
860
+ # Specifies the resource to analyze for access policies, which may be set
861
+ # directly on the resource, or on ancestors such as organizations, folders or
862
+ # projects. At least one of ResourceSelector, IdentitySelector or
863
+ # AccessSelector must be specified in a request.
864
+ class ResourceSelector
865
+ include Google::Apis::Core::Hashable
866
+
867
+ # Required. The [full resource
868
+ # name](https://cloud.google.com/apis/design/resource_names#full_resource_name)
869
+ # .
870
+ # Corresponds to the JSON property `fullResourceName`
871
+ # @return [String]
872
+ attr_accessor :full_resource_name
873
+
874
+ def initialize(**args)
875
+ update!(**args)
876
+ end
877
+
878
+ # Update properties of this object
879
+ def update!(**args)
880
+ @full_resource_name = args[:full_resource_name] if args.key?(:full_resource_name)
881
+ end
882
+ end
883
+
884
+ # The `Status` type defines a logical error model that is suitable for
885
+ # different programming environments, including REST APIs and RPC APIs. It is
886
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
887
+ # three pieces of data: error code, error message, and error details.
888
+ # You can find out more about this error model and how to work with it in the
889
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
890
+ class Status
891
+ include Google::Apis::Core::Hashable
892
+
893
+ # The status code, which should be an enum value of google.rpc.Code.
894
+ # Corresponds to the JSON property `code`
895
+ # @return [Fixnum]
896
+ attr_accessor :code
897
+
898
+ # A list of messages that carry the error details. There is a common set of
899
+ # message types for APIs to use.
900
+ # Corresponds to the JSON property `details`
901
+ # @return [Array<Hash<String,Object>>]
902
+ attr_accessor :details
903
+
904
+ # A developer-facing error message, which should be in English. Any
905
+ # user-facing error message should be localized and sent in the
906
+ # google.rpc.Status.details field, or localized by the client.
907
+ # Corresponds to the JSON property `message`
908
+ # @return [String]
909
+ attr_accessor :message
910
+
911
+ def initialize(**args)
912
+ update!(**args)
913
+ end
914
+
915
+ # Update properties of this object
916
+ def update!(**args)
917
+ @code = args[:code] if args.key?(:code)
918
+ @details = args[:details] if args.key?(:details)
919
+ @message = args[:message] if args.key?(:message)
920
+ end
921
+ end
922
+ end
923
+ end
924
+ end