google-api-client 0.46.2 → 0.51.0

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