google-api-client 0.45.0 → 0.48.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (542) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/autoapprove.yml +49 -0
  3. data/.github/workflows/release-please.yml +77 -0
  4. data/.gitignore +2 -0
  5. data/.kokoro/trampoline.sh +0 -0
  6. data/CHANGELOG.md +664 -188
  7. data/Gemfile +1 -0
  8. data/Rakefile +31 -3
  9. data/api_list_config.yaml +8 -0
  10. data/bin/generate-api +77 -15
  11. data/generated/google/apis/acceleratedmobilepageurl_v1/classes.rb +7 -9
  12. data/generated/google/apis/acceleratedmobilepageurl_v1/service.rb +2 -2
  13. data/generated/google/apis/acceleratedmobilepageurl_v1.rb +1 -1
  14. data/generated/google/apis/accessapproval_v1/classes.rb +23 -16
  15. data/generated/google/apis/accessapproval_v1/service.rb +27 -27
  16. data/generated/google/apis/accessapproval_v1.rb +1 -1
  17. data/generated/google/apis/accesscontextmanager_v1/classes.rb +68 -0
  18. data/generated/google/apis/accesscontextmanager_v1/representations.rb +30 -0
  19. data/generated/google/apis/accesscontextmanager_v1/service.rb +180 -0
  20. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  21. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +30 -30
  22. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  23. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +25 -0
  24. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +15 -0
  25. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  26. data/generated/google/apis/admin_directory_v1/classes.rb +135 -0
  27. data/generated/google/apis/admin_directory_v1/representations.rb +62 -0
  28. data/generated/google/apis/admin_directory_v1/service.rb +72 -0
  29. data/generated/google/apis/admin_directory_v1.rb +1 -1
  30. data/generated/google/apis/admin_reports_v1.rb +1 -1
  31. data/generated/google/apis/admob_v1/classes.rb +29 -29
  32. data/generated/google/apis/admob_v1/service.rb +2 -1
  33. data/generated/google/apis/admob_v1.rb +3 -2
  34. data/generated/google/apis/adsense_v1_4/service.rb +4 -1
  35. data/generated/google/apis/adsense_v1_4.rb +1 -1
  36. data/generated/google/apis/analyticsadmin_v1alpha/classes.rb +1361 -0
  37. data/generated/google/apis/analyticsadmin_v1alpha/representations.rb +610 -0
  38. data/generated/google/apis/analyticsadmin_v1alpha/service.rb +2134 -0
  39. data/generated/google/apis/analyticsadmin_v1alpha.rb +43 -0
  40. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +56 -11
  41. data/generated/google/apis/analyticsdata_v1alpha/representations.rb +17 -0
  42. data/generated/google/apis/analyticsdata_v1alpha/service.rb +41 -0
  43. data/generated/google/apis/analyticsdata_v1alpha.rb +1 -1
  44. data/generated/google/apis/androidmanagement_v1/classes.rb +29 -26
  45. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  46. data/generated/google/apis/androidpublisher_v3/classes.rb +9 -1
  47. data/generated/google/apis/androidpublisher_v3/representations.rb +1 -0
  48. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  49. data/generated/google/apis/apigee_v1/classes.rb +252 -66
  50. data/generated/google/apis/apigee_v1/representations.rb +88 -19
  51. data/generated/google/apis/apigee_v1/service.rb +244 -38
  52. data/generated/google/apis/apigee_v1.rb +1 -1
  53. data/generated/google/apis/appsmarket_v2.rb +1 -1
  54. data/generated/google/apis/area120tables_v1alpha1/classes.rb +423 -0
  55. data/generated/google/apis/{apigateway_v1alpha1 → area120tables_v1alpha1}/representations.rb +67 -69
  56. data/generated/google/apis/area120tables_v1alpha1/service.rb +381 -0
  57. data/generated/google/apis/area120tables_v1alpha1.rb +46 -0
  58. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +7 -0
  59. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +1 -0
  60. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  61. data/generated/google/apis/assuredworkloads_v1beta1/classes.rb +264 -0
  62. data/generated/google/apis/assuredworkloads_v1beta1/representations.rb +129 -0
  63. data/generated/google/apis/assuredworkloads_v1beta1.rb +1 -1
  64. data/generated/google/apis/bigquery_v2/classes.rb +212 -23
  65. data/generated/google/apis/bigquery_v2/representations.rb +69 -0
  66. data/generated/google/apis/bigquery_v2/service.rb +47 -1
  67. data/generated/google/apis/bigquery_v2.rb +1 -1
  68. data/generated/google/apis/billingbudgets_v1/classes.rb +373 -0
  69. data/generated/google/apis/billingbudgets_v1/representations.rb +171 -0
  70. data/generated/google/apis/billingbudgets_v1/service.rb +249 -0
  71. data/generated/google/apis/billingbudgets_v1.rb +38 -0
  72. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +12 -1
  73. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +1 -0
  74. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  75. data/generated/google/apis/binaryauthorization_v1/classes.rb +189 -2
  76. data/generated/google/apis/binaryauthorization_v1/representations.rb +74 -0
  77. data/generated/google/apis/binaryauthorization_v1/service.rb +35 -0
  78. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  79. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +189 -2
  80. data/generated/google/apis/binaryauthorization_v1beta1/representations.rb +74 -0
  81. data/generated/google/apis/binaryauthorization_v1beta1/service.rb +35 -0
  82. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  83. data/generated/google/apis/books_v1/service.rb +54 -54
  84. data/generated/google/apis/books_v1.rb +1 -1
  85. data/generated/google/apis/calendar_v3/classes.rb +2 -1
  86. data/generated/google/apis/calendar_v3.rb +1 -1
  87. data/generated/google/apis/chat_v1/classes.rb +84 -2
  88. data/generated/google/apis/chat_v1/representations.rb +36 -0
  89. data/generated/google/apis/chat_v1.rb +1 -1
  90. data/generated/google/apis/civicinfo_v2/classes.rb +0 -24
  91. data/generated/google/apis/civicinfo_v2/representations.rb +0 -3
  92. data/generated/google/apis/civicinfo_v2.rb +1 -1
  93. data/generated/google/apis/classroom_v1/classes.rb +21 -21
  94. data/generated/google/apis/classroom_v1.rb +1 -1
  95. data/generated/google/apis/cloudasset_v1/classes.rb +697 -0
  96. data/generated/google/apis/cloudasset_v1/representations.rb +304 -0
  97. data/generated/google/apis/cloudasset_v1/service.rb +171 -0
  98. data/generated/google/apis/cloudasset_v1.rb +1 -1
  99. data/generated/google/apis/cloudasset_v1p4beta1/classes.rb +3 -3
  100. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  101. data/generated/google/apis/cloudbilling_v1/classes.rb +1 -1
  102. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  103. data/generated/google/apis/cloudbuild_v1/classes.rb +2 -35
  104. data/generated/google/apis/cloudbuild_v1/representations.rb +0 -15
  105. data/generated/google/apis/cloudbuild_v1/service.rb +17 -6
  106. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  107. data/generated/google/apis/cloudfunctions_v1/classes.rb +12 -1
  108. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -0
  109. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  110. data/generated/google/apis/cloudidentity_v1/classes.rb +78 -98
  111. data/generated/google/apis/cloudidentity_v1/representations.rb +0 -17
  112. data/generated/google/apis/cloudidentity_v1/service.rb +85 -69
  113. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  114. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +188 -0
  115. data/generated/google/apis/cloudidentity_v1beta1/representations.rb +94 -0
  116. data/generated/google/apis/cloudidentity_v1beta1/service.rb +179 -0
  117. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  118. data/generated/google/apis/cloudresourcemanager_v1/service.rb +2 -2
  119. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  120. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +2 -2
  121. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  122. data/generated/google/apis/cloudresourcemanager_v2/service.rb +7 -7
  123. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  124. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +7 -7
  125. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  126. data/generated/google/apis/cloudsearch_v1/classes.rb +2 -1
  127. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  128. data/generated/google/apis/cloudshell_v1/classes.rb +342 -0
  129. data/generated/google/apis/cloudshell_v1/representations.rb +200 -0
  130. data/generated/google/apis/cloudshell_v1/service.rb +177 -0
  131. data/generated/google/apis/cloudshell_v1.rb +1 -1
  132. data/generated/google/apis/composer_v1/classes.rb +2 -3
  133. data/generated/google/apis/composer_v1.rb +1 -1
  134. data/generated/google/apis/composer_v1beta1/classes.rb +4 -4
  135. data/generated/google/apis/composer_v1beta1/service.rb +37 -35
  136. data/generated/google/apis/composer_v1beta1.rb +1 -1
  137. data/generated/google/apis/compute_alpha/classes.rb +633 -146
  138. data/generated/google/apis/compute_alpha/representations.rb +131 -8
  139. data/generated/google/apis/compute_alpha/service.rb +1995 -1013
  140. data/generated/google/apis/compute_alpha.rb +1 -1
  141. data/generated/google/apis/compute_beta/classes.rb +566 -94
  142. data/generated/google/apis/compute_beta/representations.rb +100 -1
  143. data/generated/google/apis/compute_beta/service.rb +805 -136
  144. data/generated/google/apis/compute_beta.rb +1 -1
  145. data/generated/google/apis/compute_v1/classes.rb +586 -72
  146. data/generated/google/apis/compute_v1/representations.rb +98 -1
  147. data/generated/google/apis/compute_v1/service.rb +741 -133
  148. data/generated/google/apis/compute_v1.rb +1 -1
  149. data/generated/google/apis/container_v1/classes.rb +22 -10
  150. data/generated/google/apis/container_v1.rb +1 -1
  151. data/generated/google/apis/container_v1beta1/classes.rb +22 -10
  152. data/generated/google/apis/container_v1beta1.rb +1 -1
  153. data/generated/google/apis/content_v2/classes.rb +510 -1217
  154. data/generated/google/apis/content_v2/service.rb +377 -650
  155. data/generated/google/apis/content_v2.rb +3 -4
  156. data/generated/google/apis/content_v2_1/classes.rb +1001 -1053
  157. data/generated/google/apis/content_v2_1/representations.rb +253 -0
  158. data/generated/google/apis/content_v2_1/service.rb +943 -802
  159. data/generated/google/apis/content_v2_1.rb +3 -4
  160. data/generated/google/apis/datacatalog_v1beta1/classes.rb +25 -1
  161. data/generated/google/apis/datacatalog_v1beta1/representations.rb +5 -0
  162. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  163. data/generated/google/apis/dataflow_v1b3/classes.rb +32 -8
  164. data/generated/google/apis/dataflow_v1b3/representations.rb +3 -0
  165. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  166. data/generated/google/apis/datafusion_v1.rb +1 -1
  167. data/generated/google/apis/datalabeling_v1beta1/classes.rb +6207 -0
  168. data/generated/google/apis/datalabeling_v1beta1/representations.rb +3156 -0
  169. data/generated/google/apis/datalabeling_v1beta1/service.rb +1762 -0
  170. data/generated/google/apis/datalabeling_v1beta1.rb +34 -0
  171. data/generated/google/apis/dataproc_v1/classes.rb +41 -3
  172. data/generated/google/apis/dataproc_v1/representations.rb +16 -0
  173. data/generated/google/apis/dataproc_v1.rb +1 -1
  174. data/generated/google/apis/dataproc_v1beta2/classes.rb +41 -3
  175. data/generated/google/apis/dataproc_v1beta2/representations.rb +16 -0
  176. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  177. data/generated/google/apis/datastore_v1/classes.rb +4 -4
  178. data/generated/google/apis/datastore_v1.rb +1 -1
  179. data/generated/google/apis/datastore_v1beta3/classes.rb +4 -4
  180. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  181. data/generated/google/apis/deploymentmanager_v2/classes.rb +203 -558
  182. data/generated/google/apis/deploymentmanager_v2/representations.rb +0 -132
  183. data/generated/google/apis/deploymentmanager_v2/service.rb +169 -213
  184. data/generated/google/apis/deploymentmanager_v2.rb +6 -4
  185. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +247 -609
  186. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +0 -132
  187. data/generated/google/apis/deploymentmanager_v2beta/service.rb +278 -359
  188. data/generated/google/apis/deploymentmanager_v2beta.rb +6 -5
  189. data/generated/google/apis/dfareporting_v3_3/classes.rb +0 -164
  190. data/generated/google/apis/dfareporting_v3_3/representations.rb +0 -42
  191. data/generated/google/apis/dfareporting_v3_3.rb +1 -1
  192. data/generated/google/apis/dfareporting_v3_4/classes.rb +0 -164
  193. data/generated/google/apis/dfareporting_v3_4/representations.rb +0 -42
  194. data/generated/google/apis/dfareporting_v3_4.rb +1 -1
  195. data/generated/google/apis/dialogflow_v2/classes.rb +677 -204
  196. data/generated/google/apis/dialogflow_v2/representations.rb +300 -87
  197. data/generated/google/apis/dialogflow_v2.rb +1 -1
  198. data/generated/google/apis/dialogflow_v2beta1/classes.rb +684 -212
  199. data/generated/google/apis/dialogflow_v2beta1/representations.rb +300 -87
  200. data/generated/google/apis/dialogflow_v2beta1/service.rb +62 -12
  201. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  202. data/generated/google/apis/dialogflow_v3beta1/classes.rb +813 -207
  203. data/generated/google/apis/dialogflow_v3beta1/representations.rb +354 -90
  204. data/generated/google/apis/dialogflow_v3beta1/service.rb +22 -9
  205. data/generated/google/apis/dialogflow_v3beta1.rb +1 -1
  206. data/generated/google/apis/displayvideo_v1/classes.rb +216 -30
  207. data/generated/google/apis/displayvideo_v1/representations.rb +78 -0
  208. data/generated/google/apis/displayvideo_v1/service.rb +261 -18
  209. data/generated/google/apis/displayvideo_v1.rb +1 -1
  210. data/generated/google/apis/dlp_v2/classes.rb +59 -32
  211. data/generated/google/apis/dlp_v2/representations.rb +16 -0
  212. data/generated/google/apis/dlp_v2/service.rb +328 -328
  213. data/generated/google/apis/dlp_v2.rb +1 -1
  214. data/generated/google/apis/dns_v1/classes.rb +181 -0
  215. data/generated/google/apis/dns_v1/representations.rb +83 -0
  216. data/generated/google/apis/dns_v1/service.rb +11 -11
  217. data/generated/google/apis/dns_v1.rb +2 -2
  218. data/generated/google/apis/dns_v1beta2/classes.rb +182 -1
  219. data/generated/google/apis/dns_v1beta2/representations.rb +83 -0
  220. data/generated/google/apis/dns_v1beta2/service.rb +11 -11
  221. data/generated/google/apis/dns_v1beta2.rb +2 -2
  222. data/generated/google/apis/documentai_v1beta3/classes.rb +6149 -0
  223. data/generated/google/apis/documentai_v1beta3/representations.rb +2666 -0
  224. data/generated/google/apis/documentai_v1beta3/service.rb +263 -0
  225. data/generated/google/apis/documentai_v1beta3.rb +36 -0
  226. data/generated/google/apis/domains_v1alpha2/classes.rb +1540 -0
  227. data/generated/google/apis/domains_v1alpha2/representations.rb +606 -0
  228. data/generated/google/apis/domains_v1alpha2/service.rb +805 -0
  229. data/generated/google/apis/domains_v1alpha2.rb +34 -0
  230. data/generated/google/apis/domains_v1beta1/classes.rb +1540 -0
  231. data/generated/google/apis/domains_v1beta1/representations.rb +606 -0
  232. data/generated/google/apis/domains_v1beta1/service.rb +805 -0
  233. data/generated/google/apis/domains_v1beta1.rb +34 -0
  234. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +2 -1
  235. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  236. data/generated/google/apis/doubleclickbidmanager_v1_1/classes.rb +4 -3
  237. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  238. data/generated/google/apis/drive_v2/classes.rb +4 -1
  239. data/generated/google/apis/drive_v2.rb +1 -1
  240. data/generated/google/apis/drive_v3/classes.rb +4 -2
  241. data/generated/google/apis/drive_v3.rb +1 -1
  242. data/generated/google/apis/{apigateway_v1alpha1 → eventarc_v1beta1}/classes.rb +327 -29
  243. data/generated/google/apis/eventarc_v1beta1/representations.rb +379 -0
  244. data/generated/google/apis/{apigateway_v1alpha1 → eventarc_v1beta1}/service.rb +224 -268
  245. data/generated/google/apis/{apigateway_v1alpha1.rb → eventarc_v1beta1.rb} +8 -8
  246. data/generated/google/apis/file_v1/classes.rb +1 -1
  247. data/generated/google/apis/file_v1.rb +1 -1
  248. data/generated/google/apis/file_v1beta1/classes.rb +1 -1
  249. data/generated/google/apis/file_v1beta1.rb +1 -1
  250. data/generated/google/apis/firebase_v1beta1/service.rb +17 -4
  251. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  252. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +2 -0
  253. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  254. data/generated/google/apis/firestore_v1/classes.rb +4 -4
  255. data/generated/google/apis/firestore_v1.rb +1 -1
  256. data/generated/google/apis/firestore_v1beta1/classes.rb +4 -4
  257. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  258. data/generated/google/apis/fitness_v1/service.rb +3 -1
  259. data/generated/google/apis/fitness_v1.rb +13 -1
  260. data/generated/google/apis/games_v1/classes.rb +300 -0
  261. data/generated/google/apis/games_v1/representations.rb +116 -0
  262. data/generated/google/apis/games_v1/service.rb +34 -0
  263. data/generated/google/apis/games_v1.rb +1 -1
  264. data/generated/google/apis/gameservices_v1/classes.rb +15 -14
  265. data/generated/google/apis/gameservices_v1/service.rb +54 -51
  266. data/generated/google/apis/gameservices_v1.rb +1 -1
  267. data/generated/google/apis/gameservices_v1beta/classes.rb +15 -14
  268. data/generated/google/apis/gameservices_v1beta/service.rb +54 -51
  269. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  270. data/generated/google/apis/genomics_v2alpha1/classes.rb +104 -0
  271. data/generated/google/apis/genomics_v2alpha1/representations.rb +47 -0
  272. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  273. data/generated/google/apis/gmail_v1/service.rb +1 -1
  274. data/generated/google/apis/gmail_v1.rb +1 -1
  275. data/generated/google/apis/gmailpostmastertools_v1beta1/service.rb +10 -10
  276. data/generated/google/apis/gmailpostmastertools_v1beta1.rb +1 -1
  277. data/generated/google/apis/healthcare_v1/classes.rb +7 -5
  278. data/generated/google/apis/healthcare_v1/service.rb +2 -1
  279. data/generated/google/apis/healthcare_v1.rb +1 -1
  280. data/generated/google/apis/healthcare_v1beta1/classes.rb +1190 -285
  281. data/generated/google/apis/healthcare_v1beta1/representations.rb +516 -68
  282. data/generated/google/apis/healthcare_v1beta1/service.rb +1500 -228
  283. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  284. data/generated/google/apis/iam_v1/service.rb +1 -4
  285. data/generated/google/apis/iam_v1.rb +2 -5
  286. data/generated/google/apis/iamcredentials_v1/service.rb +2 -3
  287. data/generated/google/apis/iamcredentials_v1.rb +3 -4
  288. data/generated/google/apis/jobs_v2/classes.rb +798 -0
  289. data/generated/google/apis/jobs_v2/representations.rb +272 -0
  290. data/generated/google/apis/jobs_v2.rb +1 -1
  291. data/generated/google/apis/jobs_v3/classes.rb +798 -0
  292. data/generated/google/apis/jobs_v3/representations.rb +272 -0
  293. data/generated/google/apis/jobs_v3.rb +1 -1
  294. data/generated/google/apis/jobs_v3p1beta1/classes.rb +759 -0
  295. data/generated/google/apis/jobs_v3p1beta1/representations.rb +257 -0
  296. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  297. data/generated/google/apis/licensing_v1/service.rb +2 -2
  298. data/generated/google/apis/licensing_v1.rb +1 -1
  299. data/generated/google/apis/lifesciences_v2beta/classes.rb +104 -0
  300. data/generated/google/apis/lifesciences_v2beta/representations.rb +47 -0
  301. data/generated/google/apis/lifesciences_v2beta.rb +1 -1
  302. data/generated/google/apis/localservices_v1/classes.rb +7 -0
  303. data/generated/google/apis/localservices_v1/representations.rb +2 -0
  304. data/generated/google/apis/localservices_v1/service.rb +20 -20
  305. data/generated/google/apis/localservices_v1.rb +1 -1
  306. data/generated/google/apis/logging_v2/classes.rb +174 -60
  307. data/generated/google/apis/logging_v2/representations.rb +64 -0
  308. data/generated/google/apis/logging_v2/service.rb +1422 -127
  309. data/generated/google/apis/logging_v2.rb +1 -1
  310. data/generated/google/apis/managedidentities_v1/classes.rb +8 -1
  311. data/generated/google/apis/managedidentities_v1/representations.rb +1 -0
  312. data/generated/google/apis/managedidentities_v1/service.rb +1 -4
  313. data/generated/google/apis/managedidentities_v1.rb +1 -1
  314. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +87 -9
  315. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +34 -1
  316. data/generated/google/apis/managedidentities_v1alpha1/service.rb +83 -5
  317. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  318. data/generated/google/apis/managedidentities_v1beta1/classes.rb +88 -9
  319. data/generated/google/apis/managedidentities_v1beta1/representations.rb +34 -1
  320. data/generated/google/apis/managedidentities_v1beta1/service.rb +83 -5
  321. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  322. data/generated/google/apis/memcache_v1beta2/classes.rb +1 -1
  323. data/generated/google/apis/memcache_v1beta2/service.rb +5 -5
  324. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  325. data/generated/google/apis/ml_v1/classes.rb +238 -77
  326. data/generated/google/apis/ml_v1/representations.rb +17 -0
  327. data/generated/google/apis/ml_v1.rb +1 -1
  328. data/generated/google/apis/monitoring_v3/classes.rb +71 -17
  329. data/generated/google/apis/monitoring_v3/representations.rb +18 -0
  330. data/generated/google/apis/monitoring_v3/service.rb +55 -6
  331. data/generated/google/apis/monitoring_v3.rb +1 -1
  332. data/generated/google/apis/oauth2_v2/classes.rb +165 -0
  333. data/generated/google/apis/oauth2_v2/representations.rb +68 -0
  334. data/generated/google/apis/oauth2_v2/service.rb +158 -0
  335. data/generated/google/apis/oauth2_v2.rb +40 -0
  336. data/generated/google/apis/osconfig_v1/service.rb +4 -4
  337. data/generated/google/apis/osconfig_v1.rb +3 -3
  338. data/generated/google/apis/osconfig_v1beta/service.rb +4 -4
  339. data/generated/google/apis/osconfig_v1beta.rb +3 -3
  340. data/generated/google/apis/oslogin_v1alpha/classes.rb +2 -2
  341. data/generated/google/apis/oslogin_v1alpha/service.rb +13 -13
  342. data/generated/google/apis/oslogin_v1alpha.rb +1 -1
  343. data/generated/google/apis/people_v1/classes.rb +52 -51
  344. data/generated/google/apis/people_v1/service.rb +24 -22
  345. data/generated/google/apis/people_v1.rb +1 -1
  346. data/generated/google/apis/playablelocations_v3/classes.rb +6 -6
  347. data/generated/google/apis/playablelocations_v3.rb +1 -1
  348. data/generated/google/apis/playcustomapp_v1.rb +1 -1
  349. data/generated/google/apis/poly_v1/classes.rb +65 -79
  350. data/generated/google/apis/poly_v1/service.rb +50 -63
  351. data/generated/google/apis/poly_v1.rb +3 -4
  352. data/generated/google/apis/privateca_v1beta1/classes.rb +2466 -0
  353. data/generated/google/apis/privateca_v1beta1/representations.rb +996 -0
  354. data/generated/google/apis/privateca_v1beta1/service.rb +1487 -0
  355. data/generated/google/apis/{appsactivity_v1.rb → privateca_v1beta1.rb} +11 -11
  356. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +109 -0
  357. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  358. data/generated/google/apis/pubsub_v1/service.rb +2 -2
  359. data/generated/google/apis/pubsub_v1.rb +1 -1
  360. data/generated/google/apis/pubsublite_v1/classes.rb +2 -2
  361. data/generated/google/apis/pubsublite_v1.rb +1 -1
  362. data/generated/google/apis/realtimebidding_v1/classes.rb +84 -123
  363. data/generated/google/apis/realtimebidding_v1/representations.rb +18 -32
  364. data/generated/google/apis/realtimebidding_v1/service.rb +4 -1
  365. data/generated/google/apis/realtimebidding_v1.rb +1 -1
  366. data/generated/google/apis/recommendationengine_v1beta1/classes.rb +32 -0
  367. data/generated/google/apis/recommendationengine_v1beta1/representations.rb +25 -0
  368. data/generated/google/apis/recommendationengine_v1beta1.rb +1 -1
  369. data/generated/google/apis/recommender_v1/classes.rb +1 -1
  370. data/generated/google/apis/recommender_v1/service.rb +4 -2
  371. data/generated/google/apis/recommender_v1.rb +1 -1
  372. data/generated/google/apis/recommender_v1beta1/classes.rb +1 -1
  373. data/generated/google/apis/recommender_v1beta1/service.rb +4 -2
  374. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  375. data/generated/google/apis/redis_v1/classes.rb +5 -5
  376. data/generated/google/apis/redis_v1/service.rb +2 -2
  377. data/generated/google/apis/redis_v1.rb +1 -1
  378. data/generated/google/apis/redis_v1beta1/classes.rb +33 -5
  379. data/generated/google/apis/redis_v1beta1/representations.rb +14 -0
  380. data/generated/google/apis/redis_v1beta1/service.rb +36 -2
  381. data/generated/google/apis/redis_v1beta1.rb +1 -1
  382. data/generated/google/apis/remotebuildexecution_v1/classes.rb +6 -0
  383. data/generated/google/apis/remotebuildexecution_v1/representations.rb +1 -0
  384. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  385. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +6 -0
  386. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +1 -0
  387. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  388. data/generated/google/apis/remotebuildexecution_v2/classes.rb +6 -0
  389. data/generated/google/apis/remotebuildexecution_v2/representations.rb +1 -0
  390. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  391. data/generated/google/apis/run_v1/classes.rb +12 -132
  392. data/generated/google/apis/run_v1/representations.rb +0 -61
  393. data/generated/google/apis/run_v1/service.rb +0 -342
  394. data/generated/google/apis/run_v1.rb +1 -1
  395. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +1 -2
  396. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  397. data/generated/google/apis/safebrowsing_v4.rb +1 -1
  398. data/generated/google/apis/sasportal_v1alpha1/service.rb +109 -0
  399. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  400. data/generated/google/apis/searchconsole_v1/classes.rb +388 -0
  401. data/generated/google/apis/searchconsole_v1/representations.rb +162 -0
  402. data/generated/google/apis/searchconsole_v1/service.rb +287 -0
  403. data/generated/google/apis/searchconsole_v1.rb +7 -1
  404. data/generated/google/apis/secretmanager_v1/classes.rb +1 -2
  405. data/generated/google/apis/secretmanager_v1.rb +1 -1
  406. data/generated/google/apis/secretmanager_v1beta1/classes.rb +1 -2
  407. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  408. data/generated/google/apis/securitycenter_v1/classes.rb +5 -199
  409. data/generated/google/apis/securitycenter_v1/representations.rb +0 -72
  410. data/generated/google/apis/securitycenter_v1.rb +1 -1
  411. data/generated/google/apis/securitycenter_v1beta1/classes.rb +2 -196
  412. data/generated/google/apis/securitycenter_v1beta1/representations.rb +0 -72
  413. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  414. data/generated/google/apis/securitycenter_v1beta2/classes.rb +2 -196
  415. data/generated/google/apis/securitycenter_v1beta2/representations.rb +0 -72
  416. data/generated/google/apis/securitycenter_v1beta2.rb +1 -1
  417. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +5 -63
  418. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +0 -18
  419. data/generated/google/apis/serviceconsumermanagement_v1/service.rb +1 -1
  420. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  421. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +5 -63
  422. data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +0 -18
  423. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  424. data/generated/google/apis/servicecontrol_v1/classes.rb +78 -4
  425. data/generated/google/apis/servicecontrol_v1/representations.rb +10 -0
  426. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  427. data/generated/google/apis/servicecontrol_v2/classes.rb +63 -2
  428. data/generated/google/apis/servicecontrol_v2/representations.rb +8 -0
  429. data/generated/google/apis/servicecontrol_v2.rb +1 -1
  430. data/generated/google/apis/servicemanagement_v1/classes.rb +5 -85
  431. data/generated/google/apis/servicemanagement_v1/representations.rb +0 -31
  432. data/generated/google/apis/servicemanagement_v1/service.rb +0 -36
  433. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  434. data/generated/google/apis/servicenetworking_v1/classes.rb +185 -64
  435. data/generated/google/apis/servicenetworking_v1/representations.rb +63 -14
  436. data/generated/google/apis/servicenetworking_v1/service.rb +2 -2
  437. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  438. data/generated/google/apis/servicenetworking_v1beta/classes.rb +139 -64
  439. data/generated/google/apis/servicenetworking_v1beta/representations.rb +46 -14
  440. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  441. data/generated/google/apis/serviceusage_v1/classes.rb +5 -63
  442. data/generated/google/apis/serviceusage_v1/representations.rb +0 -18
  443. data/generated/google/apis/serviceusage_v1.rb +1 -1
  444. data/generated/google/apis/serviceusage_v1beta1/classes.rb +35 -63
  445. data/generated/google/apis/serviceusage_v1beta1/representations.rb +15 -18
  446. data/generated/google/apis/serviceusage_v1beta1/service.rb +36 -0
  447. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  448. data/generated/google/apis/sheets_v4/classes.rb +174 -84
  449. data/generated/google/apis/sheets_v4.rb +1 -1
  450. data/generated/google/apis/smartdevicemanagement_v1/classes.rb +273 -0
  451. data/generated/google/apis/smartdevicemanagement_v1/representations.rb +157 -0
  452. data/generated/google/apis/smartdevicemanagement_v1/service.rb +304 -0
  453. data/generated/google/apis/smartdevicemanagement_v1.rb +35 -0
  454. data/generated/google/apis/sourcerepo_v1/classes.rb +250 -400
  455. data/generated/google/apis/sourcerepo_v1/service.rb +40 -49
  456. data/generated/google/apis/sourcerepo_v1.rb +1 -1
  457. data/generated/google/apis/sqladmin_v1beta4/classes.rb +156 -57
  458. data/generated/google/apis/sqladmin_v1beta4/representations.rb +53 -17
  459. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  460. data/generated/google/apis/storage_v1/classes.rb +2 -10
  461. data/generated/google/apis/storage_v1/representations.rb +0 -1
  462. data/generated/google/apis/storage_v1/service.rb +3 -2
  463. data/generated/google/apis/storage_v1.rb +1 -1
  464. data/generated/google/apis/storagetransfer_v1/classes.rb +64 -34
  465. data/generated/google/apis/storagetransfer_v1/representations.rb +13 -0
  466. data/generated/google/apis/storagetransfer_v1/service.rb +22 -20
  467. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  468. data/generated/google/apis/streetviewpublish_v1/classes.rb +4 -4
  469. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  470. data/generated/google/apis/sts_v1/classes.rb +10 -9
  471. data/generated/google/apis/sts_v1.rb +1 -1
  472. data/generated/google/apis/sts_v1beta/classes.rb +67 -67
  473. data/generated/google/apis/sts_v1beta/service.rb +2 -2
  474. data/generated/google/apis/sts_v1beta.rb +1 -1
  475. data/generated/google/apis/tagmanager_v2/classes.rb +12 -0
  476. data/generated/google/apis/tagmanager_v2/representations.rb +3 -0
  477. data/generated/google/apis/tagmanager_v2.rb +1 -1
  478. data/generated/google/apis/testing_v1/classes.rb +92 -33
  479. data/generated/google/apis/testing_v1/representations.rb +21 -0
  480. data/generated/google/apis/testing_v1/service.rb +4 -4
  481. data/generated/google/apis/testing_v1.rb +1 -1
  482. data/generated/google/apis/texttospeech_v1beta1.rb +1 -1
  483. data/generated/google/apis/toolresults_v1beta3/classes.rb +13 -0
  484. data/generated/google/apis/toolresults_v1beta3/representations.rb +12 -0
  485. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  486. data/generated/google/apis/tpu_v1/classes.rb +3 -3
  487. data/generated/google/apis/tpu_v1/service.rb +8 -8
  488. data/generated/google/apis/tpu_v1.rb +1 -1
  489. data/generated/google/apis/tpu_v1alpha1/classes.rb +3 -3
  490. data/generated/google/apis/tpu_v1alpha1/service.rb +8 -8
  491. data/generated/google/apis/tpu_v1alpha1.rb +1 -1
  492. data/generated/google/apis/translate_v3/classes.rb +4 -3
  493. data/generated/google/apis/translate_v3.rb +1 -1
  494. data/generated/google/apis/translate_v3beta1/classes.rb +2 -1
  495. data/generated/google/apis/translate_v3beta1.rb +1 -1
  496. data/generated/google/apis/vault_v1/classes.rb +333 -0
  497. data/generated/google/apis/vault_v1/representations.rb +162 -0
  498. data/generated/google/apis/vault_v1/service.rb +151 -0
  499. data/generated/google/apis/vault_v1.rb +1 -1
  500. data/generated/google/apis/videointelligence_v1/classes.rb +751 -28
  501. data/generated/google/apis/videointelligence_v1/representations.rb +402 -2
  502. data/generated/google/apis/videointelligence_v1/service.rb +0 -62
  503. data/generated/google/apis/videointelligence_v1.rb +1 -1
  504. data/generated/google/apis/videointelligence_v1beta2/classes.rb +751 -28
  505. data/generated/google/apis/videointelligence_v1beta2/representations.rb +402 -2
  506. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  507. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +749 -26
  508. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +402 -2
  509. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  510. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +734 -11
  511. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +402 -2
  512. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  513. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +667 -28
  514. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +368 -2
  515. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  516. data/generated/google/apis/vision_v1/classes.rb +16 -16
  517. data/generated/google/apis/vision_v1.rb +1 -1
  518. data/generated/google/apis/vision_v1p1beta1/classes.rb +16 -16
  519. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  520. data/generated/google/apis/vision_v1p2beta1/classes.rb +16 -16
  521. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  522. data/generated/google/apis/websecurityscanner_v1.rb +1 -1
  523. data/generated/google/apis/websecurityscanner_v1beta.rb +1 -1
  524. data/generated/google/apis/workflowexecutions_v1beta/service.rb +1 -1
  525. data/generated/google/apis/workflowexecutions_v1beta.rb +2 -2
  526. data/generated/google/apis/workflows_v1beta/service.rb +2 -1
  527. data/generated/google/apis/workflows_v1beta.rb +3 -2
  528. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  529. data/generated/google/apis/youtube_v3/classes.rb +0 -134
  530. data/generated/google/apis/youtube_v3/representations.rb +0 -55
  531. data/generated/google/apis/youtube_v3/service.rb +1 -1
  532. data/generated/google/apis/youtube_v3.rb +1 -1
  533. data/google-api-client.gemspec +25 -25
  534. data/lib/google/apis/core/api_command.rb +1 -0
  535. data/lib/google/apis/core/http_command.rb +2 -1
  536. data/lib/google/apis/options.rb +8 -5
  537. data/lib/google/apis/version.rb +1 -1
  538. data/synth.py +40 -0
  539. metadata +51 -12
  540. data/generated/google/apis/appsactivity_v1/classes.rb +0 -415
  541. data/generated/google/apis/appsactivity_v1/representations.rb +0 -209
  542. data/generated/google/apis/appsactivity_v1/service.rb +0 -126
@@ -0,0 +1,373 @@
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 BillingbudgetsV1
24
+
25
+ # A budget is a plan that describes what you expect to spend on Cloud projects,
26
+ # plus the rules to execute as spend is tracked against that plan, (for example,
27
+ # send an alert when 90% of the target spend is met). Currently all plans are
28
+ # monthly budgets so the usage period(s) tracked are implied (calendar months of
29
+ # usage back-to-back).
30
+ class GoogleCloudBillingBudgetsV1Budget
31
+ include Google::Apis::Core::Hashable
32
+
33
+ # The budgeted amount for each usage period.
34
+ # Corresponds to the JSON property `amount`
35
+ # @return [Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1BudgetAmount]
36
+ attr_accessor :amount
37
+
38
+ # A filter for a budget, limiting the scope of the cost to calculate.
39
+ # Corresponds to the JSON property `budgetFilter`
40
+ # @return [Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1Filter]
41
+ attr_accessor :budget_filter
42
+
43
+ # User data for display name in UI. The name must be less than or equal to 60
44
+ # characters.
45
+ # Corresponds to the JSON property `displayName`
46
+ # @return [String]
47
+ attr_accessor :display_name
48
+
49
+ # Optional. Etag to validate that the object is unchanged for a read-modify-
50
+ # write operation. An empty etag will cause an update to overwrite other changes.
51
+ # Corresponds to the JSON property `etag`
52
+ # @return [String]
53
+ attr_accessor :etag
54
+
55
+ # Output only. Resource name of the budget. The resource name implies the scope
56
+ # of a budget. Values are of the form `billingAccounts/`billingAccountId`/
57
+ # budgets/`budgetId``.
58
+ # Corresponds to the JSON property `name`
59
+ # @return [String]
60
+ attr_accessor :name
61
+
62
+ # NotificationsRule defines notifications that are sent based on budget spend
63
+ # and thresholds.
64
+ # Corresponds to the JSON property `notificationsRule`
65
+ # @return [Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1NotificationsRule]
66
+ attr_accessor :notifications_rule
67
+
68
+ # Optional. Rules that trigger alerts (notifications of thresholds being crossed)
69
+ # when spend exceeds the specified percentages of the budget.
70
+ # Corresponds to the JSON property `thresholdRules`
71
+ # @return [Array<Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1ThresholdRule>]
72
+ attr_accessor :threshold_rules
73
+
74
+ def initialize(**args)
75
+ update!(**args)
76
+ end
77
+
78
+ # Update properties of this object
79
+ def update!(**args)
80
+ @amount = args[:amount] if args.key?(:amount)
81
+ @budget_filter = args[:budget_filter] if args.key?(:budget_filter)
82
+ @display_name = args[:display_name] if args.key?(:display_name)
83
+ @etag = args[:etag] if args.key?(:etag)
84
+ @name = args[:name] if args.key?(:name)
85
+ @notifications_rule = args[:notifications_rule] if args.key?(:notifications_rule)
86
+ @threshold_rules = args[:threshold_rules] if args.key?(:threshold_rules)
87
+ end
88
+ end
89
+
90
+ # The budgeted amount for each usage period.
91
+ class GoogleCloudBillingBudgetsV1BudgetAmount
92
+ include Google::Apis::Core::Hashable
93
+
94
+ # Describes a budget amount targeted to last period's spend. At this time, the
95
+ # amount is automatically 100% of last period's spend; that is, there are no
96
+ # other options yet. Future configuration will be described here (for example,
97
+ # configuring a percentage of last period's spend).
98
+ # Corresponds to the JSON property `lastPeriodAmount`
99
+ # @return [Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1LastPeriodAmount]
100
+ attr_accessor :last_period_amount
101
+
102
+ # Represents an amount of money with its currency type.
103
+ # Corresponds to the JSON property `specifiedAmount`
104
+ # @return [Google::Apis::BillingbudgetsV1::GoogleTypeMoney]
105
+ attr_accessor :specified_amount
106
+
107
+ def initialize(**args)
108
+ update!(**args)
109
+ end
110
+
111
+ # Update properties of this object
112
+ def update!(**args)
113
+ @last_period_amount = args[:last_period_amount] if args.key?(:last_period_amount)
114
+ @specified_amount = args[:specified_amount] if args.key?(:specified_amount)
115
+ end
116
+ end
117
+
118
+ # A filter for a budget, limiting the scope of the cost to calculate.
119
+ class GoogleCloudBillingBudgetsV1Filter
120
+ include Google::Apis::Core::Hashable
121
+
122
+ # Optional. A list of credit types to be subtracted from gross cost to determine
123
+ # the spend for threshold calculations if and only if credit_types_treatment is
124
+ # INCLUDE_SPECIFIED_CREDITS. If credit_types_treatment is not
125
+ # INCLUDE_SPECIFIED_CREDITS, this field must be empty. See credits.type on https:
126
+ # //cloud.google.com/billing/docs/how-to/export-data-bigquery-tables#data-schema
127
+ # for a list of acceptable credit type values in this field.
128
+ # Corresponds to the JSON property `creditTypes`
129
+ # @return [Array<String>]
130
+ attr_accessor :credit_types
131
+
132
+ # Optional. If not set, default behavior is `INCLUDE_ALL_CREDITS`.
133
+ # Corresponds to the JSON property `creditTypesTreatment`
134
+ # @return [String]
135
+ attr_accessor :credit_types_treatment
136
+
137
+ # Optional. A single label and value pair specifying that usage from only this
138
+ # set of labeled resources should be included in the budget. Currently, multiple
139
+ # entries or multiple values per entry are not allowed. If omitted, the report
140
+ # will include all labeled and unlabeled usage.
141
+ # Corresponds to the JSON property `labels`
142
+ # @return [Hash<String,Array<Object>>]
143
+ attr_accessor :labels
144
+
145
+ # Optional. A set of projects of the form `projects/`project``, specifying that
146
+ # usage from only this set of projects should be included in the budget. If
147
+ # omitted, the report will include all usage for the billing account, regardless
148
+ # of which project the usage occurred on. Only zero or one project can be
149
+ # specified currently.
150
+ # Corresponds to the JSON property `projects`
151
+ # @return [Array<String>]
152
+ attr_accessor :projects
153
+
154
+ # Optional. A set of services of the form `services/`service_id``, specifying
155
+ # that usage from only this set of services should be included in the budget. If
156
+ # omitted, the report will include usage for all the services. The service names
157
+ # are available through the Catalog API: https://cloud.google.com/billing/v1/how-
158
+ # tos/catalog-api.
159
+ # Corresponds to the JSON property `services`
160
+ # @return [Array<String>]
161
+ attr_accessor :services
162
+
163
+ # Optional. A set of subaccounts of the form `billingAccounts/`account_id``,
164
+ # specifying that usage from only this set of subaccounts should be included in
165
+ # the budget. If a subaccount is set to the name of the parent account, usage
166
+ # from the parent account will be included. If the field is omitted, the report
167
+ # will include usage from the parent account and all subaccounts, if they exist.
168
+ # Corresponds to the JSON property `subaccounts`
169
+ # @return [Array<String>]
170
+ attr_accessor :subaccounts
171
+
172
+ def initialize(**args)
173
+ update!(**args)
174
+ end
175
+
176
+ # Update properties of this object
177
+ def update!(**args)
178
+ @credit_types = args[:credit_types] if args.key?(:credit_types)
179
+ @credit_types_treatment = args[:credit_types_treatment] if args.key?(:credit_types_treatment)
180
+ @labels = args[:labels] if args.key?(:labels)
181
+ @projects = args[:projects] if args.key?(:projects)
182
+ @services = args[:services] if args.key?(:services)
183
+ @subaccounts = args[:subaccounts] if args.key?(:subaccounts)
184
+ end
185
+ end
186
+
187
+ # Describes a budget amount targeted to last period's spend. At this time, the
188
+ # amount is automatically 100% of last period's spend; that is, there are no
189
+ # other options yet. Future configuration will be described here (for example,
190
+ # configuring a percentage of last period's spend).
191
+ class GoogleCloudBillingBudgetsV1LastPeriodAmount
192
+ include Google::Apis::Core::Hashable
193
+
194
+ def initialize(**args)
195
+ update!(**args)
196
+ end
197
+
198
+ # Update properties of this object
199
+ def update!(**args)
200
+ end
201
+ end
202
+
203
+ # Response for ListBudgets
204
+ class GoogleCloudBillingBudgetsV1ListBudgetsResponse
205
+ include Google::Apis::Core::Hashable
206
+
207
+ # List of the budgets owned by the requested billing account.
208
+ # Corresponds to the JSON property `budgets`
209
+ # @return [Array<Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1Budget>]
210
+ attr_accessor :budgets
211
+
212
+ # If not empty, indicates that there may be more budgets that match the request;
213
+ # this value should be passed in a new `ListBudgetsRequest`.
214
+ # Corresponds to the JSON property `nextPageToken`
215
+ # @return [String]
216
+ attr_accessor :next_page_token
217
+
218
+ def initialize(**args)
219
+ update!(**args)
220
+ end
221
+
222
+ # Update properties of this object
223
+ def update!(**args)
224
+ @budgets = args[:budgets] if args.key?(:budgets)
225
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
226
+ end
227
+ end
228
+
229
+ # NotificationsRule defines notifications that are sent based on budget spend
230
+ # and thresholds.
231
+ class GoogleCloudBillingBudgetsV1NotificationsRule
232
+ include Google::Apis::Core::Hashable
233
+
234
+ # Optional. When set to true, disables default notifications sent when a
235
+ # threshold is exceeded. Default notifications are sent to those with Billing
236
+ # Account Administrator and Billing Account User IAM roles for the target
237
+ # account.
238
+ # Corresponds to the JSON property `disableDefaultIamRecipients`
239
+ # @return [Boolean]
240
+ attr_accessor :disable_default_iam_recipients
241
+ alias_method :disable_default_iam_recipients?, :disable_default_iam_recipients
242
+
243
+ # Optional. Targets to send notifications to when a threshold is exceeded. This
244
+ # is in addition to default recipients who have billing account IAM roles. The
245
+ # value is the full REST resource name of a monitoring notification channel with
246
+ # the form `projects/`project_id`/notificationChannels/`channel_id``. A maximum
247
+ # of 5 channels are allowed. See https://cloud.google.com/billing/docs/how-to/
248
+ # budgets-notification-recipients for more details.
249
+ # Corresponds to the JSON property `monitoringNotificationChannels`
250
+ # @return [Array<String>]
251
+ attr_accessor :monitoring_notification_channels
252
+
253
+ # Optional. The name of the Pub/Sub topic where budget related messages will be
254
+ # published, in the form `projects/`project_id`/topics/`topic_id``. Updates are
255
+ # sent at regular intervals to the topic. The topic needs to be created before
256
+ # the budget is created; see https://cloud.google.com/billing/docs/how-to/
257
+ # budgets#manage-notifications for more details. Caller is expected to have `
258
+ # pubsub.topics.setIamPolicy` permission on the topic when it's set for a budget,
259
+ # otherwise, the API call will fail with PERMISSION_DENIED. See https://cloud.
260
+ # google.com/billing/docs/how-to/budgets-programmatic-notifications for more
261
+ # details on Pub/Sub roles and permissions.
262
+ # Corresponds to the JSON property `pubsubTopic`
263
+ # @return [String]
264
+ attr_accessor :pubsub_topic
265
+
266
+ # Optional. The schema version of the notification sent to `pubsub_topic`. Only "
267
+ # 1.0" is accepted. It represents the JSON schema as defined in https://cloud.
268
+ # google.com/billing/docs/how-to/budgets-programmatic-notifications#
269
+ # notification_format
270
+ # Corresponds to the JSON property `schemaVersion`
271
+ # @return [String]
272
+ attr_accessor :schema_version
273
+
274
+ def initialize(**args)
275
+ update!(**args)
276
+ end
277
+
278
+ # Update properties of this object
279
+ def update!(**args)
280
+ @disable_default_iam_recipients = args[:disable_default_iam_recipients] if args.key?(:disable_default_iam_recipients)
281
+ @monitoring_notification_channels = args[:monitoring_notification_channels] if args.key?(:monitoring_notification_channels)
282
+ @pubsub_topic = args[:pubsub_topic] if args.key?(:pubsub_topic)
283
+ @schema_version = args[:schema_version] if args.key?(:schema_version)
284
+ end
285
+ end
286
+
287
+ # ThresholdRule contains a definition of a threshold which triggers an alert (a
288
+ # notification of a threshold being crossed) to be sent when spend goes above
289
+ # the specified amount. Alerts are automatically e-mailed to users with the
290
+ # Billing Account Administrator role or the Billing Account User role. The
291
+ # thresholds here have no effect on notifications sent to anything configured
292
+ # under `Budget.all_updates_rule`.
293
+ class GoogleCloudBillingBudgetsV1ThresholdRule
294
+ include Google::Apis::Core::Hashable
295
+
296
+ # Optional. The type of basis used to determine if spend has passed the
297
+ # threshold. Behavior defaults to CURRENT_SPEND if not set.
298
+ # Corresponds to the JSON property `spendBasis`
299
+ # @return [String]
300
+ attr_accessor :spend_basis
301
+
302
+ # Required. Send an alert when this threshold is exceeded. This is a 1.0-based
303
+ # percentage, so 0.5 = 50%. Validation: non-negative number.
304
+ # Corresponds to the JSON property `thresholdPercent`
305
+ # @return [Float]
306
+ attr_accessor :threshold_percent
307
+
308
+ def initialize(**args)
309
+ update!(**args)
310
+ end
311
+
312
+ # Update properties of this object
313
+ def update!(**args)
314
+ @spend_basis = args[:spend_basis] if args.key?(:spend_basis)
315
+ @threshold_percent = args[:threshold_percent] if args.key?(:threshold_percent)
316
+ end
317
+ end
318
+
319
+ # A generic empty message that you can re-use to avoid defining duplicated empty
320
+ # messages in your APIs. A typical example is to use it as the request or the
321
+ # response type of an API method. For instance: service Foo ` rpc Bar(google.
322
+ # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
323
+ # `Empty` is empty JSON object ````.
324
+ class GoogleProtobufEmpty
325
+ include Google::Apis::Core::Hashable
326
+
327
+ def initialize(**args)
328
+ update!(**args)
329
+ end
330
+
331
+ # Update properties of this object
332
+ def update!(**args)
333
+ end
334
+ end
335
+
336
+ # Represents an amount of money with its currency type.
337
+ class GoogleTypeMoney
338
+ include Google::Apis::Core::Hashable
339
+
340
+ # The three-letter currency code defined in ISO 4217.
341
+ # Corresponds to the JSON property `currencyCode`
342
+ # @return [String]
343
+ attr_accessor :currency_code
344
+
345
+ # Number of nano (10^-9) units of the amount. The value must be between -999,999,
346
+ # 999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be
347
+ # positive or zero. If `units` is zero, `nanos` can be positive, zero, or
348
+ # negative. If `units` is negative, `nanos` must be negative or zero. For
349
+ # example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
350
+ # Corresponds to the JSON property `nanos`
351
+ # @return [Fixnum]
352
+ attr_accessor :nanos
353
+
354
+ # The whole units of the amount. For example if `currencyCode` is `"USD"`, then
355
+ # 1 unit is one US dollar.
356
+ # Corresponds to the JSON property `units`
357
+ # @return [Fixnum]
358
+ attr_accessor :units
359
+
360
+ def initialize(**args)
361
+ update!(**args)
362
+ end
363
+
364
+ # Update properties of this object
365
+ def update!(**args)
366
+ @currency_code = args[:currency_code] if args.key?(:currency_code)
367
+ @nanos = args[:nanos] if args.key?(:nanos)
368
+ @units = args[:units] if args.key?(:units)
369
+ end
370
+ end
371
+ end
372
+ end
373
+ end
@@ -0,0 +1,171 @@
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 BillingbudgetsV1
24
+
25
+ class GoogleCloudBillingBudgetsV1Budget
26
+ class Representation < Google::Apis::Core::JsonRepresentation; end
27
+
28
+ include Google::Apis::Core::JsonObjectSupport
29
+ end
30
+
31
+ class GoogleCloudBillingBudgetsV1BudgetAmount
32
+ class Representation < Google::Apis::Core::JsonRepresentation; end
33
+
34
+ include Google::Apis::Core::JsonObjectSupport
35
+ end
36
+
37
+ class GoogleCloudBillingBudgetsV1Filter
38
+ class Representation < Google::Apis::Core::JsonRepresentation; end
39
+
40
+ include Google::Apis::Core::JsonObjectSupport
41
+ end
42
+
43
+ class GoogleCloudBillingBudgetsV1LastPeriodAmount
44
+ class Representation < Google::Apis::Core::JsonRepresentation; end
45
+
46
+ include Google::Apis::Core::JsonObjectSupport
47
+ end
48
+
49
+ class GoogleCloudBillingBudgetsV1ListBudgetsResponse
50
+ class Representation < Google::Apis::Core::JsonRepresentation; end
51
+
52
+ include Google::Apis::Core::JsonObjectSupport
53
+ end
54
+
55
+ class GoogleCloudBillingBudgetsV1NotificationsRule
56
+ class Representation < Google::Apis::Core::JsonRepresentation; end
57
+
58
+ include Google::Apis::Core::JsonObjectSupport
59
+ end
60
+
61
+ class GoogleCloudBillingBudgetsV1ThresholdRule
62
+ class Representation < Google::Apis::Core::JsonRepresentation; end
63
+
64
+ include Google::Apis::Core::JsonObjectSupport
65
+ end
66
+
67
+ class GoogleProtobufEmpty
68
+ class Representation < Google::Apis::Core::JsonRepresentation; end
69
+
70
+ include Google::Apis::Core::JsonObjectSupport
71
+ end
72
+
73
+ class GoogleTypeMoney
74
+ class Representation < Google::Apis::Core::JsonRepresentation; end
75
+
76
+ include Google::Apis::Core::JsonObjectSupport
77
+ end
78
+
79
+ class GoogleCloudBillingBudgetsV1Budget
80
+ # @private
81
+ class Representation < Google::Apis::Core::JsonRepresentation
82
+ property :amount, as: 'amount', class: Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1BudgetAmount, decorator: Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1BudgetAmount::Representation
83
+
84
+ property :budget_filter, as: 'budgetFilter', class: Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1Filter, decorator: Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1Filter::Representation
85
+
86
+ property :display_name, as: 'displayName'
87
+ property :etag, as: 'etag'
88
+ property :name, as: 'name'
89
+ property :notifications_rule, as: 'notificationsRule', class: Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1NotificationsRule, decorator: Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1NotificationsRule::Representation
90
+
91
+ collection :threshold_rules, as: 'thresholdRules', class: Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1ThresholdRule, decorator: Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1ThresholdRule::Representation
92
+
93
+ end
94
+ end
95
+
96
+ class GoogleCloudBillingBudgetsV1BudgetAmount
97
+ # @private
98
+ class Representation < Google::Apis::Core::JsonRepresentation
99
+ property :last_period_amount, as: 'lastPeriodAmount', class: Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1LastPeriodAmount, decorator: Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1LastPeriodAmount::Representation
100
+
101
+ property :specified_amount, as: 'specifiedAmount', class: Google::Apis::BillingbudgetsV1::GoogleTypeMoney, decorator: Google::Apis::BillingbudgetsV1::GoogleTypeMoney::Representation
102
+
103
+ end
104
+ end
105
+
106
+ class GoogleCloudBillingBudgetsV1Filter
107
+ # @private
108
+ class Representation < Google::Apis::Core::JsonRepresentation
109
+ collection :credit_types, as: 'creditTypes'
110
+ property :credit_types_treatment, as: 'creditTypesTreatment'
111
+ hash :labels, as: 'labels', :class => Array do
112
+ include Representable::JSON::Collection
113
+ items
114
+ end
115
+
116
+ collection :projects, as: 'projects'
117
+ collection :services, as: 'services'
118
+ collection :subaccounts, as: 'subaccounts'
119
+ end
120
+ end
121
+
122
+ class GoogleCloudBillingBudgetsV1LastPeriodAmount
123
+ # @private
124
+ class Representation < Google::Apis::Core::JsonRepresentation
125
+ end
126
+ end
127
+
128
+ class GoogleCloudBillingBudgetsV1ListBudgetsResponse
129
+ # @private
130
+ class Representation < Google::Apis::Core::JsonRepresentation
131
+ collection :budgets, as: 'budgets', class: Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1Budget, decorator: Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1Budget::Representation
132
+
133
+ property :next_page_token, as: 'nextPageToken'
134
+ end
135
+ end
136
+
137
+ class GoogleCloudBillingBudgetsV1NotificationsRule
138
+ # @private
139
+ class Representation < Google::Apis::Core::JsonRepresentation
140
+ property :disable_default_iam_recipients, as: 'disableDefaultIamRecipients'
141
+ collection :monitoring_notification_channels, as: 'monitoringNotificationChannels'
142
+ property :pubsub_topic, as: 'pubsubTopic'
143
+ property :schema_version, as: 'schemaVersion'
144
+ end
145
+ end
146
+
147
+ class GoogleCloudBillingBudgetsV1ThresholdRule
148
+ # @private
149
+ class Representation < Google::Apis::Core::JsonRepresentation
150
+ property :spend_basis, as: 'spendBasis'
151
+ property :threshold_percent, as: 'thresholdPercent'
152
+ end
153
+ end
154
+
155
+ class GoogleProtobufEmpty
156
+ # @private
157
+ class Representation < Google::Apis::Core::JsonRepresentation
158
+ end
159
+ end
160
+
161
+ class GoogleTypeMoney
162
+ # @private
163
+ class Representation < Google::Apis::Core::JsonRepresentation
164
+ property :currency_code, as: 'currencyCode'
165
+ property :nanos, as: 'nanos'
166
+ property :units, :numeric_string => true, as: 'units'
167
+ end
168
+ end
169
+ end
170
+ end
171
+ end