google-api-client 0.46.1 → 0.50.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (496) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/autoapprove.yml +49 -0
  3. data/.github/workflows/release-please.yml +77 -0
  4. data/.gitignore +2 -0
  5. data/.kokoro/trampoline.sh +0 -0
  6. data/CHANGELOG.md +666 -191
  7. data/Gemfile +1 -0
  8. data/Rakefile +31 -3
  9. data/api_list_config.yaml +8 -0
  10. data/bin/generate-api +77 -15
  11. data/generated/google/apis/accessapproval_v1.rb +1 -1
  12. data/generated/google/apis/accessapproval_v1/classes.rb +13 -15
  13. data/generated/google/apis/accessapproval_v1/service.rb +12 -9
  14. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  15. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +30 -30
  16. data/generated/google/apis/admin_directory_v1.rb +1 -1
  17. data/generated/google/apis/admin_directory_v1/classes.rb +135 -0
  18. data/generated/google/apis/admin_directory_v1/representations.rb +62 -0
  19. data/generated/google/apis/admin_directory_v1/service.rb +72 -0
  20. data/generated/google/apis/admin_reports_v1.rb +1 -1
  21. data/generated/google/apis/admob_v1.rb +4 -1
  22. data/generated/google/apis/admob_v1/classes.rb +29 -29
  23. data/generated/google/apis/admob_v1/service.rb +4 -0
  24. data/generated/google/apis/admob_v1beta.rb +38 -0
  25. data/generated/google/apis/admob_v1beta/classes.rb +1035 -0
  26. data/generated/google/apis/admob_v1beta/representations.rb +472 -0
  27. data/generated/google/apis/admob_v1beta/service.rb +279 -0
  28. data/generated/google/apis/analyticsadmin_v1alpha.rb +1 -1
  29. data/generated/google/apis/analyticsadmin_v1alpha/classes.rb +19 -18
  30. data/generated/google/apis/analyticsadmin_v1alpha/service.rb +12 -13
  31. data/generated/google/apis/analyticsdata_v1alpha.rb +1 -1
  32. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +179 -50
  33. data/generated/google/apis/analyticsdata_v1alpha/representations.rb +50 -14
  34. data/generated/google/apis/analyticsdata_v1alpha/service.rb +49 -38
  35. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  36. data/generated/google/apis/androidenterprise_v1/classes.rb +6 -0
  37. data/generated/google/apis/androidenterprise_v1/representations.rb +1 -0
  38. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  39. data/generated/google/apis/androidmanagement_v1/classes.rb +29 -26
  40. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  41. data/generated/google/apis/androidpublisher_v3/classes.rb +2 -1
  42. data/generated/google/apis/androidpublisher_v3/service.rb +5 -2
  43. data/generated/google/apis/apigateway_v1beta.rb +1 -1
  44. data/generated/google/apis/apigateway_v1beta/classes.rb +8 -5
  45. data/generated/google/apis/apigateway_v1beta/representations.rb +1 -0
  46. data/generated/google/apis/apigee_v1.rb +1 -1
  47. data/generated/google/apis/apigee_v1/classes.rb +377 -137
  48. data/generated/google/apis/apigee_v1/representations.rb +109 -18
  49. data/generated/google/apis/apigee_v1/service.rb +673 -56
  50. data/generated/google/apis/area120tables_v1alpha1.rb +46 -0
  51. data/generated/google/apis/area120tables_v1alpha1/classes.rb +481 -0
  52. data/generated/google/apis/area120tables_v1alpha1/representations.rb +279 -0
  53. data/generated/google/apis/area120tables_v1alpha1/service.rb +448 -0
  54. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  55. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +7 -7
  56. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +1 -1
  57. data/generated/google/apis/assuredworkloads_v1beta1.rb +1 -1
  58. data/generated/google/apis/assuredworkloads_v1beta1/classes.rb +20 -0
  59. data/generated/google/apis/assuredworkloads_v1beta1/representations.rb +2 -0
  60. data/generated/google/apis/bigquery_v2.rb +1 -1
  61. data/generated/google/apis/bigquery_v2/classes.rb +158 -5
  62. data/generated/google/apis/bigquery_v2/representations.rb +67 -0
  63. data/generated/google/apis/bigquery_v2/service.rb +46 -0
  64. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  65. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +6 -0
  66. data/generated/google/apis/bigqueryconnection_v1beta1/representations.rb +1 -0
  67. data/generated/google/apis/billingbudgets_v1.rb +1 -1
  68. data/generated/google/apis/billingbudgets_v1/classes.rb +12 -1
  69. data/generated/google/apis/billingbudgets_v1/representations.rb +1 -0
  70. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  71. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +12 -1
  72. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +1 -0
  73. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  74. data/generated/google/apis/binaryauthorization_v1/classes.rb +3 -4
  75. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  76. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +3 -4
  77. data/generated/google/apis/books_v1.rb +1 -1
  78. data/generated/google/apis/books_v1/service.rb +52 -52
  79. data/generated/google/apis/calendar_v3.rb +1 -1
  80. data/generated/google/apis/calendar_v3/classes.rb +2 -2
  81. data/generated/google/apis/chat_v1.rb +1 -1
  82. data/generated/google/apis/chat_v1/classes.rb +7 -0
  83. data/generated/google/apis/chat_v1/representations.rb +1 -0
  84. data/generated/google/apis/civicinfo_v2.rb +1 -1
  85. data/generated/google/apis/civicinfo_v2/classes.rb +0 -24
  86. data/generated/google/apis/civicinfo_v2/representations.rb +0 -3
  87. data/generated/google/apis/classroom_v1.rb +1 -1
  88. data/generated/google/apis/classroom_v1/classes.rb +21 -21
  89. data/generated/google/apis/cloudasset_v1.rb +1 -1
  90. data/generated/google/apis/cloudasset_v1/classes.rb +1122 -0
  91. data/generated/google/apis/cloudasset_v1/representations.rb +474 -0
  92. data/generated/google/apis/cloudasset_v1/service.rb +171 -0
  93. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  94. data/generated/google/apis/cloudasset_v1p1beta1.rb +1 -1
  95. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  96. data/generated/google/apis/cloudasset_v1p5beta1.rb +1 -1
  97. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  98. data/generated/google/apis/cloudbilling_v1/classes.rb +1 -1
  99. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  100. data/generated/google/apis/cloudbuild_v1/classes.rb +2 -1
  101. data/generated/google/apis/cloudbuild_v1/service.rb +10 -2
  102. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  103. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  104. data/generated/google/apis/cloudidentity_v1/service.rb +7 -3
  105. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  106. data/generated/google/apis/cloudidentity_v1beta1/service.rb +29 -17
  107. data/generated/google/apis/cloudiot_v1.rb +1 -1
  108. data/generated/google/apis/cloudiot_v1/classes.rb +1 -2
  109. data/generated/google/apis/cloudkms_v1.rb +1 -1
  110. data/generated/google/apis/cloudkms_v1/classes.rb +1 -2
  111. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  112. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +401 -7
  113. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +280 -1
  114. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  115. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +401 -7
  116. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +280 -1
  117. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  118. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +405 -11
  119. data/generated/google/apis/cloudresourcemanager_v2/representations.rb +280 -1
  120. data/generated/google/apis/cloudresourcemanager_v2/service.rb +13 -13
  121. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  122. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +405 -11
  123. data/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb +280 -1
  124. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +13 -13
  125. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  126. data/generated/google/apis/cloudtasks_v2/classes.rb +1 -2
  127. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  128. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +1 -2
  129. data/generated/google/apis/cloudtasks_v2beta2/service.rb +12 -2
  130. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  131. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +1 -2
  132. data/generated/google/apis/compute_v1.rb +1 -1
  133. data/generated/google/apis/compute_v1/classes.rb +282 -29
  134. data/generated/google/apis/compute_v1/representations.rb +43 -0
  135. data/generated/google/apis/compute_v1/service.rb +4 -1
  136. data/generated/google/apis/container_v1.rb +1 -1
  137. data/generated/google/apis/container_v1/classes.rb +22 -10
  138. data/generated/google/apis/container_v1beta1.rb +1 -1
  139. data/generated/google/apis/container_v1beta1/classes.rb +51 -10
  140. data/generated/google/apis/container_v1beta1/representations.rb +15 -0
  141. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  142. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +1 -2
  143. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  144. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +1 -2
  145. data/generated/google/apis/content_v2.rb +3 -4
  146. data/generated/google/apis/content_v2/classes.rb +511 -1219
  147. data/generated/google/apis/content_v2/service.rb +380 -651
  148. data/generated/google/apis/content_v2_1.rb +3 -4
  149. data/generated/google/apis/content_v2_1/classes.rb +1353 -1061
  150. data/generated/google/apis/content_v2_1/representations.rb +342 -0
  151. data/generated/google/apis/content_v2_1/service.rb +948 -809
  152. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  153. data/generated/google/apis/datacatalog_v1beta1/classes.rb +26 -12
  154. data/generated/google/apis/datacatalog_v1beta1/representations.rb +5 -0
  155. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  156. data/generated/google/apis/dataflow_v1b3/classes.rb +12 -0
  157. data/generated/google/apis/dataflow_v1b3/representations.rb +3 -0
  158. data/generated/google/apis/datalabeling_v1beta1.rb +34 -0
  159. data/generated/google/apis/datalabeling_v1beta1/classes.rb +6207 -0
  160. data/generated/google/apis/datalabeling_v1beta1/representations.rb +3156 -0
  161. data/generated/google/apis/datalabeling_v1beta1/service.rb +1762 -0
  162. data/generated/google/apis/datamigration_v1beta1.rb +34 -0
  163. data/generated/google/apis/datamigration_v1beta1/classes.rb +1670 -0
  164. data/generated/google/apis/datamigration_v1beta1/representations.rb +678 -0
  165. data/generated/google/apis/datamigration_v1beta1/service.rb +1172 -0
  166. data/generated/google/apis/dataproc_v1.rb +1 -1
  167. data/generated/google/apis/dataproc_v1/classes.rb +18 -7
  168. data/generated/google/apis/dataproc_v1/representations.rb +1 -0
  169. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  170. data/generated/google/apis/dataproc_v1beta2/classes.rb +18 -7
  171. data/generated/google/apis/dataproc_v1beta2/representations.rb +1 -0
  172. data/generated/google/apis/datastore_v1.rb +1 -1
  173. data/generated/google/apis/datastore_v1/classes.rb +4 -4
  174. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  175. data/generated/google/apis/datastore_v1beta3/classes.rb +4 -4
  176. data/generated/google/apis/deploymentmanager_v2.rb +6 -4
  177. data/generated/google/apis/deploymentmanager_v2/classes.rb +209 -558
  178. data/generated/google/apis/deploymentmanager_v2/representations.rb +1 -132
  179. data/generated/google/apis/deploymentmanager_v2/service.rb +169 -213
  180. data/generated/google/apis/deploymentmanager_v2beta.rb +6 -5
  181. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +253 -609
  182. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +1 -132
  183. data/generated/google/apis/deploymentmanager_v2beta/service.rb +278 -359
  184. data/generated/google/apis/dfareporting_v3_3.rb +2 -2
  185. data/generated/google/apis/dfareporting_v3_3/classes.rb +6 -6
  186. data/generated/google/apis/dfareporting_v3_3/service.rb +12 -12
  187. data/generated/google/apis/dfareporting_v3_4.rb +2 -2
  188. data/generated/google/apis/dfareporting_v3_4/classes.rb +6 -6
  189. data/generated/google/apis/dfareporting_v3_4/service.rb +12 -12
  190. data/generated/google/apis/dialogflow_v2.rb +1 -1
  191. data/generated/google/apis/dialogflow_v2/classes.rb +649 -385
  192. data/generated/google/apis/dialogflow_v2/representations.rb +279 -192
  193. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  194. data/generated/google/apis/dialogflow_v2beta1/classes.rb +649 -385
  195. data/generated/google/apis/dialogflow_v2beta1/representations.rb +283 -196
  196. data/generated/google/apis/dialogflow_v2beta1/service.rb +14 -8
  197. data/generated/google/apis/dialogflow_v3beta1.rb +1 -1
  198. data/generated/google/apis/dialogflow_v3beta1/classes.rb +712 -391
  199. data/generated/google/apis/dialogflow_v3beta1/representations.rb +301 -195
  200. data/generated/google/apis/dialogflow_v3beta1/service.rb +1 -1
  201. data/generated/google/apis/displayvideo_v1.rb +1 -1
  202. data/generated/google/apis/displayvideo_v1/classes.rb +241 -63
  203. data/generated/google/apis/displayvideo_v1/representations.rb +77 -0
  204. data/generated/google/apis/displayvideo_v1/service.rb +257 -17
  205. data/generated/google/apis/dlp_v2.rb +1 -1
  206. data/generated/google/apis/dlp_v2/classes.rb +39 -32
  207. data/generated/google/apis/dlp_v2/representations.rb +1 -0
  208. data/generated/google/apis/dns_v1.rb +2 -2
  209. data/generated/google/apis/dns_v1/classes.rb +181 -0
  210. data/generated/google/apis/dns_v1/representations.rb +83 -0
  211. data/generated/google/apis/dns_v1/service.rb +1 -1
  212. data/generated/google/apis/dns_v1beta2.rb +2 -2
  213. data/generated/google/apis/dns_v1beta2/classes.rb +195 -1
  214. data/generated/google/apis/dns_v1beta2/representations.rb +95 -0
  215. data/generated/google/apis/dns_v1beta2/service.rb +177 -1
  216. data/generated/google/apis/domains_v1alpha2.rb +34 -0
  217. data/generated/google/apis/domains_v1alpha2/classes.rb +1534 -0
  218. data/generated/google/apis/domains_v1alpha2/representations.rb +605 -0
  219. data/generated/google/apis/domains_v1alpha2/service.rb +805 -0
  220. data/generated/google/apis/domains_v1beta1.rb +34 -0
  221. data/generated/google/apis/domains_v1beta1/classes.rb +1534 -0
  222. data/generated/google/apis/domains_v1beta1/representations.rb +605 -0
  223. data/generated/google/apis/domains_v1beta1/service.rb +805 -0
  224. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  225. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +2 -1
  226. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  227. data/generated/google/apis/doubleclickbidmanager_v1_1/classes.rb +2 -1
  228. data/generated/google/apis/drive_v2.rb +1 -1
  229. data/generated/google/apis/drive_v2/classes.rb +22 -20
  230. data/generated/google/apis/drive_v2/service.rb +2 -2
  231. data/generated/google/apis/drive_v3.rb +1 -1
  232. data/generated/google/apis/drive_v3/classes.rb +12 -9
  233. data/generated/google/apis/eventarc_v1beta1.rb +34 -0
  234. data/generated/google/apis/eventarc_v1beta1/classes.rb +937 -0
  235. data/generated/google/apis/eventarc_v1beta1/representations.rb +380 -0
  236. data/generated/google/apis/eventarc_v1beta1/service.rb +579 -0
  237. data/generated/google/apis/file_v1.rb +1 -1
  238. data/generated/google/apis/file_v1/classes.rb +505 -4
  239. data/generated/google/apis/file_v1/representations.rb +203 -0
  240. data/generated/google/apis/file_v1/service.rb +229 -1
  241. data/generated/google/apis/file_v1beta1.rb +1 -1
  242. data/generated/google/apis/file_v1beta1/classes.rb +346 -6
  243. data/generated/google/apis/file_v1beta1/representations.rb +149 -0
  244. data/generated/google/apis/file_v1beta1/service.rb +6 -2
  245. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  246. data/generated/google/apis/firebase_v1beta1/service.rb +17 -4
  247. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  248. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +2 -0
  249. data/generated/google/apis/firestore_v1.rb +1 -1
  250. data/generated/google/apis/firestore_v1/classes.rb +4 -4
  251. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  252. data/generated/google/apis/firestore_v1beta1/classes.rb +4 -4
  253. data/generated/google/apis/fitness_v1.rb +1 -1
  254. data/generated/google/apis/fitness_v1/service.rb +3 -1
  255. data/generated/google/apis/games_v1.rb +1 -1
  256. data/generated/google/apis/games_v1/classes.rb +300 -0
  257. data/generated/google/apis/games_v1/representations.rb +116 -0
  258. data/generated/google/apis/games_v1/service.rb +34 -0
  259. data/generated/google/apis/gameservices_v1.rb +1 -1
  260. data/generated/google/apis/gameservices_v1/classes.rb +16 -16
  261. data/generated/google/apis/gameservices_v1/service.rb +54 -51
  262. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  263. data/generated/google/apis/gameservices_v1beta/classes.rb +16 -16
  264. data/generated/google/apis/gameservices_v1beta/service.rb +54 -51
  265. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  266. data/generated/google/apis/genomics_v2alpha1/classes.rb +25 -0
  267. data/generated/google/apis/genomics_v2alpha1/representations.rb +15 -0
  268. data/generated/google/apis/gmailpostmastertools_v1beta1.rb +1 -1
  269. data/generated/google/apis/gmailpostmastertools_v1beta1/service.rb +10 -10
  270. data/generated/google/apis/healthcare_v1.rb +1 -1
  271. data/generated/google/apis/healthcare_v1/classes.rb +10 -4
  272. data/generated/google/apis/healthcare_v1/representations.rb +1 -0
  273. data/generated/google/apis/healthcare_v1/service.rb +2 -1
  274. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  275. data/generated/google/apis/healthcare_v1beta1/classes.rb +350 -46
  276. data/generated/google/apis/healthcare_v1beta1/representations.rb +150 -18
  277. data/generated/google/apis/healthcare_v1beta1/service.rb +91 -13
  278. data/generated/google/apis/iam_v1.rb +2 -5
  279. data/generated/google/apis/iam_v1/classes.rb +8 -11
  280. data/generated/google/apis/iam_v1/representations.rb +0 -1
  281. data/generated/google/apis/iam_v1/service.rb +1 -4
  282. data/generated/google/apis/iamcredentials_v1.rb +3 -4
  283. data/generated/google/apis/iamcredentials_v1/service.rb +2 -3
  284. data/generated/google/apis/iap_v1.rb +1 -1
  285. data/generated/google/apis/iap_v1/classes.rb +1 -13
  286. data/generated/google/apis/iap_v1/representations.rb +0 -1
  287. data/generated/google/apis/iap_v1beta1.rb +1 -1
  288. data/generated/google/apis/iap_v1beta1/classes.rb +1 -2
  289. data/generated/google/apis/licensing_v1.rb +1 -1
  290. data/generated/google/apis/localservices_v1.rb +1 -1
  291. data/generated/google/apis/localservices_v1/classes.rb +7 -0
  292. data/generated/google/apis/localservices_v1/representations.rb +2 -0
  293. data/generated/google/apis/localservices_v1/service.rb +20 -20
  294. data/generated/google/apis/logging_v2.rb +1 -1
  295. data/generated/google/apis/logging_v2/classes.rb +186 -10
  296. data/generated/google/apis/logging_v2/representations.rb +77 -0
  297. data/generated/google/apis/logging_v2/service.rb +446 -25
  298. data/generated/google/apis/managedidentities_v1.rb +1 -1
  299. data/generated/google/apis/managedidentities_v1/classes.rb +347 -7
  300. data/generated/google/apis/managedidentities_v1/representations.rb +149 -0
  301. data/generated/google/apis/managedidentities_v1/service.rb +1 -4
  302. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  303. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +426 -15
  304. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +182 -1
  305. data/generated/google/apis/managedidentities_v1alpha1/service.rb +83 -5
  306. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  307. data/generated/google/apis/managedidentities_v1beta1/classes.rb +427 -15
  308. data/generated/google/apis/managedidentities_v1beta1/representations.rb +182 -1
  309. data/generated/google/apis/managedidentities_v1beta1/service.rb +83 -5
  310. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  311. data/generated/google/apis/memcache_v1beta2/classes.rb +345 -4
  312. data/generated/google/apis/memcache_v1beta2/representations.rb +149 -0
  313. data/generated/google/apis/ml_v1.rb +1 -1
  314. data/generated/google/apis/ml_v1/classes.rb +273 -79
  315. data/generated/google/apis/ml_v1/representations.rb +43 -0
  316. data/generated/google/apis/ml_v1/service.rb +35 -0
  317. data/generated/google/apis/monitoring_v3.rb +1 -1
  318. data/generated/google/apis/monitoring_v3/classes.rb +19 -13
  319. data/generated/google/apis/monitoring_v3/service.rb +50 -1
  320. data/generated/google/apis/networkmanagement_v1.rb +1 -1
  321. data/generated/google/apis/networkmanagement_v1/classes.rb +6 -0
  322. data/generated/google/apis/networkmanagement_v1/representations.rb +1 -0
  323. data/generated/google/apis/networkmanagement_v1beta1.rb +1 -1
  324. data/generated/google/apis/networkmanagement_v1beta1/classes.rb +57 -0
  325. data/generated/google/apis/networkmanagement_v1beta1/representations.rb +31 -0
  326. data/generated/google/apis/notebooks_v1.rb +34 -0
  327. data/generated/google/apis/notebooks_v1/classes.rb +1461 -0
  328. data/generated/google/apis/notebooks_v1/representations.rb +581 -0
  329. data/generated/google/apis/notebooks_v1/service.rb +1042 -0
  330. data/generated/google/apis/people_v1.rb +1 -1
  331. data/generated/google/apis/people_v1/classes.rb +49 -49
  332. data/generated/google/apis/people_v1/service.rb +21 -18
  333. data/generated/google/apis/playablelocations_v3.rb +1 -1
  334. data/generated/google/apis/playablelocations_v3/classes.rb +6 -6
  335. data/generated/google/apis/playcustomapp_v1.rb +1 -1
  336. data/generated/google/apis/policytroubleshooter_v1.rb +1 -1
  337. data/generated/google/apis/policytroubleshooter_v1beta.rb +1 -1
  338. data/generated/google/apis/poly_v1.rb +3 -4
  339. data/generated/google/apis/poly_v1/classes.rb +65 -79
  340. data/generated/google/apis/poly_v1/service.rb +50 -63
  341. data/generated/google/apis/privateca_v1beta1.rb +36 -0
  342. data/generated/google/apis/privateca_v1beta1/classes.rb +2466 -0
  343. data/generated/google/apis/privateca_v1beta1/representations.rb +996 -0
  344. data/generated/google/apis/privateca_v1beta1/service.rb +1437 -0
  345. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  346. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +109 -0
  347. data/generated/google/apis/pubsub_v1.rb +1 -1
  348. data/generated/google/apis/pubsub_v1/classes.rb +1 -2
  349. data/generated/google/apis/pubsub_v1/service.rb +2 -2
  350. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  351. data/generated/google/apis/pubsub_v1beta2/classes.rb +1 -2
  352. data/generated/google/apis/realtimebidding_v1.rb +1 -1
  353. data/generated/google/apis/realtimebidding_v1/classes.rb +578 -33
  354. data/generated/google/apis/realtimebidding_v1/representations.rb +232 -0
  355. data/generated/google/apis/realtimebidding_v1/service.rb +454 -4
  356. data/generated/google/apis/recommendationengine_v1beta1.rb +1 -1
  357. data/generated/google/apis/recommendationengine_v1beta1/classes.rb +32 -0
  358. data/generated/google/apis/recommendationengine_v1beta1/representations.rb +25 -0
  359. data/generated/google/apis/recommender_v1.rb +1 -1
  360. data/generated/google/apis/recommender_v1/classes.rb +1 -1
  361. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  362. data/generated/google/apis/recommender_v1beta1/classes.rb +1 -1
  363. data/generated/google/apis/redis_v1.rb +1 -1
  364. data/generated/google/apis/redis_v1/classes.rb +86 -0
  365. data/generated/google/apis/redis_v1/representations.rb +34 -0
  366. data/generated/google/apis/redis_v1/service.rb +34 -0
  367. data/generated/google/apis/redis_v1beta1.rb +1 -1
  368. data/generated/google/apis/redis_v1beta1/classes.rb +58 -0
  369. data/generated/google/apis/redis_v1beta1/representations.rb +20 -0
  370. data/generated/google/apis/run_v1.rb +1 -1
  371. data/generated/google/apis/run_v1/classes.rb +7 -6
  372. data/generated/google/apis/run_v1alpha1.rb +1 -1
  373. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  374. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +0 -7
  375. data/generated/google/apis/runtimeconfig_v1beta1/representations.rb +0 -1
  376. data/generated/google/apis/safebrowsing_v4.rb +1 -1
  377. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  378. data/generated/google/apis/sasportal_v1alpha1/service.rb +109 -0
  379. data/generated/google/apis/secretmanager_v1.rb +1 -1
  380. data/generated/google/apis/secretmanager_v1/classes.rb +0 -7
  381. data/generated/google/apis/secretmanager_v1/representations.rb +0 -1
  382. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  383. data/generated/google/apis/secretmanager_v1beta1/classes.rb +0 -7
  384. data/generated/google/apis/secretmanager_v1beta1/representations.rb +0 -1
  385. data/generated/google/apis/securitycenter_v1.rb +1 -1
  386. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  387. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  388. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +6 -64
  389. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +0 -18
  390. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  391. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +6 -64
  392. data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +0 -18
  393. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  394. data/generated/google/apis/servicecontrol_v1/classes.rb +77 -2
  395. data/generated/google/apis/servicecontrol_v1/representations.rb +10 -0
  396. data/generated/google/apis/servicecontrol_v2.rb +1 -1
  397. data/generated/google/apis/servicecontrol_v2/classes.rb +62 -0
  398. data/generated/google/apis/servicecontrol_v2/representations.rb +8 -0
  399. data/generated/google/apis/servicedirectory_v1beta1.rb +1 -1
  400. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +27 -8
  401. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  402. data/generated/google/apis/servicemanagement_v1/classes.rb +6 -64
  403. data/generated/google/apis/servicemanagement_v1/representations.rb +0 -18
  404. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  405. data/generated/google/apis/servicenetworking_v1/classes.rb +207 -65
  406. data/generated/google/apis/servicenetworking_v1/representations.rb +77 -14
  407. data/generated/google/apis/servicenetworking_v1/service.rb +82 -2
  408. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  409. data/generated/google/apis/servicenetworking_v1beta/classes.rb +140 -65
  410. data/generated/google/apis/servicenetworking_v1beta/representations.rb +46 -14
  411. data/generated/google/apis/serviceusage_v1.rb +1 -1
  412. data/generated/google/apis/serviceusage_v1/classes.rb +6 -64
  413. data/generated/google/apis/serviceusage_v1/representations.rb +0 -18
  414. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  415. data/generated/google/apis/serviceusage_v1beta1/classes.rb +36 -64
  416. data/generated/google/apis/serviceusage_v1beta1/representations.rb +15 -18
  417. data/generated/google/apis/serviceusage_v1beta1/service.rb +36 -0
  418. data/generated/google/apis/sheets_v4.rb +1 -1
  419. data/generated/google/apis/sheets_v4/classes.rb +23 -7
  420. data/generated/google/apis/sheets_v4/representations.rb +3 -0
  421. data/generated/google/apis/smartdevicemanagement_v1.rb +1 -1
  422. data/generated/google/apis/smartdevicemanagement_v1/classes.rb +0 -34
  423. data/generated/google/apis/smartdevicemanagement_v1/representations.rb +0 -16
  424. data/generated/google/apis/smartdevicemanagement_v1/service.rb +3 -8
  425. data/generated/google/apis/spanner_v1.rb +1 -1
  426. data/generated/google/apis/spanner_v1/classes.rb +2 -3
  427. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  428. data/generated/google/apis/sqladmin_v1beta4/classes.rb +28 -4
  429. data/generated/google/apis/sqladmin_v1beta4/representations.rb +3 -0
  430. data/generated/google/apis/storage_v1.rb +1 -1
  431. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  432. data/generated/google/apis/storagetransfer_v1/classes.rb +82 -50
  433. data/generated/google/apis/storagetransfer_v1/representations.rb +4 -0
  434. data/generated/google/apis/storagetransfer_v1/service.rb +20 -21
  435. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  436. data/generated/google/apis/streetviewpublish_v1/classes.rb +4 -4
  437. data/generated/google/apis/sts_v1beta.rb +1 -1
  438. data/generated/google/apis/sts_v1beta/classes.rb +12 -11
  439. data/generated/google/apis/tagmanager_v2.rb +1 -1
  440. data/generated/google/apis/tagmanager_v2/classes.rb +12 -0
  441. data/generated/google/apis/tagmanager_v2/representations.rb +3 -0
  442. data/generated/google/apis/testing_v1.rb +1 -1
  443. data/generated/google/apis/testing_v1/classes.rb +45 -33
  444. data/generated/google/apis/testing_v1/representations.rb +1 -0
  445. data/generated/google/apis/testing_v1/service.rb +4 -4
  446. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  447. data/generated/google/apis/toolresults_v1beta3/classes.rb +13 -0
  448. data/generated/google/apis/toolresults_v1beta3/representations.rb +12 -0
  449. data/generated/google/apis/tpu_v1.rb +1 -1
  450. data/generated/google/apis/tpu_v1/classes.rb +3 -3
  451. data/generated/google/apis/tpu_v1/service.rb +8 -8
  452. data/generated/google/apis/tpu_v1alpha1.rb +1 -1
  453. data/generated/google/apis/tpu_v1alpha1/classes.rb +3 -3
  454. data/generated/google/apis/tpu_v1alpha1/service.rb +8 -8
  455. data/generated/google/apis/transcoder_v1beta1.rb +34 -0
  456. data/generated/google/apis/transcoder_v1beta1/classes.rb +1684 -0
  457. data/generated/google/apis/transcoder_v1beta1/representations.rb +756 -0
  458. data/generated/google/apis/transcoder_v1beta1/service.rb +329 -0
  459. data/generated/google/apis/translate_v3.rb +1 -1
  460. data/generated/google/apis/translate_v3/classes.rb +2 -1
  461. data/generated/google/apis/translate_v3beta1.rb +1 -1
  462. data/generated/google/apis/translate_v3beta1/classes.rb +2 -1
  463. data/generated/google/apis/vault_v1.rb +1 -1
  464. data/generated/google/apis/vault_v1/classes.rb +333 -0
  465. data/generated/google/apis/vault_v1/representations.rb +162 -0
  466. data/generated/google/apis/vault_v1/service.rb +151 -0
  467. data/generated/google/apis/videointelligence_v1.rb +1 -1
  468. data/generated/google/apis/videointelligence_v1/service.rb +0 -62
  469. data/generated/google/apis/vision_v1.rb +1 -1
  470. data/generated/google/apis/vision_v1/classes.rb +16 -16
  471. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  472. data/generated/google/apis/vision_v1p1beta1/classes.rb +16 -16
  473. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  474. data/generated/google/apis/vision_v1p2beta1/classes.rb +16 -16
  475. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  476. data/generated/google/apis/youtube_v3.rb +1 -1
  477. data/generated/google/apis/youtube_v3/service.rb +8 -8
  478. data/google-api-client.gemspec +25 -25
  479. data/lib/google/apis/core/api_command.rb +1 -0
  480. data/lib/google/apis/core/http_command.rb +2 -1
  481. data/lib/google/apis/options.rb +8 -5
  482. data/lib/google/apis/version.rb +1 -1
  483. data/synth.py +40 -0
  484. metadata +47 -16
  485. data/generated/google/apis/displayvideo_v1beta.rb +0 -38
  486. data/generated/google/apis/displayvideo_v1beta/classes.rb +0 -146
  487. data/generated/google/apis/displayvideo_v1beta/representations.rb +0 -72
  488. data/generated/google/apis/displayvideo_v1beta/service.rb +0 -161
  489. data/generated/google/apis/displayvideo_v1beta2.rb +0 -38
  490. data/generated/google/apis/displayvideo_v1beta2/classes.rb +0 -146
  491. data/generated/google/apis/displayvideo_v1beta2/representations.rb +0 -72
  492. data/generated/google/apis/displayvideo_v1beta2/service.rb +0 -130
  493. data/generated/google/apis/displayvideo_v1dev.rb +0 -38
  494. data/generated/google/apis/displayvideo_v1dev/classes.rb +0 -146
  495. data/generated/google/apis/displayvideo_v1dev/representations.rb +0 -72
  496. data/generated/google/apis/displayvideo_v1dev/service.rb +0 -130
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/google-apps/calendar/firstapp
26
26
  module CalendarV3
27
27
  VERSION = 'V3'
28
- REVISION = '20200917'
28
+ REVISION = '20201028'
29
29
 
30
30
  # See, edit, share, and permanently delete all the calendars you can access using Google Calendar
31
31
  AUTH_CALENDAR = 'https://www.googleapis.com/auth/calendar'
@@ -819,8 +819,8 @@ module Google
819
819
  # display the entry points. However, it should disallow modifications.
820
820
  # The possible values are:
821
821
  # - "eventHangout" for Hangouts for consumers (http://hangouts.google.com)
822
- # - "eventNamedHangout" for classic Hangouts for G Suite users (http://hangouts.
823
- # google.com)
822
+ # - "eventNamedHangout" for classic Hangouts for Google Workspace users (http://
823
+ # hangouts.google.com)
824
824
  # - "hangoutsMeet" for Google Meet (http://meet.google.com)
825
825
  # - "addOn" for 3P conference providers
826
826
  # Corresponds to the JSON property `type`
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/hangouts/chat
26
26
  module ChatV1
27
27
  VERSION = 'V1'
28
- REVISION = '20200919'
28
+ REVISION = '20201028'
29
29
  end
30
30
  end
31
31
  end
@@ -1088,6 +1088,12 @@ module Google
1088
1088
  # @return [String]
1089
1089
  attr_accessor :domain_id
1090
1090
 
1091
+ # True when the user is deleted or the user's proifle is not visible.
1092
+ # Corresponds to the JSON property `isAnonymous`
1093
+ # @return [Boolean]
1094
+ attr_accessor :is_anonymous
1095
+ alias_method :is_anonymous?, :is_anonymous
1096
+
1091
1097
  # Resource name, in the format "users/*".
1092
1098
  # Corresponds to the JSON property `name`
1093
1099
  # @return [String]
@@ -1106,6 +1112,7 @@ module Google
1106
1112
  def update!(**args)
1107
1113
  @display_name = args[:display_name] if args.key?(:display_name)
1108
1114
  @domain_id = args[:domain_id] if args.key?(:domain_id)
1115
+ @is_anonymous = args[:is_anonymous] if args.key?(:is_anonymous)
1109
1116
  @name = args[:name] if args.key?(:name)
1110
1117
  @type = args[:type] if args.key?(:type)
1111
1118
  end
@@ -540,6 +540,7 @@ module Google
540
540
  class Representation < Google::Apis::Core::JsonRepresentation
541
541
  property :display_name, as: 'displayName'
542
542
  property :domain_id, as: 'domainId'
543
+ property :is_anonymous, as: 'isAnonymous'
543
544
  property :name, as: 'name'
544
545
  property :type, as: 'type'
545
546
  end
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://developers.google.com/civic-information/
27
27
  module CivicinfoV2
28
28
  VERSION = 'V2'
29
- REVISION = '20200908'
29
+ REVISION = '20201012'
30
30
  end
31
31
  end
32
32
  end
@@ -32,13 +32,6 @@ module Google
32
32
  # @return [Google::Apis::CivicinfoV2::AdministrativeBody]
33
33
  attr_accessor :election_administration_body
34
34
 
35
- # An ID for this object. IDs may change in future requests and should not be
36
- # cached. Access to this field requires special access that can be requested
37
- # from the Request more link on the Quotas page.
38
- # Corresponds to the JSON property `id`
39
- # @return [String]
40
- attr_accessor :id
41
-
42
35
  # Describes information about a regional election administrative area.
43
36
  # Corresponds to the JSON property `local_jurisdiction`
44
37
  # @return [Google::Apis::CivicinfoV2::AdministrationRegion]
@@ -62,7 +55,6 @@ module Google
62
55
  # Update properties of this object
63
56
  def update!(**args)
64
57
  @election_administration_body = args[:election_administration_body] if args.key?(:election_administration_body)
65
- @id = args[:id] if args.key?(:id)
66
58
  @local_jurisdiction = args[:local_jurisdiction] if args.key?(:local_jurisdiction)
67
59
  @name = args[:name] if args.key?(:name)
68
60
  @sources = args[:sources] if args.key?(:sources)
@@ -300,13 +292,6 @@ module Google
300
292
  # @return [String]
301
293
  attr_accessor :electorate_specifications
302
294
 
303
- # An ID for this object. IDs may change in future requests and should not be
304
- # cached. Access to this field requires special access that can be requested
305
- # from the Request more link on the Quotas page.
306
- # Corresponds to the JSON property `id`
307
- # @return [String]
308
- attr_accessor :id
309
-
310
295
  # The levels of government of the office for this contest. There may be more
311
296
  # than one in cases where a jurisdiction effectively acts at two different
312
297
  # levels of government; for example, the mayor of the District of Columbia acts
@@ -441,7 +426,6 @@ module Google
441
426
  @candidates = args[:candidates] if args.key?(:candidates)
442
427
  @district = args[:district] if args.key?(:district)
443
428
  @electorate_specifications = args[:electorate_specifications] if args.key?(:electorate_specifications)
444
- @id = args[:id] if args.key?(:id)
445
429
  @level = args[:level] if args.key?(:level)
446
430
  @number_elected = args[:number_elected] if args.key?(:number_elected)
447
431
  @number_voting_for = args[:number_voting_for] if args.key?(:number_voting_for)
@@ -845,13 +829,6 @@ module Google
845
829
  # @return [String]
846
830
  attr_accessor :end_date
847
831
 
848
- # An ID for this object. IDs may change in future requests and should not be
849
- # cached. Access to this field requires special access that can be requested
850
- # from the Request more link on the Quotas page.
851
- # Corresponds to the JSON property `id`
852
- # @return [String]
853
- attr_accessor :id
854
-
855
832
  # Latitude of the location, in degrees north of the equator. Note this field may
856
833
  # not be available for some locations.
857
834
  # Corresponds to the JSON property `latitude`
@@ -906,7 +883,6 @@ module Google
906
883
  def update!(**args)
907
884
  @address = args[:address] if args.key?(:address)
908
885
  @end_date = args[:end_date] if args.key?(:end_date)
909
- @id = args[:id] if args.key?(:id)
910
886
  @latitude = args[:latitude] if args.key?(:latitude)
911
887
  @longitude = args[:longitude] if args.key?(:longitude)
912
888
  @name = args[:name] if args.key?(:name)
@@ -147,7 +147,6 @@ module Google
147
147
  class Representation < Google::Apis::Core::JsonRepresentation
148
148
  property :election_administration_body, as: 'electionAdministrationBody', class: Google::Apis::CivicinfoV2::AdministrativeBody, decorator: Google::Apis::CivicinfoV2::AdministrativeBody::Representation
149
149
 
150
- property :id, as: 'id'
151
150
  property :local_jurisdiction, as: 'local_jurisdiction', class: Google::Apis::CivicinfoV2::AdministrationRegion, decorator: Google::Apis::CivicinfoV2::AdministrationRegion::Representation
152
151
 
153
152
  property :name, as: 'name'
@@ -213,7 +212,6 @@ module Google
213
212
  property :district, as: 'district', class: Google::Apis::CivicinfoV2::ElectoralDistrict, decorator: Google::Apis::CivicinfoV2::ElectoralDistrict::Representation
214
213
 
215
214
  property :electorate_specifications, as: 'electorateSpecifications'
216
- property :id, as: 'id'
217
215
  collection :level, as: 'level'
218
216
  property :number_elected, :numeric_string => true, as: 'numberElected'
219
217
  property :number_voting_for, :numeric_string => true, as: 'numberVotingFor'
@@ -339,7 +337,6 @@ module Google
339
337
  property :address, as: 'address', class: Google::Apis::CivicinfoV2::SimpleAddressType, decorator: Google::Apis::CivicinfoV2::SimpleAddressType::Representation
340
338
 
341
339
  property :end_date, as: 'endDate'
342
- property :id, as: 'id'
343
340
  property :latitude, as: 'latitude'
344
341
  property :longitude, as: 'longitude'
345
342
  property :name, as: 'name'
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/classroom/
26
26
  module ClassroomV1
27
27
  VERSION = 'V1'
28
- REVISION = '20200915'
28
+ REVISION = '20201012'
29
29
 
30
30
  # View and manage announcements in Google Classroom
31
31
  AUTH_CLASSROOM_ANNOUNCEMENTS = 'https://www.googleapis.com/auth/classroom.announcements'
@@ -526,14 +526,14 @@ module Google
526
526
  # @return [String]
527
527
  attr_accessor :description
528
528
 
529
- # Represents a whole or partial calendar date, e.g. a birthday. The time of day
530
- # and time zone are either specified elsewhere or are not significant. The date
531
- # is relative to the Proleptic Gregorian Calendar. This can represent: * A full
532
- # date, with non-zero year, month and day values * A month and day value, with a
533
- # zero year, e.g. an anniversary * A year on its own, with zero month and day
534
- # values * A year and month value, with a zero day, e.g. a credit card
535
- # expiration date Related types are google.type.TimeOfDay and `google.protobuf.
536
- # Timestamp`.
529
+ # Represents a whole or partial calendar date, such as a birthday. The time of
530
+ # day and time zone are either specified elsewhere or are insignificant. The
531
+ # date is relative to the Gregorian Calendar. This can represent one of the
532
+ # following: * A full date, with non-zero year, month, and day values * A month
533
+ # and day value, with a zero year, such as an anniversary * A year on its own,
534
+ # with zero month and day values * A year and month value, with a zero day, such
535
+ # as a credit card expiration date Related types are google.type.TimeOfDay and `
536
+ # google.protobuf.Timestamp`.
537
537
  # Corresponds to the JSON property `dueDate`
538
538
  # @return [Google::Apis::ClassroomV1::Date]
539
539
  attr_accessor :due_date
@@ -768,31 +768,31 @@ module Google
768
768
  end
769
769
  end
770
770
 
771
- # Represents a whole or partial calendar date, e.g. a birthday. The time of day
772
- # and time zone are either specified elsewhere or are not significant. The date
773
- # is relative to the Proleptic Gregorian Calendar. This can represent: * A full
774
- # date, with non-zero year, month and day values * A month and day value, with a
775
- # zero year, e.g. an anniversary * A year on its own, with zero month and day
776
- # values * A year and month value, with a zero day, e.g. a credit card
777
- # expiration date Related types are google.type.TimeOfDay and `google.protobuf.
778
- # Timestamp`.
771
+ # Represents a whole or partial calendar date, such as a birthday. The time of
772
+ # day and time zone are either specified elsewhere or are insignificant. The
773
+ # date is relative to the Gregorian Calendar. This can represent one of the
774
+ # following: * A full date, with non-zero year, month, and day values * A month
775
+ # and day value, with a zero year, such as an anniversary * A year on its own,
776
+ # with zero month and day values * A year and month value, with a zero day, such
777
+ # as a credit card expiration date Related types are google.type.TimeOfDay and `
778
+ # google.protobuf.Timestamp`.
779
779
  class Date
780
780
  include Google::Apis::Core::Hashable
781
781
 
782
- # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if
783
- # specifying a year by itself or a year and month where the day is not
784
- # significant.
782
+ # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to
783
+ # specify a year by itself or a year and month where the day isn't significant.
785
784
  # Corresponds to the JSON property `day`
786
785
  # @return [Fixnum]
787
786
  attr_accessor :day
788
787
 
789
- # Month of year. Must be from 1 to 12, or 0 if specifying a year without a month
788
+ # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month
790
789
  # and day.
791
790
  # Corresponds to the JSON property `month`
792
791
  # @return [Fixnum]
793
792
  attr_accessor :month
794
793
 
795
- # Year of date. Must be from 1 to 9999, or 0 if specifying a date without a year.
794
+ # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a
795
+ # year.
796
796
  # Corresponds to the JSON property `year`
797
797
  # @return [Fixnum]
798
798
  attr_accessor :year
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/asset-inventory/docs/quickstart
26
26
  module CloudassetV1
27
27
  VERSION = 'V1'
28
- REVISION = '20200911'
28
+ REVISION = '20201106'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -22,6 +22,94 @@ module Google
22
22
  module Apis
23
23
  module CloudassetV1
24
24
 
25
+ # Specifies roles and/or permissions to analyze, to determine both the
26
+ # identities possessing them and the resources they control. If multiple values
27
+ # are specified, results will include roles or permissions matching any of them.
28
+ # The total number of roles and permissions should be equal or less than 10.
29
+ class AccessSelector
30
+ include Google::Apis::Core::Hashable
31
+
32
+ # Optional. The permissions to appear in result.
33
+ # Corresponds to the JSON property `permissions`
34
+ # @return [Array<String>]
35
+ attr_accessor :permissions
36
+
37
+ # Optional. The roles to appear in result.
38
+ # Corresponds to the JSON property `roles`
39
+ # @return [Array<String>]
40
+ attr_accessor :roles
41
+
42
+ def initialize(**args)
43
+ update!(**args)
44
+ end
45
+
46
+ # Update properties of this object
47
+ def update!(**args)
48
+ @permissions = args[:permissions] if args.key?(:permissions)
49
+ @roles = args[:roles] if args.key?(:roles)
50
+ end
51
+ end
52
+
53
+ # A request message for AssetService.AnalyzeIamPolicyLongrunning.
54
+ class AnalyzeIamPolicyLongrunningRequest
55
+ include Google::Apis::Core::Hashable
56
+
57
+ # IAM policy analysis query message.
58
+ # Corresponds to the JSON property `analysisQuery`
59
+ # @return [Google::Apis::CloudassetV1::IamPolicyAnalysisQuery]
60
+ attr_accessor :analysis_query
61
+
62
+ # Output configuration for export IAM policy analysis destination.
63
+ # Corresponds to the JSON property `outputConfig`
64
+ # @return [Google::Apis::CloudassetV1::IamPolicyAnalysisOutputConfig]
65
+ attr_accessor :output_config
66
+
67
+ def initialize(**args)
68
+ update!(**args)
69
+ end
70
+
71
+ # Update properties of this object
72
+ def update!(**args)
73
+ @analysis_query = args[:analysis_query] if args.key?(:analysis_query)
74
+ @output_config = args[:output_config] if args.key?(:output_config)
75
+ end
76
+ end
77
+
78
+ # A response message for AssetService.AnalyzeIamPolicy.
79
+ class AnalyzeIamPolicyResponse
80
+ include Google::Apis::Core::Hashable
81
+
82
+ # Represents whether all entries in the main_analysis and
83
+ # service_account_impersonation_analysis have been fully explored to answer the
84
+ # query in the request.
85
+ # Corresponds to the JSON property `fullyExplored`
86
+ # @return [Boolean]
87
+ attr_accessor :fully_explored
88
+ alias_method :fully_explored?, :fully_explored
89
+
90
+ # An analysis message to group the query and results.
91
+ # Corresponds to the JSON property `mainAnalysis`
92
+ # @return [Google::Apis::CloudassetV1::IamPolicyAnalysis]
93
+ attr_accessor :main_analysis
94
+
95
+ # The service account impersonation analysis if AnalyzeIamPolicyRequest.
96
+ # analyze_service_account_impersonation is enabled.
97
+ # Corresponds to the JSON property `serviceAccountImpersonationAnalysis`
98
+ # @return [Array<Google::Apis::CloudassetV1::IamPolicyAnalysis>]
99
+ attr_accessor :service_account_impersonation_analysis
100
+
101
+ def initialize(**args)
102
+ update!(**args)
103
+ end
104
+
105
+ # Update properties of this object
106
+ def update!(**args)
107
+ @fully_explored = args[:fully_explored] if args.key?(:fully_explored)
108
+ @main_analysis = args[:main_analysis] if args.key?(:main_analysis)
109
+ @service_account_impersonation_analysis = args[:service_account_impersonation_analysis] if args.key?(:service_account_impersonation_analysis)
110
+ end
111
+ end
112
+
25
113
  # An asset in Google Cloud. An asset can be any resource in the Google Cloud [
26
114
  # resource hierarchy](https://cloud.google.com/resource-manager/docs/cloud-
27
115
  # platform-resource-hierarchy), a resource outside the Google Cloud resource
@@ -111,6 +199,11 @@ module Google
111
199
  # @return [Array<Google::Apis::CloudassetV1::GoogleCloudOrgpolicyV1Policy>]
112
200
  attr_accessor :org_policy
113
201
 
202
+ # The inventory details of a VM.
203
+ # Corresponds to the JSON property `osInventory`
204
+ # @return [Google::Apis::CloudassetV1::Inventory]
205
+ attr_accessor :os_inventory
206
+
114
207
  # A representation of a Google Cloud resource.
115
208
  # Corresponds to the JSON property `resource`
116
209
  # @return [Google::Apis::CloudassetV1::Resource]
@@ -148,6 +241,7 @@ module Google
148
241
  @iam_policy = args[:iam_policy] if args.key?(:iam_policy)
149
242
  @name = args[:name] if args.key?(:name)
150
243
  @org_policy = args[:org_policy] if args.key?(:org_policy)
244
+ @os_inventory = args[:os_inventory] if args.key?(:os_inventory)
151
245
  @resource = args[:resource] if args.key?(:resource)
152
246
  @service_perimeter = args[:service_perimeter] if args.key?(:service_perimeter)
153
247
  @update_time = args[:update_time] if args.key?(:update_time)
@@ -697,6 +791,273 @@ module Google
697
791
  end
698
792
  end
699
793
 
794
+ # An IAM role or permission under analysis.
795
+ class GoogleCloudAssetV1Access
796
+ include Google::Apis::Core::Hashable
797
+
798
+ # Represents the detailed state of an entity under analysis, such as a resource,
799
+ # an identity or an access.
800
+ # Corresponds to the JSON property `analysisState`
801
+ # @return [Google::Apis::CloudassetV1::IamPolicyAnalysisState]
802
+ attr_accessor :analysis_state
803
+
804
+ # The permission.
805
+ # Corresponds to the JSON property `permission`
806
+ # @return [String]
807
+ attr_accessor :permission
808
+
809
+ # The role.
810
+ # Corresponds to the JSON property `role`
811
+ # @return [String]
812
+ attr_accessor :role
813
+
814
+ def initialize(**args)
815
+ update!(**args)
816
+ end
817
+
818
+ # Update properties of this object
819
+ def update!(**args)
820
+ @analysis_state = args[:analysis_state] if args.key?(:analysis_state)
821
+ @permission = args[:permission] if args.key?(:permission)
822
+ @role = args[:role] if args.key?(:role)
823
+ end
824
+ end
825
+
826
+ # An access control list, derived from the above IAM policy binding, which
827
+ # contains a set of resources and accesses. May include one item from each set
828
+ # to compose an access control entry. NOTICE that there could be multiple access
829
+ # control lists for one IAM policy binding. The access control lists are created
830
+ # based on resource and access combinations. For example, assume we have the
831
+ # following cases in one IAM policy binding: - Permission P1 and P2 apply to
832
+ # resource R1 and R2; - Permission P3 applies to resource R2 and R3; This will
833
+ # result in the following access control lists: - AccessControlList 1: [R1, R2],
834
+ # [P1, P2] - AccessControlList 2: [R2, R3], [P3]
835
+ class GoogleCloudAssetV1AccessControlList
836
+ include Google::Apis::Core::Hashable
837
+
838
+ # The accesses that match one of the following conditions: - The access_selector,
839
+ # if it is specified in request; - Otherwise, access specifiers reachable from
840
+ # the policy binding's role.
841
+ # Corresponds to the JSON property `accesses`
842
+ # @return [Array<Google::Apis::CloudassetV1::GoogleCloudAssetV1Access>]
843
+ attr_accessor :accesses
844
+
845
+ # Resource edges of the graph starting from the policy attached resource to any
846
+ # descendant resources. The Edge.source_node contains the full resource name of
847
+ # a parent resource and Edge.target_node contains the full resource name of a
848
+ # child resource. This field is present only if the output_resource_edges option
849
+ # is enabled in request.
850
+ # Corresponds to the JSON property `resourceEdges`
851
+ # @return [Array<Google::Apis::CloudassetV1::GoogleCloudAssetV1Edge>]
852
+ attr_accessor :resource_edges
853
+
854
+ # The resources that match one of the following conditions: - The
855
+ # resource_selector, if it is specified in request; - Otherwise, resources
856
+ # reachable from the policy attached resource.
857
+ # Corresponds to the JSON property `resources`
858
+ # @return [Array<Google::Apis::CloudassetV1::GoogleCloudAssetV1Resource>]
859
+ attr_accessor :resources
860
+
861
+ def initialize(**args)
862
+ update!(**args)
863
+ end
864
+
865
+ # Update properties of this object
866
+ def update!(**args)
867
+ @accesses = args[:accesses] if args.key?(:accesses)
868
+ @resource_edges = args[:resource_edges] if args.key?(:resource_edges)
869
+ @resources = args[:resources] if args.key?(:resources)
870
+ end
871
+ end
872
+
873
+ # A BigQuery destination.
874
+ class GoogleCloudAssetV1BigQueryDestination
875
+ include Google::Apis::Core::Hashable
876
+
877
+ # Required. The BigQuery dataset in format "projects/projectId/datasets/
878
+ # datasetId", to which the analysis results should be exported. If this dataset
879
+ # does not exist, the export call will return an INVALID_ARGUMENT error.
880
+ # Corresponds to the JSON property `dataset`
881
+ # @return [String]
882
+ attr_accessor :dataset
883
+
884
+ # The partition key for BigQuery partitioned table.
885
+ # Corresponds to the JSON property `partitionKey`
886
+ # @return [String]
887
+ attr_accessor :partition_key
888
+
889
+ # Required. The prefix of the BigQuery tables to which the analysis results will
890
+ # be written. Tables will be created based on this table_prefix if not exist: *
891
+ # _analysis table will contain export operation's metadata. * _analysis_result
892
+ # will contain all the IamPolicyAnalysisResult. When [partition_key] is
893
+ # specified, both tables will be partitioned based on the [partition_key].
894
+ # Corresponds to the JSON property `tablePrefix`
895
+ # @return [String]
896
+ attr_accessor :table_prefix
897
+
898
+ # Optional. Specifies the action that occurs if the destination table or
899
+ # partition already exists. The following values are supported: * WRITE_TRUNCATE:
900
+ # If the table or partition already exists, BigQuery overwrites the entire
901
+ # table or all the partitions data. * WRITE_APPEND: If the table or partition
902
+ # already exists, BigQuery appends the data to the table or the latest partition.
903
+ # * WRITE_EMPTY: If the table already exists and contains data, an error is
904
+ # returned. The default value is WRITE_APPEND. Each action is atomic and only
905
+ # occurs if BigQuery is able to complete the job successfully. Details are at
906
+ # https://cloud.google.com/bigquery/docs/loading-data-local#
907
+ # appending_to_or_overwriting_a_table_using_a_local_file.
908
+ # Corresponds to the JSON property `writeDisposition`
909
+ # @return [String]
910
+ attr_accessor :write_disposition
911
+
912
+ def initialize(**args)
913
+ update!(**args)
914
+ end
915
+
916
+ # Update properties of this object
917
+ def update!(**args)
918
+ @dataset = args[:dataset] if args.key?(:dataset)
919
+ @partition_key = args[:partition_key] if args.key?(:partition_key)
920
+ @table_prefix = args[:table_prefix] if args.key?(:table_prefix)
921
+ @write_disposition = args[:write_disposition] if args.key?(:write_disposition)
922
+ end
923
+ end
924
+
925
+ # A directional edge.
926
+ class GoogleCloudAssetV1Edge
927
+ include Google::Apis::Core::Hashable
928
+
929
+ # The source node of the edge. For example, it could be a full resource name for
930
+ # a resource node or an email of an identity.
931
+ # Corresponds to the JSON property `sourceNode`
932
+ # @return [String]
933
+ attr_accessor :source_node
934
+
935
+ # The target node of the edge. For example, it could be a full resource name for
936
+ # a resource node or an email of an identity.
937
+ # Corresponds to the JSON property `targetNode`
938
+ # @return [String]
939
+ attr_accessor :target_node
940
+
941
+ def initialize(**args)
942
+ update!(**args)
943
+ end
944
+
945
+ # Update properties of this object
946
+ def update!(**args)
947
+ @source_node = args[:source_node] if args.key?(:source_node)
948
+ @target_node = args[:target_node] if args.key?(:target_node)
949
+ end
950
+ end
951
+
952
+ # A Cloud Storage location.
953
+ class GoogleCloudAssetV1GcsDestination
954
+ include Google::Apis::Core::Hashable
955
+
956
+ # Required. The uri of the Cloud Storage object. It's the same uri that is used
957
+ # by gsutil. For example: "gs://bucket_name/object_name". See [Quickstart: Using
958
+ # the gsutil tool] (https://cloud.google.com/storage/docs/quickstart-gsutil) for
959
+ # examples.
960
+ # Corresponds to the JSON property `uri`
961
+ # @return [String]
962
+ attr_accessor :uri
963
+
964
+ def initialize(**args)
965
+ update!(**args)
966
+ end
967
+
968
+ # Update properties of this object
969
+ def update!(**args)
970
+ @uri = args[:uri] if args.key?(:uri)
971
+ end
972
+ end
973
+
974
+ # An identity under analysis.
975
+ class GoogleCloudAssetV1Identity
976
+ include Google::Apis::Core::Hashable
977
+
978
+ # Represents the detailed state of an entity under analysis, such as a resource,
979
+ # an identity or an access.
980
+ # Corresponds to the JSON property `analysisState`
981
+ # @return [Google::Apis::CloudassetV1::IamPolicyAnalysisState]
982
+ attr_accessor :analysis_state
983
+
984
+ # The identity name in any form of members appear in [IAM policy binding](https:/
985
+ # /cloud.google.com/iam/reference/rest/v1/Binding), such as: - user:foo@google.
986
+ # com - group:group1@google.com - serviceAccount:s1@prj1.iam.gserviceaccount.com
987
+ # - projectOwner:some_project_id - domain:google.com - allUsers - etc.
988
+ # Corresponds to the JSON property `name`
989
+ # @return [String]
990
+ attr_accessor :name
991
+
992
+ def initialize(**args)
993
+ update!(**args)
994
+ end
995
+
996
+ # Update properties of this object
997
+ def update!(**args)
998
+ @analysis_state = args[:analysis_state] if args.key?(:analysis_state)
999
+ @name = args[:name] if args.key?(:name)
1000
+ end
1001
+ end
1002
+
1003
+ # The identities and group edges.
1004
+ class GoogleCloudAssetV1IdentityList
1005
+ include Google::Apis::Core::Hashable
1006
+
1007
+ # Group identity edges of the graph starting from the binding's group members to
1008
+ # any node of the identities. The Edge.source_node contains a group, such as `
1009
+ # group:parent@google.com`. The Edge.target_node contains a member of the group,
1010
+ # such as `group:child@google.com` or `user:foo@google.com`. This field is
1011
+ # present only if the output_group_edges option is enabled in request.
1012
+ # Corresponds to the JSON property `groupEdges`
1013
+ # @return [Array<Google::Apis::CloudassetV1::GoogleCloudAssetV1Edge>]
1014
+ attr_accessor :group_edges
1015
+
1016
+ # Only the identities that match one of the following conditions will be
1017
+ # presented: - The identity_selector, if it is specified in request; - Otherwise,
1018
+ # identities reachable from the policy binding's members.
1019
+ # Corresponds to the JSON property `identities`
1020
+ # @return [Array<Google::Apis::CloudassetV1::GoogleCloudAssetV1Identity>]
1021
+ attr_accessor :identities
1022
+
1023
+ def initialize(**args)
1024
+ update!(**args)
1025
+ end
1026
+
1027
+ # Update properties of this object
1028
+ def update!(**args)
1029
+ @group_edges = args[:group_edges] if args.key?(:group_edges)
1030
+ @identities = args[:identities] if args.key?(:identities)
1031
+ end
1032
+ end
1033
+
1034
+ # A Google Cloud resource under analysis.
1035
+ class GoogleCloudAssetV1Resource
1036
+ include Google::Apis::Core::Hashable
1037
+
1038
+ # Represents the detailed state of an entity under analysis, such as a resource,
1039
+ # an identity or an access.
1040
+ # Corresponds to the JSON property `analysisState`
1041
+ # @return [Google::Apis::CloudassetV1::IamPolicyAnalysisState]
1042
+ attr_accessor :analysis_state
1043
+
1044
+ # The [full resource name](https://cloud.google.com/asset-inventory/docs/
1045
+ # resource-name-format)
1046
+ # Corresponds to the JSON property `fullResourceName`
1047
+ # @return [String]
1048
+ attr_accessor :full_resource_name
1049
+
1050
+ def initialize(**args)
1051
+ update!(**args)
1052
+ end
1053
+
1054
+ # Update properties of this object
1055
+ def update!(**args)
1056
+ @analysis_state = args[:analysis_state] if args.key?(:analysis_state)
1057
+ @full_resource_name = args[:full_resource_name] if args.key?(:full_resource_name)
1058
+ end
1059
+ end
1060
+
700
1061
  # Used in `policy_type` to specify how `boolean_policy` will behave at this
701
1062
  # resource.
702
1063
  class GoogleCloudOrgpolicyV1BooleanPolicy
@@ -1464,6 +1825,206 @@ module Google
1464
1825
  end
1465
1826
  end
1466
1827
 
1828
+ # An analysis message to group the query and results.
1829
+ class IamPolicyAnalysis
1830
+ include Google::Apis::Core::Hashable
1831
+
1832
+ # IAM policy analysis query message.
1833
+ # Corresponds to the JSON property `analysisQuery`
1834
+ # @return [Google::Apis::CloudassetV1::IamPolicyAnalysisQuery]
1835
+ attr_accessor :analysis_query
1836
+
1837
+ # A list of IamPolicyAnalysisResult that matches the analysis query, or empty if
1838
+ # no result is found.
1839
+ # Corresponds to the JSON property `analysisResults`
1840
+ # @return [Array<Google::Apis::CloudassetV1::IamPolicyAnalysisResult>]
1841
+ attr_accessor :analysis_results
1842
+
1843
+ # Represents whether all entries in the analysis_results have been fully
1844
+ # explored to answer the query.
1845
+ # Corresponds to the JSON property `fullyExplored`
1846
+ # @return [Boolean]
1847
+ attr_accessor :fully_explored
1848
+ alias_method :fully_explored?, :fully_explored
1849
+
1850
+ # A list of non-critical errors happened during the query handling.
1851
+ # Corresponds to the JSON property `nonCriticalErrors`
1852
+ # @return [Array<Google::Apis::CloudassetV1::IamPolicyAnalysisState>]
1853
+ attr_accessor :non_critical_errors
1854
+
1855
+ def initialize(**args)
1856
+ update!(**args)
1857
+ end
1858
+
1859
+ # Update properties of this object
1860
+ def update!(**args)
1861
+ @analysis_query = args[:analysis_query] if args.key?(:analysis_query)
1862
+ @analysis_results = args[:analysis_results] if args.key?(:analysis_results)
1863
+ @fully_explored = args[:fully_explored] if args.key?(:fully_explored)
1864
+ @non_critical_errors = args[:non_critical_errors] if args.key?(:non_critical_errors)
1865
+ end
1866
+ end
1867
+
1868
+ # Output configuration for export IAM policy analysis destination.
1869
+ class IamPolicyAnalysisOutputConfig
1870
+ include Google::Apis::Core::Hashable
1871
+
1872
+ # A BigQuery destination.
1873
+ # Corresponds to the JSON property `bigqueryDestination`
1874
+ # @return [Google::Apis::CloudassetV1::GoogleCloudAssetV1BigQueryDestination]
1875
+ attr_accessor :bigquery_destination
1876
+
1877
+ # A Cloud Storage location.
1878
+ # Corresponds to the JSON property `gcsDestination`
1879
+ # @return [Google::Apis::CloudassetV1::GoogleCloudAssetV1GcsDestination]
1880
+ attr_accessor :gcs_destination
1881
+
1882
+ def initialize(**args)
1883
+ update!(**args)
1884
+ end
1885
+
1886
+ # Update properties of this object
1887
+ def update!(**args)
1888
+ @bigquery_destination = args[:bigquery_destination] if args.key?(:bigquery_destination)
1889
+ @gcs_destination = args[:gcs_destination] if args.key?(:gcs_destination)
1890
+ end
1891
+ end
1892
+
1893
+ # IAM policy analysis query message.
1894
+ class IamPolicyAnalysisQuery
1895
+ include Google::Apis::Core::Hashable
1896
+
1897
+ # Specifies roles and/or permissions to analyze, to determine both the
1898
+ # identities possessing them and the resources they control. If multiple values
1899
+ # are specified, results will include roles or permissions matching any of them.
1900
+ # The total number of roles and permissions should be equal or less than 10.
1901
+ # Corresponds to the JSON property `accessSelector`
1902
+ # @return [Google::Apis::CloudassetV1::AccessSelector]
1903
+ attr_accessor :access_selector
1904
+
1905
+ # Specifies an identity for which to determine resource access, based on roles
1906
+ # assigned either directly to them or to the groups they belong to, directly or
1907
+ # indirectly.
1908
+ # Corresponds to the JSON property `identitySelector`
1909
+ # @return [Google::Apis::CloudassetV1::IdentitySelector]
1910
+ attr_accessor :identity_selector
1911
+
1912
+ # Contains query options.
1913
+ # Corresponds to the JSON property `options`
1914
+ # @return [Google::Apis::CloudassetV1::Options]
1915
+ attr_accessor :options
1916
+
1917
+ # Specifies the resource to analyze for access policies, which may be set
1918
+ # directly on the resource, or on ancestors such as organizations, folders or
1919
+ # projects.
1920
+ # Corresponds to the JSON property `resourceSelector`
1921
+ # @return [Google::Apis::CloudassetV1::ResourceSelector]
1922
+ attr_accessor :resource_selector
1923
+
1924
+ # Required. The relative name of the root asset. Only resources and IAM policies
1925
+ # within the scope will be analyzed. This can only be an organization number (
1926
+ # such as "organizations/123"), a folder number (such as "folders/123"), a
1927
+ # project ID (such as "projects/my-project-id"), or a project number (such as "
1928
+ # projects/12345"). To know how to get organization id, visit [here ](https://
1929
+ # cloud.google.com/resource-manager/docs/creating-managing-organization#
1930
+ # retrieving_your_organization_id). To know how to get folder or project id,
1931
+ # visit [here ](https://cloud.google.com/resource-manager/docs/creating-managing-
1932
+ # folders#viewing_or_listing_folders_and_projects).
1933
+ # Corresponds to the JSON property `scope`
1934
+ # @return [String]
1935
+ attr_accessor :scope
1936
+
1937
+ def initialize(**args)
1938
+ update!(**args)
1939
+ end
1940
+
1941
+ # Update properties of this object
1942
+ def update!(**args)
1943
+ @access_selector = args[:access_selector] if args.key?(:access_selector)
1944
+ @identity_selector = args[:identity_selector] if args.key?(:identity_selector)
1945
+ @options = args[:options] if args.key?(:options)
1946
+ @resource_selector = args[:resource_selector] if args.key?(:resource_selector)
1947
+ @scope = args[:scope] if args.key?(:scope)
1948
+ end
1949
+ end
1950
+
1951
+ # IAM Policy analysis result, consisting of one IAM policy binding and derived
1952
+ # access control lists.
1953
+ class IamPolicyAnalysisResult
1954
+ include Google::Apis::Core::Hashable
1955
+
1956
+ # The access control lists derived from the iam_binding that match or
1957
+ # potentially match resource and access selectors specified in the request.
1958
+ # Corresponds to the JSON property `accessControlLists`
1959
+ # @return [Array<Google::Apis::CloudassetV1::GoogleCloudAssetV1AccessControlList>]
1960
+ attr_accessor :access_control_lists
1961
+
1962
+ # The [full resource name](https://cloud.google.com/asset-inventory/docs/
1963
+ # resource-name-format) of the resource to which the iam_binding policy attaches.
1964
+ # Corresponds to the JSON property `attachedResourceFullName`
1965
+ # @return [String]
1966
+ attr_accessor :attached_resource_full_name
1967
+
1968
+ # Represents whether all analyses on the iam_binding have successfully finished.
1969
+ # Corresponds to the JSON property `fullyExplored`
1970
+ # @return [Boolean]
1971
+ attr_accessor :fully_explored
1972
+ alias_method :fully_explored?, :fully_explored
1973
+
1974
+ # Associates `members` with a `role`.
1975
+ # Corresponds to the JSON property `iamBinding`
1976
+ # @return [Google::Apis::CloudassetV1::Binding]
1977
+ attr_accessor :iam_binding
1978
+
1979
+ # The identities and group edges.
1980
+ # Corresponds to the JSON property `identityList`
1981
+ # @return [Google::Apis::CloudassetV1::GoogleCloudAssetV1IdentityList]
1982
+ attr_accessor :identity_list
1983
+
1984
+ def initialize(**args)
1985
+ update!(**args)
1986
+ end
1987
+
1988
+ # Update properties of this object
1989
+ def update!(**args)
1990
+ @access_control_lists = args[:access_control_lists] if args.key?(:access_control_lists)
1991
+ @attached_resource_full_name = args[:attached_resource_full_name] if args.key?(:attached_resource_full_name)
1992
+ @fully_explored = args[:fully_explored] if args.key?(:fully_explored)
1993
+ @iam_binding = args[:iam_binding] if args.key?(:iam_binding)
1994
+ @identity_list = args[:identity_list] if args.key?(:identity_list)
1995
+ end
1996
+ end
1997
+
1998
+ # Represents the detailed state of an entity under analysis, such as a resource,
1999
+ # an identity or an access.
2000
+ class IamPolicyAnalysisState
2001
+ include Google::Apis::Core::Hashable
2002
+
2003
+ # The human-readable description of the cause of failure.
2004
+ # Corresponds to the JSON property `cause`
2005
+ # @return [String]
2006
+ attr_accessor :cause
2007
+
2008
+ # The Google standard error code that best describes the state. For example: -
2009
+ # OK means the analysis on this entity has been successfully finished; -
2010
+ # PERMISSION_DENIED means an access denied error is encountered; -
2011
+ # DEADLINE_EXCEEDED means the analysis on this entity hasn't been started in
2012
+ # time;
2013
+ # Corresponds to the JSON property `code`
2014
+ # @return [String]
2015
+ attr_accessor :code
2016
+
2017
+ def initialize(**args)
2018
+ update!(**args)
2019
+ end
2020
+
2021
+ # Update properties of this object
2022
+ def update!(**args)
2023
+ @cause = args[:cause] if args.key?(:cause)
2024
+ @code = args[:code] if args.key?(:code)
2025
+ end
2026
+ end
2027
+
1467
2028
  # A result of IAM Policy search, containing information of an IAM policy.
1468
2029
  class IamPolicySearchResult
1469
2030
  include Google::Apis::Core::Hashable
@@ -1537,6 +2098,114 @@ module Google
1537
2098
  end
1538
2099
  end
1539
2100
 
2101
+ # Specifies an identity for which to determine resource access, based on roles
2102
+ # assigned either directly to them or to the groups they belong to, directly or
2103
+ # indirectly.
2104
+ class IdentitySelector
2105
+ include Google::Apis::Core::Hashable
2106
+
2107
+ # Required. The identity appear in the form of members in [IAM policy binding](
2108
+ # https://cloud.google.com/iam/reference/rest/v1/Binding). The examples of
2109
+ # supported forms are: "user:mike@example.com", "group:admins@example.com", "
2110
+ # domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com".
2111
+ # Notice that wildcard characters (such as * and ?) are not supported. You must
2112
+ # give a specific identity.
2113
+ # Corresponds to the JSON property `identity`
2114
+ # @return [String]
2115
+ attr_accessor :identity
2116
+
2117
+ def initialize(**args)
2118
+ update!(**args)
2119
+ end
2120
+
2121
+ # Update properties of this object
2122
+ def update!(**args)
2123
+ @identity = args[:identity] if args.key?(:identity)
2124
+ end
2125
+ end
2126
+
2127
+ # The inventory details of a VM.
2128
+ class Inventory
2129
+ include Google::Apis::Core::Hashable
2130
+
2131
+ # Inventory items related to the VM keyed by an opaque unique identifier for
2132
+ # each inventory item. The identifier is unique to each distinct and addressable
2133
+ # inventory item and will change, when there is a new package version.
2134
+ # Corresponds to the JSON property `items`
2135
+ # @return [Hash<String,Google::Apis::CloudassetV1::Item>]
2136
+ attr_accessor :items
2137
+
2138
+ # Operating system information for the VM.
2139
+ # Corresponds to the JSON property `osInfo`
2140
+ # @return [Google::Apis::CloudassetV1::OsInfo]
2141
+ attr_accessor :os_info
2142
+
2143
+ def initialize(**args)
2144
+ update!(**args)
2145
+ end
2146
+
2147
+ # Update properties of this object
2148
+ def update!(**args)
2149
+ @items = args[:items] if args.key?(:items)
2150
+ @os_info = args[:os_info] if args.key?(:os_info)
2151
+ end
2152
+ end
2153
+
2154
+ # A single piece of inventory on a VM.
2155
+ class Item
2156
+ include Google::Apis::Core::Hashable
2157
+
2158
+ # Software package information of the operating system.
2159
+ # Corresponds to the JSON property `availablePackage`
2160
+ # @return [Google::Apis::CloudassetV1::SoftwarePackage]
2161
+ attr_accessor :available_package
2162
+
2163
+ # When this inventory item was first detected.
2164
+ # Corresponds to the JSON property `createTime`
2165
+ # @return [String]
2166
+ attr_accessor :create_time
2167
+
2168
+ # Identifier for this item, unique across items for this VM.
2169
+ # Corresponds to the JSON property `id`
2170
+ # @return [String]
2171
+ attr_accessor :id
2172
+
2173
+ # Software package information of the operating system.
2174
+ # Corresponds to the JSON property `installedPackage`
2175
+ # @return [Google::Apis::CloudassetV1::SoftwarePackage]
2176
+ attr_accessor :installed_package
2177
+
2178
+ # The origin of this inventory item.
2179
+ # Corresponds to the JSON property `originType`
2180
+ # @return [String]
2181
+ attr_accessor :origin_type
2182
+
2183
+ # The specific type of inventory, correlating to its specific details.
2184
+ # Corresponds to the JSON property `type`
2185
+ # @return [String]
2186
+ attr_accessor :type
2187
+
2188
+ # When this inventory item was last modified.
2189
+ # Corresponds to the JSON property `updateTime`
2190
+ # @return [String]
2191
+ attr_accessor :update_time
2192
+
2193
+ def initialize(**args)
2194
+ update!(**args)
2195
+ end
2196
+
2197
+ # Update properties of this object
2198
+ def update!(**args)
2199
+ @available_package = args[:available_package] if args.key?(:available_package)
2200
+ @create_time = args[:create_time] if args.key?(:create_time)
2201
+ @id = args[:id] if args.key?(:id)
2202
+ @installed_package = args[:installed_package] if args.key?(:installed_package)
2203
+ @origin_type = args[:origin_type] if args.key?(:origin_type)
2204
+ @type = args[:type] if args.key?(:type)
2205
+ @update_time = args[:update_time] if args.key?(:update_time)
2206
+ end
2207
+ end
2208
+
1540
2209
  #
1541
2210
  class ListFeedsResponse
1542
2211
  include Google::Apis::Core::Hashable
@@ -1618,6 +2287,160 @@ module Google
1618
2287
  end
1619
2288
  end
1620
2289
 
2290
+ # Contains query options.
2291
+ class Options
2292
+ include Google::Apis::Core::Hashable
2293
+
2294
+ # Optional. If true, the response will include access analysis from identities
2295
+ # to resources via service account impersonation. This is a very expensive
2296
+ # operation, because many derived queries will be executed. We highly recommend
2297
+ # you use AssetService.AnalyzeIamPolicyLongrunning rpc instead. For example, if
2298
+ # the request analyzes for which resources user A has permission P, and there's
2299
+ # an IAM policy states user A has iam.serviceAccounts.getAccessToken permission
2300
+ # to a service account SA, and there's another IAM policy states service account
2301
+ # SA has permission P to a GCP folder F, then user A potentially has access to
2302
+ # the GCP folder F. And those advanced analysis results will be included in
2303
+ # AnalyzeIamPolicyResponse.service_account_impersonation_analysis. Another
2304
+ # example, if the request analyzes for who has permission P to a GCP folder F,
2305
+ # and there's an IAM policy states user A has iam.serviceAccounts.actAs
2306
+ # permission to a service account SA, and there's another IAM policy states
2307
+ # service account SA has permission P to the GCP folder F, then user A
2308
+ # potentially has access to the GCP folder F. And those advanced analysis
2309
+ # results will be included in AnalyzeIamPolicyResponse.
2310
+ # service_account_impersonation_analysis. Default is false.
2311
+ # Corresponds to the JSON property `analyzeServiceAccountImpersonation`
2312
+ # @return [Boolean]
2313
+ attr_accessor :analyze_service_account_impersonation
2314
+ alias_method :analyze_service_account_impersonation?, :analyze_service_account_impersonation
2315
+
2316
+ # Optional. If true, the identities section of the result will expand any Google
2317
+ # groups appearing in an IAM policy binding. If IamPolicyAnalysisQuery.
2318
+ # identity_selector is specified, the identity in the result will be determined
2319
+ # by the selector, and this flag is not allowed to set. Default is false.
2320
+ # Corresponds to the JSON property `expandGroups`
2321
+ # @return [Boolean]
2322
+ attr_accessor :expand_groups
2323
+ alias_method :expand_groups?, :expand_groups
2324
+
2325
+ # Optional. If true and IamPolicyAnalysisQuery.resource_selector is not
2326
+ # specified, the resource section of the result will expand any resource
2327
+ # attached to an IAM policy to include resources lower in the resource hierarchy.
2328
+ # For example, if the request analyzes for which resources user A has
2329
+ # permission P, and the results include an IAM policy with P on a GCP folder,
2330
+ # the results will also include resources in that folder with permission P. If
2331
+ # true and IamPolicyAnalysisQuery.resource_selector is specified, the resource
2332
+ # section of the result will expand the specified resource to include resources
2333
+ # lower in the resource hierarchy. Only project or lower resources are supported.
2334
+ # Folder and organization resource cannot be used together with this option.
2335
+ # For example, if the request analyzes for which users have permission P on a
2336
+ # GCP project with this option enabled, the results will include all users who
2337
+ # have permission P on that project or any lower resource. Default is false.
2338
+ # Corresponds to the JSON property `expandResources`
2339
+ # @return [Boolean]
2340
+ attr_accessor :expand_resources
2341
+ alias_method :expand_resources?, :expand_resources
2342
+
2343
+ # Optional. If true, the access section of result will expand any roles
2344
+ # appearing in IAM policy bindings to include their permissions. If
2345
+ # IamPolicyAnalysisQuery.access_selector is specified, the access section of the
2346
+ # result will be determined by the selector, and this flag is not allowed to set.
2347
+ # Default is false.
2348
+ # Corresponds to the JSON property `expandRoles`
2349
+ # @return [Boolean]
2350
+ attr_accessor :expand_roles
2351
+ alias_method :expand_roles?, :expand_roles
2352
+
2353
+ # Optional. If true, the result will output group identity edges, starting from
2354
+ # the binding's group members, to any expanded identities. Default is false.
2355
+ # Corresponds to the JSON property `outputGroupEdges`
2356
+ # @return [Boolean]
2357
+ attr_accessor :output_group_edges
2358
+ alias_method :output_group_edges?, :output_group_edges
2359
+
2360
+ # Optional. If true, the result will output resource edges, starting from the
2361
+ # policy attached resource, to any expanded resources. Default is false.
2362
+ # Corresponds to the JSON property `outputResourceEdges`
2363
+ # @return [Boolean]
2364
+ attr_accessor :output_resource_edges
2365
+ alias_method :output_resource_edges?, :output_resource_edges
2366
+
2367
+ def initialize(**args)
2368
+ update!(**args)
2369
+ end
2370
+
2371
+ # Update properties of this object
2372
+ def update!(**args)
2373
+ @analyze_service_account_impersonation = args[:analyze_service_account_impersonation] if args.key?(:analyze_service_account_impersonation)
2374
+ @expand_groups = args[:expand_groups] if args.key?(:expand_groups)
2375
+ @expand_resources = args[:expand_resources] if args.key?(:expand_resources)
2376
+ @expand_roles = args[:expand_roles] if args.key?(:expand_roles)
2377
+ @output_group_edges = args[:output_group_edges] if args.key?(:output_group_edges)
2378
+ @output_resource_edges = args[:output_resource_edges] if args.key?(:output_resource_edges)
2379
+ end
2380
+ end
2381
+
2382
+ # Operating system information for the VM.
2383
+ class OsInfo
2384
+ include Google::Apis::Core::Hashable
2385
+
2386
+ # The system architecture of the operating system.
2387
+ # Corresponds to the JSON property `architecture`
2388
+ # @return [String]
2389
+ attr_accessor :architecture
2390
+
2391
+ # The VM hostname.
2392
+ # Corresponds to the JSON property `hostname`
2393
+ # @return [String]
2394
+ attr_accessor :hostname
2395
+
2396
+ # The kernel release of the operating system.
2397
+ # Corresponds to the JSON property `kernelRelease`
2398
+ # @return [String]
2399
+ attr_accessor :kernel_release
2400
+
2401
+ # The kernel version of the operating system.
2402
+ # Corresponds to the JSON property `kernelVersion`
2403
+ # @return [String]
2404
+ attr_accessor :kernel_version
2405
+
2406
+ # The operating system long name. For example 'Debian GNU/Linux 9' or 'Microsoft
2407
+ # Window Server 2019 Datacenter'.
2408
+ # Corresponds to the JSON property `longName`
2409
+ # @return [String]
2410
+ attr_accessor :long_name
2411
+
2412
+ # The current version of the OS Config agent running on the VM.
2413
+ # Corresponds to the JSON property `osconfigAgentVersion`
2414
+ # @return [String]
2415
+ attr_accessor :osconfig_agent_version
2416
+
2417
+ # The operating system short name. For example, 'windows' or 'debian'.
2418
+ # Corresponds to the JSON property `shortName`
2419
+ # @return [String]
2420
+ attr_accessor :short_name
2421
+
2422
+ # The version of the operating system.
2423
+ # Corresponds to the JSON property `version`
2424
+ # @return [String]
2425
+ attr_accessor :version
2426
+
2427
+ def initialize(**args)
2428
+ update!(**args)
2429
+ end
2430
+
2431
+ # Update properties of this object
2432
+ def update!(**args)
2433
+ @architecture = args[:architecture] if args.key?(:architecture)
2434
+ @hostname = args[:hostname] if args.key?(:hostname)
2435
+ @kernel_release = args[:kernel_release] if args.key?(:kernel_release)
2436
+ @kernel_version = args[:kernel_version] if args.key?(:kernel_version)
2437
+ @long_name = args[:long_name] if args.key?(:long_name)
2438
+ @osconfig_agent_version = args[:osconfig_agent_version] if args.key?(:osconfig_agent_version)
2439
+ @short_name = args[:short_name] if args.key?(:short_name)
2440
+ @version = args[:version] if args.key?(:version)
2441
+ end
2442
+ end
2443
+
1621
2444
  # Output configuration for export assets destination.
1622
2445
  class OutputConfig
1623
2446
  include Google::Apis::Core::Hashable
@@ -1968,6 +2791,30 @@ module Google
1968
2791
  end
1969
2792
  end
1970
2793
 
2794
+ # Specifies the resource to analyze for access policies, which may be set
2795
+ # directly on the resource, or on ancestors such as organizations, folders or
2796
+ # projects.
2797
+ class ResourceSelector
2798
+ include Google::Apis::Core::Hashable
2799
+
2800
+ # Required. The [full resource name] (https://cloud.google.com/asset-inventory/
2801
+ # docs/resource-name-format) of a resource of [supported resource types](https://
2802
+ # cloud.google.com/asset-inventory/docs/supported-asset-types#
2803
+ # analyzable_asset_types).
2804
+ # Corresponds to the JSON property `fullResourceName`
2805
+ # @return [String]
2806
+ attr_accessor :full_resource_name
2807
+
2808
+ def initialize(**args)
2809
+ update!(**args)
2810
+ end
2811
+
2812
+ # Update properties of this object
2813
+ def update!(**args)
2814
+ @full_resource_name = args[:full_resource_name] if args.key?(:full_resource_name)
2815
+ end
2816
+ end
2817
+
1971
2818
  # Search all IAM policies response.
1972
2819
  class SearchAllIamPoliciesResponse
1973
2820
  include Google::Apis::Core::Hashable
@@ -2024,6 +2871,77 @@ module Google
2024
2871
  end
2025
2872
  end
2026
2873
 
2874
+ # Software package information of the operating system.
2875
+ class SoftwarePackage
2876
+ include Google::Apis::Core::Hashable
2877
+
2878
+ # Information related to the a standard versioned package. This includes package
2879
+ # info for APT, Yum, Zypper, and Googet package managers.
2880
+ # Corresponds to the JSON property `aptPackage`
2881
+ # @return [Google::Apis::CloudassetV1::VersionedPackage]
2882
+ attr_accessor :apt_package
2883
+
2884
+ # Information related to the a standard versioned package. This includes package
2885
+ # info for APT, Yum, Zypper, and Googet package managers.
2886
+ # Corresponds to the JSON property `cosPackage`
2887
+ # @return [Google::Apis::CloudassetV1::VersionedPackage]
2888
+ attr_accessor :cos_package
2889
+
2890
+ # Information related to the a standard versioned package. This includes package
2891
+ # info for APT, Yum, Zypper, and Googet package managers.
2892
+ # Corresponds to the JSON property `googetPackage`
2893
+ # @return [Google::Apis::CloudassetV1::VersionedPackage]
2894
+ attr_accessor :googet_package
2895
+
2896
+ # Information related to a Quick Fix Engineering package. Fields are taken from
2897
+ # Windows QuickFixEngineering Interface and match the source names: https://docs.
2898
+ # microsoft.com/en-us/windows/win32/cimwin32prov/win32-quickfixengineering
2899
+ # Corresponds to the JSON property `qfePackage`
2900
+ # @return [Google::Apis::CloudassetV1::WindowsQuickFixEngineeringPackage]
2901
+ attr_accessor :qfe_package
2902
+
2903
+ # Details related to a Windows Update package. Field data and names are taken
2904
+ # from Windows Update API IUpdate Interface: https://docs.microsoft.com/en-us/
2905
+ # windows/win32/api/_wua/ Descriptive fields like title, and description are
2906
+ # localized based on the locale of the VM being updated.
2907
+ # Corresponds to the JSON property `wuaPackage`
2908
+ # @return [Google::Apis::CloudassetV1::WindowsUpdatePackage]
2909
+ attr_accessor :wua_package
2910
+
2911
+ # Information related to the a standard versioned package. This includes package
2912
+ # info for APT, Yum, Zypper, and Googet package managers.
2913
+ # Corresponds to the JSON property `yumPackage`
2914
+ # @return [Google::Apis::CloudassetV1::VersionedPackage]
2915
+ attr_accessor :yum_package
2916
+
2917
+ # Information related to the a standard versioned package. This includes package
2918
+ # info for APT, Yum, Zypper, and Googet package managers.
2919
+ # Corresponds to the JSON property `zypperPackage`
2920
+ # @return [Google::Apis::CloudassetV1::VersionedPackage]
2921
+ attr_accessor :zypper_package
2922
+
2923
+ # Details related to a Zypper Patch.
2924
+ # Corresponds to the JSON property `zypperPatch`
2925
+ # @return [Google::Apis::CloudassetV1::ZypperPatch]
2926
+ attr_accessor :zypper_patch
2927
+
2928
+ def initialize(**args)
2929
+ update!(**args)
2930
+ end
2931
+
2932
+ # Update properties of this object
2933
+ def update!(**args)
2934
+ @apt_package = args[:apt_package] if args.key?(:apt_package)
2935
+ @cos_package = args[:cos_package] if args.key?(:cos_package)
2936
+ @googet_package = args[:googet_package] if args.key?(:googet_package)
2937
+ @qfe_package = args[:qfe_package] if args.key?(:qfe_package)
2938
+ @wua_package = args[:wua_package] if args.key?(:wua_package)
2939
+ @yum_package = args[:yum_package] if args.key?(:yum_package)
2940
+ @zypper_package = args[:zypper_package] if args.key?(:zypper_package)
2941
+ @zypper_patch = args[:zypper_patch] if args.key?(:zypper_patch)
2942
+ end
2943
+ end
2944
+
2027
2945
  # The `Status` type defines a logical error model that is suitable for different
2028
2946
  # programming environments, including REST APIs and RPC APIs. It is used by [
2029
2947
  # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
@@ -2173,6 +3091,210 @@ module Google
2173
3091
  @update_mask = args[:update_mask] if args.key?(:update_mask)
2174
3092
  end
2175
3093
  end
3094
+
3095
+ # Information related to the a standard versioned package. This includes package
3096
+ # info for APT, Yum, Zypper, and Googet package managers.
3097
+ class VersionedPackage
3098
+ include Google::Apis::Core::Hashable
3099
+
3100
+ # The system architecture this package is intended for.
3101
+ # Corresponds to the JSON property `architecture`
3102
+ # @return [String]
3103
+ attr_accessor :architecture
3104
+
3105
+ # The name of the package.
3106
+ # Corresponds to the JSON property `packageName`
3107
+ # @return [String]
3108
+ attr_accessor :package_name
3109
+
3110
+ # The version of the package.
3111
+ # Corresponds to the JSON property `version`
3112
+ # @return [String]
3113
+ attr_accessor :version
3114
+
3115
+ def initialize(**args)
3116
+ update!(**args)
3117
+ end
3118
+
3119
+ # Update properties of this object
3120
+ def update!(**args)
3121
+ @architecture = args[:architecture] if args.key?(:architecture)
3122
+ @package_name = args[:package_name] if args.key?(:package_name)
3123
+ @version = args[:version] if args.key?(:version)
3124
+ end
3125
+ end
3126
+
3127
+ # Information related to a Quick Fix Engineering package. Fields are taken from
3128
+ # Windows QuickFixEngineering Interface and match the source names: https://docs.
3129
+ # microsoft.com/en-us/windows/win32/cimwin32prov/win32-quickfixengineering
3130
+ class WindowsQuickFixEngineeringPackage
3131
+ include Google::Apis::Core::Hashable
3132
+
3133
+ # A short textual description of the QFE update.
3134
+ # Corresponds to the JSON property `caption`
3135
+ # @return [String]
3136
+ attr_accessor :caption
3137
+
3138
+ # A textual description of the QFE update.
3139
+ # Corresponds to the JSON property `description`
3140
+ # @return [String]
3141
+ attr_accessor :description
3142
+
3143
+ # Unique identifier associated with a particular QFE update.
3144
+ # Corresponds to the JSON property `hotFixId`
3145
+ # @return [String]
3146
+ attr_accessor :hot_fix_id
3147
+
3148
+ # Date that the QFE update was installed. Mapped from installed_on field.
3149
+ # Corresponds to the JSON property `installTime`
3150
+ # @return [String]
3151
+ attr_accessor :install_time
3152
+
3153
+ def initialize(**args)
3154
+ update!(**args)
3155
+ end
3156
+
3157
+ # Update properties of this object
3158
+ def update!(**args)
3159
+ @caption = args[:caption] if args.key?(:caption)
3160
+ @description = args[:description] if args.key?(:description)
3161
+ @hot_fix_id = args[:hot_fix_id] if args.key?(:hot_fix_id)
3162
+ @install_time = args[:install_time] if args.key?(:install_time)
3163
+ end
3164
+ end
3165
+
3166
+ # Categories specified by the Windows Update.
3167
+ class WindowsUpdateCategory
3168
+ include Google::Apis::Core::Hashable
3169
+
3170
+ # The identifier of the windows update category.
3171
+ # Corresponds to the JSON property `id`
3172
+ # @return [String]
3173
+ attr_accessor :id
3174
+
3175
+ # The name of the windows update category.
3176
+ # Corresponds to the JSON property `name`
3177
+ # @return [String]
3178
+ attr_accessor :name
3179
+
3180
+ def initialize(**args)
3181
+ update!(**args)
3182
+ end
3183
+
3184
+ # Update properties of this object
3185
+ def update!(**args)
3186
+ @id = args[:id] if args.key?(:id)
3187
+ @name = args[:name] if args.key?(:name)
3188
+ end
3189
+ end
3190
+
3191
+ # Details related to a Windows Update package. Field data and names are taken
3192
+ # from Windows Update API IUpdate Interface: https://docs.microsoft.com/en-us/
3193
+ # windows/win32/api/_wua/ Descriptive fields like title, and description are
3194
+ # localized based on the locale of the VM being updated.
3195
+ class WindowsUpdatePackage
3196
+ include Google::Apis::Core::Hashable
3197
+
3198
+ # The categories that are associated with this update package.
3199
+ # Corresponds to the JSON property `categories`
3200
+ # @return [Array<Google::Apis::CloudassetV1::WindowsUpdateCategory>]
3201
+ attr_accessor :categories
3202
+
3203
+ # The localized description of the update package.
3204
+ # Corresponds to the JSON property `description`
3205
+ # @return [String]
3206
+ attr_accessor :description
3207
+
3208
+ # A collection of Microsoft Knowledge Base article IDs that are associated with
3209
+ # the update package.
3210
+ # Corresponds to the JSON property `kbArticleIds`
3211
+ # @return [Array<String>]
3212
+ attr_accessor :kb_article_ids
3213
+
3214
+ # The last published date of the update, in (UTC) date and time.
3215
+ # Corresponds to the JSON property `lastDeploymentChangeTime`
3216
+ # @return [String]
3217
+ attr_accessor :last_deployment_change_time
3218
+
3219
+ # A collection of URLs that provide more information about the update package.
3220
+ # Corresponds to the JSON property `moreInfoUrls`
3221
+ # @return [Array<String>]
3222
+ attr_accessor :more_info_urls
3223
+
3224
+ # The revision number of this update package.
3225
+ # Corresponds to the JSON property `revisionNumber`
3226
+ # @return [Fixnum]
3227
+ attr_accessor :revision_number
3228
+
3229
+ # A hyperlink to the language-specific support information for the update.
3230
+ # Corresponds to the JSON property `supportUrl`
3231
+ # @return [String]
3232
+ attr_accessor :support_url
3233
+
3234
+ # The localized title of the update package.
3235
+ # Corresponds to the JSON property `title`
3236
+ # @return [String]
3237
+ attr_accessor :title
3238
+
3239
+ # Gets the identifier of an update package. Stays the same across revisions.
3240
+ # Corresponds to the JSON property `updateId`
3241
+ # @return [String]
3242
+ attr_accessor :update_id
3243
+
3244
+ def initialize(**args)
3245
+ update!(**args)
3246
+ end
3247
+
3248
+ # Update properties of this object
3249
+ def update!(**args)
3250
+ @categories = args[:categories] if args.key?(:categories)
3251
+ @description = args[:description] if args.key?(:description)
3252
+ @kb_article_ids = args[:kb_article_ids] if args.key?(:kb_article_ids)
3253
+ @last_deployment_change_time = args[:last_deployment_change_time] if args.key?(:last_deployment_change_time)
3254
+ @more_info_urls = args[:more_info_urls] if args.key?(:more_info_urls)
3255
+ @revision_number = args[:revision_number] if args.key?(:revision_number)
3256
+ @support_url = args[:support_url] if args.key?(:support_url)
3257
+ @title = args[:title] if args.key?(:title)
3258
+ @update_id = args[:update_id] if args.key?(:update_id)
3259
+ end
3260
+ end
3261
+
3262
+ # Details related to a Zypper Patch.
3263
+ class ZypperPatch
3264
+ include Google::Apis::Core::Hashable
3265
+
3266
+ # The category of the patch.
3267
+ # Corresponds to the JSON property `category`
3268
+ # @return [String]
3269
+ attr_accessor :category
3270
+
3271
+ # The name of the patch.
3272
+ # Corresponds to the JSON property `patchName`
3273
+ # @return [String]
3274
+ attr_accessor :patch_name
3275
+
3276
+ # The severity specified for this patch
3277
+ # Corresponds to the JSON property `severity`
3278
+ # @return [String]
3279
+ attr_accessor :severity
3280
+
3281
+ # Any summary information provided about this patch.
3282
+ # Corresponds to the JSON property `summary`
3283
+ # @return [String]
3284
+ attr_accessor :summary
3285
+
3286
+ def initialize(**args)
3287
+ update!(**args)
3288
+ end
3289
+
3290
+ # Update properties of this object
3291
+ def update!(**args)
3292
+ @category = args[:category] if args.key?(:category)
3293
+ @patch_name = args[:patch_name] if args.key?(:patch_name)
3294
+ @severity = args[:severity] if args.key?(:severity)
3295
+ @summary = args[:summary] if args.key?(:summary)
3296
+ end
3297
+ end
2176
3298
  end
2177
3299
  end
2178
3300
  end