google-api-client 0.46.0 → 0.46.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (160) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +59 -0
  3. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  4. data/generated/google/apis/accesscontextmanager_v1/classes.rb +68 -0
  5. data/generated/google/apis/accesscontextmanager_v1/representations.rb +30 -0
  6. data/generated/google/apis/accesscontextmanager_v1/service.rb +180 -0
  7. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  8. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +25 -0
  9. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +15 -0
  10. data/generated/google/apis/admob_v1.rb +3 -2
  11. data/generated/google/apis/admob_v1/service.rb +2 -1
  12. data/generated/google/apis/adsense_v1_4.rb +1 -1
  13. data/generated/google/apis/adsense_v1_4/service.rb +4 -1
  14. data/generated/google/apis/analyticsdata_v1alpha.rb +1 -1
  15. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +31 -0
  16. data/generated/google/apis/analyticsdata_v1alpha/representations.rb +17 -0
  17. data/generated/google/apis/analyticsdata_v1alpha/service.rb +39 -0
  18. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  19. data/generated/google/apis/androidpublisher_v3/service.rb +2 -5
  20. data/generated/google/apis/apigee_v1.rb +1 -1
  21. data/generated/google/apis/apigee_v1/classes.rb +231 -1
  22. data/generated/google/apis/apigee_v1/representations.rb +87 -0
  23. data/generated/google/apis/apigee_v1/service.rb +201 -1
  24. data/generated/google/apis/appsmarket_v2.rb +1 -1
  25. data/generated/google/apis/billingbudgets_v1.rb +38 -0
  26. data/generated/google/apis/billingbudgets_v1/classes.rb +362 -0
  27. data/generated/google/apis/billingbudgets_v1/representations.rb +170 -0
  28. data/generated/google/apis/billingbudgets_v1/service.rb +249 -0
  29. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  30. data/generated/google/apis/cloudasset_v1p4beta1/classes.rb +3 -3
  31. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  32. data/generated/google/apis/cloudsearch_v1/classes.rb +2 -1
  33. data/generated/google/apis/cloudshell_v1.rb +1 -1
  34. data/generated/google/apis/cloudshell_v1/classes.rb +342 -0
  35. data/generated/google/apis/cloudshell_v1/representations.rb +200 -0
  36. data/generated/google/apis/cloudshell_v1/service.rb +177 -0
  37. data/generated/google/apis/composer_v1.rb +1 -1
  38. data/generated/google/apis/composer_v1/classes.rb +2 -3
  39. data/generated/google/apis/composer_v1beta1.rb +1 -1
  40. data/generated/google/apis/composer_v1beta1/classes.rb +2 -3
  41. data/generated/google/apis/composer_v1beta1/service.rb +37 -35
  42. data/generated/google/apis/compute_alpha.rb +1 -1
  43. data/generated/google/apis/compute_alpha/classes.rb +126 -21
  44. data/generated/google/apis/compute_alpha/representations.rb +7 -0
  45. data/generated/google/apis/compute_alpha/service.rb +62 -3
  46. data/generated/google/apis/compute_beta.rb +1 -1
  47. data/generated/google/apis/compute_beta/classes.rb +83 -19
  48. data/generated/google/apis/compute_beta/representations.rb +4 -0
  49. data/generated/google/apis/compute_beta/service.rb +3 -3
  50. data/generated/google/apis/compute_v1.rb +1 -1
  51. data/generated/google/apis/compute_v1/classes.rb +28 -8
  52. data/generated/google/apis/compute_v1/representations.rb +3 -0
  53. data/generated/google/apis/compute_v1/service.rb +3 -3
  54. data/generated/google/apis/container_v1beta1.rb +1 -1
  55. data/generated/google/apis/content_v2.rb +1 -1
  56. data/generated/google/apis/content_v2_1.rb +1 -1
  57. data/generated/google/apis/content_v2_1/classes.rb +99 -0
  58. data/generated/google/apis/content_v2_1/representations.rb +47 -0
  59. data/generated/google/apis/content_v2_1/service.rb +37 -0
  60. data/generated/google/apis/dialogflow_v2.rb +1 -1
  61. data/generated/google/apis/dialogflow_v2/classes.rb +50 -32
  62. data/generated/google/apis/dialogflow_v2/representations.rb +28 -13
  63. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  64. data/generated/google/apis/dialogflow_v2beta1/classes.rb +50 -32
  65. data/generated/google/apis/dialogflow_v2beta1/representations.rb +28 -13
  66. data/generated/google/apis/dialogflow_v2beta1/service.rb +54 -4
  67. data/generated/google/apis/dialogflow_v3beta1.rb +1 -1
  68. data/generated/google/apis/dialogflow_v3beta1/classes.rb +66 -35
  69. data/generated/google/apis/dialogflow_v3beta1/representations.rb +29 -13
  70. data/generated/google/apis/dialogflow_v3beta1/service.rb +22 -9
  71. data/generated/google/apis/displayvideo_v1.rb +1 -1
  72. data/generated/google/apis/displayvideo_v1/service.rb +13 -10
  73. data/generated/google/apis/dns_v1.rb +1 -1
  74. data/generated/google/apis/dns_v1/service.rb +10 -10
  75. data/generated/google/apis/dns_v1beta2.rb +1 -1
  76. data/generated/google/apis/dns_v1beta2/service.rb +10 -10
  77. data/generated/google/apis/documentai_v1beta3.rb +36 -0
  78. data/generated/google/apis/documentai_v1beta3/classes.rb +6149 -0
  79. data/generated/google/apis/documentai_v1beta3/representations.rb +2666 -0
  80. data/generated/google/apis/documentai_v1beta3/service.rb +263 -0
  81. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  82. data/generated/google/apis/doubleclickbidmanager_v1_1/classes.rb +2 -2
  83. data/generated/google/apis/drive_v2.rb +1 -1
  84. data/generated/google/apis/drive_v2/classes.rb +2 -1
  85. data/generated/google/apis/fitness_v1.rb +13 -1
  86. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  87. data/generated/google/apis/healthcare_v1beta1/classes.rb +116 -289
  88. data/generated/google/apis/healthcare_v1beta1/representations.rb +45 -81
  89. data/generated/google/apis/healthcare_v1beta1/service.rb +65 -61
  90. data/generated/google/apis/licensing_v1.rb +1 -1
  91. data/generated/google/apis/licensing_v1/service.rb +2 -2
  92. data/generated/google/apis/lifesciences_v2beta.rb +1 -1
  93. data/generated/google/apis/lifesciences_v2beta/classes.rb +104 -0
  94. data/generated/google/apis/lifesciences_v2beta/representations.rb +47 -0
  95. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  96. data/generated/google/apis/memcache_v1beta2/classes.rb +1 -1
  97. data/generated/google/apis/monitoring_v3.rb +1 -1
  98. data/generated/google/apis/monitoring_v3/classes.rb +48 -0
  99. data/generated/google/apis/monitoring_v3/representations.rb +18 -0
  100. data/generated/google/apis/oauth2_v2.rb +40 -0
  101. data/generated/google/apis/oauth2_v2/classes.rb +165 -0
  102. data/generated/google/apis/oauth2_v2/representations.rb +68 -0
  103. data/generated/google/apis/oauth2_v2/service.rb +158 -0
  104. data/generated/google/apis/people_v1.rb +1 -1
  105. data/generated/google/apis/people_v1/classes.rb +3 -2
  106. data/generated/google/apis/people_v1/service.rb +4 -4
  107. data/generated/google/apis/realtimebidding_v1.rb +1 -1
  108. data/generated/google/apis/realtimebidding_v1/classes.rb +55 -94
  109. data/generated/google/apis/realtimebidding_v1/representations.rb +18 -32
  110. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  111. data/generated/google/apis/remotebuildexecution_v1/classes.rb +6 -0
  112. data/generated/google/apis/remotebuildexecution_v1/representations.rb +1 -0
  113. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  114. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +6 -0
  115. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +1 -0
  116. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  117. data/generated/google/apis/remotebuildexecution_v2/classes.rb +6 -0
  118. data/generated/google/apis/remotebuildexecution_v2/representations.rb +1 -0
  119. data/generated/google/apis/run_v1.rb +1 -1
  120. data/generated/google/apis/run_v1/classes.rb +5 -2
  121. data/generated/google/apis/smartdevicemanagement_v1.rb +1 -1
  122. data/generated/google/apis/smartdevicemanagement_v1/classes.rb +4 -10
  123. data/generated/google/apis/smartdevicemanagement_v1/representations.rb +0 -1
  124. data/generated/google/apis/smartdevicemanagement_v1/service.rb +1 -4
  125. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  126. data/generated/google/apis/sqladmin_v1beta4/classes.rb +49 -5
  127. data/generated/google/apis/sqladmin_v1beta4/representations.rb +17 -0
  128. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  129. data/generated/google/apis/storagetransfer_v1/classes.rb +13 -0
  130. data/generated/google/apis/storagetransfer_v1/representations.rb +12 -0
  131. data/generated/google/apis/storagetransfer_v1/service.rb +5 -2
  132. data/generated/google/apis/sts_v1.rb +1 -1
  133. data/generated/google/apis/sts_v1/classes.rb +10 -9
  134. data/generated/google/apis/sts_v1beta.rb +1 -1
  135. data/generated/google/apis/sts_v1beta/classes.rb +66 -70
  136. data/generated/google/apis/sts_v1beta/service.rb +2 -2
  137. data/generated/google/apis/testing_v1.rb +1 -1
  138. data/generated/google/apis/testing_v1/classes.rb +47 -0
  139. data/generated/google/apis/testing_v1/representations.rb +20 -0
  140. data/generated/google/apis/videointelligence_v1.rb +1 -1
  141. data/generated/google/apis/videointelligence_v1/classes.rb +430 -2
  142. data/generated/google/apis/videointelligence_v1/representations.rb +241 -0
  143. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  144. data/generated/google/apis/videointelligence_v1beta2/classes.rb +430 -2
  145. data/generated/google/apis/videointelligence_v1beta2/representations.rb +241 -0
  146. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  147. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +430 -2
  148. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +241 -0
  149. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  150. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +430 -2
  151. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +241 -0
  152. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  153. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +430 -2
  154. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +241 -0
  155. data/generated/google/apis/workflows_v1beta.rb +3 -2
  156. data/generated/google/apis/workflows_v1beta/service.rb +2 -1
  157. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  158. data/generated/google/apis/youtube_v3.rb +1 -1
  159. data/lib/google/apis/version.rb +1 -1
  160. metadata +15 -3
@@ -64,6 +64,18 @@ module Google
64
64
  include Google::Apis::Core::JsonObjectSupport
65
65
  end
66
66
 
67
+ class GoogleCloudApigeeV1ApiCategory
68
+ class Representation < Google::Apis::Core::JsonRepresentation; end
69
+
70
+ include Google::Apis::Core::JsonObjectSupport
71
+ end
72
+
73
+ class GoogleCloudApigeeV1ApiCategoryData
74
+ class Representation < Google::Apis::Core::JsonRepresentation; end
75
+
76
+ include Google::Apis::Core::JsonObjectSupport
77
+ end
78
+
67
79
  class GoogleCloudApigeeV1ApiProduct
68
80
  class Representation < Google::Apis::Core::JsonRepresentation; end
69
81
 
@@ -88,6 +100,12 @@ module Google
88
100
  include Google::Apis::Core::JsonObjectSupport
89
101
  end
90
102
 
103
+ class GoogleCloudApigeeV1ApiResponseWrapper
104
+ class Representation < Google::Apis::Core::JsonRepresentation; end
105
+
106
+ include Google::Apis::Core::JsonObjectSupport
107
+ end
108
+
91
109
  class GoogleCloudApigeeV1App
92
110
  class Representation < Google::Apis::Core::JsonRepresentation; end
93
111
 
@@ -394,6 +412,12 @@ module Google
394
412
  include Google::Apis::Core::JsonObjectSupport
395
413
  end
396
414
 
415
+ class GoogleCloudApigeeV1ListApiCategoriesResponse
416
+ class Representation < Google::Apis::Core::JsonRepresentation; end
417
+
418
+ include Google::Apis::Core::JsonObjectSupport
419
+ end
420
+
397
421
  class GoogleCloudApigeeV1ListApiProductsResponse
398
422
  class Representation < Google::Apis::Core::JsonRepresentation; end
399
423
 
@@ -598,6 +622,12 @@ module Google
598
622
  include Google::Apis::Core::JsonObjectSupport
599
623
  end
600
624
 
625
+ class GoogleCloudApigeeV1ProvisionOrganizationRequest
626
+ class Representation < Google::Apis::Core::JsonRepresentation; end
627
+
628
+ include Google::Apis::Core::JsonObjectSupport
629
+ end
630
+
601
631
  class GoogleCloudApigeeV1Query
602
632
  class Representation < Google::Apis::Core::JsonRepresentation; end
603
633
 
@@ -975,6 +1005,28 @@ module Google
975
1005
  end
976
1006
  end
977
1007
 
1008
+ class GoogleCloudApigeeV1ApiCategory
1009
+ # @private
1010
+ class Representation < Google::Apis::Core::JsonRepresentation
1011
+ property :data, as: 'data', class: Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategoryData, decorator: Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategoryData::Representation
1012
+
1013
+ property :error_code, as: 'errorCode'
1014
+ property :message, as: 'message'
1015
+ property :request_id, as: 'requestId'
1016
+ property :status, as: 'status'
1017
+ end
1018
+ end
1019
+
1020
+ class GoogleCloudApigeeV1ApiCategoryData
1021
+ # @private
1022
+ class Representation < Google::Apis::Core::JsonRepresentation
1023
+ property :id, as: 'id'
1024
+ property :name, as: 'name'
1025
+ property :site_id, as: 'siteId'
1026
+ property :update_time, :numeric_string => true, as: 'updateTime'
1027
+ end
1028
+ end
1029
+
978
1030
  class GoogleCloudApigeeV1ApiProduct
979
1031
  # @private
980
1032
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -1047,6 +1099,16 @@ module Google
1047
1099
  end
1048
1100
  end
1049
1101
 
1102
+ class GoogleCloudApigeeV1ApiResponseWrapper
1103
+ # @private
1104
+ class Representation < Google::Apis::Core::JsonRepresentation
1105
+ property :error_code, as: 'errorCode'
1106
+ property :message, as: 'message'
1107
+ property :request_id, as: 'requestId'
1108
+ property :status, as: 'status'
1109
+ end
1110
+ end
1111
+
1050
1112
  class GoogleCloudApigeeV1App
1051
1113
  # @private
1052
1114
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -1596,6 +1658,7 @@ module Google
1596
1658
  property :location, as: 'location'
1597
1659
  property :name, as: 'name'
1598
1660
  property :port, as: 'port'
1661
+ property :state, as: 'state'
1599
1662
  end
1600
1663
  end
1601
1664
 
@@ -1670,6 +1733,18 @@ module Google
1670
1733
  end
1671
1734
  end
1672
1735
 
1736
+ class GoogleCloudApigeeV1ListApiCategoriesResponse
1737
+ # @private
1738
+ class Representation < Google::Apis::Core::JsonRepresentation
1739
+ collection :data, as: 'data', class: Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategoryData, decorator: Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategoryData::Representation
1740
+
1741
+ property :error_code, as: 'errorCode'
1742
+ property :message, as: 'message'
1743
+ property :request_id, as: 'requestId'
1744
+ property :status, as: 'status'
1745
+ end
1746
+ end
1747
+
1673
1748
  class GoogleCloudApigeeV1ListApiProductsResponse
1674
1749
  # @private
1675
1750
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -1980,6 +2055,15 @@ module Google
1980
2055
  end
1981
2056
  end
1982
2057
 
2058
+ class GoogleCloudApigeeV1ProvisionOrganizationRequest
2059
+ # @private
2060
+ class Representation < Google::Apis::Core::JsonRepresentation
2061
+ property :analytics_region, as: 'analyticsRegion'
2062
+ property :authorized_network, as: 'authorizedNetwork'
2063
+ property :runtime_location, as: 'runtimeLocation'
2064
+ end
2065
+ end
2066
+
1983
2067
  class GoogleCloudApigeeV1Query
1984
2068
  # @private
1985
2069
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -2141,7 +2225,10 @@ module Google
2141
2225
  # @private
2142
2226
  class Representation < Google::Apis::Core::JsonRepresentation
2143
2227
  property :basepath, as: 'basepath'
2228
+ property :env_group_revision, :numeric_string => true, as: 'envGroupRevision'
2144
2229
  property :environment, as: 'environment'
2230
+ property :receiver, as: 'receiver'
2231
+ property :update_time, as: 'updateTime'
2145
2232
  end
2146
2233
  end
2147
2234
 
@@ -156,6 +156,9 @@ module Google
156
156
  # @param [String] name
157
157
  # Required. Name of the deployed configuration for the organization in the
158
158
  # following format: 'organizations/`org`/deployedIngressConfig'.
159
+ # @param [String] view
160
+ # When set to FULL, additional details about the specific deployments receiving
161
+ # traffic will be included in the IngressConfig response's RoutingRules.
159
162
  # @param [String] fields
160
163
  # Selector specifying which fields to include in a partial response.
161
164
  # @param [String] quota_user
@@ -173,11 +176,12 @@ module Google
173
176
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
174
177
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
175
178
  # @raise [Google::Apis::AuthorizationError] Authorization is required
176
- def get_organization_deployed_ingress_config(name, fields: nil, quota_user: nil, options: nil, &block)
179
+ def get_organization_deployed_ingress_config(name, view: nil, fields: nil, quota_user: nil, options: nil, &block)
177
180
  command = make_simple_command(:get, 'v1/{+name}', options)
178
181
  command.response_representation = Google::Apis::ApigeeV1::GoogleCloudApigeeV1IngressConfig::Representation
179
182
  command.response_class = Google::Apis::ApigeeV1::GoogleCloudApigeeV1IngressConfig
180
183
  command.params['name'] = name unless name.nil?
184
+ command.query['view'] = view unless view.nil?
181
185
  command.query['fields'] = fields unless fields.nil?
182
186
  command.query['quotaUser'] = quota_user unless quota_user.nil?
183
187
  execute_or_queue_command(command, &block)
@@ -6488,6 +6492,202 @@ module Google
6488
6492
  command.query['quotaUser'] = quota_user unless quota_user.nil?
6489
6493
  execute_or_queue_command(command, &block)
6490
6494
  end
6495
+
6496
+ # Creates a new category on the portal.
6497
+ # @param [String] parent
6498
+ # Required. Name of the portal. Use the following structure in your request: `
6499
+ # organizations/`org`/sites/`site``
6500
+ # @param [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategoryData] google_cloud_apigee_v1_api_category_data_object
6501
+ # @param [String] fields
6502
+ # Selector specifying which fields to include in a partial response.
6503
+ # @param [String] quota_user
6504
+ # Available to use for quota purposes for server-side applications. Can be any
6505
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
6506
+ # @param [Google::Apis::RequestOptions] options
6507
+ # Request-specific options
6508
+ #
6509
+ # @yield [result, err] Result & error if block supplied
6510
+ # @yieldparam result [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategory] parsed result object
6511
+ # @yieldparam err [StandardError] error object if request failed
6512
+ #
6513
+ # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategory]
6514
+ #
6515
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
6516
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
6517
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
6518
+ def create_organization_site_apicategory(parent, google_cloud_apigee_v1_api_category_data_object = nil, fields: nil, quota_user: nil, options: nil, &block)
6519
+ command = make_simple_command(:post, 'v1/{+parent}/apicategories', options)
6520
+ command.request_representation = Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategoryData::Representation
6521
+ command.request_object = google_cloud_apigee_v1_api_category_data_object
6522
+ command.response_representation = Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategory::Representation
6523
+ command.response_class = Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategory
6524
+ command.params['parent'] = parent unless parent.nil?
6525
+ command.query['fields'] = fields unless fields.nil?
6526
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
6527
+ execute_or_queue_command(command, &block)
6528
+ end
6529
+
6530
+ # Deletes a category from the portal.
6531
+ # @param [String] name
6532
+ # Required. Name of the category. Use the following structure in your request: `
6533
+ # organizations/`org`/sites/`site`/apicategories/`apicategory``
6534
+ # @param [String] fields
6535
+ # Selector specifying which fields to include in a partial response.
6536
+ # @param [String] quota_user
6537
+ # Available to use for quota purposes for server-side applications. Can be any
6538
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
6539
+ # @param [Google::Apis::RequestOptions] options
6540
+ # Request-specific options
6541
+ #
6542
+ # @yield [result, err] Result & error if block supplied
6543
+ # @yieldparam result [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiResponseWrapper] parsed result object
6544
+ # @yieldparam err [StandardError] error object if request failed
6545
+ #
6546
+ # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiResponseWrapper]
6547
+ #
6548
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
6549
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
6550
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
6551
+ def delete_organization_site_apicategory(name, fields: nil, quota_user: nil, options: nil, &block)
6552
+ command = make_simple_command(:delete, 'v1/{+name}', options)
6553
+ command.response_representation = Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiResponseWrapper::Representation
6554
+ command.response_class = Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiResponseWrapper
6555
+ command.params['name'] = name unless name.nil?
6556
+ command.query['fields'] = fields unless fields.nil?
6557
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
6558
+ execute_or_queue_command(command, &block)
6559
+ end
6560
+
6561
+ # Gets a category on the portal.
6562
+ # @param [String] name
6563
+ # Required. Name of the category. Use the following structure in your request: `
6564
+ # organizations/`org`/sites/`site`/apicategories/`apicategory``
6565
+ # @param [String] fields
6566
+ # Selector specifying which fields to include in a partial response.
6567
+ # @param [String] quota_user
6568
+ # Available to use for quota purposes for server-side applications. Can be any
6569
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
6570
+ # @param [Google::Apis::RequestOptions] options
6571
+ # Request-specific options
6572
+ #
6573
+ # @yield [result, err] Result & error if block supplied
6574
+ # @yieldparam result [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategory] parsed result object
6575
+ # @yieldparam err [StandardError] error object if request failed
6576
+ #
6577
+ # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategory]
6578
+ #
6579
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
6580
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
6581
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
6582
+ def get_organization_site_apicategory(name, fields: nil, quota_user: nil, options: nil, &block)
6583
+ command = make_simple_command(:get, 'v1/{+name}', options)
6584
+ command.response_representation = Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategory::Representation
6585
+ command.response_class = Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategory
6586
+ command.params['name'] = name unless name.nil?
6587
+ command.query['fields'] = fields unless fields.nil?
6588
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
6589
+ execute_or_queue_command(command, &block)
6590
+ end
6591
+
6592
+ # Lists the categories on the portal.
6593
+ # @param [String] parent
6594
+ # Required. Name of the portal. Use the following structure in your request: `
6595
+ # organizations/`org`/sites/`site``
6596
+ # @param [String] fields
6597
+ # Selector specifying which fields to include in a partial response.
6598
+ # @param [String] quota_user
6599
+ # Available to use for quota purposes for server-side applications. Can be any
6600
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
6601
+ # @param [Google::Apis::RequestOptions] options
6602
+ # Request-specific options
6603
+ #
6604
+ # @yield [result, err] Result & error if block supplied
6605
+ # @yieldparam result [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ListApiCategoriesResponse] parsed result object
6606
+ # @yieldparam err [StandardError] error object if request failed
6607
+ #
6608
+ # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ListApiCategoriesResponse]
6609
+ #
6610
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
6611
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
6612
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
6613
+ def list_organization_site_apicategories(parent, fields: nil, quota_user: nil, options: nil, &block)
6614
+ command = make_simple_command(:get, 'v1/{+parent}/apicategories', options)
6615
+ command.response_representation = Google::Apis::ApigeeV1::GoogleCloudApigeeV1ListApiCategoriesResponse::Representation
6616
+ command.response_class = Google::Apis::ApigeeV1::GoogleCloudApigeeV1ListApiCategoriesResponse
6617
+ command.params['parent'] = parent unless parent.nil?
6618
+ command.query['fields'] = fields unless fields.nil?
6619
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
6620
+ execute_or_queue_command(command, &block)
6621
+ end
6622
+
6623
+ # Updates a category on the portal.
6624
+ # @param [String] name
6625
+ # Required. Name of the category. Use the following structure in your request: `
6626
+ # organizations/`org`/sites/`site`/apicategories/`apicategory``
6627
+ # @param [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategoryData] google_cloud_apigee_v1_api_category_data_object
6628
+ # @param [String] fields
6629
+ # Selector specifying which fields to include in a partial response.
6630
+ # @param [String] quota_user
6631
+ # Available to use for quota purposes for server-side applications. Can be any
6632
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
6633
+ # @param [Google::Apis::RequestOptions] options
6634
+ # Request-specific options
6635
+ #
6636
+ # @yield [result, err] Result & error if block supplied
6637
+ # @yieldparam result [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategory] parsed result object
6638
+ # @yieldparam err [StandardError] error object if request failed
6639
+ #
6640
+ # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategory]
6641
+ #
6642
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
6643
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
6644
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
6645
+ def patch_organization_site_apicategory(name, google_cloud_apigee_v1_api_category_data_object = nil, fields: nil, quota_user: nil, options: nil, &block)
6646
+ command = make_simple_command(:patch, 'v1/{+name}', options)
6647
+ command.request_representation = Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategoryData::Representation
6648
+ command.request_object = google_cloud_apigee_v1_api_category_data_object
6649
+ command.response_representation = Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategory::Representation
6650
+ command.response_class = Google::Apis::ApigeeV1::GoogleCloudApigeeV1ApiCategory
6651
+ command.params['name'] = name unless name.nil?
6652
+ command.query['fields'] = fields unless fields.nil?
6653
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
6654
+ execute_or_queue_command(command, &block)
6655
+ end
6656
+
6657
+ # Provisions a new Apigee organization with a functioning runtime. This is the
6658
+ # standard way to create trial organizations for a free Apigee trial.
6659
+ # @param [String] project
6660
+ # Required. Name of the GCP project with which to associate the Apigee
6661
+ # organization.
6662
+ # @param [Google::Apis::ApigeeV1::GoogleCloudApigeeV1ProvisionOrganizationRequest] google_cloud_apigee_v1_provision_organization_request_object
6663
+ # @param [String] fields
6664
+ # Selector specifying which fields to include in a partial response.
6665
+ # @param [String] quota_user
6666
+ # Available to use for quota purposes for server-side applications. Can be any
6667
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
6668
+ # @param [Google::Apis::RequestOptions] options
6669
+ # Request-specific options
6670
+ #
6671
+ # @yield [result, err] Result & error if block supplied
6672
+ # @yieldparam result [Google::Apis::ApigeeV1::GoogleLongrunningOperation] parsed result object
6673
+ # @yieldparam err [StandardError] error object if request failed
6674
+ #
6675
+ # @return [Google::Apis::ApigeeV1::GoogleLongrunningOperation]
6676
+ #
6677
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
6678
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
6679
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
6680
+ def provision_project_organization(project, google_cloud_apigee_v1_provision_organization_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
6681
+ command = make_simple_command(:post, 'v1/{+project}:provisionOrganization', options)
6682
+ command.request_representation = Google::Apis::ApigeeV1::GoogleCloudApigeeV1ProvisionOrganizationRequest::Representation
6683
+ command.request_object = google_cloud_apigee_v1_provision_organization_request_object
6684
+ command.response_representation = Google::Apis::ApigeeV1::GoogleLongrunningOperation::Representation
6685
+ command.response_class = Google::Apis::ApigeeV1::GoogleLongrunningOperation
6686
+ command.params['project'] = project unless project.nil?
6687
+ command.query['fields'] = fields unless fields.nil?
6688
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
6689
+ execute_or_queue_command(command, &block)
6690
+ end
6491
6691
 
6492
6692
  protected
6493
6693
 
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://developers.google.com/apps-marketplace
27
27
  module AppsmarketV2
28
28
  VERSION = 'V2'
29
- REVISION = '20200928'
29
+ REVISION = '20201005'
30
30
 
31
31
  # View your installed application's licensing information
32
32
  AUTH_APPSMARKETPLACE_LICENSE = 'https://www.googleapis.com/auth/appsmarketplace.license'
@@ -0,0 +1,38 @@
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 'google/apis/billingbudgets_v1/service.rb'
16
+ require 'google/apis/billingbudgets_v1/classes.rb'
17
+ require 'google/apis/billingbudgets_v1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Cloud Billing Budget API
22
+ #
23
+ # The Cloud Billing Budget API stores Cloud Billing budgets, which define a
24
+ # budget plan and the rules to execute as spend is tracked against that plan.
25
+ #
26
+ # @see https://cloud.google.com/billing/docs/how-to/budget-api-overview
27
+ module BillingbudgetsV1
28
+ VERSION = 'V1'
29
+ REVISION = '20200919'
30
+
31
+ # View and manage your Google Cloud Platform billing accounts
32
+ AUTH_CLOUD_BILLING = 'https://www.googleapis.com/auth/cloud-billing'
33
+
34
+ # View and manage your data across Google Cloud Platform services
35
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,362 @@
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. If not set, default behavior is `INCLUDE_ALL_CREDITS`.
123
+ # Corresponds to the JSON property `creditTypesTreatment`
124
+ # @return [String]
125
+ attr_accessor :credit_types_treatment
126
+
127
+ # Optional. A single label and value pair specifying that usage from only this
128
+ # set of labeled resources should be included in the budget. Currently, multiple
129
+ # entries or multiple values per entry are not allowed. If omitted, the report
130
+ # will include all labeled and unlabeled usage.
131
+ # Corresponds to the JSON property `labels`
132
+ # @return [Hash<String,Array<Object>>]
133
+ attr_accessor :labels
134
+
135
+ # Optional. A set of projects of the form `projects/`project``, specifying that
136
+ # usage from only this set of projects should be included in the budget. If
137
+ # omitted, the report will include all usage for the billing account, regardless
138
+ # of which project the usage occurred on. Only zero or one project can be
139
+ # specified currently.
140
+ # Corresponds to the JSON property `projects`
141
+ # @return [Array<String>]
142
+ attr_accessor :projects
143
+
144
+ # Optional. A set of services of the form `services/`service_id``, specifying
145
+ # that usage from only this set of services should be included in the budget. If
146
+ # omitted, the report will include usage for all the services. The service names
147
+ # are available through the Catalog API: https://cloud.google.com/billing/v1/how-
148
+ # tos/catalog-api.
149
+ # Corresponds to the JSON property `services`
150
+ # @return [Array<String>]
151
+ attr_accessor :services
152
+
153
+ # Optional. A set of subaccounts of the form `billingAccounts/`account_id``,
154
+ # specifying that usage from only this set of subaccounts should be included in
155
+ # the budget. If a subaccount is set to the name of the parent account, usage
156
+ # from the parent account will be included. If the field is omitted, the report
157
+ # will include usage from the parent account and all subaccounts, if they exist.
158
+ # Corresponds to the JSON property `subaccounts`
159
+ # @return [Array<String>]
160
+ attr_accessor :subaccounts
161
+
162
+ def initialize(**args)
163
+ update!(**args)
164
+ end
165
+
166
+ # Update properties of this object
167
+ def update!(**args)
168
+ @credit_types_treatment = args[:credit_types_treatment] if args.key?(:credit_types_treatment)
169
+ @labels = args[:labels] if args.key?(:labels)
170
+ @projects = args[:projects] if args.key?(:projects)
171
+ @services = args[:services] if args.key?(:services)
172
+ @subaccounts = args[:subaccounts] if args.key?(:subaccounts)
173
+ end
174
+ end
175
+
176
+ # Describes a budget amount targeted to last period's spend. At this time, the
177
+ # amount is automatically 100% of last period's spend; that is, there are no
178
+ # other options yet. Future configuration will be described here (for example,
179
+ # configuring a percentage of last period's spend).
180
+ class GoogleCloudBillingBudgetsV1LastPeriodAmount
181
+ include Google::Apis::Core::Hashable
182
+
183
+ def initialize(**args)
184
+ update!(**args)
185
+ end
186
+
187
+ # Update properties of this object
188
+ def update!(**args)
189
+ end
190
+ end
191
+
192
+ # Response for ListBudgets
193
+ class GoogleCloudBillingBudgetsV1ListBudgetsResponse
194
+ include Google::Apis::Core::Hashable
195
+
196
+ # List of the budgets owned by the requested billing account.
197
+ # Corresponds to the JSON property `budgets`
198
+ # @return [Array<Google::Apis::BillingbudgetsV1::GoogleCloudBillingBudgetsV1Budget>]
199
+ attr_accessor :budgets
200
+
201
+ # If not empty, indicates that there may be more budgets that match the request;
202
+ # this value should be passed in a new `ListBudgetsRequest`.
203
+ # Corresponds to the JSON property `nextPageToken`
204
+ # @return [String]
205
+ attr_accessor :next_page_token
206
+
207
+ def initialize(**args)
208
+ update!(**args)
209
+ end
210
+
211
+ # Update properties of this object
212
+ def update!(**args)
213
+ @budgets = args[:budgets] if args.key?(:budgets)
214
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
215
+ end
216
+ end
217
+
218
+ # NotificationsRule defines notifications that are sent based on budget spend
219
+ # and thresholds.
220
+ class GoogleCloudBillingBudgetsV1NotificationsRule
221
+ include Google::Apis::Core::Hashable
222
+
223
+ # Optional. When set to true, disables default notifications sent when a
224
+ # threshold is exceeded. Default notifications are sent to those with Billing
225
+ # Account Administrator and Billing Account User IAM roles for the target
226
+ # account.
227
+ # Corresponds to the JSON property `disableDefaultIamRecipients`
228
+ # @return [Boolean]
229
+ attr_accessor :disable_default_iam_recipients
230
+ alias_method :disable_default_iam_recipients?, :disable_default_iam_recipients
231
+
232
+ # Optional. Targets to send notifications to when a threshold is exceeded. This
233
+ # is in addition to default recipients who have billing account IAM roles. The
234
+ # value is the full REST resource name of a monitoring notification channel with
235
+ # the form `projects/`project_id`/notificationChannels/`channel_id``. A maximum
236
+ # of 5 channels are allowed. See https://cloud.google.com/billing/docs/how-to/
237
+ # budgets-notification-recipients for more details.
238
+ # Corresponds to the JSON property `monitoringNotificationChannels`
239
+ # @return [Array<String>]
240
+ attr_accessor :monitoring_notification_channels
241
+
242
+ # Optional. The name of the Pub/Sub topic where budget related messages will be
243
+ # published, in the form `projects/`project_id`/topics/`topic_id``. Updates are
244
+ # sent at regular intervals to the topic. The topic needs to be created before
245
+ # the budget is created; see https://cloud.google.com/billing/docs/how-to/
246
+ # budgets#manage-notifications for more details. Caller is expected to have `
247
+ # pubsub.topics.setIamPolicy` permission on the topic when it's set for a budget,
248
+ # otherwise, the API call will fail with PERMISSION_DENIED. See https://cloud.
249
+ # google.com/billing/docs/how-to/budgets-programmatic-notifications for more
250
+ # details on Pub/Sub roles and permissions.
251
+ # Corresponds to the JSON property `pubsubTopic`
252
+ # @return [String]
253
+ attr_accessor :pubsub_topic
254
+
255
+ # Optional. The schema version of the notification sent to `pubsub_topic`. Only "
256
+ # 1.0" is accepted. It represents the JSON schema as defined in https://cloud.
257
+ # google.com/billing/docs/how-to/budgets-programmatic-notifications#
258
+ # notification_format
259
+ # Corresponds to the JSON property `schemaVersion`
260
+ # @return [String]
261
+ attr_accessor :schema_version
262
+
263
+ def initialize(**args)
264
+ update!(**args)
265
+ end
266
+
267
+ # Update properties of this object
268
+ def update!(**args)
269
+ @disable_default_iam_recipients = args[:disable_default_iam_recipients] if args.key?(:disable_default_iam_recipients)
270
+ @monitoring_notification_channels = args[:monitoring_notification_channels] if args.key?(:monitoring_notification_channels)
271
+ @pubsub_topic = args[:pubsub_topic] if args.key?(:pubsub_topic)
272
+ @schema_version = args[:schema_version] if args.key?(:schema_version)
273
+ end
274
+ end
275
+
276
+ # ThresholdRule contains a definition of a threshold which triggers an alert (a
277
+ # notification of a threshold being crossed) to be sent when spend goes above
278
+ # the specified amount. Alerts are automatically e-mailed to users with the
279
+ # Billing Account Administrator role or the Billing Account User role. The
280
+ # thresholds here have no effect on notifications sent to anything configured
281
+ # under `Budget.all_updates_rule`.
282
+ class GoogleCloudBillingBudgetsV1ThresholdRule
283
+ include Google::Apis::Core::Hashable
284
+
285
+ # Optional. The type of basis used to determine if spend has passed the
286
+ # threshold. Behavior defaults to CURRENT_SPEND if not set.
287
+ # Corresponds to the JSON property `spendBasis`
288
+ # @return [String]
289
+ attr_accessor :spend_basis
290
+
291
+ # Required. Send an alert when this threshold is exceeded. This is a 1.0-based
292
+ # percentage, so 0.5 = 50%. Validation: non-negative number.
293
+ # Corresponds to the JSON property `thresholdPercent`
294
+ # @return [Float]
295
+ attr_accessor :threshold_percent
296
+
297
+ def initialize(**args)
298
+ update!(**args)
299
+ end
300
+
301
+ # Update properties of this object
302
+ def update!(**args)
303
+ @spend_basis = args[:spend_basis] if args.key?(:spend_basis)
304
+ @threshold_percent = args[:threshold_percent] if args.key?(:threshold_percent)
305
+ end
306
+ end
307
+
308
+ # A generic empty message that you can re-use to avoid defining duplicated empty
309
+ # messages in your APIs. A typical example is to use it as the request or the
310
+ # response type of an API method. For instance: service Foo ` rpc Bar(google.
311
+ # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
312
+ # `Empty` is empty JSON object ````.
313
+ class GoogleProtobufEmpty
314
+ include Google::Apis::Core::Hashable
315
+
316
+ def initialize(**args)
317
+ update!(**args)
318
+ end
319
+
320
+ # Update properties of this object
321
+ def update!(**args)
322
+ end
323
+ end
324
+
325
+ # Represents an amount of money with its currency type.
326
+ class GoogleTypeMoney
327
+ include Google::Apis::Core::Hashable
328
+
329
+ # The 3-letter currency code defined in ISO 4217.
330
+ # Corresponds to the JSON property `currencyCode`
331
+ # @return [String]
332
+ attr_accessor :currency_code
333
+
334
+ # Number of nano (10^-9) units of the amount. The value must be between -999,999,
335
+ # 999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be
336
+ # positive or zero. If `units` is zero, `nanos` can be positive, zero, or
337
+ # negative. If `units` is negative, `nanos` must be negative or zero. For
338
+ # example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
339
+ # Corresponds to the JSON property `nanos`
340
+ # @return [Fixnum]
341
+ attr_accessor :nanos
342
+
343
+ # The whole units of the amount. For example if `currencyCode` is `"USD"`, then
344
+ # 1 unit is one US dollar.
345
+ # Corresponds to the JSON property `units`
346
+ # @return [Fixnum]
347
+ attr_accessor :units
348
+
349
+ def initialize(**args)
350
+ update!(**args)
351
+ end
352
+
353
+ # Update properties of this object
354
+ def update!(**args)
355
+ @currency_code = args[:currency_code] if args.key?(:currency_code)
356
+ @nanos = args[:nanos] if args.key?(:nanos)
357
+ @units = args[:units] if args.key?(:units)
358
+ end
359
+ end
360
+ end
361
+ end
362
+ end