google-api-client 0.32.1 → 0.40.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 (948) hide show
  1. checksums.yaml +5 -5
  2. data/.kokoro/continuous/linux.cfg +2 -2
  3. data/.kokoro/continuous/post.cfg +30 -0
  4. data/.kokoro/presubmit/linux.cfg +1 -1
  5. data/.kokoro/release.cfg +94 -0
  6. data/.repo-metadata.json +5 -0
  7. data/.rubocop.yml +5 -0
  8. data/.yardopts +16 -2
  9. data/CHANGELOG.md +1354 -0
  10. data/Gemfile +1 -0
  11. data/OVERVIEW.md +36 -0
  12. data/README.md +50 -2
  13. data/Rakefile +71 -2
  14. data/api_list_config.yaml +1 -0
  15. data/api_names.yaml +2 -0
  16. data/bin/generate-api +10 -2
  17. data/docs/api-keys.md +20 -0
  18. data/docs/auth.md +53 -0
  19. data/docs/client-secrets.md +69 -0
  20. data/docs/getting-started.md +340 -0
  21. data/docs/installation.md +0 -0
  22. data/docs/logging.md +34 -0
  23. data/docs/media-upload.md +25 -0
  24. data/docs/oauth-installed.md +191 -0
  25. data/docs/oauth-server.md +135 -0
  26. data/docs/oauth-web.md +280 -0
  27. data/docs/oauth.md +268 -0
  28. data/docs/pagination.md +29 -0
  29. data/docs/performance.md +25 -0
  30. data/generated/google/apis/abusiveexperiencereport_v1.rb +1 -4
  31. data/generated/google/apis/acceleratedmobilepageurl_v1.rb +1 -1
  32. data/generated/google/apis/accessapproval_v1/classes.rb +417 -0
  33. data/generated/google/apis/accessapproval_v1/representations.rb +203 -0
  34. data/generated/google/apis/accessapproval_v1/service.rb +869 -0
  35. data/generated/google/apis/{servicebroker_v1.rb → accessapproval_v1.rb} +8 -10
  36. data/generated/google/apis/accessapproval_v1beta1/classes.rb +35 -2
  37. data/generated/google/apis/accessapproval_v1beta1/representations.rb +13 -0
  38. data/generated/google/apis/accessapproval_v1beta1/service.rb +108 -6
  39. data/generated/google/apis/accessapproval_v1beta1.rb +1 -1
  40. data/generated/google/apis/accesscontextmanager_v1/classes.rb +357 -56
  41. data/generated/google/apis/accesscontextmanager_v1/representations.rb +137 -6
  42. data/generated/google/apis/accesscontextmanager_v1/service.rb +143 -5
  43. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  44. data/generated/google/apis/accesscontextmanager_v1beta/classes.rb +133 -125
  45. data/generated/google/apis/accesscontextmanager_v1beta/representations.rb +21 -27
  46. data/generated/google/apis/accesscontextmanager_v1beta/service.rb +6 -5
  47. data/generated/google/apis/accesscontextmanager_v1beta.rb +1 -1
  48. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +35 -5
  49. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +4 -0
  50. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  51. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +24 -2
  52. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +1 -0
  53. data/generated/google/apis/adexchangebuyer_v1_3.rb +1 -1
  54. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +25 -3
  55. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +1 -0
  56. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  57. data/generated/google/apis/adexperiencereport_v1.rb +1 -4
  58. data/generated/google/apis/admin_datatransfer_v1/classes.rb +5 -5
  59. data/generated/google/apis/admin_datatransfer_v1/service.rb +2 -2
  60. data/generated/google/apis/admin_datatransfer_v1.rb +1 -1
  61. data/generated/google/apis/admin_directory_v1/classes.rb +4 -150
  62. data/generated/google/apis/admin_directory_v1/representations.rb +0 -54
  63. data/generated/google/apis/admin_directory_v1/service.rb +0 -60
  64. data/generated/google/apis/admin_directory_v1.rb +4 -1
  65. data/generated/google/apis/admin_reports_v1/classes.rb +87 -44
  66. data/generated/google/apis/admin_reports_v1/service.rb +310 -64
  67. data/generated/google/apis/admin_reports_v1.rb +2 -2
  68. data/generated/google/apis/admob_v1/classes.rb +951 -0
  69. data/generated/google/apis/admob_v1/representations.rb +378 -0
  70. data/generated/google/apis/admob_v1/service.rb +196 -0
  71. data/generated/google/apis/{analytics_v2_4/classes.rb → admob_v1.rb} +11 -6
  72. data/generated/google/apis/adsense_v1_4.rb +1 -1
  73. data/generated/google/apis/adsensehost_v4_1/service.rb +5 -1
  74. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  75. data/generated/google/apis/alertcenter_v1beta1/classes.rb +259 -7
  76. data/generated/google/apis/alertcenter_v1beta1/representations.rb +126 -0
  77. data/generated/google/apis/alertcenter_v1beta1.rb +1 -1
  78. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  79. data/generated/google/apis/androiddeviceprovisioning_v1/classes.rb +2 -2
  80. data/generated/google/apis/androiddeviceprovisioning_v1.rb +1 -1
  81. data/generated/google/apis/androidenterprise_v1/classes.rb +39 -60
  82. data/generated/google/apis/androidenterprise_v1/representations.rb +1 -0
  83. data/generated/google/apis/androidenterprise_v1/service.rb +0 -403
  84. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  85. data/generated/google/apis/androidmanagement_v1/classes.rb +203 -6
  86. data/generated/google/apis/androidmanagement_v1/representations.rb +68 -0
  87. data/generated/google/apis/androidmanagement_v1/service.rb +6 -1
  88. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  89. data/generated/google/apis/androidpublisher_v1/classes.rb +0 -41
  90. data/generated/google/apis/androidpublisher_v1/representations.rb +0 -16
  91. data/generated/google/apis/androidpublisher_v1/service.rb +1 -81
  92. data/generated/google/apis/androidpublisher_v1.rb +1 -4
  93. data/generated/google/apis/androidpublisher_v1_1/classes.rb +0 -41
  94. data/generated/google/apis/androidpublisher_v1_1/representations.rb +0 -16
  95. data/generated/google/apis/androidpublisher_v1_1/service.rb +0 -80
  96. data/generated/google/apis/androidpublisher_v1_1.rb +1 -1
  97. data/generated/google/apis/androidpublisher_v2/classes.rb +37 -1755
  98. data/generated/google/apis/androidpublisher_v2/representations.rb +15 -804
  99. data/generated/google/apis/androidpublisher_v2/service.rb +0 -2359
  100. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  101. data/generated/google/apis/androidpublisher_v3/classes.rb +404 -65
  102. data/generated/google/apis/androidpublisher_v3/representations.rb +180 -27
  103. data/generated/google/apis/androidpublisher_v3/service.rb +162 -3
  104. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  105. data/generated/google/apis/apigee_v1/classes.rb +4928 -0
  106. data/generated/google/apis/apigee_v1/representations.rb +1822 -0
  107. data/generated/google/apis/apigee_v1/service.rb +5578 -0
  108. data/generated/google/apis/apigee_v1.rb +40 -0
  109. data/generated/google/apis/appengine_v1/classes.rb +7 -0
  110. data/generated/google/apis/appengine_v1/representations.rb +1 -0
  111. data/generated/google/apis/appengine_v1/service.rb +10 -6
  112. data/generated/google/apis/appengine_v1.rb +1 -1
  113. data/generated/google/apis/appengine_v1alpha.rb +1 -1
  114. data/generated/google/apis/appengine_v1beta/classes.rb +7 -38
  115. data/generated/google/apis/appengine_v1beta/representations.rb +1 -17
  116. data/generated/google/apis/appengine_v1beta/service.rb +10 -6
  117. data/generated/google/apis/appengine_v1beta.rb +1 -1
  118. data/generated/google/apis/appsactivity_v1.rb +1 -1
  119. data/generated/google/apis/appsmarket_v2.rb +1 -1
  120. data/generated/google/apis/{cloudprivatecatalogproducer_v1beta1 → artifactregistry_v1beta1}/classes.rb +591 -765
  121. data/generated/google/apis/{servicebroker_v1alpha1 → artifactregistry_v1beta1}/representations.rb +128 -115
  122. data/generated/google/apis/artifactregistry_v1beta1/service.rb +957 -0
  123. data/generated/google/apis/artifactregistry_v1beta1.rb +38 -0
  124. data/generated/google/apis/bigquery_v2/classes.rb +993 -43
  125. data/generated/google/apis/bigquery_v2/representations.rb +273 -2
  126. data/generated/google/apis/bigquery_v2/service.rb +137 -4
  127. data/generated/google/apis/bigquery_v2.rb +1 -1
  128. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +149 -59
  129. data/generated/google/apis/bigqueryconnection_v1beta1/representations.rb +2 -0
  130. data/generated/google/apis/bigqueryconnection_v1beta1/service.rb +11 -10
  131. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  132. data/generated/google/apis/bigquerydatatransfer_v1/classes.rb +49 -0
  133. data/generated/google/apis/bigquerydatatransfer_v1/representations.rb +19 -0
  134. data/generated/google/apis/bigquerydatatransfer_v1/service.rb +90 -34
  135. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  136. data/generated/google/apis/bigqueryreservation_v1/classes.rb +392 -16
  137. data/generated/google/apis/bigqueryreservation_v1/representations.rb +174 -6
  138. data/generated/google/apis/bigqueryreservation_v1/service.rb +758 -0
  139. data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
  140. data/generated/google/apis/bigqueryreservation_v1alpha2/classes.rb +109 -10
  141. data/generated/google/apis/bigqueryreservation_v1alpha2/representations.rb +26 -3
  142. data/generated/google/apis/bigqueryreservation_v1alpha2/service.rb +71 -0
  143. data/generated/google/apis/bigqueryreservation_v1alpha2.rb +1 -1
  144. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +166 -160
  145. data/generated/google/apis/bigqueryreservation_v1beta1/representations.rb +49 -38
  146. data/generated/google/apis/bigqueryreservation_v1beta1/service.rb +257 -146
  147. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  148. data/generated/google/apis/bigtableadmin_v1/classes.rb +21 -18
  149. data/generated/google/apis/bigtableadmin_v1.rb +1 -1
  150. data/generated/google/apis/bigtableadmin_v2/classes.rb +189 -82
  151. data/generated/google/apis/bigtableadmin_v2/service.rb +170 -58
  152. data/generated/google/apis/bigtableadmin_v2.rb +1 -1
  153. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +413 -0
  154. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +197 -0
  155. data/generated/google/apis/billingbudgets_v1beta1/service.rb +244 -0
  156. data/generated/google/apis/{servicebroker_v1beta1.rb → billingbudgets_v1beta1.rb} +9 -10
  157. data/generated/google/apis/binaryauthorization_v1/classes.rb +143 -58
  158. data/generated/google/apis/binaryauthorization_v1/service.rb +10 -2
  159. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  160. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +139 -57
  161. data/generated/google/apis/binaryauthorization_v1beta1/service.rb +10 -2
  162. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  163. data/generated/google/apis/blogger_v2/classes.rb +297 -45
  164. data/generated/google/apis/blogger_v2/representations.rb +105 -26
  165. data/generated/google/apis/blogger_v2/service.rb +79 -134
  166. data/generated/google/apis/blogger_v2.rb +5 -4
  167. data/generated/google/apis/blogger_v3/classes.rb +60 -53
  168. data/generated/google/apis/blogger_v3/representations.rb +10 -18
  169. data/generated/google/apis/blogger_v3/service.rb +183 -463
  170. data/generated/google/apis/blogger_v3.rb +4 -3
  171. data/generated/google/apis/books_v1/classes.rb +494 -242
  172. data/generated/google/apis/books_v1/representations.rb +145 -72
  173. data/generated/google/apis/books_v1/service.rb +354 -484
  174. data/generated/google/apis/books_v1.rb +3 -3
  175. data/generated/google/apis/calendar_v3/classes.rb +8 -21
  176. data/generated/google/apis/calendar_v3/service.rb +18 -30
  177. data/generated/google/apis/calendar_v3.rb +1 -1
  178. data/generated/google/apis/chat_v1/classes.rb +29 -3
  179. data/generated/google/apis/chat_v1/representations.rb +3 -0
  180. data/generated/google/apis/chat_v1/service.rb +5 -2
  181. data/generated/google/apis/chat_v1.rb +1 -1
  182. data/generated/google/apis/chromeuxreport_v1/classes.rb +297 -0
  183. data/generated/google/apis/chromeuxreport_v1/representations.rb +147 -0
  184. data/generated/google/apis/chromeuxreport_v1/service.rb +92 -0
  185. data/generated/google/apis/{pagespeedonline_v1.rb → chromeuxreport_v1.rb} +9 -9
  186. data/generated/google/apis/civicinfo_v2/classes.rb +0 -156
  187. data/generated/google/apis/civicinfo_v2/representations.rb +2 -60
  188. data/generated/google/apis/civicinfo_v2.rb +1 -1
  189. data/generated/google/apis/classroom_v1/classes.rb +14 -14
  190. data/generated/google/apis/classroom_v1/service.rb +11 -11
  191. data/generated/google/apis/classroom_v1.rb +1 -1
  192. data/generated/google/apis/cloudasset_v1/classes.rb +917 -195
  193. data/generated/google/apis/cloudasset_v1/representations.rb +234 -6
  194. data/generated/google/apis/cloudasset_v1/service.rb +363 -12
  195. data/generated/google/apis/cloudasset_v1.rb +2 -2
  196. data/generated/google/apis/cloudasset_v1beta1/classes.rb +139 -57
  197. data/generated/google/apis/cloudasset_v1beta1/service.rb +13 -4
  198. data/generated/google/apis/cloudasset_v1beta1.rb +2 -2
  199. data/generated/google/apis/cloudasset_v1p1beta1/classes.rb +701 -0
  200. data/generated/google/apis/cloudasset_v1p1beta1/representations.rb +201 -0
  201. data/generated/google/apis/cloudasset_v1p1beta1/service.rb +189 -0
  202. data/generated/google/apis/cloudasset_v1p1beta1.rb +34 -0
  203. data/generated/google/apis/cloudasset_v1p4beta1/classes.rb +924 -0
  204. data/generated/google/apis/cloudasset_v1p4beta1/representations.rb +377 -0
  205. data/generated/google/apis/cloudasset_v1p4beta1/service.rb +217 -0
  206. data/generated/google/apis/cloudasset_v1p4beta1.rb +34 -0
  207. data/generated/google/apis/cloudbilling_v1/classes.rb +179 -68
  208. data/generated/google/apis/cloudbilling_v1/representations.rb +0 -1
  209. data/generated/google/apis/cloudbilling_v1/service.rb +16 -9
  210. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  211. data/generated/google/apis/cloudbuild_v1/classes.rb +55 -10
  212. data/generated/google/apis/cloudbuild_v1/representations.rb +5 -0
  213. data/generated/google/apis/cloudbuild_v1/service.rb +139 -18
  214. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  215. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +170 -5
  216. data/generated/google/apis/cloudbuild_v1alpha1/representations.rb +63 -0
  217. data/generated/google/apis/cloudbuild_v1alpha1/service.rb +121 -5
  218. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  219. data/generated/google/apis/cloudbuild_v1alpha2/classes.rb +1283 -0
  220. data/generated/google/apis/cloudbuild_v1alpha2/representations.rb +491 -0
  221. data/generated/google/apis/cloudbuild_v1alpha2/service.rb +353 -0
  222. data/generated/google/apis/cloudbuild_v1alpha2.rb +34 -0
  223. data/generated/google/apis/clouddebugger_v2/classes.rb +34 -0
  224. data/generated/google/apis/clouddebugger_v2/representations.rb +4 -0
  225. data/generated/google/apis/clouddebugger_v2/service.rb +24 -17
  226. data/generated/google/apis/clouddebugger_v2.rb +2 -2
  227. data/generated/google/apis/clouderrorreporting_v1beta1/classes.rb +1 -1
  228. data/generated/google/apis/clouderrorreporting_v1beta1/service.rb +13 -13
  229. data/generated/google/apis/clouderrorreporting_v1beta1.rb +2 -2
  230. data/generated/google/apis/cloudfunctions_v1/classes.rb +161 -59
  231. data/generated/google/apis/cloudfunctions_v1/representations.rb +3 -0
  232. data/generated/google/apis/cloudfunctions_v1/service.rb +13 -4
  233. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  234. data/generated/google/apis/cloudfunctions_v1beta2/classes.rb +7 -0
  235. data/generated/google/apis/cloudfunctions_v1beta2/representations.rb +1 -0
  236. data/generated/google/apis/cloudfunctions_v1beta2/service.rb +10 -4
  237. data/generated/google/apis/cloudfunctions_v1beta2.rb +1 -1
  238. data/generated/google/apis/cloudidentity_v1/classes.rb +11 -8
  239. data/generated/google/apis/cloudidentity_v1/service.rb +22 -14
  240. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  241. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +1009 -69
  242. data/generated/google/apis/cloudidentity_v1beta1/representations.rb +390 -0
  243. data/generated/google/apis/cloudidentity_v1beta1/service.rb +189 -78
  244. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  245. data/generated/google/apis/cloudiot_v1/classes.rb +142 -57
  246. data/generated/google/apis/cloudiot_v1.rb +1 -1
  247. data/generated/google/apis/cloudkms_v1/classes.rb +461 -61
  248. data/generated/google/apis/cloudkms_v1/representations.rb +33 -0
  249. data/generated/google/apis/cloudkms_v1/service.rb +15 -3
  250. data/generated/google/apis/cloudkms_v1.rb +1 -1
  251. data/generated/google/apis/cloudprofiler_v2.rb +1 -1
  252. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +155 -71
  253. data/generated/google/apis/cloudresourcemanager_v1/service.rb +6 -3
  254. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  255. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +143 -59
  256. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +1 -1
  257. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  258. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +147 -67
  259. data/generated/google/apis/cloudresourcemanager_v2/service.rb +11 -13
  260. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  261. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +147 -67
  262. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +11 -13
  263. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  264. data/generated/google/apis/cloudscheduler_v1/classes.rb +3 -2
  265. data/generated/google/apis/cloudscheduler_v1.rb +1 -1
  266. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +3 -2
  267. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  268. data/generated/google/apis/cloudsearch_v1/classes.rb +86 -195
  269. data/generated/google/apis/cloudsearch_v1/representations.rb +1 -75
  270. data/generated/google/apis/cloudsearch_v1/service.rb +62 -10
  271. data/generated/google/apis/cloudsearch_v1.rb +8 -8
  272. data/generated/google/apis/cloudshell_v1/classes.rb +24 -1
  273. data/generated/google/apis/cloudshell_v1/representations.rb +3 -0
  274. data/generated/google/apis/cloudshell_v1.rb +1 -1
  275. data/generated/google/apis/cloudshell_v1alpha1/classes.rb +30 -1
  276. data/generated/google/apis/cloudshell_v1alpha1/representations.rb +5 -0
  277. data/generated/google/apis/cloudshell_v1alpha1.rb +1 -1
  278. data/generated/google/apis/cloudtasks_v2/classes.rb +388 -70
  279. data/generated/google/apis/cloudtasks_v2/representations.rb +65 -0
  280. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  281. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +148 -66
  282. data/generated/google/apis/cloudtasks_v2beta2/service.rb +6 -1
  283. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  284. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +156 -74
  285. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  286. data/generated/google/apis/cloudtrace_v1/service.rb +10 -4
  287. data/generated/google/apis/cloudtrace_v1.rb +5 -5
  288. data/generated/google/apis/cloudtrace_v2/classes.rb +8 -7
  289. data/generated/google/apis/cloudtrace_v2/service.rb +8 -4
  290. data/generated/google/apis/cloudtrace_v2.rb +5 -5
  291. data/generated/google/apis/cloudtrace_v2beta1/classes.rb +143 -0
  292. data/generated/google/apis/{oauth2_v1 → cloudtrace_v2beta1}/representations.rb +36 -27
  293. data/generated/google/apis/cloudtrace_v2beta1/service.rb +258 -0
  294. data/generated/google/apis/cloudtrace_v2beta1.rb +44 -0
  295. data/generated/google/apis/composer_v1/classes.rb +180 -0
  296. data/generated/google/apis/composer_v1/representations.rb +54 -0
  297. data/generated/google/apis/composer_v1.rb +1 -1
  298. data/generated/google/apis/composer_v1beta1/classes.rb +152 -5
  299. data/generated/google/apis/composer_v1beta1/representations.rb +64 -0
  300. data/generated/google/apis/composer_v1beta1/service.rb +5 -0
  301. data/generated/google/apis/composer_v1beta1.rb +1 -1
  302. data/generated/google/apis/compute_alpha/classes.rb +3252 -973
  303. data/generated/google/apis/compute_alpha/representations.rb +634 -69
  304. data/generated/google/apis/compute_alpha/service.rb +9085 -6210
  305. data/generated/google/apis/compute_alpha.rb +1 -1
  306. data/generated/google/apis/compute_beta/classes.rb +4787 -1066
  307. data/generated/google/apis/compute_beta/representations.rb +1394 -31
  308. data/generated/google/apis/compute_beta/service.rb +8858 -5018
  309. data/generated/google/apis/compute_beta.rb +1 -1
  310. data/generated/google/apis/compute_v1/classes.rb +2976 -599
  311. data/generated/google/apis/compute_v1/representations.rb +850 -0
  312. data/generated/google/apis/compute_v1/service.rb +4634 -2481
  313. data/generated/google/apis/compute_v1.rb +1 -1
  314. data/generated/google/apis/container_v1/classes.rb +925 -164
  315. data/generated/google/apis/container_v1/representations.rb +278 -0
  316. data/generated/google/apis/container_v1/service.rb +175 -158
  317. data/generated/google/apis/container_v1.rb +1 -1
  318. data/generated/google/apis/container_v1beta1/classes.rb +803 -340
  319. data/generated/google/apis/container_v1beta1/representations.rb +185 -39
  320. data/generated/google/apis/container_v1beta1/service.rb +294 -277
  321. data/generated/google/apis/container_v1beta1.rb +1 -1
  322. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +142 -57
  323. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  324. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +478 -59
  325. data/generated/google/apis/containeranalysis_v1beta1/representations.rb +159 -0
  326. data/generated/google/apis/containeranalysis_v1beta1/service.rb +26 -20
  327. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  328. data/generated/google/apis/content_v2/classes.rb +1566 -634
  329. data/generated/google/apis/content_v2/representations.rb +78 -115
  330. data/generated/google/apis/content_v2/service.rb +81 -206
  331. data/generated/google/apis/content_v2.rb +1 -1
  332. data/generated/google/apis/content_v2_1/classes.rb +2706 -683
  333. data/generated/google/apis/content_v2_1/representations.rb +551 -0
  334. data/generated/google/apis/content_v2_1/service.rb +520 -46
  335. data/generated/google/apis/content_v2_1.rb +1 -1
  336. data/generated/google/apis/customsearch_v1/classes.rb +1194 -353
  337. data/generated/google/apis/customsearch_v1/representations.rb +166 -95
  338. data/generated/google/apis/customsearch_v1/service.rb +373 -104
  339. data/generated/google/apis/customsearch_v1.rb +3 -3
  340. data/generated/google/apis/datacatalog_v1beta1/classes.rb +1907 -0
  341. data/generated/google/apis/datacatalog_v1beta1/representations.rb +739 -0
  342. data/generated/google/apis/datacatalog_v1beta1/service.rb +2247 -0
  343. data/generated/google/apis/{cloudprivatecatalog_v1beta1.rb → datacatalog_v1beta1.rb} +9 -9
  344. data/generated/google/apis/dataflow_v1b3/classes.rb +786 -11
  345. data/generated/google/apis/dataflow_v1b3/representations.rb +377 -1
  346. data/generated/google/apis/dataflow_v1b3/service.rb +626 -0
  347. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  348. data/generated/google/apis/datafusion_v1beta1/classes.rb +245 -362
  349. data/generated/google/apis/datafusion_v1beta1/representations.rb +29 -112
  350. data/generated/google/apis/datafusion_v1beta1/service.rb +15 -2
  351. data/generated/google/apis/datafusion_v1beta1.rb +1 -1
  352. data/generated/google/apis/dataproc_v1/classes.rb +533 -177
  353. data/generated/google/apis/dataproc_v1/representations.rb +85 -0
  354. data/generated/google/apis/dataproc_v1/service.rb +102 -36
  355. data/generated/google/apis/dataproc_v1.rb +1 -1
  356. data/generated/google/apis/dataproc_v1beta2/classes.rb +477 -182
  357. data/generated/google/apis/dataproc_v1beta2/representations.rb +81 -0
  358. data/generated/google/apis/dataproc_v1beta2/service.rb +199 -43
  359. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  360. data/generated/google/apis/datastore_v1/classes.rb +17 -23
  361. data/generated/google/apis/datastore_v1/service.rb +93 -9
  362. data/generated/google/apis/datastore_v1.rb +1 -1
  363. data/generated/google/apis/datastore_v1beta1.rb +1 -1
  364. data/generated/google/apis/datastore_v1beta3/classes.rb +6 -5
  365. data/generated/google/apis/datastore_v1beta3/service.rb +7 -7
  366. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  367. data/generated/google/apis/deploymentmanager_alpha/classes.rb +362 -176
  368. data/generated/google/apis/deploymentmanager_alpha/representations.rb +22 -4
  369. data/generated/google/apis/deploymentmanager_alpha/service.rb +198 -311
  370. data/generated/google/apis/deploymentmanager_alpha.rb +1 -1
  371. data/generated/google/apis/deploymentmanager_v2/classes.rb +295 -146
  372. data/generated/google/apis/deploymentmanager_v2/representations.rb +17 -1
  373. data/generated/google/apis/deploymentmanager_v2/service.rb +101 -99
  374. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  375. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +350 -170
  376. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +18 -1
  377. data/generated/google/apis/deploymentmanager_v2beta/service.rb +154 -152
  378. data/generated/google/apis/deploymentmanager_v2beta.rb +1 -1
  379. data/generated/google/apis/dfareporting_v3_3/classes.rb +39 -13
  380. data/generated/google/apis/dfareporting_v3_3/service.rb +9 -8
  381. data/generated/google/apis/dfareporting_v3_3.rb +1 -1
  382. data/generated/google/apis/{dfareporting_v3_2 → dfareporting_v3_4}/classes.rb +1361 -813
  383. data/generated/google/apis/{dfareporting_v3_2 → dfareporting_v3_4}/representations.rb +639 -396
  384. data/generated/google/apis/{dfareporting_v3_2 → dfareporting_v3_4}/service.rb +969 -1076
  385. data/generated/google/apis/{dfareporting_v3_2.rb → dfareporting_v3_4.rb} +6 -6
  386. data/generated/google/apis/dialogflow_v2/classes.rb +1778 -219
  387. data/generated/google/apis/dialogflow_v2/representations.rb +603 -0
  388. data/generated/google/apis/dialogflow_v2/service.rb +849 -158
  389. data/generated/google/apis/dialogflow_v2.rb +1 -1
  390. data/generated/google/apis/dialogflow_v2beta1/classes.rb +1776 -242
  391. data/generated/google/apis/dialogflow_v2beta1/representations.rb +592 -0
  392. data/generated/google/apis/dialogflow_v2beta1/service.rb +436 -172
  393. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  394. data/generated/google/apis/dialogflow_v3alpha1/classes.rb +5579 -0
  395. data/generated/google/apis/dialogflow_v3alpha1/representations.rb +2295 -0
  396. data/generated/google/apis/dialogflow_v3alpha1/service.rb +296 -0
  397. data/generated/google/apis/dialogflow_v3alpha1.rb +38 -0
  398. data/generated/google/apis/digitalassetlinks_v1.rb +1 -1
  399. data/generated/google/apis/displayvideo_v1/classes.rb +7527 -0
  400. data/generated/google/apis/displayvideo_v1/representations.rb +3034 -0
  401. data/generated/google/apis/displayvideo_v1/service.rb +3126 -0
  402. data/generated/google/apis/displayvideo_v1.rb +38 -0
  403. data/generated/google/apis/dlp_v2/classes.rb +798 -130
  404. data/generated/google/apis/dlp_v2/representations.rb +277 -3
  405. data/generated/google/apis/dlp_v2/service.rb +2074 -231
  406. data/generated/google/apis/dlp_v2.rb +1 -1
  407. data/generated/google/apis/dns_v1/classes.rb +220 -251
  408. data/generated/google/apis/dns_v1/representations.rb +49 -0
  409. data/generated/google/apis/dns_v1/service.rb +21 -141
  410. data/generated/google/apis/dns_v1.rb +1 -1
  411. data/generated/google/apis/dns_v1beta2/classes.rb +224 -261
  412. data/generated/google/apis/dns_v1beta2/representations.rb +49 -0
  413. data/generated/google/apis/dns_v1beta2/service.rb +21 -141
  414. data/generated/google/apis/dns_v1beta2.rb +1 -1
  415. data/generated/google/apis/dns_v2beta1/classes.rb +220 -251
  416. data/generated/google/apis/dns_v2beta1/representations.rb +49 -0
  417. data/generated/google/apis/dns_v2beta1/service.rb +21 -141
  418. data/generated/google/apis/dns_v2beta1.rb +1 -1
  419. data/generated/google/apis/docs_v1/classes.rb +608 -2
  420. data/generated/google/apis/docs_v1/representations.rb +211 -0
  421. data/generated/google/apis/docs_v1.rb +1 -1
  422. data/generated/google/apis/domainsrdap_v1.rb +1 -1
  423. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +1 -1
  424. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  425. data/generated/google/apis/doubleclickbidmanager_v1_1/classes.rb +860 -0
  426. data/generated/google/apis/doubleclickbidmanager_v1_1/representations.rb +388 -0
  427. data/generated/google/apis/{surveys_v2 → doubleclickbidmanager_v1_1}/service.rb +140 -110
  428. data/generated/google/apis/{proximitybeacon_v1beta1.rb → doubleclickbidmanager_v1_1.rb} +11 -11
  429. data/generated/google/apis/doubleclicksearch_v2/service.rb +0 -55
  430. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  431. data/generated/google/apis/drive_v2/classes.rb +58 -5
  432. data/generated/google/apis/drive_v2/representations.rb +18 -0
  433. data/generated/google/apis/drive_v2/service.rb +92 -118
  434. data/generated/google/apis/drive_v2.rb +1 -1
  435. data/generated/google/apis/drive_v3/classes.rb +66 -5
  436. data/generated/google/apis/drive_v3/representations.rb +18 -0
  437. data/generated/google/apis/drive_v3/service.rb +46 -14
  438. data/generated/google/apis/drive_v3.rb +1 -1
  439. data/generated/google/apis/driveactivity_v2/classes.rb +15 -5
  440. data/generated/google/apis/driveactivity_v2/representations.rb +2 -0
  441. data/generated/google/apis/driveactivity_v2.rb +1 -1
  442. data/generated/google/apis/factchecktools_v1alpha1.rb +1 -1
  443. data/generated/google/apis/fcm_v1/classes.rb +15 -0
  444. data/generated/google/apis/fcm_v1/representations.rb +2 -0
  445. data/generated/google/apis/fcm_v1.rb +1 -1
  446. data/generated/google/apis/file_v1/classes.rb +1235 -158
  447. data/generated/google/apis/file_v1/representations.rb +401 -22
  448. data/generated/google/apis/file_v1/service.rb +14 -10
  449. data/generated/google/apis/file_v1.rb +1 -1
  450. data/generated/google/apis/file_v1beta1/classes.rb +1236 -159
  451. data/generated/google/apis/file_v1beta1/representations.rb +401 -22
  452. data/generated/google/apis/file_v1beta1/service.rb +18 -11
  453. data/generated/google/apis/file_v1beta1.rb +1 -1
  454. data/generated/google/apis/firebase_v1beta1/classes.rb +20 -16
  455. data/generated/google/apis/firebase_v1beta1/representations.rb +2 -0
  456. data/generated/google/apis/firebase_v1beta1/service.rb +22 -16
  457. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  458. data/generated/google/apis/firebasedynamiclinks_v1.rb +1 -1
  459. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +174 -1
  460. data/generated/google/apis/firebasehosting_v1beta1/representations.rb +65 -0
  461. data/generated/google/apis/firebasehosting_v1beta1/service.rb +805 -2
  462. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  463. data/generated/google/apis/firebaseml_v1/classes.rb +213 -0
  464. data/generated/google/apis/{servicebroker_v1 → firebaseml_v1}/representations.rb +26 -28
  465. data/generated/google/apis/firebaseml_v1/service.rb +181 -0
  466. data/generated/google/apis/firebaseml_v1.rb +34 -0
  467. data/generated/google/apis/firebaseml_v1beta2/classes.rb +344 -0
  468. data/generated/google/apis/{cloudprivatecatalog_v1beta1 → firebaseml_v1beta2}/representations.rb +62 -31
  469. data/generated/google/apis/firebaseml_v1beta2/service.rb +267 -0
  470. data/generated/google/apis/firebaseml_v1beta2.rb +34 -0
  471. data/generated/google/apis/firebaserules_v1/classes.rb +113 -0
  472. data/generated/google/apis/firebaserules_v1/representations.rb +52 -0
  473. data/generated/google/apis/firebaserules_v1.rb +1 -1
  474. data/generated/google/apis/firestore_v1/classes.rb +16 -5
  475. data/generated/google/apis/firestore_v1/representations.rb +2 -0
  476. data/generated/google/apis/firestore_v1/service.rb +26 -24
  477. data/generated/google/apis/firestore_v1.rb +1 -1
  478. data/generated/google/apis/firestore_v1beta1/classes.rb +16 -5
  479. data/generated/google/apis/firestore_v1beta1/representations.rb +2 -0
  480. data/generated/google/apis/firestore_v1beta1/service.rb +18 -16
  481. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  482. data/generated/google/apis/firestore_v1beta2.rb +1 -1
  483. data/generated/google/apis/fitness_v1/classes.rb +189 -153
  484. data/generated/google/apis/fitness_v1/service.rb +192 -198
  485. data/generated/google/apis/fitness_v1.rb +14 -14
  486. data/generated/google/apis/games_configuration_v1configuration/classes.rb +38 -53
  487. data/generated/google/apis/games_configuration_v1configuration/service.rb +58 -169
  488. data/generated/google/apis/games_configuration_v1configuration.rb +4 -3
  489. data/generated/google/apis/games_management_v1management/classes.rb +50 -109
  490. data/generated/google/apis/games_management_v1management/representations.rb +0 -30
  491. data/generated/google/apis/games_management_v1management/service.rb +116 -452
  492. data/generated/google/apis/games_management_v1management.rb +6 -4
  493. data/generated/google/apis/games_v1/classes.rb +14 -293
  494. data/generated/google/apis/games_v1/representations.rb +2 -98
  495. data/generated/google/apis/games_v1/service.rb +3 -135
  496. data/generated/google/apis/games_v1.rb +1 -1
  497. data/generated/google/apis/gameservices_v1beta/classes.rb +2354 -0
  498. data/generated/google/apis/gameservices_v1beta/representations.rb +971 -0
  499. data/generated/google/apis/gameservices_v1beta/service.rb +1472 -0
  500. data/generated/google/apis/gameservices_v1beta.rb +34 -0
  501. data/generated/google/apis/genomics_v1.rb +1 -1
  502. data/generated/google/apis/genomics_v1alpha2.rb +1 -1
  503. data/generated/google/apis/genomics_v2alpha1/classes.rb +32 -0
  504. data/generated/google/apis/genomics_v2alpha1/representations.rb +16 -0
  505. data/generated/google/apis/genomics_v2alpha1/service.rb +34 -0
  506. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  507. data/generated/google/apis/gmail_v1/classes.rb +6 -2
  508. data/generated/google/apis/gmail_v1/service.rb +1 -1
  509. data/generated/google/apis/gmail_v1.rb +13 -1
  510. data/generated/google/apis/healthcare_v1/classes.rb +2659 -0
  511. data/generated/google/apis/healthcare_v1/representations.rb +1114 -0
  512. data/generated/google/apis/healthcare_v1/service.rb +3439 -0
  513. data/generated/google/apis/healthcare_v1.rb +34 -0
  514. data/generated/google/apis/healthcare_v1beta1/classes.rb +1013 -128
  515. data/generated/google/apis/healthcare_v1beta1/representations.rb +341 -1
  516. data/generated/google/apis/healthcare_v1beta1/service.rb +762 -275
  517. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  518. data/generated/google/apis/homegraph_v1/classes.rb +79 -56
  519. data/generated/google/apis/homegraph_v1/representations.rb +2 -1
  520. data/generated/google/apis/homegraph_v1/service.rb +43 -47
  521. data/generated/google/apis/homegraph_v1.rb +1 -1
  522. data/generated/google/apis/iam_v1/classes.rb +201 -169
  523. data/generated/google/apis/iam_v1/representations.rb +1 -6
  524. data/generated/google/apis/iam_v1/service.rb +18 -21
  525. data/generated/google/apis/iam_v1.rb +1 -1
  526. data/generated/google/apis/iamcredentials_v1/classes.rb +40 -8
  527. data/generated/google/apis/iamcredentials_v1/service.rb +4 -4
  528. data/generated/google/apis/iamcredentials_v1.rb +1 -1
  529. data/generated/google/apis/iap_v1/classes.rb +691 -59
  530. data/generated/google/apis/iap_v1/representations.rb +254 -0
  531. data/generated/google/apis/iap_v1/service.rb +362 -0
  532. data/generated/google/apis/iap_v1.rb +1 -1
  533. data/generated/google/apis/iap_v1beta1/classes.rb +144 -59
  534. data/generated/google/apis/iap_v1beta1.rb +1 -1
  535. data/generated/google/apis/indexing_v3.rb +1 -1
  536. data/generated/google/apis/jobs_v2/classes.rb +167 -0
  537. data/generated/google/apis/jobs_v2/representations.rb +40 -0
  538. data/generated/google/apis/jobs_v2.rb +1 -1
  539. data/generated/google/apis/jobs_v3/classes.rb +180 -0
  540. data/generated/google/apis/jobs_v3/representations.rb +41 -0
  541. data/generated/google/apis/jobs_v3.rb +1 -1
  542. data/generated/google/apis/jobs_v3p1beta1/classes.rb +187 -2
  543. data/generated/google/apis/jobs_v3p1beta1/representations.rb +41 -0
  544. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  545. data/generated/google/apis/kgsearch_v1.rb +1 -1
  546. data/generated/google/apis/language_v1/classes.rb +6 -6
  547. data/generated/google/apis/language_v1.rb +1 -1
  548. data/generated/google/apis/language_v1beta1/classes.rb +5 -5
  549. data/generated/google/apis/language_v1beta1.rb +1 -1
  550. data/generated/google/apis/language_v1beta2/classes.rb +23 -7
  551. data/generated/google/apis/language_v1beta2/representations.rb +2 -0
  552. data/generated/google/apis/language_v1beta2.rb +1 -1
  553. data/generated/google/apis/libraryagent_v1.rb +1 -1
  554. data/generated/google/apis/licensing_v1/classes.rb +15 -7
  555. data/generated/google/apis/licensing_v1/service.rb +81 -37
  556. data/generated/google/apis/licensing_v1.rb +4 -4
  557. data/generated/google/apis/lifesciences_v2beta/classes.rb +1329 -0
  558. data/generated/google/apis/lifesciences_v2beta/representations.rb +533 -0
  559. data/generated/google/apis/lifesciences_v2beta/service.rb +303 -0
  560. data/generated/google/apis/lifesciences_v2beta.rb +35 -0
  561. data/generated/google/apis/logging_v2/classes.rb +292 -91
  562. data/generated/google/apis/logging_v2/representations.rb +51 -0
  563. data/generated/google/apis/logging_v2/service.rb +888 -15
  564. data/generated/google/apis/logging_v2.rb +6 -6
  565. data/generated/google/apis/managedidentities_v1/classes.rb +1571 -0
  566. data/generated/google/apis/managedidentities_v1/representations.rb +560 -0
  567. data/generated/google/apis/managedidentities_v1/service.rb +779 -0
  568. data/generated/google/apis/managedidentities_v1.rb +35 -0
  569. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +1570 -0
  570. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +560 -0
  571. data/generated/google/apis/managedidentities_v1alpha1/service.rb +782 -0
  572. data/generated/google/apis/{servicebroker_v1alpha1.rb → managedidentities_v1alpha1.rb} +9 -10
  573. data/generated/google/apis/managedidentities_v1beta1/classes.rb +1568 -0
  574. data/generated/google/apis/managedidentities_v1beta1/representations.rb +560 -0
  575. data/generated/google/apis/managedidentities_v1beta1/service.rb +778 -0
  576. data/generated/google/apis/managedidentities_v1beta1.rb +35 -0
  577. data/generated/google/apis/manufacturers_v1/classes.rb +7 -0
  578. data/generated/google/apis/manufacturers_v1/representations.rb +1 -0
  579. data/generated/google/apis/manufacturers_v1.rb +1 -1
  580. data/generated/google/apis/memcache_v1beta2/classes.rb +1587 -0
  581. data/generated/google/apis/memcache_v1beta2/representations.rb +557 -0
  582. data/generated/google/apis/memcache_v1beta2/service.rb +677 -0
  583. data/generated/google/apis/memcache_v1beta2.rb +35 -0
  584. data/generated/google/apis/ml_v1/classes.rb +1518 -233
  585. data/generated/google/apis/ml_v1/representations.rb +559 -0
  586. data/generated/google/apis/ml_v1/service.rb +560 -25
  587. data/generated/google/apis/ml_v1.rb +5 -2
  588. data/generated/google/apis/monitoring_v1/classes.rb +1231 -0
  589. data/generated/google/apis/monitoring_v1/representations.rb +513 -0
  590. data/generated/google/apis/monitoring_v1/service.rb +246 -0
  591. data/generated/google/apis/monitoring_v1.rb +47 -0
  592. data/generated/google/apis/monitoring_v3/classes.rb +1330 -172
  593. data/generated/google/apis/monitoring_v3/representations.rb +482 -1
  594. data/generated/google/apis/monitoring_v3/service.rb +614 -162
  595. data/generated/google/apis/monitoring_v3.rb +7 -8
  596. data/generated/google/apis/networkmanagement_v1/classes.rb +1868 -0
  597. data/generated/google/apis/networkmanagement_v1/representations.rb +661 -0
  598. data/generated/google/apis/networkmanagement_v1/service.rb +667 -0
  599. data/generated/google/apis/networkmanagement_v1.rb +35 -0
  600. data/generated/google/apis/networkmanagement_v1beta1/classes.rb +1868 -0
  601. data/generated/google/apis/networkmanagement_v1beta1/representations.rb +661 -0
  602. data/generated/google/apis/networkmanagement_v1beta1/service.rb +667 -0
  603. data/generated/google/apis/{cloudprivatecatalogproducer_v1beta1.rb → networkmanagement_v1beta1.rb} +9 -9
  604. data/generated/google/apis/oauth2_v2/classes.rb +1 -81
  605. data/generated/google/apis/oauth2_v2/representations.rb +2 -36
  606. data/generated/google/apis/oauth2_v2/service.rb +10 -42
  607. data/generated/google/apis/oauth2_v2.rb +5 -5
  608. data/generated/google/apis/osconfig_v1/classes.rb +1225 -0
  609. data/generated/google/apis/osconfig_v1/representations.rb +506 -0
  610. data/generated/google/apis/osconfig_v1/service.rb +386 -0
  611. data/generated/google/apis/osconfig_v1.rb +35 -0
  612. data/generated/google/apis/osconfig_v1beta/classes.rb +2362 -0
  613. data/generated/google/apis/osconfig_v1beta/representations.rb +966 -0
  614. data/generated/google/apis/osconfig_v1beta/service.rb +605 -0
  615. data/generated/google/apis/osconfig_v1beta.rb +35 -0
  616. data/generated/google/apis/oslogin_v1/classes.rb +1 -1
  617. data/generated/google/apis/oslogin_v1/service.rb +10 -7
  618. data/generated/google/apis/oslogin_v1.rb +1 -2
  619. data/generated/google/apis/oslogin_v1alpha/service.rb +0 -1
  620. data/generated/google/apis/oslogin_v1alpha.rb +1 -2
  621. data/generated/google/apis/oslogin_v1beta/classes.rb +1 -1
  622. data/generated/google/apis/oslogin_v1beta/service.rb +9 -6
  623. data/generated/google/apis/oslogin_v1beta.rb +1 -2
  624. data/generated/google/apis/pagespeedonline_v5/classes.rb +534 -495
  625. data/generated/google/apis/pagespeedonline_v5/representations.rb +226 -221
  626. data/generated/google/apis/pagespeedonline_v5/service.rb +22 -24
  627. data/generated/google/apis/pagespeedonline_v5.rb +9 -4
  628. data/generated/google/apis/people_v1/classes.rb +104 -81
  629. data/generated/google/apis/people_v1/representations.rb +1 -0
  630. data/generated/google/apis/people_v1/service.rb +72 -79
  631. data/generated/google/apis/people_v1.rb +10 -1
  632. data/generated/google/apis/policytroubleshooter_v1/classes.rb +765 -0
  633. data/generated/google/apis/policytroubleshooter_v1/representations.rb +203 -0
  634. data/generated/google/apis/policytroubleshooter_v1/service.rb +90 -0
  635. data/generated/google/apis/policytroubleshooter_v1.rb +34 -0
  636. data/generated/google/apis/policytroubleshooter_v1beta/classes.rb +254 -111
  637. data/generated/google/apis/policytroubleshooter_v1beta/service.rb +2 -3
  638. data/generated/google/apis/policytroubleshooter_v1beta.rb +1 -1
  639. data/generated/google/apis/poly_v1.rb +1 -1
  640. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +1137 -0
  641. data/generated/google/apis/prod_tt_sasportal_v1alpha1/representations.rb +532 -0
  642. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +1676 -0
  643. data/generated/google/apis/{pagespeedonline_v4.rb → prod_tt_sasportal_v1alpha1.rb} +12 -10
  644. data/generated/google/apis/pubsub_v1/classes.rb +248 -76
  645. data/generated/google/apis/pubsub_v1/representations.rb +18 -0
  646. data/generated/google/apis/pubsub_v1/service.rb +43 -31
  647. data/generated/google/apis/pubsub_v1.rb +1 -1
  648. data/generated/google/apis/pubsub_v1beta1a.rb +1 -1
  649. data/generated/google/apis/pubsub_v1beta2/classes.rb +144 -59
  650. data/generated/google/apis/pubsub_v1beta2/service.rb +10 -2
  651. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  652. data/generated/google/apis/recommender_v1beta1/classes.rb +221 -7
  653. data/generated/google/apis/recommender_v1beta1/representations.rb +96 -0
  654. data/generated/google/apis/recommender_v1beta1/service.rb +146 -19
  655. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  656. data/generated/google/apis/redis_v1/classes.rb +48 -18
  657. data/generated/google/apis/redis_v1/representations.rb +14 -0
  658. data/generated/google/apis/redis_v1/service.rb +41 -5
  659. data/generated/google/apis/redis_v1.rb +1 -1
  660. data/generated/google/apis/redis_v1beta1/classes.rb +48 -18
  661. data/generated/google/apis/redis_v1beta1/representations.rb +14 -0
  662. data/generated/google/apis/redis_v1beta1/service.rb +41 -5
  663. data/generated/google/apis/redis_v1beta1.rb +1 -1
  664. data/generated/google/apis/remotebuildexecution_v1/classes.rb +352 -37
  665. data/generated/google/apis/remotebuildexecution_v1/representations.rb +99 -0
  666. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  667. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +352 -37
  668. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +99 -0
  669. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  670. data/generated/google/apis/remotebuildexecution_v2/classes.rb +362 -45
  671. data/generated/google/apis/remotebuildexecution_v2/representations.rb +100 -0
  672. data/generated/google/apis/remotebuildexecution_v2/service.rb +5 -1
  673. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  674. data/generated/google/apis/reseller_v1/service.rb +1 -1
  675. data/generated/google/apis/reseller_v1.rb +1 -1
  676. data/generated/google/apis/run_v1/classes.rb +308 -325
  677. data/generated/google/apis/run_v1/representations.rb +63 -103
  678. data/generated/google/apis/run_v1/service.rb +336 -933
  679. data/generated/google/apis/run_v1.rb +1 -1
  680. data/generated/google/apis/run_v1alpha1/classes.rb +1045 -392
  681. data/generated/google/apis/run_v1alpha1/representations.rb +343 -144
  682. data/generated/google/apis/run_v1alpha1/service.rb +1735 -492
  683. data/generated/google/apis/run_v1alpha1.rb +1 -1
  684. data/generated/google/apis/run_v1beta1/classes.rb +1 -1
  685. data/generated/google/apis/run_v1beta1.rb +4 -1
  686. data/generated/google/apis/runtimeconfig_v1.rb +1 -1
  687. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +139 -57
  688. data/generated/google/apis/runtimeconfig_v1beta1/service.rb +8 -5
  689. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  690. data/generated/google/apis/safebrowsing_v4/classes.rb +2 -2
  691. data/generated/google/apis/safebrowsing_v4.rb +1 -1
  692. data/generated/google/apis/sasportal_v1alpha1/classes.rb +1137 -0
  693. data/generated/google/apis/sasportal_v1alpha1/representations.rb +532 -0
  694. data/generated/google/apis/sasportal_v1alpha1/service.rb +1676 -0
  695. data/generated/google/apis/{pagespeedonline_v2.rb → sasportal_v1alpha1.rb} +12 -10
  696. data/generated/google/apis/script_v1/classes.rb +4 -22
  697. data/generated/google/apis/script_v1.rb +1 -1
  698. data/generated/google/apis/searchconsole_v1.rb +1 -1
  699. data/generated/google/apis/secretmanager_v1/classes.rb +982 -0
  700. data/generated/google/apis/{cloudprivatecatalogproducer_v1beta1 → secretmanager_v1}/representations.rb +105 -116
  701. data/generated/google/apis/secretmanager_v1/service.rb +681 -0
  702. data/generated/google/apis/secretmanager_v1.rb +35 -0
  703. data/generated/google/apis/secretmanager_v1beta1/classes.rb +982 -0
  704. data/generated/google/apis/{servicebroker_v1beta1 → secretmanager_v1beta1}/representations.rb +114 -142
  705. data/generated/google/apis/secretmanager_v1beta1/service.rb +681 -0
  706. data/generated/google/apis/secretmanager_v1beta1.rb +35 -0
  707. data/generated/google/apis/securitycenter_v1/classes.rb +862 -138
  708. data/generated/google/apis/securitycenter_v1/representations.rb +221 -0
  709. data/generated/google/apis/securitycenter_v1/service.rb +225 -21
  710. data/generated/google/apis/securitycenter_v1.rb +4 -4
  711. data/generated/google/apis/securitycenter_v1beta1/classes.rb +782 -125
  712. data/generated/google/apis/securitycenter_v1beta1/representations.rb +192 -2
  713. data/generated/google/apis/securitycenter_v1beta1/service.rb +53 -51
  714. data/generated/google/apis/securitycenter_v1beta1.rb +4 -4
  715. data/generated/google/apis/securitycenter_v1p1alpha1/classes.rb +568 -0
  716. data/generated/google/apis/securitycenter_v1p1alpha1/representations.rb +190 -0
  717. data/generated/google/apis/securitycenter_v1p1alpha1/service.rb +3 -3
  718. data/generated/google/apis/securitycenter_v1p1alpha1.rb +4 -4
  719. data/generated/google/apis/securitycenter_v1p1beta1/classes.rb +2205 -0
  720. data/generated/google/apis/securitycenter_v1p1beta1/representations.rb +751 -0
  721. data/generated/google/apis/securitycenter_v1p1beta1/service.rb +1329 -0
  722. data/generated/google/apis/securitycenter_v1p1beta1.rb +35 -0
  723. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +419 -64
  724. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +98 -0
  725. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  726. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +4159 -0
  727. data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +1307 -0
  728. data/generated/google/apis/serviceconsumermanagement_v1beta1/service.rb +428 -0
  729. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +34 -0
  730. data/generated/google/apis/servicecontrol_v1/classes.rb +255 -20
  731. data/generated/google/apis/servicecontrol_v1/representations.rb +87 -1
  732. data/generated/google/apis/servicecontrol_v1/service.rb +2 -1
  733. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  734. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +816 -0
  735. data/generated/google/apis/{surveys_v2 → servicedirectory_v1beta1}/representations.rb +103 -104
  736. data/generated/google/apis/servicedirectory_v1beta1/service.rb +992 -0
  737. data/generated/google/apis/servicedirectory_v1beta1.rb +35 -0
  738. data/generated/google/apis/servicemanagement_v1/classes.rb +459 -125
  739. data/generated/google/apis/servicemanagement_v1/representations.rb +61 -0
  740. data/generated/google/apis/servicemanagement_v1/service.rb +40 -29
  741. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  742. data/generated/google/apis/servicenetworking_v1/classes.rb +986 -68
  743. data/generated/google/apis/servicenetworking_v1/representations.rb +403 -0
  744. data/generated/google/apis/servicenetworking_v1/service.rb +351 -23
  745. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  746. data/generated/google/apis/servicenetworking_v1beta/classes.rb +575 -57
  747. data/generated/google/apis/servicenetworking_v1beta/representations.rb +223 -0
  748. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  749. data/generated/google/apis/serviceusage_v1/classes.rb +417 -64
  750. data/generated/google/apis/serviceusage_v1/representations.rb +110 -0
  751. data/generated/google/apis/serviceusage_v1/service.rb +42 -0
  752. data/generated/google/apis/serviceusage_v1.rb +1 -1
  753. data/generated/google/apis/serviceusage_v1beta1/classes.rb +644 -64
  754. data/generated/google/apis/serviceusage_v1beta1/representations.rb +198 -0
  755. data/generated/google/apis/serviceusage_v1beta1/service.rb +472 -0
  756. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  757. data/generated/google/apis/sheets_v4/classes.rb +1741 -253
  758. data/generated/google/apis/sheets_v4/representations.rb +283 -0
  759. data/generated/google/apis/sheets_v4/service.rb +9 -11
  760. data/generated/google/apis/sheets_v4.rb +1 -1
  761. data/generated/google/apis/slides_v1/classes.rb +1 -1
  762. data/generated/google/apis/slides_v1/service.rb +1 -1
  763. data/generated/google/apis/slides_v1.rb +1 -1
  764. data/generated/google/apis/sourcerepo_v1/classes.rb +173 -67
  765. data/generated/google/apis/sourcerepo_v1/service.rb +9 -1
  766. data/generated/google/apis/sourcerepo_v1.rb +1 -1
  767. data/generated/google/apis/spanner_v1/classes.rb +706 -71
  768. data/generated/google/apis/spanner_v1/representations.rb +194 -0
  769. data/generated/google/apis/spanner_v1/service.rb +770 -7
  770. data/generated/google/apis/spanner_v1.rb +1 -1
  771. data/generated/google/apis/speech_v1/classes.rb +15 -11
  772. data/generated/google/apis/speech_v1/representations.rb +2 -1
  773. data/generated/google/apis/speech_v1.rb +1 -1
  774. data/generated/google/apis/speech_v1p1beta1/classes.rb +197 -11
  775. data/generated/google/apis/speech_v1p1beta1/representations.rb +79 -1
  776. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  777. data/generated/google/apis/{speech_v2beta → speech_v2beta1}/classes.rb +16 -8
  778. data/generated/google/apis/{speech_v2beta → speech_v2beta1}/representations.rb +7 -6
  779. data/generated/google/apis/{speech_v2beta → speech_v2beta1}/service.rb +13 -13
  780. data/generated/google/apis/{speech_v2beta.rb → speech_v2beta1.rb} +6 -6
  781. data/generated/google/apis/{sqladmin_v1beta4 → sql_v1beta4}/classes.rb +701 -383
  782. data/generated/google/apis/{sqladmin_v1beta4 → sql_v1beta4}/representations.rb +209 -104
  783. data/generated/google/apis/{sqladmin_v1beta4 → sql_v1beta4}/service.rb +579 -597
  784. data/generated/google/apis/{sqladmin_v1beta4.rb → sql_v1beta4.rb} +7 -8
  785. data/generated/google/apis/storage_v1/classes.rb +73 -7
  786. data/generated/google/apis/storage_v1/representations.rb +10 -0
  787. data/generated/google/apis/storage_v1/service.rb +29 -4
  788. data/generated/google/apis/storage_v1.rb +1 -1
  789. data/generated/google/apis/storage_v1beta2/service.rb +1 -1
  790. data/generated/google/apis/storage_v1beta2.rb +1 -1
  791. data/generated/google/apis/storagetransfer_v1/classes.rb +280 -79
  792. data/generated/google/apis/storagetransfer_v1/representations.rb +52 -0
  793. data/generated/google/apis/storagetransfer_v1/service.rb +19 -41
  794. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  795. data/generated/google/apis/streetviewpublish_v1/classes.rb +1 -1
  796. data/generated/google/apis/streetviewpublish_v1/service.rb +1 -1
  797. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  798. data/generated/google/apis/tagmanager_v1/classes.rb +2 -0
  799. data/generated/google/apis/tagmanager_v1/service.rb +1 -1
  800. data/generated/google/apis/tagmanager_v1.rb +1 -1
  801. data/generated/google/apis/tagmanager_v2/classes.rb +170 -0
  802. data/generated/google/apis/tagmanager_v2/representations.rb +49 -0
  803. data/generated/google/apis/tagmanager_v2/service.rb +1 -1
  804. data/generated/google/apis/tagmanager_v2.rb +1 -1
  805. data/generated/google/apis/tasks_v1/classes.rb +26 -25
  806. data/generated/google/apis/tasks_v1/representations.rb +4 -8
  807. data/generated/google/apis/tasks_v1/service.rb +78 -124
  808. data/generated/google/apis/tasks_v1.rb +3 -3
  809. data/generated/google/apis/testing_v1/classes.rb +187 -1
  810. data/generated/google/apis/testing_v1/representations.rb +93 -0
  811. data/generated/google/apis/testing_v1.rb +1 -1
  812. data/generated/google/apis/texttospeech_v1.rb +1 -1
  813. data/generated/google/apis/texttospeech_v1beta1.rb +1 -1
  814. data/generated/google/apis/toolresults_v1beta3/classes.rb +2061 -1133
  815. data/generated/google/apis/toolresults_v1beta3/representations.rb +723 -13
  816. data/generated/google/apis/toolresults_v1beta3/service.rb +663 -591
  817. data/generated/google/apis/toolresults_v1beta3.rb +2 -2
  818. data/generated/google/apis/tpu_v1/classes.rb +3 -4
  819. data/generated/google/apis/tpu_v1.rb +1 -1
  820. data/generated/google/apis/tpu_v1alpha1/classes.rb +3 -4
  821. data/generated/google/apis/tpu_v1alpha1.rb +1 -1
  822. data/generated/google/apis/translate_v3/classes.rb +946 -0
  823. data/generated/google/apis/translate_v3/representations.rb +439 -0
  824. data/generated/google/apis/translate_v3/service.rb +781 -0
  825. data/generated/google/apis/translate_v3.rb +37 -0
  826. data/generated/google/apis/translate_v3beta1.rb +1 -1
  827. data/generated/google/apis/vault_v1/classes.rb +10 -7
  828. data/generated/google/apis/vault_v1/service.rb +7 -7
  829. data/generated/google/apis/vault_v1.rb +1 -1
  830. data/generated/google/apis/verifiedaccess_v1/service.rb +2 -2
  831. data/generated/google/apis/verifiedaccess_v1.rb +3 -3
  832. data/generated/google/apis/videointelligence_v1/classes.rb +1205 -118
  833. data/generated/google/apis/videointelligence_v1/representations.rb +492 -0
  834. data/generated/google/apis/videointelligence_v1.rb +1 -1
  835. data/generated/google/apis/videointelligence_v1beta2/classes.rb +1205 -118
  836. data/generated/google/apis/videointelligence_v1beta2/representations.rb +492 -0
  837. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  838. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +1216 -129
  839. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +492 -0
  840. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  841. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +1205 -118
  842. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +492 -0
  843. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  844. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +1290 -116
  845. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +526 -0
  846. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  847. data/generated/google/apis/vision_v1/classes.rb +67 -1
  848. data/generated/google/apis/vision_v1/representations.rb +32 -0
  849. data/generated/google/apis/vision_v1/service.rb +1 -1
  850. data/generated/google/apis/vision_v1.rb +1 -1
  851. data/generated/google/apis/vision_v1p1beta1/classes.rb +67 -1
  852. data/generated/google/apis/vision_v1p1beta1/representations.rb +32 -0
  853. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  854. data/generated/google/apis/vision_v1p2beta1/classes.rb +67 -1
  855. data/generated/google/apis/vision_v1p2beta1/representations.rb +32 -0
  856. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  857. data/generated/google/apis/websecurityscanner_v1/classes.rb +75 -4
  858. data/generated/google/apis/websecurityscanner_v1/representations.rb +32 -0
  859. data/generated/google/apis/websecurityscanner_v1/service.rb +1 -1
  860. data/generated/google/apis/websecurityscanner_v1.rb +2 -2
  861. data/generated/google/apis/websecurityscanner_v1alpha/classes.rb +5 -4
  862. data/generated/google/apis/websecurityscanner_v1alpha/service.rb +1 -1
  863. data/generated/google/apis/websecurityscanner_v1alpha.rb +2 -2
  864. data/generated/google/apis/websecurityscanner_v1beta/classes.rb +77 -6
  865. data/generated/google/apis/websecurityscanner_v1beta/representations.rb +32 -0
  866. data/generated/google/apis/websecurityscanner_v1beta/service.rb +1 -1
  867. data/generated/google/apis/websecurityscanner_v1beta.rb +2 -2
  868. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  869. data/generated/google/apis/youtube_analytics_v2.rb +1 -1
  870. data/generated/google/apis/youtube_partner_v1/service.rb +2 -2
  871. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  872. data/generated/google/apis/youtube_v3/classes.rb +1376 -1262
  873. data/generated/google/apis/youtube_v3/representations.rb +99 -191
  874. data/generated/google/apis/youtube_v3/service.rb +1829 -2150
  875. data/generated/google/apis/youtube_v3.rb +8 -5
  876. data/generated/google/apis/youtubereporting_v1.rb +1 -1
  877. data/google-api-client.gemspec +6 -3
  878. data/lib/google/apis/core/api_command.rb +7 -0
  879. data/lib/google/apis/core/base_service.rb +1 -1
  880. data/lib/google/apis/core/http_command.rb +11 -10
  881. data/lib/google/apis/core/upload.rb +4 -0
  882. data/lib/google/apis/generator/annotator.rb +1 -1
  883. data/lib/google/apis/version.rb +9 -4
  884. data/rakelib/devsite/devsite_builder.rb +126 -0
  885. data/rakelib/devsite/link_checker.rb +64 -0
  886. data/rakelib/devsite/repo_metadata.rb +56 -0
  887. metadata +193 -110
  888. data/generated/google/apis/analytics_v2_4/representations.rb +0 -26
  889. data/generated/google/apis/analytics_v2_4/service.rb +0 -331
  890. data/generated/google/apis/analytics_v2_4.rb +0 -37
  891. data/generated/google/apis/cloudprivatecatalog_v1beta1/classes.rb +0 -358
  892. data/generated/google/apis/cloudprivatecatalog_v1beta1/service.rb +0 -486
  893. data/generated/google/apis/cloudprivatecatalogproducer_v1beta1/service.rb +0 -1081
  894. data/generated/google/apis/commentanalyzer_v1alpha1/classes.rb +0 -485
  895. data/generated/google/apis/commentanalyzer_v1alpha1/representations.rb +0 -210
  896. data/generated/google/apis/commentanalyzer_v1alpha1/service.rb +0 -124
  897. data/generated/google/apis/commentanalyzer_v1alpha1.rb +0 -39
  898. data/generated/google/apis/fusiontables_v1/classes.rb +0 -977
  899. data/generated/google/apis/fusiontables_v1/representations.rb +0 -449
  900. data/generated/google/apis/fusiontables_v1/service.rb +0 -1307
  901. data/generated/google/apis/fusiontables_v1.rb +0 -37
  902. data/generated/google/apis/fusiontables_v2/classes.rb +0 -1049
  903. data/generated/google/apis/fusiontables_v2/representations.rb +0 -457
  904. data/generated/google/apis/fusiontables_v2/service.rb +0 -1431
  905. data/generated/google/apis/fusiontables_v2.rb +0 -37
  906. data/generated/google/apis/mirror_v1/classes.rb +0 -1072
  907. data/generated/google/apis/mirror_v1/representations.rb +0 -390
  908. data/generated/google/apis/mirror_v1/service.rb +0 -928
  909. data/generated/google/apis/mirror_v1.rb +0 -37
  910. data/generated/google/apis/oauth2_v1/classes.rb +0 -197
  911. data/generated/google/apis/oauth2_v1/service.rb +0 -160
  912. data/generated/google/apis/oauth2_v1.rb +0 -40
  913. data/generated/google/apis/pagespeedonline_v1/classes.rb +0 -542
  914. data/generated/google/apis/pagespeedonline_v1/representations.rb +0 -258
  915. data/generated/google/apis/pagespeedonline_v1/service.rb +0 -116
  916. data/generated/google/apis/pagespeedonline_v2/classes.rb +0 -621
  917. data/generated/google/apis/pagespeedonline_v2/representations.rb +0 -273
  918. data/generated/google/apis/pagespeedonline_v2/service.rb +0 -116
  919. data/generated/google/apis/pagespeedonline_v4/classes.rb +0 -795
  920. data/generated/google/apis/pagespeedonline_v4/representations.rb +0 -335
  921. data/generated/google/apis/pagespeedonline_v4/service.rb +0 -125
  922. data/generated/google/apis/plus_domains_v1/classes.rb +0 -2609
  923. data/generated/google/apis/plus_domains_v1/representations.rb +0 -1111
  924. data/generated/google/apis/plus_domains_v1/service.rb +0 -489
  925. data/generated/google/apis/plus_domains_v1.rb +0 -55
  926. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +0 -845
  927. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +0 -350
  928. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +0 -933
  929. data/generated/google/apis/replicapool_v1beta1/classes.rb +0 -918
  930. data/generated/google/apis/replicapool_v1beta1/representations.rb +0 -409
  931. data/generated/google/apis/replicapool_v1beta1/service.rb +0 -489
  932. data/generated/google/apis/replicapool_v1beta1.rb +0 -50
  933. data/generated/google/apis/servicebroker_v1/classes.rb +0 -333
  934. data/generated/google/apis/servicebroker_v1/service.rb +0 -177
  935. data/generated/google/apis/servicebroker_v1alpha1/classes.rb +0 -1037
  936. data/generated/google/apis/servicebroker_v1alpha1/service.rb +0 -737
  937. data/generated/google/apis/servicebroker_v1beta1/classes.rb +0 -1173
  938. data/generated/google/apis/servicebroker_v1beta1/service.rb +0 -926
  939. data/generated/google/apis/storage_v1beta1/classes.rb +0 -616
  940. data/generated/google/apis/storage_v1beta1/representations.rb +0 -249
  941. data/generated/google/apis/storage_v1beta1/service.rb +0 -1032
  942. data/generated/google/apis/storage_v1beta1.rb +0 -40
  943. data/generated/google/apis/surveys_v2/classes.rb +0 -691
  944. data/generated/google/apis/surveys_v2.rb +0 -40
  945. data/generated/google/apis/urlshortener_v1/classes.rb +0 -246
  946. data/generated/google/apis/urlshortener_v1/representations.rb +0 -121
  947. data/generated/google/apis/urlshortener_v1/service.rb +0 -169
  948. data/generated/google/apis/urlshortener_v1.rb +0 -34
@@ -0,0 +1,2205 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module SecuritycenterV1p1beta1
24
+
25
+ # The configuration used for Asset Discovery runs.
26
+ class AssetDiscoveryConfig
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # The mode to use for filtering asset discovery.
30
+ # Corresponds to the JSON property `inclusionMode`
31
+ # @return [String]
32
+ attr_accessor :inclusion_mode
33
+
34
+ # The project ids to use for filtering asset discovery.
35
+ # Corresponds to the JSON property `projectIds`
36
+ # @return [Array<String>]
37
+ attr_accessor :project_ids
38
+
39
+ def initialize(**args)
40
+ update!(**args)
41
+ end
42
+
43
+ # Update properties of this object
44
+ def update!(**args)
45
+ @inclusion_mode = args[:inclusion_mode] if args.key?(:inclusion_mode)
46
+ @project_ids = args[:project_ids] if args.key?(:project_ids)
47
+ end
48
+ end
49
+
50
+ # Specifies the audit configuration for a service.
51
+ # The configuration determines which permission types are logged, and what
52
+ # identities, if any, are exempted from logging.
53
+ # An AuditConfig must have one or more AuditLogConfigs.
54
+ # If there are AuditConfigs for both `allServices` and a specific service,
55
+ # the union of the two AuditConfigs is used for that service: the log_types
56
+ # specified in each AuditConfig are enabled, and the exempted_members in each
57
+ # AuditLogConfig are exempted.
58
+ # Example Policy with multiple AuditConfigs:
59
+ # `
60
+ # "audit_configs": [
61
+ # `
62
+ # "service": "allServices"
63
+ # "audit_log_configs": [
64
+ # `
65
+ # "log_type": "DATA_READ",
66
+ # "exempted_members": [
67
+ # "user:jose@example.com"
68
+ # ]
69
+ # `,
70
+ # `
71
+ # "log_type": "DATA_WRITE",
72
+ # `,
73
+ # `
74
+ # "log_type": "ADMIN_READ",
75
+ # `
76
+ # ]
77
+ # `,
78
+ # `
79
+ # "service": "sampleservice.googleapis.com"
80
+ # "audit_log_configs": [
81
+ # `
82
+ # "log_type": "DATA_READ",
83
+ # `,
84
+ # `
85
+ # "log_type": "DATA_WRITE",
86
+ # "exempted_members": [
87
+ # "user:aliya@example.com"
88
+ # ]
89
+ # `
90
+ # ]
91
+ # `
92
+ # ]
93
+ # `
94
+ # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
95
+ # logging. It also exempts jose@example.com from DATA_READ logging, and
96
+ # aliya@example.com from DATA_WRITE logging.
97
+ class AuditConfig
98
+ include Google::Apis::Core::Hashable
99
+
100
+ # The configuration for logging of each type of permission.
101
+ # Corresponds to the JSON property `auditLogConfigs`
102
+ # @return [Array<Google::Apis::SecuritycenterV1p1beta1::AuditLogConfig>]
103
+ attr_accessor :audit_log_configs
104
+
105
+ # Specifies a service that will be enabled for audit logging.
106
+ # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
107
+ # `allServices` is a special value that covers all services.
108
+ # Corresponds to the JSON property `service`
109
+ # @return [String]
110
+ attr_accessor :service
111
+
112
+ def initialize(**args)
113
+ update!(**args)
114
+ end
115
+
116
+ # Update properties of this object
117
+ def update!(**args)
118
+ @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
119
+ @service = args[:service] if args.key?(:service)
120
+ end
121
+ end
122
+
123
+ # Provides the configuration for logging a type of permissions.
124
+ # Example:
125
+ # `
126
+ # "audit_log_configs": [
127
+ # `
128
+ # "log_type": "DATA_READ",
129
+ # "exempted_members": [
130
+ # "user:jose@example.com"
131
+ # ]
132
+ # `,
133
+ # `
134
+ # "log_type": "DATA_WRITE",
135
+ # `
136
+ # ]
137
+ # `
138
+ # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
139
+ # jose@example.com from DATA_READ logging.
140
+ class AuditLogConfig
141
+ include Google::Apis::Core::Hashable
142
+
143
+ # Specifies the identities that do not cause logging for this type of
144
+ # permission.
145
+ # Follows the same format of Binding.members.
146
+ # Corresponds to the JSON property `exemptedMembers`
147
+ # @return [Array<String>]
148
+ attr_accessor :exempted_members
149
+
150
+ # The log type that this config enables.
151
+ # Corresponds to the JSON property `logType`
152
+ # @return [String]
153
+ attr_accessor :log_type
154
+
155
+ def initialize(**args)
156
+ update!(**args)
157
+ end
158
+
159
+ # Update properties of this object
160
+ def update!(**args)
161
+ @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
162
+ @log_type = args[:log_type] if args.key?(:log_type)
163
+ end
164
+ end
165
+
166
+ # Associates `members` with a `role`.
167
+ class Binding
168
+ include Google::Apis::Core::Hashable
169
+
170
+ # Represents a textual expression in the Common Expression Language (CEL)
171
+ # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
172
+ # are documented at https://github.com/google/cel-spec.
173
+ # Example (Comparison):
174
+ # title: "Summary size limit"
175
+ # description: "Determines if a summary is less than 100 chars"
176
+ # expression: "document.summary.size() < 100"
177
+ # Example (Equality):
178
+ # title: "Requestor is owner"
179
+ # description: "Determines if requestor is the document owner"
180
+ # expression: "document.owner == request.auth.claims.email"
181
+ # Example (Logic):
182
+ # title: "Public documents"
183
+ # description: "Determine whether the document should be publicly visible"
184
+ # expression: "document.type != 'private' && document.type != 'internal'"
185
+ # Example (Data Manipulation):
186
+ # title: "Notification string"
187
+ # description: "Create a notification string with a timestamp."
188
+ # expression: "'New message received at ' + string(document.create_time)"
189
+ # The exact variables and functions that may be referenced within an expression
190
+ # are determined by the service that evaluates it. See the service
191
+ # documentation for additional information.
192
+ # Corresponds to the JSON property `condition`
193
+ # @return [Google::Apis::SecuritycenterV1p1beta1::Expr]
194
+ attr_accessor :condition
195
+
196
+ # Specifies the identities requesting access for a Cloud Platform resource.
197
+ # `members` can have the following values:
198
+ # * `allUsers`: A special identifier that represents anyone who is
199
+ # on the internet; with or without a Google account.
200
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
201
+ # who is authenticated with a Google account or a service account.
202
+ # * `user:`emailid``: An email address that represents a specific Google
203
+ # account. For example, `alice@example.com` .
204
+ # * `serviceAccount:`emailid``: An email address that represents a service
205
+ # account. For example, `my-other-app@appspot.gserviceaccount.com`.
206
+ # * `group:`emailid``: An email address that represents a Google group.
207
+ # For example, `admins@example.com`.
208
+ # * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique
209
+ # identifier) representing a user that has been recently deleted. For
210
+ # example, `alice@example.com?uid=123456789012345678901`. If the user is
211
+ # recovered, this value reverts to `user:`emailid`` and the recovered user
212
+ # retains the role in the binding.
213
+ # * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus
214
+ # unique identifier) representing a service account that has been recently
215
+ # deleted. For example,
216
+ # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
217
+ # If the service account is undeleted, this value reverts to
218
+ # `serviceAccount:`emailid`` and the undeleted service account retains the
219
+ # role in the binding.
220
+ # * `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
221
+ # identifier) representing a Google group that has been recently
222
+ # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
223
+ # the group is recovered, this value reverts to `group:`emailid`` and the
224
+ # recovered group retains the role in the binding.
225
+ # * `domain:`domain``: The G Suite domain (primary) that represents all the
226
+ # users of that domain. For example, `google.com` or `example.com`.
227
+ # Corresponds to the JSON property `members`
228
+ # @return [Array<String>]
229
+ attr_accessor :members
230
+
231
+ # Role that is assigned to `members`.
232
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
233
+ # Corresponds to the JSON property `role`
234
+ # @return [String]
235
+ attr_accessor :role
236
+
237
+ def initialize(**args)
238
+ update!(**args)
239
+ end
240
+
241
+ # Update properties of this object
242
+ def update!(**args)
243
+ @condition = args[:condition] if args.key?(:condition)
244
+ @members = args[:members] if args.key?(:members)
245
+ @role = args[:role] if args.key?(:role)
246
+ end
247
+ end
248
+
249
+ # A generic empty message that you can re-use to avoid defining duplicated
250
+ # empty messages in your APIs. A typical example is to use it as the request
251
+ # or the response type of an API method. For instance:
252
+ # service Foo `
253
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
254
+ # `
255
+ # The JSON representation for `Empty` is empty JSON object ````.
256
+ class Empty
257
+ include Google::Apis::Core::Hashable
258
+
259
+ def initialize(**args)
260
+ update!(**args)
261
+ end
262
+
263
+ # Update properties of this object
264
+ def update!(**args)
265
+ end
266
+ end
267
+
268
+ # Represents a textual expression in the Common Expression Language (CEL)
269
+ # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
270
+ # are documented at https://github.com/google/cel-spec.
271
+ # Example (Comparison):
272
+ # title: "Summary size limit"
273
+ # description: "Determines if a summary is less than 100 chars"
274
+ # expression: "document.summary.size() < 100"
275
+ # Example (Equality):
276
+ # title: "Requestor is owner"
277
+ # description: "Determines if requestor is the document owner"
278
+ # expression: "document.owner == request.auth.claims.email"
279
+ # Example (Logic):
280
+ # title: "Public documents"
281
+ # description: "Determine whether the document should be publicly visible"
282
+ # expression: "document.type != 'private' && document.type != 'internal'"
283
+ # Example (Data Manipulation):
284
+ # title: "Notification string"
285
+ # description: "Create a notification string with a timestamp."
286
+ # expression: "'New message received at ' + string(document.create_time)"
287
+ # The exact variables and functions that may be referenced within an expression
288
+ # are determined by the service that evaluates it. See the service
289
+ # documentation for additional information.
290
+ class Expr
291
+ include Google::Apis::Core::Hashable
292
+
293
+ # Optional. Description of the expression. This is a longer text which
294
+ # describes the expression, e.g. when hovered over it in a UI.
295
+ # Corresponds to the JSON property `description`
296
+ # @return [String]
297
+ attr_accessor :description
298
+
299
+ # Textual representation of an expression in Common Expression Language
300
+ # syntax.
301
+ # Corresponds to the JSON property `expression`
302
+ # @return [String]
303
+ attr_accessor :expression
304
+
305
+ # Optional. String indicating the location of the expression for error
306
+ # reporting, e.g. a file name and a position in the file.
307
+ # Corresponds to the JSON property `location`
308
+ # @return [String]
309
+ attr_accessor :location
310
+
311
+ # Optional. Title for the expression, i.e. a short string describing
312
+ # its purpose. This can be used e.g. in UIs which allow to enter the
313
+ # expression.
314
+ # Corresponds to the JSON property `title`
315
+ # @return [String]
316
+ attr_accessor :title
317
+
318
+ def initialize(**args)
319
+ update!(**args)
320
+ end
321
+
322
+ # Update properties of this object
323
+ def update!(**args)
324
+ @description = args[:description] if args.key?(:description)
325
+ @expression = args[:expression] if args.key?(:expression)
326
+ @location = args[:location] if args.key?(:location)
327
+ @title = args[:title] if args.key?(:title)
328
+ end
329
+ end
330
+
331
+ # Security Command Center finding.
332
+ # A finding is a record of assessment data like security, risk, health, or
333
+ # privacy, that is ingested into Security Command Center for presentation,
334
+ # notification, analysis, policy testing, and enforcement. For example, a
335
+ # cross-site scripting (XSS) vulnerability in an App Engine application is a
336
+ # finding.
337
+ class Finding
338
+ include Google::Apis::Core::Hashable
339
+
340
+ # The additional taxonomy group within findings from a given source.
341
+ # This field is immutable after creation time.
342
+ # Example: "XSS_FLASH_INJECTION"
343
+ # Corresponds to the JSON property `category`
344
+ # @return [String]
345
+ attr_accessor :category
346
+
347
+ # The time at which the finding was created in Security Command Center.
348
+ # Corresponds to the JSON property `createTime`
349
+ # @return [String]
350
+ attr_accessor :create_time
351
+
352
+ # The time at which the event took place. For example, if the finding
353
+ # represents an open firewall it would capture the time the detector believes
354
+ # the firewall became open. The accuracy is determined by the detector.
355
+ # Corresponds to the JSON property `eventTime`
356
+ # @return [String]
357
+ attr_accessor :event_time
358
+
359
+ # The URI that, if available, points to a web page outside of Security
360
+ # Command Center where additional information about the finding can be found.
361
+ # This field is guaranteed to be either empty or a well formed URL.
362
+ # Corresponds to the JSON property `externalUri`
363
+ # @return [String]
364
+ attr_accessor :external_uri
365
+
366
+ # The relative resource name of this finding. See:
367
+ # https://cloud.google.com/apis/design/resource_names#relative_resource_name
368
+ # Example:
369
+ # "organizations/`organization_id`/sources/`source_id`/findings/`finding_id`"
370
+ # Corresponds to the JSON property `name`
371
+ # @return [String]
372
+ attr_accessor :name
373
+
374
+ # The relative resource name of the source the finding belongs to. See:
375
+ # https://cloud.google.com/apis/design/resource_names#relative_resource_name
376
+ # This field is immutable after creation time.
377
+ # For example:
378
+ # "organizations/`organization_id`/sources/`source_id`"
379
+ # Corresponds to the JSON property `parent`
380
+ # @return [String]
381
+ attr_accessor :parent
382
+
383
+ # For findings on Google Cloud resources, the full resource
384
+ # name of the Google Cloud resource this finding is for. See:
385
+ # https://cloud.google.com/apis/design/resource_names#full_resource_name
386
+ # When the finding is for a non-Google Cloud resource, the resourceName can
387
+ # be a customer or partner defined string. This field is immutable after
388
+ # creation time.
389
+ # Corresponds to the JSON property `resourceName`
390
+ # @return [String]
391
+ attr_accessor :resource_name
392
+
393
+ # User specified security marks that are attached to the parent Security
394
+ # Command Center resource. Security marks are scoped within a Security Command
395
+ # Center organization -- they can be modified and viewed by all users who have
396
+ # proper permissions on the organization.
397
+ # Corresponds to the JSON property `securityMarks`
398
+ # @return [Google::Apis::SecuritycenterV1p1beta1::SecurityMarks]
399
+ attr_accessor :security_marks
400
+
401
+ # Source specific properties. These properties are managed by the source
402
+ # that writes the finding. The key names in the source_properties map must be
403
+ # between 1 and 255 characters, and must start with a letter and contain
404
+ # alphanumeric characters or underscores only.
405
+ # Corresponds to the JSON property `sourceProperties`
406
+ # @return [Hash<String,Object>]
407
+ attr_accessor :source_properties
408
+
409
+ # The state of the finding.
410
+ # Corresponds to the JSON property `state`
411
+ # @return [String]
412
+ attr_accessor :state
413
+
414
+ def initialize(**args)
415
+ update!(**args)
416
+ end
417
+
418
+ # Update properties of this object
419
+ def update!(**args)
420
+ @category = args[:category] if args.key?(:category)
421
+ @create_time = args[:create_time] if args.key?(:create_time)
422
+ @event_time = args[:event_time] if args.key?(:event_time)
423
+ @external_uri = args[:external_uri] if args.key?(:external_uri)
424
+ @name = args[:name] if args.key?(:name)
425
+ @parent = args[:parent] if args.key?(:parent)
426
+ @resource_name = args[:resource_name] if args.key?(:resource_name)
427
+ @security_marks = args[:security_marks] if args.key?(:security_marks)
428
+ @source_properties = args[:source_properties] if args.key?(:source_properties)
429
+ @state = args[:state] if args.key?(:state)
430
+ end
431
+ end
432
+
433
+ # Request message for `GetIamPolicy` method.
434
+ class GetIamPolicyRequest
435
+ include Google::Apis::Core::Hashable
436
+
437
+ # Encapsulates settings provided to GetIamPolicy.
438
+ # Corresponds to the JSON property `options`
439
+ # @return [Google::Apis::SecuritycenterV1p1beta1::GetPolicyOptions]
440
+ attr_accessor :options
441
+
442
+ def initialize(**args)
443
+ update!(**args)
444
+ end
445
+
446
+ # Update properties of this object
447
+ def update!(**args)
448
+ @options = args[:options] if args.key?(:options)
449
+ end
450
+ end
451
+
452
+ # Encapsulates settings provided to GetIamPolicy.
453
+ class GetPolicyOptions
454
+ include Google::Apis::Core::Hashable
455
+
456
+ # Optional. The policy format version to be returned.
457
+ # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
458
+ # rejected.
459
+ # Requests for policies with any conditional bindings must specify version 3.
460
+ # Policies without any conditional bindings may specify any valid value or
461
+ # leave the field unset.
462
+ # To learn which resources support conditions in their IAM policies, see the
463
+ # [IAM
464
+ # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
465
+ # Corresponds to the JSON property `requestedPolicyVersion`
466
+ # @return [Fixnum]
467
+ attr_accessor :requested_policy_version
468
+
469
+ def initialize(**args)
470
+ update!(**args)
471
+ end
472
+
473
+ # Update properties of this object
474
+ def update!(**args)
475
+ @requested_policy_version = args[:requested_policy_version] if args.key?(:requested_policy_version)
476
+ end
477
+ end
478
+
479
+ # Cloud SCC's Notification
480
+ class GoogleCloudSecuritycenterV1NotificationMessage
481
+ include Google::Apis::Core::Hashable
482
+
483
+ # Security Command Center finding.
484
+ # A finding is a record of assessment data like security, risk, health, or
485
+ # privacy, that is ingested into Security Command Center for presentation,
486
+ # notification, analysis, policy testing, and enforcement. For example, a
487
+ # cross-site scripting (XSS) vulnerability in an App Engine application is a
488
+ # finding.
489
+ # Corresponds to the JSON property `finding`
490
+ # @return [Google::Apis::SecuritycenterV1p1beta1::Finding]
491
+ attr_accessor :finding
492
+
493
+ # Name of the notification config that generated current notification.
494
+ # Corresponds to the JSON property `notificationConfigName`
495
+ # @return [String]
496
+ attr_accessor :notification_config_name
497
+
498
+ def initialize(**args)
499
+ update!(**args)
500
+ end
501
+
502
+ # Update properties of this object
503
+ def update!(**args)
504
+ @finding = args[:finding] if args.key?(:finding)
505
+ @notification_config_name = args[:notification_config_name] if args.key?(:notification_config_name)
506
+ end
507
+ end
508
+
509
+ # Response of asset discovery run
510
+ class GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse
511
+ include Google::Apis::Core::Hashable
512
+
513
+ # The duration between asset discovery run start and end
514
+ # Corresponds to the JSON property `duration`
515
+ # @return [String]
516
+ attr_accessor :duration
517
+
518
+ # The state of an asset discovery run.
519
+ # Corresponds to the JSON property `state`
520
+ # @return [String]
521
+ attr_accessor :state
522
+
523
+ def initialize(**args)
524
+ update!(**args)
525
+ end
526
+
527
+ # Update properties of this object
528
+ def update!(**args)
529
+ @duration = args[:duration] if args.key?(:duration)
530
+ @state = args[:state] if args.key?(:state)
531
+ end
532
+ end
533
+
534
+ # Response of asset discovery run
535
+ class GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse
536
+ include Google::Apis::Core::Hashable
537
+
538
+ # The duration between asset discovery run start and end
539
+ # Corresponds to the JSON property `duration`
540
+ # @return [String]
541
+ attr_accessor :duration
542
+
543
+ # The state of an asset discovery run.
544
+ # Corresponds to the JSON property `state`
545
+ # @return [String]
546
+ attr_accessor :state
547
+
548
+ def initialize(**args)
549
+ update!(**args)
550
+ end
551
+
552
+ # Update properties of this object
553
+ def update!(**args)
554
+ @duration = args[:duration] if args.key?(:duration)
555
+ @state = args[:state] if args.key?(:state)
556
+ end
557
+ end
558
+
559
+ # Security Command Center representation of a Google Cloud
560
+ # resource.
561
+ # The Asset is a Security Command Center resource that captures information
562
+ # about a single Google Cloud resource. All modifications to an Asset are only
563
+ # within the context of Security Command Center and don't affect the referenced
564
+ # Google Cloud resource.
565
+ class GoogleCloudSecuritycenterV1p1beta1Asset
566
+ include Google::Apis::Core::Hashable
567
+
568
+ # The time at which the asset was created in Security Command Center.
569
+ # Corresponds to the JSON property `createTime`
570
+ # @return [String]
571
+ attr_accessor :create_time
572
+
573
+ # Cloud IAM Policy information associated with the Google Cloud resource
574
+ # described by the Security Command Center asset. This information is managed
575
+ # and defined by the Google Cloud resource and cannot be modified by the
576
+ # user.
577
+ # Corresponds to the JSON property `iamPolicy`
578
+ # @return [Google::Apis::SecuritycenterV1p1beta1::GoogleCloudSecuritycenterV1p1beta1IamPolicy]
579
+ attr_accessor :iam_policy
580
+
581
+ # The relative resource name of this asset. See:
582
+ # https://cloud.google.com/apis/design/resource_names#relative_resource_name
583
+ # Example:
584
+ # "organizations/`organization_id`/assets/`asset_id`".
585
+ # Corresponds to the JSON property `name`
586
+ # @return [String]
587
+ attr_accessor :name
588
+
589
+ # Resource managed properties. These properties are managed and defined by
590
+ # the Google Cloud resource and cannot be modified by the user.
591
+ # Corresponds to the JSON property `resourceProperties`
592
+ # @return [Hash<String,Object>]
593
+ attr_accessor :resource_properties
594
+
595
+ # Security Command Center managed properties. These properties are managed by
596
+ # Security Command Center and cannot be modified by the user.
597
+ # Corresponds to the JSON property `securityCenterProperties`
598
+ # @return [Google::Apis::SecuritycenterV1p1beta1::GoogleCloudSecuritycenterV1p1beta1SecurityCenterProperties]
599
+ attr_accessor :security_center_properties
600
+
601
+ # User specified security marks that are attached to the parent Security
602
+ # Command Center resource. Security marks are scoped within a Security Command
603
+ # Center organization -- they can be modified and viewed by all users who have
604
+ # proper permissions on the organization.
605
+ # Corresponds to the JSON property `securityMarks`
606
+ # @return [Google::Apis::SecuritycenterV1p1beta1::GoogleCloudSecuritycenterV1p1beta1SecurityMarks]
607
+ attr_accessor :security_marks
608
+
609
+ # The time at which the asset was last updated, added, or deleted in Cloud
610
+ # SCC.
611
+ # Corresponds to the JSON property `updateTime`
612
+ # @return [String]
613
+ attr_accessor :update_time
614
+
615
+ def initialize(**args)
616
+ update!(**args)
617
+ end
618
+
619
+ # Update properties of this object
620
+ def update!(**args)
621
+ @create_time = args[:create_time] if args.key?(:create_time)
622
+ @iam_policy = args[:iam_policy] if args.key?(:iam_policy)
623
+ @name = args[:name] if args.key?(:name)
624
+ @resource_properties = args[:resource_properties] if args.key?(:resource_properties)
625
+ @security_center_properties = args[:security_center_properties] if args.key?(:security_center_properties)
626
+ @security_marks = args[:security_marks] if args.key?(:security_marks)
627
+ @update_time = args[:update_time] if args.key?(:update_time)
628
+ end
629
+ end
630
+
631
+ # Security Command Center finding.
632
+ # A finding is a record of assessment data (security, risk, health or privacy)
633
+ # ingested into Security Command Center for presentation, notification,
634
+ # analysis, policy testing, and enforcement. For example, an XSS vulnerability
635
+ # in an App Engine application is a finding.
636
+ class GoogleCloudSecuritycenterV1p1beta1Finding
637
+ include Google::Apis::Core::Hashable
638
+
639
+ # The additional taxonomy group within findings from a given source.
640
+ # This field is immutable after creation time.
641
+ # Example: "XSS_FLASH_INJECTION"
642
+ # Corresponds to the JSON property `category`
643
+ # @return [String]
644
+ attr_accessor :category
645
+
646
+ # The time at which the finding was created in Security Command Center.
647
+ # Corresponds to the JSON property `createTime`
648
+ # @return [String]
649
+ attr_accessor :create_time
650
+
651
+ # The time at which the event took place. For example, if the finding
652
+ # represents an open firewall it would capture the time the detector believes
653
+ # the firewall became open. The accuracy is determined by the detector.
654
+ # Corresponds to the JSON property `eventTime`
655
+ # @return [String]
656
+ attr_accessor :event_time
657
+
658
+ # The URI that, if available, points to a web page outside of Security
659
+ # Command Center where additional information about the finding can be found.
660
+ # This field is guaranteed to be either empty or a well formed URL.
661
+ # Corresponds to the JSON property `externalUri`
662
+ # @return [String]
663
+ attr_accessor :external_uri
664
+
665
+ # The relative resource name of this finding. See:
666
+ # https://cloud.google.com/apis/design/resource_names#relative_resource_name
667
+ # Example:
668
+ # "organizations/`organization_id`/sources/`source_id`/findings/`finding_id`"
669
+ # Corresponds to the JSON property `name`
670
+ # @return [String]
671
+ attr_accessor :name
672
+
673
+ # The relative resource name of the source the finding belongs to. See:
674
+ # https://cloud.google.com/apis/design/resource_names#relative_resource_name
675
+ # This field is immutable after creation time.
676
+ # For example:
677
+ # "organizations/`organization_id`/sources/`source_id`"
678
+ # Corresponds to the JSON property `parent`
679
+ # @return [String]
680
+ attr_accessor :parent
681
+
682
+ # For findings on Google Cloud resources, the full resource
683
+ # name of the Google Cloud resource this finding is for. See:
684
+ # https://cloud.google.com/apis/design/resource_names#full_resource_name
685
+ # When the finding is for a non-Google Cloud resource, the resourceName can
686
+ # be a customer or partner defined string. This field is immutable after
687
+ # creation time.
688
+ # Corresponds to the JSON property `resourceName`
689
+ # @return [String]
690
+ attr_accessor :resource_name
691
+
692
+ # User specified security marks that are attached to the parent Security
693
+ # Command Center resource. Security marks are scoped within a Security Command
694
+ # Center organization -- they can be modified and viewed by all users who have
695
+ # proper permissions on the organization.
696
+ # Corresponds to the JSON property `securityMarks`
697
+ # @return [Google::Apis::SecuritycenterV1p1beta1::GoogleCloudSecuritycenterV1p1beta1SecurityMarks]
698
+ attr_accessor :security_marks
699
+
700
+ # Source specific properties. These properties are managed by the source
701
+ # that writes the finding. The key names in the source_properties map must be
702
+ # between 1 and 255 characters, and must start with a letter and contain
703
+ # alphanumeric characters or underscores only.
704
+ # Corresponds to the JSON property `sourceProperties`
705
+ # @return [Hash<String,Object>]
706
+ attr_accessor :source_properties
707
+
708
+ # The state of the finding.
709
+ # Corresponds to the JSON property `state`
710
+ # @return [String]
711
+ attr_accessor :state
712
+
713
+ def initialize(**args)
714
+ update!(**args)
715
+ end
716
+
717
+ # Update properties of this object
718
+ def update!(**args)
719
+ @category = args[:category] if args.key?(:category)
720
+ @create_time = args[:create_time] if args.key?(:create_time)
721
+ @event_time = args[:event_time] if args.key?(:event_time)
722
+ @external_uri = args[:external_uri] if args.key?(:external_uri)
723
+ @name = args[:name] if args.key?(:name)
724
+ @parent = args[:parent] if args.key?(:parent)
725
+ @resource_name = args[:resource_name] if args.key?(:resource_name)
726
+ @security_marks = args[:security_marks] if args.key?(:security_marks)
727
+ @source_properties = args[:source_properties] if args.key?(:source_properties)
728
+ @state = args[:state] if args.key?(:state)
729
+ end
730
+ end
731
+
732
+ # Cloud IAM Policy information associated with the Google Cloud resource
733
+ # described by the Security Command Center asset. This information is managed
734
+ # and defined by the Google Cloud resource and cannot be modified by the
735
+ # user.
736
+ class GoogleCloudSecuritycenterV1p1beta1IamPolicy
737
+ include Google::Apis::Core::Hashable
738
+
739
+ # The JSON representation of the Policy associated with the asset.
740
+ # See https://cloud.google.com/iam/docs/reference/rest/v1/Policy for
741
+ # format details.
742
+ # Corresponds to the JSON property `policyBlob`
743
+ # @return [String]
744
+ attr_accessor :policy_blob
745
+
746
+ def initialize(**args)
747
+ update!(**args)
748
+ end
749
+
750
+ # Update properties of this object
751
+ def update!(**args)
752
+ @policy_blob = args[:policy_blob] if args.key?(:policy_blob)
753
+ end
754
+ end
755
+
756
+ # Security Command Center's Notification
757
+ class GoogleCloudSecuritycenterV1p1beta1NotificationMessage
758
+ include Google::Apis::Core::Hashable
759
+
760
+ # Security Command Center finding.
761
+ # A finding is a record of assessment data (security, risk, health or privacy)
762
+ # ingested into Security Command Center for presentation, notification,
763
+ # analysis, policy testing, and enforcement. For example, an XSS vulnerability
764
+ # in an App Engine application is a finding.
765
+ # Corresponds to the JSON property `finding`
766
+ # @return [Google::Apis::SecuritycenterV1p1beta1::GoogleCloudSecuritycenterV1p1beta1Finding]
767
+ attr_accessor :finding
768
+
769
+ # Name of the notification config that generated current notification.
770
+ # Corresponds to the JSON property `notificationConfigName`
771
+ # @return [String]
772
+ attr_accessor :notification_config_name
773
+
774
+ # Wrapper over asset object that also captures the state change for the asset
775
+ # e.g. if it was a newly created asset vs updated or deleted asset.
776
+ # Corresponds to the JSON property `temporalAsset`
777
+ # @return [Google::Apis::SecuritycenterV1p1beta1::GoogleCloudSecuritycenterV1p1beta1TemporalAsset]
778
+ attr_accessor :temporal_asset
779
+
780
+ def initialize(**args)
781
+ update!(**args)
782
+ end
783
+
784
+ # Update properties of this object
785
+ def update!(**args)
786
+ @finding = args[:finding] if args.key?(:finding)
787
+ @notification_config_name = args[:notification_config_name] if args.key?(:notification_config_name)
788
+ @temporal_asset = args[:temporal_asset] if args.key?(:temporal_asset)
789
+ end
790
+ end
791
+
792
+ # Response of asset discovery run
793
+ class GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse
794
+ include Google::Apis::Core::Hashable
795
+
796
+ # The duration between asset discovery run start and end
797
+ # Corresponds to the JSON property `duration`
798
+ # @return [String]
799
+ attr_accessor :duration
800
+
801
+ # The state of an asset discovery run.
802
+ # Corresponds to the JSON property `state`
803
+ # @return [String]
804
+ attr_accessor :state
805
+
806
+ def initialize(**args)
807
+ update!(**args)
808
+ end
809
+
810
+ # Update properties of this object
811
+ def update!(**args)
812
+ @duration = args[:duration] if args.key?(:duration)
813
+ @state = args[:state] if args.key?(:state)
814
+ end
815
+ end
816
+
817
+ # Security Command Center managed properties. These properties are managed by
818
+ # Security Command Center and cannot be modified by the user.
819
+ class GoogleCloudSecuritycenterV1p1beta1SecurityCenterProperties
820
+ include Google::Apis::Core::Hashable
821
+
822
+ # The user defined display name for this resource.
823
+ # Corresponds to the JSON property `resourceDisplayName`
824
+ # @return [String]
825
+ attr_accessor :resource_display_name
826
+
827
+ # The full resource name of the Google Cloud resource this asset
828
+ # represents. This field is immutable after create time. See:
829
+ # https://cloud.google.com/apis/design/resource_names#full_resource_name
830
+ # Corresponds to the JSON property `resourceName`
831
+ # @return [String]
832
+ attr_accessor :resource_name
833
+
834
+ # Owners of the Google Cloud resource.
835
+ # Corresponds to the JSON property `resourceOwners`
836
+ # @return [Array<String>]
837
+ attr_accessor :resource_owners
838
+
839
+ # The full resource name of the immediate parent of the resource. See:
840
+ # https://cloud.google.com/apis/design/resource_names#full_resource_name
841
+ # Corresponds to the JSON property `resourceParent`
842
+ # @return [String]
843
+ attr_accessor :resource_parent
844
+
845
+ # The user defined display name for the parent of this resource.
846
+ # Corresponds to the JSON property `resourceParentDisplayName`
847
+ # @return [String]
848
+ attr_accessor :resource_parent_display_name
849
+
850
+ # The full resource name of the project the resource belongs to. See:
851
+ # https://cloud.google.com/apis/design/resource_names#full_resource_name
852
+ # Corresponds to the JSON property `resourceProject`
853
+ # @return [String]
854
+ attr_accessor :resource_project
855
+
856
+ # The user defined display name for the project of this resource.
857
+ # Corresponds to the JSON property `resourceProjectDisplayName`
858
+ # @return [String]
859
+ attr_accessor :resource_project_display_name
860
+
861
+ # The type of the Google Cloud resource. Examples include: APPLICATION,
862
+ # PROJECT, and ORGANIZATION. This is a case insensitive field defined by
863
+ # Security Command Center and/or the producer of the resource and is
864
+ # immutable after create time.
865
+ # Corresponds to the JSON property `resourceType`
866
+ # @return [String]
867
+ attr_accessor :resource_type
868
+
869
+ def initialize(**args)
870
+ update!(**args)
871
+ end
872
+
873
+ # Update properties of this object
874
+ def update!(**args)
875
+ @resource_display_name = args[:resource_display_name] if args.key?(:resource_display_name)
876
+ @resource_name = args[:resource_name] if args.key?(:resource_name)
877
+ @resource_owners = args[:resource_owners] if args.key?(:resource_owners)
878
+ @resource_parent = args[:resource_parent] if args.key?(:resource_parent)
879
+ @resource_parent_display_name = args[:resource_parent_display_name] if args.key?(:resource_parent_display_name)
880
+ @resource_project = args[:resource_project] if args.key?(:resource_project)
881
+ @resource_project_display_name = args[:resource_project_display_name] if args.key?(:resource_project_display_name)
882
+ @resource_type = args[:resource_type] if args.key?(:resource_type)
883
+ end
884
+ end
885
+
886
+ # User specified security marks that are attached to the parent Security
887
+ # Command Center resource. Security marks are scoped within a Security Command
888
+ # Center organization -- they can be modified and viewed by all users who have
889
+ # proper permissions on the organization.
890
+ class GoogleCloudSecuritycenterV1p1beta1SecurityMarks
891
+ include Google::Apis::Core::Hashable
892
+
893
+ # Mutable user specified security marks belonging to the parent resource.
894
+ # Constraints are as follows:
895
+ # * Keys and values are treated as case insensitive
896
+ # * Keys must be between 1 - 256 characters (inclusive)
897
+ # * Keys must be letters, numbers, underscores, or dashes
898
+ # * Values have leading and trailing whitespace trimmed, remaining
899
+ # characters must be between 1 - 4096 characters (inclusive)
900
+ # Corresponds to the JSON property `marks`
901
+ # @return [Hash<String,String>]
902
+ attr_accessor :marks
903
+
904
+ # The relative resource name of the SecurityMarks. See:
905
+ # https://cloud.google.com/apis/design/resource_names#relative_resource_name
906
+ # Examples:
907
+ # "organizations/`organization_id`/assets/`asset_id`/securityMarks"
908
+ # "organizations/`organization_id`/sources/`source_id`/findings/`finding_id`/
909
+ # securityMarks".
910
+ # Corresponds to the JSON property `name`
911
+ # @return [String]
912
+ attr_accessor :name
913
+
914
+ def initialize(**args)
915
+ update!(**args)
916
+ end
917
+
918
+ # Update properties of this object
919
+ def update!(**args)
920
+ @marks = args[:marks] if args.key?(:marks)
921
+ @name = args[:name] if args.key?(:name)
922
+ end
923
+ end
924
+
925
+ # Wrapper over asset object that also captures the state change for the asset
926
+ # e.g. if it was a newly created asset vs updated or deleted asset.
927
+ class GoogleCloudSecuritycenterV1p1beta1TemporalAsset
928
+ include Google::Apis::Core::Hashable
929
+
930
+ # Security Command Center representation of a Google Cloud
931
+ # resource.
932
+ # The Asset is a Security Command Center resource that captures information
933
+ # about a single Google Cloud resource. All modifications to an Asset are only
934
+ # within the context of Security Command Center and don't affect the referenced
935
+ # Google Cloud resource.
936
+ # Corresponds to the JSON property `asset`
937
+ # @return [Google::Apis::SecuritycenterV1p1beta1::GoogleCloudSecuritycenterV1p1beta1Asset]
938
+ attr_accessor :asset
939
+
940
+ # Represents if the asset was created/updated/deleted.
941
+ # Corresponds to the JSON property `changeType`
942
+ # @return [String]
943
+ attr_accessor :change_type
944
+
945
+ def initialize(**args)
946
+ update!(**args)
947
+ end
948
+
949
+ # Update properties of this object
950
+ def update!(**args)
951
+ @asset = args[:asset] if args.key?(:asset)
952
+ @change_type = args[:change_type] if args.key?(:change_type)
953
+ end
954
+ end
955
+
956
+ # Request message for grouping by assets.
957
+ class GroupAssetsRequest
958
+ include Google::Apis::Core::Hashable
959
+
960
+ # When compare_duration is set, the GroupResult's "state_change" property is
961
+ # updated to indicate whether the asset was added, removed, or remained
962
+ # present during the compare_duration period of time that precedes the
963
+ # read_time. This is the time between (read_time - compare_duration) and
964
+ # read_time.
965
+ # The state change value is derived based on the presence of the asset at the
966
+ # two points in time. Intermediate state changes between the two times don't
967
+ # affect the result. For example, the results aren't affected if the asset is
968
+ # removed and re-created again.
969
+ # Possible "state_change" values when compare_duration is specified:
970
+ # * "ADDED": indicates that the asset was not present at the start of
971
+ # compare_duration, but present at reference_time.
972
+ # * "REMOVED": indicates that the asset was present at the start of
973
+ # compare_duration, but not present at reference_time.
974
+ # * "ACTIVE": indicates that the asset was present at both the
975
+ # start and the end of the time period defined by
976
+ # compare_duration and reference_time.
977
+ # If compare_duration is not specified, then the only possible state_change
978
+ # is "UNUSED", which will be the state_change set for all assets present at
979
+ # read_time.
980
+ # If this field is set then `state_change` must be a specified field in
981
+ # `group_by`.
982
+ # Corresponds to the JSON property `compareDuration`
983
+ # @return [String]
984
+ attr_accessor :compare_duration
985
+
986
+ # Expression that defines the filter to apply across assets.
987
+ # The expression is a list of zero or more restrictions combined via logical
988
+ # operators `AND` and `OR`.
989
+ # Parentheses are supported, and `OR` has higher precedence than `AND`.
990
+ # Restrictions have the form `<field> <operator> <value>` and may have a `-`
991
+ # character in front of them to indicate negation. The fields map to those
992
+ # defined in the Asset resource. Examples include:
993
+ # * name
994
+ # * security_center_properties.resource_name
995
+ # * resource_properties.a_property
996
+ # * security_marks.marks.marka
997
+ # The supported operators are:
998
+ # * `=` for all value types.
999
+ # * `>`, `<`, `>=`, `<=` for integer values.
1000
+ # * `:`, meaning substring matching, for strings.
1001
+ # The supported value types are:
1002
+ # * string literals in quotes.
1003
+ # * integer literals without quotes.
1004
+ # * boolean literals `true` and `false` without quotes.
1005
+ # The following field and operator combinations are supported:
1006
+ # * name: `=`
1007
+ # * update_time: `=`, `>`, `<`, `>=`, `<=`
1008
+ # Usage: This should be milliseconds since epoch or an RFC3339 string.
1009
+ # Examples:
1010
+ # "update_time = \"2019-06-10T16:07:18-07:00\""
1011
+ # "update_time = 1560208038000"
1012
+ # * create_time: `=`, `>`, `<`, `>=`, `<=`
1013
+ # Usage: This should be milliseconds since epoch or an RFC3339 string.
1014
+ # Examples:
1015
+ # "create_time = \"2019-06-10T16:07:18-07:00\""
1016
+ # "create_time = 1560208038000"
1017
+ # * iam_policy.policy_blob: `=`, `:`
1018
+ # * resource_properties: `=`, `:`, `>`, `<`, `>=`, `<=`
1019
+ # * security_marks.marks: `=`, `:`
1020
+ # * security_center_properties.resource_name: `=`, `:`
1021
+ # * security_center_properties.resource_name_display_name: `=`, `:`
1022
+ # * security_center_properties.resource_type: `=`, `:`
1023
+ # * security_center_properties.resource_parent: `=`, `:`
1024
+ # * security_center_properties.resource_parent_display_name: `=`, `:`
1025
+ # * security_center_properties.resource_project: `=`, `:`
1026
+ # * security_center_properties.resource_project_display_name: `=`, `:`
1027
+ # * security_center_properties.resource_owners: `=`, `:`
1028
+ # For example, `resource_properties.size = 100` is a valid filter string.
1029
+ # Use a partial match on the empty string to filter based on a property
1030
+ # existing: "resource_properties.my_property : \"\""
1031
+ # Use a negated partial match on the empty string to filter based on a
1032
+ # property not existing: "-resource_properties.my_property : \"\""
1033
+ # Corresponds to the JSON property `filter`
1034
+ # @return [String]
1035
+ attr_accessor :filter
1036
+
1037
+ # Required. Expression that defines what assets fields to use for grouping. The
1038
+ # string
1039
+ # value should follow SQL syntax: comma separated list of fields. For
1040
+ # example:
1041
+ # "security_center_properties.resource_project,security_center_properties.
1042
+ # project".
1043
+ # The following fields are supported when compare_duration is not set:
1044
+ # * security_center_properties.resource_project
1045
+ # * security_center_properties.resource_project_display_name
1046
+ # * security_center_properties.resource_type
1047
+ # * security_center_properties.resource_parent
1048
+ # * security_center_properties.resource_parent_display_name
1049
+ # The following fields are supported when compare_duration is set:
1050
+ # * security_center_properties.resource_type
1051
+ # * security_center_properties.resource_project_display_name
1052
+ # * security_center_properties.resource_parent_display_name
1053
+ # Corresponds to the JSON property `groupBy`
1054
+ # @return [String]
1055
+ attr_accessor :group_by
1056
+
1057
+ # The maximum number of results to return in a single response. Default is
1058
+ # 10, minimum is 1, maximum is 1000.
1059
+ # Corresponds to the JSON property `pageSize`
1060
+ # @return [Fixnum]
1061
+ attr_accessor :page_size
1062
+
1063
+ # The value returned by the last `GroupAssetsResponse`; indicates
1064
+ # that this is a continuation of a prior `GroupAssets` call, and that the
1065
+ # system should return the next page of data.
1066
+ # Corresponds to the JSON property `pageToken`
1067
+ # @return [String]
1068
+ attr_accessor :page_token
1069
+
1070
+ # Time used as a reference point when filtering assets. The filter is limited
1071
+ # to assets existing at the supplied time and their values are those at that
1072
+ # specific time. Absence of this field will default to the API's version of
1073
+ # NOW.
1074
+ # Corresponds to the JSON property `readTime`
1075
+ # @return [String]
1076
+ attr_accessor :read_time
1077
+
1078
+ def initialize(**args)
1079
+ update!(**args)
1080
+ end
1081
+
1082
+ # Update properties of this object
1083
+ def update!(**args)
1084
+ @compare_duration = args[:compare_duration] if args.key?(:compare_duration)
1085
+ @filter = args[:filter] if args.key?(:filter)
1086
+ @group_by = args[:group_by] if args.key?(:group_by)
1087
+ @page_size = args[:page_size] if args.key?(:page_size)
1088
+ @page_token = args[:page_token] if args.key?(:page_token)
1089
+ @read_time = args[:read_time] if args.key?(:read_time)
1090
+ end
1091
+ end
1092
+
1093
+ # Response message for grouping by assets.
1094
+ class GroupAssetsResponse
1095
+ include Google::Apis::Core::Hashable
1096
+
1097
+ # Group results. There exists an element for each existing unique
1098
+ # combination of property/values. The element contains a count for the number
1099
+ # of times those specific property/values appear.
1100
+ # Corresponds to the JSON property `groupByResults`
1101
+ # @return [Array<Google::Apis::SecuritycenterV1p1beta1::GroupResult>]
1102
+ attr_accessor :group_by_results
1103
+
1104
+ # Token to retrieve the next page of results, or empty if there are no more
1105
+ # results.
1106
+ # Corresponds to the JSON property `nextPageToken`
1107
+ # @return [String]
1108
+ attr_accessor :next_page_token
1109
+
1110
+ # Time used for executing the groupBy request.
1111
+ # Corresponds to the JSON property `readTime`
1112
+ # @return [String]
1113
+ attr_accessor :read_time
1114
+
1115
+ # The total number of results matching the query.
1116
+ # Corresponds to the JSON property `totalSize`
1117
+ # @return [Fixnum]
1118
+ attr_accessor :total_size
1119
+
1120
+ def initialize(**args)
1121
+ update!(**args)
1122
+ end
1123
+
1124
+ # Update properties of this object
1125
+ def update!(**args)
1126
+ @group_by_results = args[:group_by_results] if args.key?(:group_by_results)
1127
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1128
+ @read_time = args[:read_time] if args.key?(:read_time)
1129
+ @total_size = args[:total_size] if args.key?(:total_size)
1130
+ end
1131
+ end
1132
+
1133
+ # Request message for grouping by findings.
1134
+ class GroupFindingsRequest
1135
+ include Google::Apis::Core::Hashable
1136
+
1137
+ # When compare_duration is set, the GroupResult's "state_change" attribute is
1138
+ # updated to indicate whether the finding had its state changed, the
1139
+ # finding's state remained unchanged, or if the finding was added during the
1140
+ # compare_duration period of time that precedes the read_time. This is the
1141
+ # time between (read_time - compare_duration) and read_time.
1142
+ # The state_change value is derived based on the presence and state of the
1143
+ # finding at the two points in time. Intermediate state changes between the
1144
+ # two times don't affect the result. For example, the results aren't affected
1145
+ # if the finding is made inactive and then active again.
1146
+ # Possible "state_change" values when compare_duration is specified:
1147
+ # * "CHANGED": indicates that the finding was present and matched the given
1148
+ # filter at the start of compare_duration, but changed its
1149
+ # state at read_time.
1150
+ # * "UNCHANGED": indicates that the finding was present and matched the given
1151
+ # filter at the start of compare_duration and did not change
1152
+ # state at read_time.
1153
+ # * "ADDED": indicates that the finding did not match the given filter or
1154
+ # was not present at the start of compare_duration, but was
1155
+ # present at read_time.
1156
+ # * "REMOVED": indicates that the finding was present and matched the
1157
+ # filter at the start of compare_duration, but did not match
1158
+ # the filter at read_time.
1159
+ # If compare_duration is not specified, then the only possible state_change
1160
+ # is "UNUSED", which will be the state_change set for all findings present
1161
+ # at read_time.
1162
+ # If this field is set then `state_change` must be a specified field in
1163
+ # `group_by`.
1164
+ # Corresponds to the JSON property `compareDuration`
1165
+ # @return [String]
1166
+ attr_accessor :compare_duration
1167
+
1168
+ # Expression that defines the filter to apply across findings.
1169
+ # The expression is a list of one or more restrictions combined via logical
1170
+ # operators `AND` and `OR`.
1171
+ # Parentheses are supported, and `OR` has higher precedence than `AND`.
1172
+ # Restrictions have the form `<field> <operator> <value>` and may have a `-`
1173
+ # character in front of them to indicate negation. Examples include:
1174
+ # * name
1175
+ # * source_properties.a_property
1176
+ # * security_marks.marks.marka
1177
+ # The supported operators are:
1178
+ # * `=` for all value types.
1179
+ # * `>`, `<`, `>=`, `<=` for integer values.
1180
+ # * `:`, meaning substring matching, for strings.
1181
+ # The supported value types are:
1182
+ # * string literals in quotes.
1183
+ # * integer literals without quotes.
1184
+ # * boolean literals `true` and `false` without quotes.
1185
+ # The following field and operator combinations are supported:
1186
+ # * name: `=`
1187
+ # * parent: `=`, `:`
1188
+ # * resource_name: `=`, `:`
1189
+ # * state: `=`, `:`
1190
+ # * category: `=`, `:`
1191
+ # * external_uri: `=`, `:`
1192
+ # * event_time: `=`, `>`, `<`, `>=`, `<=`
1193
+ # Usage: This should be milliseconds since epoch or an RFC3339 string.
1194
+ # Examples:
1195
+ # "event_time = \"2019-06-10T16:07:18-07:00\""
1196
+ # "event_time = 1560208038000"
1197
+ # * security_marks.marks: `=`, `:`
1198
+ # * source_properties: `=`, `:`, `>`, `<`, `>=`, `<=`
1199
+ # For example, `source_properties.size = 100` is a valid filter string.
1200
+ # Use a partial match on the empty string to filter based on a property
1201
+ # existing: "source_properties.my_property : \"\""
1202
+ # Use a negated partial match on the empty string to filter based on a
1203
+ # property not existing: "-source_properties.my_property : \"\""
1204
+ # Corresponds to the JSON property `filter`
1205
+ # @return [String]
1206
+ attr_accessor :filter
1207
+
1208
+ # Required. Expression that defines what assets fields to use for grouping (
1209
+ # including
1210
+ # `state_change`). The string value should follow SQL syntax: comma separated
1211
+ # list of fields. For example: "parent,resource_name".
1212
+ # The following fields are supported:
1213
+ # * resource_name
1214
+ # * category
1215
+ # * state
1216
+ # * parent
1217
+ # The following fields are supported when compare_duration is set:
1218
+ # * state_change
1219
+ # Corresponds to the JSON property `groupBy`
1220
+ # @return [String]
1221
+ attr_accessor :group_by
1222
+
1223
+ # The maximum number of results to return in a single response. Default is
1224
+ # 10, minimum is 1, maximum is 1000.
1225
+ # Corresponds to the JSON property `pageSize`
1226
+ # @return [Fixnum]
1227
+ attr_accessor :page_size
1228
+
1229
+ # The value returned by the last `GroupFindingsResponse`; indicates
1230
+ # that this is a continuation of a prior `GroupFindings` call, and
1231
+ # that the system should return the next page of data.
1232
+ # Corresponds to the JSON property `pageToken`
1233
+ # @return [String]
1234
+ attr_accessor :page_token
1235
+
1236
+ # Time used as a reference point when filtering findings. The filter is
1237
+ # limited to findings existing at the supplied time and their values are
1238
+ # those at that specific time. Absence of this field will default to the
1239
+ # API's version of NOW.
1240
+ # Corresponds to the JSON property `readTime`
1241
+ # @return [String]
1242
+ attr_accessor :read_time
1243
+
1244
+ def initialize(**args)
1245
+ update!(**args)
1246
+ end
1247
+
1248
+ # Update properties of this object
1249
+ def update!(**args)
1250
+ @compare_duration = args[:compare_duration] if args.key?(:compare_duration)
1251
+ @filter = args[:filter] if args.key?(:filter)
1252
+ @group_by = args[:group_by] if args.key?(:group_by)
1253
+ @page_size = args[:page_size] if args.key?(:page_size)
1254
+ @page_token = args[:page_token] if args.key?(:page_token)
1255
+ @read_time = args[:read_time] if args.key?(:read_time)
1256
+ end
1257
+ end
1258
+
1259
+ # Response message for group by findings.
1260
+ class GroupFindingsResponse
1261
+ include Google::Apis::Core::Hashable
1262
+
1263
+ # Group results. There exists an element for each existing unique
1264
+ # combination of property/values. The element contains a count for the number
1265
+ # of times those specific property/values appear.
1266
+ # Corresponds to the JSON property `groupByResults`
1267
+ # @return [Array<Google::Apis::SecuritycenterV1p1beta1::GroupResult>]
1268
+ attr_accessor :group_by_results
1269
+
1270
+ # Token to retrieve the next page of results, or empty if there are no more
1271
+ # results.
1272
+ # Corresponds to the JSON property `nextPageToken`
1273
+ # @return [String]
1274
+ attr_accessor :next_page_token
1275
+
1276
+ # Time used for executing the groupBy request.
1277
+ # Corresponds to the JSON property `readTime`
1278
+ # @return [String]
1279
+ attr_accessor :read_time
1280
+
1281
+ # The total number of results matching the query.
1282
+ # Corresponds to the JSON property `totalSize`
1283
+ # @return [Fixnum]
1284
+ attr_accessor :total_size
1285
+
1286
+ def initialize(**args)
1287
+ update!(**args)
1288
+ end
1289
+
1290
+ # Update properties of this object
1291
+ def update!(**args)
1292
+ @group_by_results = args[:group_by_results] if args.key?(:group_by_results)
1293
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1294
+ @read_time = args[:read_time] if args.key?(:read_time)
1295
+ @total_size = args[:total_size] if args.key?(:total_size)
1296
+ end
1297
+ end
1298
+
1299
+ # Result containing the properties and count of a groupBy request.
1300
+ class GroupResult
1301
+ include Google::Apis::Core::Hashable
1302
+
1303
+ # Total count of resources for the given properties.
1304
+ # Corresponds to the JSON property `count`
1305
+ # @return [Fixnum]
1306
+ attr_accessor :count
1307
+
1308
+ # Properties matching the groupBy fields in the request.
1309
+ # Corresponds to the JSON property `properties`
1310
+ # @return [Hash<String,Object>]
1311
+ attr_accessor :properties
1312
+
1313
+ def initialize(**args)
1314
+ update!(**args)
1315
+ end
1316
+
1317
+ # Update properties of this object
1318
+ def update!(**args)
1319
+ @count = args[:count] if args.key?(:count)
1320
+ @properties = args[:properties] if args.key?(:properties)
1321
+ end
1322
+ end
1323
+
1324
+ # Response message for listing assets.
1325
+ class ListAssetsResponse
1326
+ include Google::Apis::Core::Hashable
1327
+
1328
+ # Assets matching the list request.
1329
+ # Corresponds to the JSON property `listAssetsResults`
1330
+ # @return [Array<Google::Apis::SecuritycenterV1p1beta1::ListAssetsResult>]
1331
+ attr_accessor :list_assets_results
1332
+
1333
+ # Token to retrieve the next page of results, or empty if there are no more
1334
+ # results.
1335
+ # Corresponds to the JSON property `nextPageToken`
1336
+ # @return [String]
1337
+ attr_accessor :next_page_token
1338
+
1339
+ # Time used for executing the list request.
1340
+ # Corresponds to the JSON property `readTime`
1341
+ # @return [String]
1342
+ attr_accessor :read_time
1343
+
1344
+ # The total number of assets matching the query.
1345
+ # Corresponds to the JSON property `totalSize`
1346
+ # @return [Fixnum]
1347
+ attr_accessor :total_size
1348
+
1349
+ def initialize(**args)
1350
+ update!(**args)
1351
+ end
1352
+
1353
+ # Update properties of this object
1354
+ def update!(**args)
1355
+ @list_assets_results = args[:list_assets_results] if args.key?(:list_assets_results)
1356
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1357
+ @read_time = args[:read_time] if args.key?(:read_time)
1358
+ @total_size = args[:total_size] if args.key?(:total_size)
1359
+ end
1360
+ end
1361
+
1362
+ # Result containing the Asset and its State.
1363
+ class ListAssetsResult
1364
+ include Google::Apis::Core::Hashable
1365
+
1366
+ # Security Command Center representation of a Google Cloud
1367
+ # resource.
1368
+ # The Asset is a Security Command Center resource that captures information
1369
+ # about a single Google Cloud resource. All modifications to an Asset are only
1370
+ # within the context of Security Command Center and don't affect the referenced
1371
+ # Google Cloud resource.
1372
+ # Corresponds to the JSON property `asset`
1373
+ # @return [Google::Apis::SecuritycenterV1p1beta1::GoogleCloudSecuritycenterV1p1beta1Asset]
1374
+ attr_accessor :asset
1375
+
1376
+ # State change of the asset between the points in time.
1377
+ # Corresponds to the JSON property `stateChange`
1378
+ # @return [String]
1379
+ attr_accessor :state_change
1380
+
1381
+ def initialize(**args)
1382
+ update!(**args)
1383
+ end
1384
+
1385
+ # Update properties of this object
1386
+ def update!(**args)
1387
+ @asset = args[:asset] if args.key?(:asset)
1388
+ @state_change = args[:state_change] if args.key?(:state_change)
1389
+ end
1390
+ end
1391
+
1392
+ # Response message for listing findings.
1393
+ class ListFindingsResponse
1394
+ include Google::Apis::Core::Hashable
1395
+
1396
+ # Findings matching the list request.
1397
+ # Corresponds to the JSON property `listFindingsResults`
1398
+ # @return [Array<Google::Apis::SecuritycenterV1p1beta1::ListFindingsResult>]
1399
+ attr_accessor :list_findings_results
1400
+
1401
+ # Token to retrieve the next page of results, or empty if there are no more
1402
+ # results.
1403
+ # Corresponds to the JSON property `nextPageToken`
1404
+ # @return [String]
1405
+ attr_accessor :next_page_token
1406
+
1407
+ # Time used for executing the list request.
1408
+ # Corresponds to the JSON property `readTime`
1409
+ # @return [String]
1410
+ attr_accessor :read_time
1411
+
1412
+ # The total number of findings matching the query.
1413
+ # Corresponds to the JSON property `totalSize`
1414
+ # @return [Fixnum]
1415
+ attr_accessor :total_size
1416
+
1417
+ def initialize(**args)
1418
+ update!(**args)
1419
+ end
1420
+
1421
+ # Update properties of this object
1422
+ def update!(**args)
1423
+ @list_findings_results = args[:list_findings_results] if args.key?(:list_findings_results)
1424
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1425
+ @read_time = args[:read_time] if args.key?(:read_time)
1426
+ @total_size = args[:total_size] if args.key?(:total_size)
1427
+ end
1428
+ end
1429
+
1430
+ # Result containing the Finding and its StateChange.
1431
+ class ListFindingsResult
1432
+ include Google::Apis::Core::Hashable
1433
+
1434
+ # Security Command Center finding.
1435
+ # A finding is a record of assessment data (security, risk, health or privacy)
1436
+ # ingested into Security Command Center for presentation, notification,
1437
+ # analysis, policy testing, and enforcement. For example, an XSS vulnerability
1438
+ # in an App Engine application is a finding.
1439
+ # Corresponds to the JSON property `finding`
1440
+ # @return [Google::Apis::SecuritycenterV1p1beta1::GoogleCloudSecuritycenterV1p1beta1Finding]
1441
+ attr_accessor :finding
1442
+
1443
+ # Information related to the Google Cloud resource that is
1444
+ # associated with this finding.
1445
+ # Corresponds to the JSON property `resource`
1446
+ # @return [Google::Apis::SecuritycenterV1p1beta1::Resource]
1447
+ attr_accessor :resource
1448
+
1449
+ # State change of the finding between the points in time.
1450
+ # Corresponds to the JSON property `stateChange`
1451
+ # @return [String]
1452
+ attr_accessor :state_change
1453
+
1454
+ def initialize(**args)
1455
+ update!(**args)
1456
+ end
1457
+
1458
+ # Update properties of this object
1459
+ def update!(**args)
1460
+ @finding = args[:finding] if args.key?(:finding)
1461
+ @resource = args[:resource] if args.key?(:resource)
1462
+ @state_change = args[:state_change] if args.key?(:state_change)
1463
+ end
1464
+ end
1465
+
1466
+ # Response message for listing notification configs.
1467
+ class ListNotificationConfigsResponse
1468
+ include Google::Apis::Core::Hashable
1469
+
1470
+ # Token to retrieve the next page of results, or empty if there are no more
1471
+ # results.
1472
+ # Corresponds to the JSON property `nextPageToken`
1473
+ # @return [String]
1474
+ attr_accessor :next_page_token
1475
+
1476
+ # Notification configs belonging to the requested parent.
1477
+ # Corresponds to the JSON property `notificationConfigs`
1478
+ # @return [Array<Google::Apis::SecuritycenterV1p1beta1::NotificationConfig>]
1479
+ attr_accessor :notification_configs
1480
+
1481
+ def initialize(**args)
1482
+ update!(**args)
1483
+ end
1484
+
1485
+ # Update properties of this object
1486
+ def update!(**args)
1487
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1488
+ @notification_configs = args[:notification_configs] if args.key?(:notification_configs)
1489
+ end
1490
+ end
1491
+
1492
+ # The response message for Operations.ListOperations.
1493
+ class ListOperationsResponse
1494
+ include Google::Apis::Core::Hashable
1495
+
1496
+ # The standard List next-page token.
1497
+ # Corresponds to the JSON property `nextPageToken`
1498
+ # @return [String]
1499
+ attr_accessor :next_page_token
1500
+
1501
+ # A list of operations that matches the specified filter in the request.
1502
+ # Corresponds to the JSON property `operations`
1503
+ # @return [Array<Google::Apis::SecuritycenterV1p1beta1::Operation>]
1504
+ attr_accessor :operations
1505
+
1506
+ def initialize(**args)
1507
+ update!(**args)
1508
+ end
1509
+
1510
+ # Update properties of this object
1511
+ def update!(**args)
1512
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1513
+ @operations = args[:operations] if args.key?(:operations)
1514
+ end
1515
+ end
1516
+
1517
+ # Response message for listing sources.
1518
+ class ListSourcesResponse
1519
+ include Google::Apis::Core::Hashable
1520
+
1521
+ # Token to retrieve the next page of results, or empty if there are no more
1522
+ # results.
1523
+ # Corresponds to the JSON property `nextPageToken`
1524
+ # @return [String]
1525
+ attr_accessor :next_page_token
1526
+
1527
+ # Sources belonging to the requested parent.
1528
+ # Corresponds to the JSON property `sources`
1529
+ # @return [Array<Google::Apis::SecuritycenterV1p1beta1::Source>]
1530
+ attr_accessor :sources
1531
+
1532
+ def initialize(**args)
1533
+ update!(**args)
1534
+ end
1535
+
1536
+ # Update properties of this object
1537
+ def update!(**args)
1538
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1539
+ @sources = args[:sources] if args.key?(:sources)
1540
+ end
1541
+ end
1542
+
1543
+ # Security Command Center notification configs.
1544
+ # A notification config is a Security Command Center resource that contains the
1545
+ # configuration to send notifications for create/update events of findings,
1546
+ # assets and etc.
1547
+ class NotificationConfig
1548
+ include Google::Apis::Core::Hashable
1549
+
1550
+ # The description of the notification config (max of 1024 characters).
1551
+ # Corresponds to the JSON property `description`
1552
+ # @return [String]
1553
+ attr_accessor :description
1554
+
1555
+ # The type of events the config is for, e.g. FINDING.
1556
+ # Corresponds to the JSON property `eventType`
1557
+ # @return [String]
1558
+ attr_accessor :event_type
1559
+
1560
+ # The relative resource name of this notification config. See:
1561
+ # https://cloud.google.com/apis/design/resource_names#relative_resource_name
1562
+ # Example:
1563
+ # "organizations/`organization_id`/notificationConfigs/notify_public_bucket".
1564
+ # Corresponds to the JSON property `name`
1565
+ # @return [String]
1566
+ attr_accessor :name
1567
+
1568
+ # The Pub/Sub topic to send notifications to. Its format is
1569
+ # "projects/[project_id]/topics/[topic]".
1570
+ # Corresponds to the JSON property `pubsubTopic`
1571
+ # @return [String]
1572
+ attr_accessor :pubsub_topic
1573
+
1574
+ # Output only. The service account that needs "pubsub.topics.publish"
1575
+ # permission to publish to the Pub/Sub topic.
1576
+ # Corresponds to the JSON property `serviceAccount`
1577
+ # @return [String]
1578
+ attr_accessor :service_account
1579
+
1580
+ # The config for streaming-based notifications, which send each event as soon
1581
+ # as it is detected.
1582
+ # Corresponds to the JSON property `streamingConfig`
1583
+ # @return [Google::Apis::SecuritycenterV1p1beta1::StreamingConfig]
1584
+ attr_accessor :streaming_config
1585
+
1586
+ def initialize(**args)
1587
+ update!(**args)
1588
+ end
1589
+
1590
+ # Update properties of this object
1591
+ def update!(**args)
1592
+ @description = args[:description] if args.key?(:description)
1593
+ @event_type = args[:event_type] if args.key?(:event_type)
1594
+ @name = args[:name] if args.key?(:name)
1595
+ @pubsub_topic = args[:pubsub_topic] if args.key?(:pubsub_topic)
1596
+ @service_account = args[:service_account] if args.key?(:service_account)
1597
+ @streaming_config = args[:streaming_config] if args.key?(:streaming_config)
1598
+ end
1599
+ end
1600
+
1601
+ # This resource represents a long-running operation that is the result of a
1602
+ # network API call.
1603
+ class Operation
1604
+ include Google::Apis::Core::Hashable
1605
+
1606
+ # If the value is `false`, it means the operation is still in progress.
1607
+ # If `true`, the operation is completed, and either `error` or `response` is
1608
+ # available.
1609
+ # Corresponds to the JSON property `done`
1610
+ # @return [Boolean]
1611
+ attr_accessor :done
1612
+ alias_method :done?, :done
1613
+
1614
+ # The `Status` type defines a logical error model that is suitable for
1615
+ # different programming environments, including REST APIs and RPC APIs. It is
1616
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
1617
+ # three pieces of data: error code, error message, and error details.
1618
+ # You can find out more about this error model and how to work with it in the
1619
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
1620
+ # Corresponds to the JSON property `error`
1621
+ # @return [Google::Apis::SecuritycenterV1p1beta1::Status]
1622
+ attr_accessor :error
1623
+
1624
+ # Service-specific metadata associated with the operation. It typically
1625
+ # contains progress information and common metadata such as create time.
1626
+ # Some services might not provide such metadata. Any method that returns a
1627
+ # long-running operation should document the metadata type, if any.
1628
+ # Corresponds to the JSON property `metadata`
1629
+ # @return [Hash<String,Object>]
1630
+ attr_accessor :metadata
1631
+
1632
+ # The server-assigned name, which is only unique within the same service that
1633
+ # originally returns it. If you use the default HTTP mapping, the
1634
+ # `name` should be a resource name ending with `operations/`unique_id``.
1635
+ # Corresponds to the JSON property `name`
1636
+ # @return [String]
1637
+ attr_accessor :name
1638
+
1639
+ # The normal response of the operation in case of success. If the original
1640
+ # method returns no data on success, such as `Delete`, the response is
1641
+ # `google.protobuf.Empty`. If the original method is standard
1642
+ # `Get`/`Create`/`Update`, the response should be the resource. For other
1643
+ # methods, the response should have the type `XxxResponse`, where `Xxx`
1644
+ # is the original method name. For example, if the original method name
1645
+ # is `TakeSnapshot()`, the inferred response type is
1646
+ # `TakeSnapshotResponse`.
1647
+ # Corresponds to the JSON property `response`
1648
+ # @return [Hash<String,Object>]
1649
+ attr_accessor :response
1650
+
1651
+ def initialize(**args)
1652
+ update!(**args)
1653
+ end
1654
+
1655
+ # Update properties of this object
1656
+ def update!(**args)
1657
+ @done = args[:done] if args.key?(:done)
1658
+ @error = args[:error] if args.key?(:error)
1659
+ @metadata = args[:metadata] if args.key?(:metadata)
1660
+ @name = args[:name] if args.key?(:name)
1661
+ @response = args[:response] if args.key?(:response)
1662
+ end
1663
+ end
1664
+
1665
+ # User specified settings that are attached to the Security Command
1666
+ # Center organization.
1667
+ class OrganizationSettings
1668
+ include Google::Apis::Core::Hashable
1669
+
1670
+ # The configuration used for Asset Discovery runs.
1671
+ # Corresponds to the JSON property `assetDiscoveryConfig`
1672
+ # @return [Google::Apis::SecuritycenterV1p1beta1::AssetDiscoveryConfig]
1673
+ attr_accessor :asset_discovery_config
1674
+
1675
+ # A flag that indicates if Asset Discovery should be enabled. If the flag is
1676
+ # set to `true`, then discovery of assets will occur. If it is set to `false,
1677
+ # all historical assets will remain, but discovery of future assets will not
1678
+ # occur.
1679
+ # Corresponds to the JSON property `enableAssetDiscovery`
1680
+ # @return [Boolean]
1681
+ attr_accessor :enable_asset_discovery
1682
+ alias_method :enable_asset_discovery?, :enable_asset_discovery
1683
+
1684
+ # The relative resource name of the settings. See:
1685
+ # https://cloud.google.com/apis/design/resource_names#relative_resource_name
1686
+ # Example:
1687
+ # "organizations/`organization_id`/organizationSettings".
1688
+ # Corresponds to the JSON property `name`
1689
+ # @return [String]
1690
+ attr_accessor :name
1691
+
1692
+ def initialize(**args)
1693
+ update!(**args)
1694
+ end
1695
+
1696
+ # Update properties of this object
1697
+ def update!(**args)
1698
+ @asset_discovery_config = args[:asset_discovery_config] if args.key?(:asset_discovery_config)
1699
+ @enable_asset_discovery = args[:enable_asset_discovery] if args.key?(:enable_asset_discovery)
1700
+ @name = args[:name] if args.key?(:name)
1701
+ end
1702
+ end
1703
+
1704
+ # An Identity and Access Management (IAM) policy, which specifies access
1705
+ # controls for Google Cloud resources.
1706
+ # A `Policy` is a collection of `bindings`. A `binding` binds one or more
1707
+ # `members` to a single `role`. Members can be user accounts, service accounts,
1708
+ # Google groups, and domains (such as G Suite). A `role` is a named list of
1709
+ # permissions; each `role` can be an IAM predefined role or a user-created
1710
+ # custom role.
1711
+ # For some types of Google Cloud resources, a `binding` can also specify a
1712
+ # `condition`, which is a logical expression that allows access to a resource
1713
+ # only if the expression evaluates to `true`. A condition can add constraints
1714
+ # based on attributes of the request, the resource, or both. To learn which
1715
+ # resources support conditions in their IAM policies, see the
1716
+ # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
1717
+ # policies).
1718
+ # **JSON example:**
1719
+ # `
1720
+ # "bindings": [
1721
+ # `
1722
+ # "role": "roles/resourcemanager.organizationAdmin",
1723
+ # "members": [
1724
+ # "user:mike@example.com",
1725
+ # "group:admins@example.com",
1726
+ # "domain:google.com",
1727
+ # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
1728
+ # ]
1729
+ # `,
1730
+ # `
1731
+ # "role": "roles/resourcemanager.organizationViewer",
1732
+ # "members": [
1733
+ # "user:eve@example.com"
1734
+ # ],
1735
+ # "condition": `
1736
+ # "title": "expirable access",
1737
+ # "description": "Does not grant access after Sep 2020",
1738
+ # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')
1739
+ # ",
1740
+ # `
1741
+ # `
1742
+ # ],
1743
+ # "etag": "BwWWja0YfJA=",
1744
+ # "version": 3
1745
+ # `
1746
+ # **YAML example:**
1747
+ # bindings:
1748
+ # - members:
1749
+ # - user:mike@example.com
1750
+ # - group:admins@example.com
1751
+ # - domain:google.com
1752
+ # - serviceAccount:my-project-id@appspot.gserviceaccount.com
1753
+ # role: roles/resourcemanager.organizationAdmin
1754
+ # - members:
1755
+ # - user:eve@example.com
1756
+ # role: roles/resourcemanager.organizationViewer
1757
+ # condition:
1758
+ # title: expirable access
1759
+ # description: Does not grant access after Sep 2020
1760
+ # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
1761
+ # - etag: BwWWja0YfJA=
1762
+ # - version: 3
1763
+ # For a description of IAM and its features, see the
1764
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
1765
+ class Policy
1766
+ include Google::Apis::Core::Hashable
1767
+
1768
+ # Specifies cloud audit logging configuration for this policy.
1769
+ # Corresponds to the JSON property `auditConfigs`
1770
+ # @return [Array<Google::Apis::SecuritycenterV1p1beta1::AuditConfig>]
1771
+ attr_accessor :audit_configs
1772
+
1773
+ # Associates a list of `members` to a `role`. Optionally, may specify a
1774
+ # `condition` that determines how and when the `bindings` are applied. Each
1775
+ # of the `bindings` must contain at least one member.
1776
+ # Corresponds to the JSON property `bindings`
1777
+ # @return [Array<Google::Apis::SecuritycenterV1p1beta1::Binding>]
1778
+ attr_accessor :bindings
1779
+
1780
+ # `etag` is used for optimistic concurrency control as a way to help
1781
+ # prevent simultaneous updates of a policy from overwriting each other.
1782
+ # It is strongly suggested that systems make use of the `etag` in the
1783
+ # read-modify-write cycle to perform policy updates in order to avoid race
1784
+ # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1785
+ # systems are expected to put that etag in the request to `setIamPolicy` to
1786
+ # ensure that their change will be applied to the same version of the policy.
1787
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
1788
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1789
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
1790
+ # the conditions in the version `3` policy are lost.
1791
+ # Corresponds to the JSON property `etag`
1792
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1793
+ # @return [String]
1794
+ attr_accessor :etag
1795
+
1796
+ # Specifies the format of the policy.
1797
+ # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
1798
+ # are rejected.
1799
+ # Any operation that affects conditional role bindings must specify version
1800
+ # `3`. This requirement applies to the following operations:
1801
+ # * Getting a policy that includes a conditional role binding
1802
+ # * Adding a conditional role binding to a policy
1803
+ # * Changing a conditional role binding in a policy
1804
+ # * Removing any role binding, with or without a condition, from a policy
1805
+ # that includes conditions
1806
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
1807
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1808
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
1809
+ # the conditions in the version `3` policy are lost.
1810
+ # If a policy does not include any conditions, operations on that policy may
1811
+ # specify any valid version or leave the field unset.
1812
+ # To learn which resources support conditions in their IAM policies, see the
1813
+ # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
1814
+ # policies).
1815
+ # Corresponds to the JSON property `version`
1816
+ # @return [Fixnum]
1817
+ attr_accessor :version
1818
+
1819
+ def initialize(**args)
1820
+ update!(**args)
1821
+ end
1822
+
1823
+ # Update properties of this object
1824
+ def update!(**args)
1825
+ @audit_configs = args[:audit_configs] if args.key?(:audit_configs)
1826
+ @bindings = args[:bindings] if args.key?(:bindings)
1827
+ @etag = args[:etag] if args.key?(:etag)
1828
+ @version = args[:version] if args.key?(:version)
1829
+ end
1830
+ end
1831
+
1832
+ # Information related to the Google Cloud resource that is
1833
+ # associated with this finding.
1834
+ class Resource
1835
+ include Google::Apis::Core::Hashable
1836
+
1837
+ # The full resource name of the resource. See:
1838
+ # https://cloud.google.com/apis/design/resource_names#full_resource_name
1839
+ # Corresponds to the JSON property `name`
1840
+ # @return [String]
1841
+ attr_accessor :name
1842
+
1843
+ # The human readable name of resource's parent.
1844
+ # Corresponds to the JSON property `parentDisplayName`
1845
+ # @return [String]
1846
+ attr_accessor :parent_display_name
1847
+
1848
+ # The full resource name of resource's parent.
1849
+ # Corresponds to the JSON property `parentName`
1850
+ # @return [String]
1851
+ attr_accessor :parent_name
1852
+
1853
+ # The human readable name of project that the resource belongs to.
1854
+ # Corresponds to the JSON property `projectDisplayName`
1855
+ # @return [String]
1856
+ attr_accessor :project_display_name
1857
+
1858
+ # The full resource name of project that the resource belongs to.
1859
+ # Corresponds to the JSON property `projectName`
1860
+ # @return [String]
1861
+ attr_accessor :project_name
1862
+
1863
+ def initialize(**args)
1864
+ update!(**args)
1865
+ end
1866
+
1867
+ # Update properties of this object
1868
+ def update!(**args)
1869
+ @name = args[:name] if args.key?(:name)
1870
+ @parent_display_name = args[:parent_display_name] if args.key?(:parent_display_name)
1871
+ @parent_name = args[:parent_name] if args.key?(:parent_name)
1872
+ @project_display_name = args[:project_display_name] if args.key?(:project_display_name)
1873
+ @project_name = args[:project_name] if args.key?(:project_name)
1874
+ end
1875
+ end
1876
+
1877
+ # Request message for running asset discovery for an organization.
1878
+ class RunAssetDiscoveryRequest
1879
+ include Google::Apis::Core::Hashable
1880
+
1881
+ def initialize(**args)
1882
+ update!(**args)
1883
+ end
1884
+
1885
+ # Update properties of this object
1886
+ def update!(**args)
1887
+ end
1888
+ end
1889
+
1890
+ # User specified security marks that are attached to the parent Security
1891
+ # Command Center resource. Security marks are scoped within a Security Command
1892
+ # Center organization -- they can be modified and viewed by all users who have
1893
+ # proper permissions on the organization.
1894
+ class SecurityMarks
1895
+ include Google::Apis::Core::Hashable
1896
+
1897
+ # Mutable user specified security marks belonging to the parent resource.
1898
+ # Constraints are as follows:
1899
+ # * Keys and values are treated as case insensitive
1900
+ # * Keys must be between 1 - 256 characters (inclusive)
1901
+ # * Keys must be letters, numbers, underscores, or dashes
1902
+ # * Values have leading and trailing whitespace trimmed, remaining
1903
+ # characters must be between 1 - 4096 characters (inclusive)
1904
+ # Corresponds to the JSON property `marks`
1905
+ # @return [Hash<String,String>]
1906
+ attr_accessor :marks
1907
+
1908
+ # The relative resource name of the SecurityMarks. See:
1909
+ # https://cloud.google.com/apis/design/resource_names#relative_resource_name
1910
+ # Examples:
1911
+ # "organizations/`organization_id`/assets/`asset_id`/securityMarks"
1912
+ # "organizations/`organization_id`/sources/`source_id`/findings/`finding_id`/
1913
+ # securityMarks".
1914
+ # Corresponds to the JSON property `name`
1915
+ # @return [String]
1916
+ attr_accessor :name
1917
+
1918
+ def initialize(**args)
1919
+ update!(**args)
1920
+ end
1921
+
1922
+ # Update properties of this object
1923
+ def update!(**args)
1924
+ @marks = args[:marks] if args.key?(:marks)
1925
+ @name = args[:name] if args.key?(:name)
1926
+ end
1927
+ end
1928
+
1929
+ # Request message for updating a finding's state.
1930
+ class SetFindingStateRequest
1931
+ include Google::Apis::Core::Hashable
1932
+
1933
+ # Required. The time at which the updated state takes effect.
1934
+ # Corresponds to the JSON property `startTime`
1935
+ # @return [String]
1936
+ attr_accessor :start_time
1937
+
1938
+ # Required. The desired State of the finding.
1939
+ # Corresponds to the JSON property `state`
1940
+ # @return [String]
1941
+ attr_accessor :state
1942
+
1943
+ def initialize(**args)
1944
+ update!(**args)
1945
+ end
1946
+
1947
+ # Update properties of this object
1948
+ def update!(**args)
1949
+ @start_time = args[:start_time] if args.key?(:start_time)
1950
+ @state = args[:state] if args.key?(:state)
1951
+ end
1952
+ end
1953
+
1954
+ # Request message for `SetIamPolicy` method.
1955
+ class SetIamPolicyRequest
1956
+ include Google::Apis::Core::Hashable
1957
+
1958
+ # An Identity and Access Management (IAM) policy, which specifies access
1959
+ # controls for Google Cloud resources.
1960
+ # A `Policy` is a collection of `bindings`. A `binding` binds one or more
1961
+ # `members` to a single `role`. Members can be user accounts, service accounts,
1962
+ # Google groups, and domains (such as G Suite). A `role` is a named list of
1963
+ # permissions; each `role` can be an IAM predefined role or a user-created
1964
+ # custom role.
1965
+ # For some types of Google Cloud resources, a `binding` can also specify a
1966
+ # `condition`, which is a logical expression that allows access to a resource
1967
+ # only if the expression evaluates to `true`. A condition can add constraints
1968
+ # based on attributes of the request, the resource, or both. To learn which
1969
+ # resources support conditions in their IAM policies, see the
1970
+ # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
1971
+ # policies).
1972
+ # **JSON example:**
1973
+ # `
1974
+ # "bindings": [
1975
+ # `
1976
+ # "role": "roles/resourcemanager.organizationAdmin",
1977
+ # "members": [
1978
+ # "user:mike@example.com",
1979
+ # "group:admins@example.com",
1980
+ # "domain:google.com",
1981
+ # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
1982
+ # ]
1983
+ # `,
1984
+ # `
1985
+ # "role": "roles/resourcemanager.organizationViewer",
1986
+ # "members": [
1987
+ # "user:eve@example.com"
1988
+ # ],
1989
+ # "condition": `
1990
+ # "title": "expirable access",
1991
+ # "description": "Does not grant access after Sep 2020",
1992
+ # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')
1993
+ # ",
1994
+ # `
1995
+ # `
1996
+ # ],
1997
+ # "etag": "BwWWja0YfJA=",
1998
+ # "version": 3
1999
+ # `
2000
+ # **YAML example:**
2001
+ # bindings:
2002
+ # - members:
2003
+ # - user:mike@example.com
2004
+ # - group:admins@example.com
2005
+ # - domain:google.com
2006
+ # - serviceAccount:my-project-id@appspot.gserviceaccount.com
2007
+ # role: roles/resourcemanager.organizationAdmin
2008
+ # - members:
2009
+ # - user:eve@example.com
2010
+ # role: roles/resourcemanager.organizationViewer
2011
+ # condition:
2012
+ # title: expirable access
2013
+ # description: Does not grant access after Sep 2020
2014
+ # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
2015
+ # - etag: BwWWja0YfJA=
2016
+ # - version: 3
2017
+ # For a description of IAM and its features, see the
2018
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
2019
+ # Corresponds to the JSON property `policy`
2020
+ # @return [Google::Apis::SecuritycenterV1p1beta1::Policy]
2021
+ attr_accessor :policy
2022
+
2023
+ # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
2024
+ # the fields in the mask will be modified. If no mask is provided, the
2025
+ # following default mask is used:
2026
+ # `paths: "bindings, etag"`
2027
+ # Corresponds to the JSON property `updateMask`
2028
+ # @return [String]
2029
+ attr_accessor :update_mask
2030
+
2031
+ def initialize(**args)
2032
+ update!(**args)
2033
+ end
2034
+
2035
+ # Update properties of this object
2036
+ def update!(**args)
2037
+ @policy = args[:policy] if args.key?(:policy)
2038
+ @update_mask = args[:update_mask] if args.key?(:update_mask)
2039
+ end
2040
+ end
2041
+
2042
+ # Security Command Center finding source. A finding source
2043
+ # is an entity or a mechanism that can produce a finding. A source is like a
2044
+ # container of findings that come from the same scanner, logger, monitor, etc.
2045
+ class Source
2046
+ include Google::Apis::Core::Hashable
2047
+
2048
+ # The description of the source (max of 1024 characters).
2049
+ # Example:
2050
+ # "Web Security Scanner is a web security scanner for common
2051
+ # vulnerabilities in App Engine applications. It can automatically
2052
+ # scan and detect four common vulnerabilities, including cross-site-scripting
2053
+ # (XSS), Flash injection, mixed content (HTTP in HTTPS), and
2054
+ # outdated/insecure libraries."
2055
+ # Corresponds to the JSON property `description`
2056
+ # @return [String]
2057
+ attr_accessor :description
2058
+
2059
+ # The source's display name.
2060
+ # A source's display name must be unique amongst its siblings, for example,
2061
+ # two sources with the same parent can't share the same display name.
2062
+ # The display name must have a length between 1 and 64 characters
2063
+ # (inclusive).
2064
+ # Corresponds to the JSON property `displayName`
2065
+ # @return [String]
2066
+ attr_accessor :display_name
2067
+
2068
+ # The relative resource name of this source. See:
2069
+ # https://cloud.google.com/apis/design/resource_names#relative_resource_name
2070
+ # Example:
2071
+ # "organizations/`organization_id`/sources/`source_id`"
2072
+ # Corresponds to the JSON property `name`
2073
+ # @return [String]
2074
+ attr_accessor :name
2075
+
2076
+ def initialize(**args)
2077
+ update!(**args)
2078
+ end
2079
+
2080
+ # Update properties of this object
2081
+ def update!(**args)
2082
+ @description = args[:description] if args.key?(:description)
2083
+ @display_name = args[:display_name] if args.key?(:display_name)
2084
+ @name = args[:name] if args.key?(:name)
2085
+ end
2086
+ end
2087
+
2088
+ # The `Status` type defines a logical error model that is suitable for
2089
+ # different programming environments, including REST APIs and RPC APIs. It is
2090
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
2091
+ # three pieces of data: error code, error message, and error details.
2092
+ # You can find out more about this error model and how to work with it in the
2093
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
2094
+ class Status
2095
+ include Google::Apis::Core::Hashable
2096
+
2097
+ # The status code, which should be an enum value of google.rpc.Code.
2098
+ # Corresponds to the JSON property `code`
2099
+ # @return [Fixnum]
2100
+ attr_accessor :code
2101
+
2102
+ # A list of messages that carry the error details. There is a common set of
2103
+ # message types for APIs to use.
2104
+ # Corresponds to the JSON property `details`
2105
+ # @return [Array<Hash<String,Object>>]
2106
+ attr_accessor :details
2107
+
2108
+ # A developer-facing error message, which should be in English. Any
2109
+ # user-facing error message should be localized and sent in the
2110
+ # google.rpc.Status.details field, or localized by the client.
2111
+ # Corresponds to the JSON property `message`
2112
+ # @return [String]
2113
+ attr_accessor :message
2114
+
2115
+ def initialize(**args)
2116
+ update!(**args)
2117
+ end
2118
+
2119
+ # Update properties of this object
2120
+ def update!(**args)
2121
+ @code = args[:code] if args.key?(:code)
2122
+ @details = args[:details] if args.key?(:details)
2123
+ @message = args[:message] if args.key?(:message)
2124
+ end
2125
+ end
2126
+
2127
+ # The config for streaming-based notifications, which send each event as soon
2128
+ # as it is detected.
2129
+ class StreamingConfig
2130
+ include Google::Apis::Core::Hashable
2131
+
2132
+ # Expression that defines the filter to apply across create/update events
2133
+ # of assets or findings as specified by the event type. The expression is a
2134
+ # list of zero or more restrictions combined via logical operators `AND`
2135
+ # and `OR`. Parentheses are supported, and `OR` has higher precedence than
2136
+ # `AND`.
2137
+ # Restrictions have the form `<field> <operator> <value>` and may have a
2138
+ # `-` character in front of them to indicate negation. The fields map to
2139
+ # those defined in the corresponding resource.
2140
+ # The supported operators are:
2141
+ # * `=` for all value types.
2142
+ # * `>`, `<`, `>=`, `<=` for integer values.
2143
+ # * `:`, meaning substring matching, for strings.
2144
+ # The supported value types are:
2145
+ # * string literals in quotes.
2146
+ # * integer literals without quotes.
2147
+ # * boolean literals `true` and `false` without quotes.
2148
+ # Corresponds to the JSON property `filter`
2149
+ # @return [String]
2150
+ attr_accessor :filter
2151
+
2152
+ def initialize(**args)
2153
+ update!(**args)
2154
+ end
2155
+
2156
+ # Update properties of this object
2157
+ def update!(**args)
2158
+ @filter = args[:filter] if args.key?(:filter)
2159
+ end
2160
+ end
2161
+
2162
+ # Request message for `TestIamPermissions` method.
2163
+ class TestIamPermissionsRequest
2164
+ include Google::Apis::Core::Hashable
2165
+
2166
+ # The set of permissions to check for the `resource`. Permissions with
2167
+ # wildcards (such as '*' or 'storage.*') are not allowed. For more
2168
+ # information see
2169
+ # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
2170
+ # Corresponds to the JSON property `permissions`
2171
+ # @return [Array<String>]
2172
+ attr_accessor :permissions
2173
+
2174
+ def initialize(**args)
2175
+ update!(**args)
2176
+ end
2177
+
2178
+ # Update properties of this object
2179
+ def update!(**args)
2180
+ @permissions = args[:permissions] if args.key?(:permissions)
2181
+ end
2182
+ end
2183
+
2184
+ # Response message for `TestIamPermissions` method.
2185
+ class TestIamPermissionsResponse
2186
+ include Google::Apis::Core::Hashable
2187
+
2188
+ # A subset of `TestPermissionsRequest.permissions` that the caller is
2189
+ # allowed.
2190
+ # Corresponds to the JSON property `permissions`
2191
+ # @return [Array<String>]
2192
+ attr_accessor :permissions
2193
+
2194
+ def initialize(**args)
2195
+ update!(**args)
2196
+ end
2197
+
2198
+ # Update properties of this object
2199
+ def update!(**args)
2200
+ @permissions = args[:permissions] if args.key?(:permissions)
2201
+ end
2202
+ end
2203
+ end
2204
+ end
2205
+ end