google-api-client 0.38.0 → 0.39.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 (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