google-api-client 0.32.1 → 0.40.0

Sign up to get free protection for your applications and to get access to all the features.
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