google-api-client 0.11.1 → 0.11.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (252) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +4 -0
  3. data/api_names.yaml +42335 -1
  4. data/generated/google/apis/acceleratedmobilepageurl_v1.rb +3 -3
  5. data/generated/google/apis/acceleratedmobilepageurl_v1/classes.rb +28 -28
  6. data/generated/google/apis/acceleratedmobilepageurl_v1/representations.rb +12 -12
  7. data/generated/google/apis/acceleratedmobilepageurl_v1/service.rb +2 -2
  8. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  9. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +757 -757
  10. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +162 -162
  11. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +48 -48
  12. data/generated/google/apis/admin_directory_v1.rb +1 -1
  13. data/generated/google/apis/admin_directory_v1/classes.rb +75 -7
  14. data/generated/google/apis/admin_directory_v1/representations.rb +20 -0
  15. data/generated/google/apis/admin_directory_v1/service.rb +61 -61
  16. data/generated/google/apis/adsense_v1_4.rb +1 -1
  17. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  18. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  19. data/generated/google/apis/analyticsreporting_v4/classes.rb +403 -403
  20. data/generated/google/apis/analyticsreporting_v4/representations.rb +108 -108
  21. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  22. data/generated/google/apis/androidenterprise_v1/classes.rb +36 -11
  23. data/generated/google/apis/androidenterprise_v1/representations.rb +2 -0
  24. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  25. data/generated/google/apis/appengine_v1.rb +6 -5
  26. data/generated/google/apis/appengine_v1/classes.rb +1429 -1421
  27. data/generated/google/apis/appengine_v1/representations.rb +331 -331
  28. data/generated/google/apis/appengine_v1/service.rb +173 -168
  29. data/generated/google/apis/appstate_v1.rb +1 -1
  30. data/generated/google/apis/bigquery_v2.rb +1 -1
  31. data/generated/google/apis/calendar_v3.rb +1 -1
  32. data/generated/google/apis/classroom_v1.rb +1 -1
  33. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  34. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  35. data/generated/google/apis/cloudbuild_v1/classes.rb +624 -618
  36. data/generated/google/apis/cloudbuild_v1/representations.rb +126 -125
  37. data/generated/google/apis/cloudbuild_v1/service.rb +87 -87
  38. data/generated/google/apis/clouddebugger_v2.rb +4 -4
  39. data/generated/google/apis/clouddebugger_v2/classes.rb +267 -267
  40. data/generated/google/apis/clouddebugger_v2/representations.rb +83 -83
  41. data/generated/google/apis/clouddebugger_v2/service.rb +137 -137
  42. data/generated/google/apis/clouderrorreporting_v1beta1.rb +1 -1
  43. data/generated/google/apis/clouderrorreporting_v1beta1/classes.rb +131 -131
  44. data/generated/google/apis/clouderrorreporting_v1beta1/representations.rb +28 -28
  45. data/generated/google/apis/clouderrorreporting_v1beta1/service.rb +17 -17
  46. data/generated/google/apis/cloudfunctions_v1.rb +1 -4
  47. data/generated/google/apis/cloudfunctions_v1/classes.rb +7 -47
  48. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -17
  49. data/generated/google/apis/cloudfunctions_v1/service.rb +0 -30
  50. data/generated/google/apis/cloudkms_v1.rb +1 -1
  51. data/generated/google/apis/cloudkms_v1/classes.rb +625 -625
  52. data/generated/google/apis/cloudkms_v1/representations.rb +132 -132
  53. data/generated/google/apis/cloudkms_v1/service.rb +272 -272
  54. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  55. data/generated/google/apis/cloudresourcemanager_v1.rb +4 -4
  56. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +242 -242
  57. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +43 -43
  58. data/generated/google/apis/cloudresourcemanager_v1/service.rb +505 -505
  59. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +4 -4
  60. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +172 -172
  61. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +39 -39
  62. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +310 -310
  63. data/generated/google/apis/cloudtrace_v1.rb +1 -1
  64. data/generated/google/apis/cloudtrace_v1/classes.rb +96 -69
  65. data/generated/google/apis/cloudtrace_v1/representations.rb +16 -16
  66. data/generated/google/apis/cloudtrace_v1/service.rb +42 -15
  67. data/generated/google/apis/compute_beta.rb +1 -1
  68. data/generated/google/apis/compute_beta/classes.rb +194 -25
  69. data/generated/google/apis/compute_beta/representations.rb +42 -0
  70. data/generated/google/apis/compute_beta/service.rb +196 -100
  71. data/generated/google/apis/compute_v1.rb +1 -1
  72. data/generated/google/apis/compute_v1/classes.rb +69 -18
  73. data/generated/google/apis/compute_v1/representations.rb +16 -0
  74. data/generated/google/apis/compute_v1/service.rb +84 -26
  75. data/generated/google/apis/container_v1.rb +3 -3
  76. data/generated/google/apis/container_v1/classes.rb +794 -586
  77. data/generated/google/apis/container_v1/representations.rb +202 -118
  78. data/generated/google/apis/container_v1/service.rb +396 -167
  79. data/generated/google/apis/content_v2.rb +1 -1
  80. data/generated/google/apis/content_v2/service.rb +4 -4
  81. data/generated/google/apis/dataproc_v1.rb +1 -1
  82. data/generated/google/apis/dataproc_v1/classes.rb +487 -484
  83. data/generated/google/apis/dataproc_v1/representations.rb +83 -83
  84. data/generated/google/apis/dataproc_v1/service.rb +299 -297
  85. data/generated/google/apis/datastore_v1.rb +1 -1
  86. data/generated/google/apis/datastore_v1/classes.rb +703 -703
  87. data/generated/google/apis/datastore_v1/representations.rb +148 -148
  88. data/generated/google/apis/datastore_v1/service.rb +62 -62
  89. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  90. data/generated/google/apis/deploymentmanager_v2/classes.rb +7 -5
  91. data/generated/google/apis/dfareporting_v2_6.rb +1 -1
  92. data/generated/google/apis/dfareporting_v2_6/classes.rb +66 -53
  93. data/generated/google/apis/dfareporting_v2_6/service.rb +30 -30
  94. data/generated/google/apis/dfareporting_v2_7.rb +1 -1
  95. data/generated/google/apis/dfareporting_v2_7/classes.rb +69 -55
  96. data/generated/google/apis/dfareporting_v2_7/service.rb +38 -37
  97. data/generated/google/apis/dfareporting_v2_8.rb +40 -0
  98. data/generated/google/apis/dfareporting_v2_8/classes.rb +12046 -0
  99. data/generated/google/apis/dfareporting_v2_8/representations.rb +4310 -0
  100. data/generated/google/apis/dfareporting_v2_8/service.rb +9135 -0
  101. data/generated/google/apis/dns_v1.rb +1 -1
  102. data/generated/google/apis/dns_v2beta1.rb +1 -1
  103. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  104. data/generated/google/apis/drive_v2.rb +1 -1
  105. data/generated/google/apis/drive_v2/classes.rb +15 -0
  106. data/generated/google/apis/drive_v2/representations.rb +2 -0
  107. data/generated/google/apis/drive_v2/service.rb +2 -1
  108. data/generated/google/apis/drive_v3.rb +1 -1
  109. data/generated/google/apis/drive_v3/classes.rb +16 -0
  110. data/generated/google/apis/drive_v3/representations.rb +2 -0
  111. data/generated/google/apis/drive_v3/service.rb +2 -1
  112. data/generated/google/apis/firebasedynamiclinks_v1.rb +2 -3
  113. data/generated/google/apis/firebasedynamiclinks_v1/classes.rb +159 -159
  114. data/generated/google/apis/firebasedynamiclinks_v1/representations.rb +55 -55
  115. data/generated/google/apis/firebasedynamiclinks_v1/service.rb +5 -6
  116. data/generated/google/apis/firebaserules_v1.rb +1 -1
  117. data/generated/google/apis/firebaserules_v1/classes.rb +73 -73
  118. data/generated/google/apis/firebaserules_v1/representations.rb +25 -25
  119. data/generated/google/apis/firebaserules_v1/service.rb +118 -118
  120. data/generated/google/apis/fusiontables_v2.rb +1 -1
  121. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  122. data/generated/google/apis/games_management_v1management.rb +1 -1
  123. data/generated/google/apis/games_v1.rb +1 -1
  124. data/generated/google/apis/genomics_v1.rb +1 -1
  125. data/generated/google/apis/genomics_v1/classes.rb +920 -920
  126. data/generated/google/apis/genomics_v1/representations.rb +202 -202
  127. data/generated/google/apis/genomics_v1/service.rb +1092 -1092
  128. data/generated/google/apis/gmail_v1.rb +1 -1
  129. data/generated/google/apis/iam_v1.rb +1 -1
  130. data/generated/google/apis/iam_v1/classes.rb +455 -435
  131. data/generated/google/apis/iam_v1/representations.rb +96 -93
  132. data/generated/google/apis/iam_v1/service.rb +157 -157
  133. data/generated/google/apis/identitytoolkit_v3.rb +1 -1
  134. data/generated/google/apis/identitytoolkit_v3/classes.rb +12 -0
  135. data/generated/google/apis/identitytoolkit_v3/representations.rb +2 -0
  136. data/generated/google/apis/kgsearch_v1/classes.rb +6 -6
  137. data/generated/google/apis/kgsearch_v1/representations.rb +1 -1
  138. data/generated/google/apis/kgsearch_v1/service.rb +9 -9
  139. data/generated/google/apis/language_v1.rb +1 -1
  140. data/generated/google/apis/language_v1/classes.rb +455 -455
  141. data/generated/google/apis/language_v1/representations.rb +102 -102
  142. data/generated/google/apis/language_v1/service.rb +42 -42
  143. data/generated/google/apis/language_v1beta1.rb +1 -1
  144. data/generated/google/apis/language_v1beta1/classes.rb +216 -215
  145. data/generated/google/apis/language_v1beta1/representations.rb +75 -75
  146. data/generated/google/apis/language_v1beta1/service.rb +45 -45
  147. data/generated/google/apis/logging_v2.rb +1 -1
  148. data/generated/google/apis/logging_v2/classes.rb +908 -895
  149. data/generated/google/apis/logging_v2/representations.rb +121 -120
  150. data/generated/google/apis/logging_v2/service.rb +489 -489
  151. data/generated/google/apis/logging_v2beta1.rb +4 -4
  152. data/generated/google/apis/logging_v2beta1/classes.rb +928 -915
  153. data/generated/google/apis/logging_v2beta1/representations.rb +121 -120
  154. data/generated/google/apis/logging_v2beta1/service.rb +249 -249
  155. data/generated/google/apis/manufacturers_v1.rb +1 -1
  156. data/generated/google/apis/manufacturers_v1/classes.rb +294 -294
  157. data/generated/google/apis/manufacturers_v1/representations.rb +84 -84
  158. data/generated/google/apis/manufacturers_v1/service.rb +8 -8
  159. data/generated/google/apis/mirror_v1.rb +1 -1
  160. data/generated/google/apis/ml_v1.rb +1 -1
  161. data/generated/google/apis/ml_v1/classes.rb +1186 -1183
  162. data/generated/google/apis/ml_v1/representations.rb +177 -177
  163. data/generated/google/apis/ml_v1/service.rb +244 -244
  164. data/generated/google/apis/monitoring_v3.rb +1 -1
  165. data/generated/google/apis/monitoring_v3/classes.rb +866 -866
  166. data/generated/google/apis/monitoring_v3/representations.rb +163 -163
  167. data/generated/google/apis/monitoring_v3/service.rb +355 -316
  168. data/generated/google/apis/oauth2_v2.rb +1 -1
  169. data/generated/google/apis/partners_v2.rb +1 -1
  170. data/generated/google/apis/partners_v2/classes.rb +1499 -1499
  171. data/generated/google/apis/partners_v2/representations.rb +368 -368
  172. data/generated/google/apis/partners_v2/service.rb +512 -512
  173. data/generated/google/apis/people_v1.rb +10 -10
  174. data/generated/google/apis/people_v1/classes.rb +544 -423
  175. data/generated/google/apis/people_v1/representations.rb +127 -109
  176. data/generated/google/apis/people_v1/service.rb +8 -8
  177. data/generated/google/apis/plus_domains_v1.rb +1 -1
  178. data/generated/google/apis/plus_v1.rb +1 -1
  179. data/generated/google/apis/proximitybeacon_v1beta1.rb +1 -1
  180. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +200 -200
  181. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +41 -41
  182. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +80 -80
  183. data/generated/google/apis/pubsub_v1.rb +1 -1
  184. data/generated/google/apis/pubsub_v1/classes.rb +377 -377
  185. data/generated/google/apis/pubsub_v1/representations.rb +82 -82
  186. data/generated/google/apis/pubsub_v1/service.rb +93 -93
  187. data/generated/google/apis/runtimeconfig_v1.rb +6 -4
  188. data/generated/google/apis/runtimeconfig_v1/classes.rb +22 -22
  189. data/generated/google/apis/runtimeconfig_v1/representations.rb +2 -2
  190. data/generated/google/apis/runtimeconfig_v1/service.rb +57 -55
  191. data/generated/google/apis/script_v1.rb +14 -14
  192. data/generated/google/apis/script_v1/classes.rb +113 -58
  193. data/generated/google/apis/script_v1/representations.rb +43 -14
  194. data/generated/google/apis/script_v1/service.rb +6 -6
  195. data/generated/google/apis/searchconsole_v1.rb +1 -1
  196. data/generated/google/apis/searchconsole_v1/classes.rb +67 -67
  197. data/generated/google/apis/searchconsole_v1/representations.rb +29 -29
  198. data/generated/google/apis/searchconsole_v1/service.rb +6 -6
  199. data/generated/google/apis/servicecontrol_v1.rb +4 -4
  200. data/generated/google/apis/servicecontrol_v1/classes.rb +1125 -1125
  201. data/generated/google/apis/servicecontrol_v1/representations.rb +213 -213
  202. data/generated/google/apis/servicecontrol_v1/service.rb +92 -92
  203. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  204. data/generated/google/apis/servicemanagement_v1/classes.rb +3364 -3622
  205. data/generated/google/apis/servicemanagement_v1/representations.rb +546 -530
  206. data/generated/google/apis/servicemanagement_v1/service.rb +262 -152
  207. data/generated/google/apis/serviceuser_v1.rb +4 -4
  208. data/generated/google/apis/serviceuser_v1/classes.rb +2616 -2874
  209. data/generated/google/apis/serviceuser_v1/representations.rb +294 -278
  210. data/generated/google/apis/serviceuser_v1/service.rb +19 -19
  211. data/generated/google/apis/sheets_v4.rb +4 -1
  212. data/generated/google/apis/sheets_v4/classes.rb +4315 -4313
  213. data/generated/google/apis/sheets_v4/representations.rb +858 -858
  214. data/generated/google/apis/sheets_v4/service.rb +115 -115
  215. data/generated/google/apis/slides_v1.rb +1 -1
  216. data/generated/google/apis/slides_v1/classes.rb +2890 -2890
  217. data/generated/google/apis/slides_v1/representations.rb +638 -638
  218. data/generated/google/apis/slides_v1/service.rb +36 -36
  219. data/generated/google/apis/sourcerepo_v1.rb +1 -1
  220. data/generated/google/apis/sourcerepo_v1/classes.rb +283 -283
  221. data/generated/google/apis/sourcerepo_v1/representations.rb +67 -67
  222. data/generated/google/apis/sourcerepo_v1/service.rb +88 -88
  223. data/generated/google/apis/spanner_v1.rb +1 -1
  224. data/generated/google/apis/spanner_v1/classes.rb +2258 -2233
  225. data/generated/google/apis/spanner_v1/representations.rb +325 -325
  226. data/generated/google/apis/spanner_v1/service.rb +466 -466
  227. data/generated/google/apis/speech_v1beta1.rb +2 -2
  228. data/generated/google/apis/speech_v1beta1/classes.rb +97 -97
  229. data/generated/google/apis/speech_v1beta1/representations.rb +29 -29
  230. data/generated/google/apis/speech_v1beta1/service.rb +49 -49
  231. data/generated/google/apis/storage_v1.rb +1 -1
  232. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  233. data/generated/google/apis/storagetransfer_v1/classes.rb +786 -786
  234. data/generated/google/apis/storagetransfer_v1/representations.rb +133 -133
  235. data/generated/google/apis/storagetransfer_v1/service.rb +30 -30
  236. data/generated/google/apis/surveys_v2.rb +1 -1
  237. data/generated/google/apis/surveys_v2/classes.rb +0 -12
  238. data/generated/google/apis/surveys_v2/representations.rb +0 -4
  239. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  240. data/generated/google/apis/vision_v1.rb +1 -1
  241. data/generated/google/apis/vision_v1/classes.rb +1301 -1302
  242. data/generated/google/apis/vision_v1/representations.rb +183 -183
  243. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  244. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  245. data/generated/google/apis/youtube_partner_v1/classes.rb +10 -0
  246. data/generated/google/apis/youtube_partner_v1/representations.rb +1 -0
  247. data/generated/google/apis/youtubereporting_v1.rb +1 -1
  248. data/generated/google/apis/youtubereporting_v1/classes.rb +64 -64
  249. data/generated/google/apis/youtubereporting_v1/representations.rb +12 -12
  250. data/generated/google/apis/youtubereporting_v1/service.rb +94 -94
  251. data/lib/google/apis/version.rb +1 -1
  252. metadata +7 -3
@@ -32,16 +32,16 @@ module Google
32
32
  #
33
33
  # @see https://developers.google.com/webmaster-tools/search-console-api/
34
34
  class SearchConsoleService < Google::Apis::Core::BaseService
35
- # @return [String]
36
- # Available to use for quota purposes for server-side applications. Can be any
37
- # arbitrary string assigned to a user, but should not exceed 40 characters.
38
- attr_accessor :quota_user
39
-
40
35
  # @return [String]
41
36
  # API key. Your API key identifies your project and provides you with API access,
42
37
  # quota, and reports. Required unless you provide an OAuth 2.0 token.
43
38
  attr_accessor :key
44
39
 
40
+ # @return [String]
41
+ # Available to use for quota purposes for server-side applications. Can be any
42
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
43
+ attr_accessor :quota_user
44
+
45
45
  def initialize
46
46
  super('https://searchconsole.googleapis.com/', '')
47
47
  @batch_path = 'batch'
@@ -80,8 +80,8 @@ module Google
80
80
  protected
81
81
 
82
82
  def apply_command_defaults(command)
83
- command.query['quotaUser'] = quota_user unless quota_user.nil?
84
83
  command.query['key'] = key unless key.nil?
84
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
85
85
  end
86
86
  end
87
87
  end
@@ -26,13 +26,13 @@ module Google
26
26
  # @see https://cloud.google.com/service-control/
27
27
  module ServicecontrolV1
28
28
  VERSION = 'V1'
29
- REVISION = '20170326'
30
-
31
- # Manage your Google Service Control data
32
- AUTH_SERVICECONTROL = 'https://www.googleapis.com/auth/servicecontrol'
29
+ REVISION = '20170422'
33
30
 
34
31
  # View and manage your data across Google Cloud Platform services
35
32
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
33
+
34
+ # Manage your Google Service Control data
35
+ AUTH_SERVICECONTROL = 'https://www.googleapis.com/auth/servicecontrol'
36
36
  end
37
37
  end
38
38
  end
@@ -22,32 +22,35 @@ module Google
22
22
  module Apis
23
23
  module ServicecontrolV1
24
24
 
25
- # Describing buckets with exponentially growing width.
26
- class ExponentialBuckets
25
+ # Request message for the Check method.
26
+ class CheckRequest
27
27
  include Google::Apis::Core::Hashable
28
28
 
29
- # The i'th exponential bucket covers the interval
30
- # [scale * growth_factor^(i-1), scale * growth_factor^i)
31
- # where i ranges from 1 to num_finite_buckets inclusive.
32
- # Must be larger than 1.0.
33
- # Corresponds to the JSON property `growthFactor`
34
- # @return [Float]
35
- attr_accessor :growth_factor
29
+ # Indicates if service activation check should be skipped for this request.
30
+ # Default behavior is to perform the check and apply relevant quota.
31
+ # Corresponds to the JSON property `skipActivationCheck`
32
+ # @return [Boolean]
33
+ attr_accessor :skip_activation_check
34
+ alias_method :skip_activation_check?, :skip_activation_check
36
35
 
37
- # The i'th exponential bucket covers the interval
38
- # [scale * growth_factor^(i-1), scale * growth_factor^i)
39
- # where i ranges from 1 to num_finite_buckets inclusive.
40
- # Must be > 0.
41
- # Corresponds to the JSON property `scale`
42
- # @return [Float]
43
- attr_accessor :scale
36
+ # Represents information regarding an operation.
37
+ # Corresponds to the JSON property `operation`
38
+ # @return [Google::Apis::ServicecontrolV1::Operation]
39
+ attr_accessor :operation
44
40
 
45
- # The number of finite buckets. With the underflow and overflow buckets,
46
- # the total number of buckets is `num_finite_buckets` + 2.
47
- # See comments on `bucket_options` for details.
48
- # Corresponds to the JSON property `numFiniteBuckets`
49
- # @return [Fixnum]
50
- attr_accessor :num_finite_buckets
41
+ # Requests the project settings to be returned as part of the check response.
42
+ # Corresponds to the JSON property `requestProjectSettings`
43
+ # @return [Boolean]
44
+ attr_accessor :request_project_settings
45
+ alias_method :request_project_settings?, :request_project_settings
46
+
47
+ # Specifies which version of service configuration should be used to process
48
+ # the request.
49
+ # If unspecified or no matching version can be found, the
50
+ # latest one will be used.
51
+ # Corresponds to the JSON property `serviceConfigId`
52
+ # @return [String]
53
+ attr_accessor :service_config_id
51
54
 
52
55
  def initialize(**args)
53
56
  update!(**args)
@@ -55,33 +58,70 @@ module Google
55
58
 
56
59
  # Update properties of this object
57
60
  def update!(**args)
58
- @growth_factor = args[:growth_factor] if args.key?(:growth_factor)
59
- @scale = args[:scale] if args.key?(:scale)
60
- @num_finite_buckets = args[:num_finite_buckets] if args.key?(:num_finite_buckets)
61
+ @skip_activation_check = args[:skip_activation_check] if args.key?(:skip_activation_check)
62
+ @operation = args[:operation] if args.key?(:operation)
63
+ @request_project_settings = args[:request_project_settings] if args.key?(:request_project_settings)
64
+ @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
61
65
  end
62
66
  end
63
67
 
64
- # Authorization information for the operation.
65
- class AuthorizationInfo
68
+ # Represents information regarding a quota operation.
69
+ class QuotaOperation
66
70
  include Google::Apis::Core::Hashable
67
71
 
68
- # The resource being accessed, as a REST-style string. For example:
69
- # bigquery.googlapis.com/projects/PROJECTID/datasets/DATASETID
70
- # Corresponds to the JSON property `resource`
72
+ # Quota mode for this operation.
73
+ # Corresponds to the JSON property `quotaMode`
71
74
  # @return [String]
72
- attr_accessor :resource
75
+ attr_accessor :quota_mode
73
76
 
74
- # Whether or not authorization for `resource` and `permission`
75
- # was granted.
76
- # Corresponds to the JSON property `granted`
77
- # @return [Boolean]
78
- attr_accessor :granted
79
- alias_method :granted?, :granted
77
+ # Fully qualified name of the API method for which this quota operation is
78
+ # requested. This name is used for matching quota rules or metric rules and
79
+ # billing status rules defined in service configuration. This field is not
80
+ # required if the quota operation is performed on non-API resources.
81
+ # Example of an RPC method name:
82
+ # google.example.library.v1.LibraryService.CreateShelf
83
+ # Corresponds to the JSON property `methodName`
84
+ # @return [String]
85
+ attr_accessor :method_name
80
86
 
81
- # The required IAM permission.
82
- # Corresponds to the JSON property `permission`
87
+ # Represents information about this operation. Each MetricValueSet
88
+ # corresponds to a metric defined in the service configuration.
89
+ # The data type used in the MetricValueSet must agree with
90
+ # the data type specified in the metric definition.
91
+ # Within a single operation, it is not allowed to have more than one
92
+ # MetricValue instances that have the same metric names and identical
93
+ # label value combinations. If a request has such duplicated MetricValue
94
+ # instances, the entire request is rejected with
95
+ # an invalid argument error.
96
+ # Corresponds to the JSON property `quotaMetrics`
97
+ # @return [Array<Google::Apis::ServicecontrolV1::MetricValueSet>]
98
+ attr_accessor :quota_metrics
99
+
100
+ # Labels describing the operation.
101
+ # Corresponds to the JSON property `labels`
102
+ # @return [Hash<String,String>]
103
+ attr_accessor :labels
104
+
105
+ # Identity of the consumer for whom this quota operation is being performed.
106
+ # This can be in one of the following formats:
107
+ # project:<project_id>,
108
+ # project_number:<project_number>,
109
+ # api_key:<api_key>.
110
+ # Corresponds to the JSON property `consumerId`
83
111
  # @return [String]
84
- attr_accessor :permission
112
+ attr_accessor :consumer_id
113
+
114
+ # Identity of the operation. This must be unique within the scope of the
115
+ # service that generated the operation. If the service calls AllocateQuota
116
+ # and ReleaseQuota on the same operation, the two calls should carry the
117
+ # same ID.
118
+ # UUID version 4 is recommended, though not required. In scenarios where an
119
+ # operation is computed from existing information and an idempotent id is
120
+ # desirable for deduplication purpose, UUID version 5 is recommended. See
121
+ # RFC 4122 for details.
122
+ # Corresponds to the JSON property `operationId`
123
+ # @return [String]
124
+ attr_accessor :operation_id
85
125
 
86
126
  def initialize(**args)
87
127
  update!(**args)
@@ -89,40 +129,27 @@ module Google
89
129
 
90
130
  # Update properties of this object
91
131
  def update!(**args)
92
- @resource = args[:resource] if args.key?(:resource)
93
- @granted = args[:granted] if args.key?(:granted)
94
- @permission = args[:permission] if args.key?(:permission)
132
+ @quota_mode = args[:quota_mode] if args.key?(:quota_mode)
133
+ @method_name = args[:method_name] if args.key?(:method_name)
134
+ @quota_metrics = args[:quota_metrics] if args.key?(:quota_metrics)
135
+ @labels = args[:labels] if args.key?(:labels)
136
+ @consumer_id = args[:consumer_id] if args.key?(:consumer_id)
137
+ @operation_id = args[:operation_id] if args.key?(:operation_id)
95
138
  end
96
139
  end
97
140
 
98
141
  #
99
- class StartReconciliationResponse
142
+ class EndReconciliationRequest
100
143
  include Google::Apis::Core::Hashable
101
144
 
102
- # Metric values as tracked by One Platform before the start of
103
- # reconciliation. The following metrics will be included:
104
- # 1. Per quota metric total usage will be specified using the following gauge
105
- # metric:
106
- # "serviceruntime.googleapis.com/allocation/consumer/quota_used_count"
107
- # 2. Value for each quota limit associated with the metrics will be specified
108
- # using the following gauge metric:
109
- # "serviceruntime.googleapis.com/quota/limit"
110
- # Corresponds to the JSON property `quotaMetrics`
111
- # @return [Array<Google::Apis::ServicecontrolV1::MetricValueSet>]
112
- attr_accessor :quota_metrics
113
-
114
- # The same operation_id value used in the StartReconciliationRequest. Used
115
- # for logging and diagnostics purposes.
116
- # Corresponds to the JSON property `operationId`
117
- # @return [String]
118
- attr_accessor :operation_id
119
-
120
- # Indicates the decision of the reconciliation start.
121
- # Corresponds to the JSON property `reconciliationErrors`
122
- # @return [Array<Google::Apis::ServicecontrolV1::QuotaError>]
123
- attr_accessor :reconciliation_errors
145
+ # Represents information regarding a quota operation.
146
+ # Corresponds to the JSON property `reconciliationOperation`
147
+ # @return [Google::Apis::ServicecontrolV1::QuotaOperation]
148
+ attr_accessor :reconciliation_operation
124
149
 
125
- # ID of the actual config used to process the request.
150
+ # Specifies which version of service configuration should be used to process
151
+ # the request. If unspecified or no matching version can be found, the latest
152
+ # one will be used.
126
153
  # Corresponds to the JSON property `serviceConfigId`
127
154
  # @return [String]
128
155
  attr_accessor :service_config_id
@@ -133,36 +160,24 @@ module Google
133
160
 
134
161
  # Update properties of this object
135
162
  def update!(**args)
136
- @quota_metrics = args[:quota_metrics] if args.key?(:quota_metrics)
137
- @operation_id = args[:operation_id] if args.key?(:operation_id)
138
- @reconciliation_errors = args[:reconciliation_errors] if args.key?(:reconciliation_errors)
163
+ @reconciliation_operation = args[:reconciliation_operation] if args.key?(:reconciliation_operation)
139
164
  @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
140
165
  end
141
166
  end
142
167
 
143
- # Represents the properties needed for quota operations.
144
- class QuotaProperties
168
+ #
169
+ class ReportInfo
145
170
  include Google::Apis::Core::Hashable
146
171
 
147
- # Quota mode for this operation.
148
- # Corresponds to the JSON property `quotaMode`
172
+ # The Operation.operation_id value from the request.
173
+ # Corresponds to the JSON property `operationId`
149
174
  # @return [String]
150
- attr_accessor :quota_mode
175
+ attr_accessor :operation_id
151
176
 
152
- # LimitType IDs that should be used for checking quota. Key in this map
153
- # should be a valid LimitType string, and the value is the ID to be used. For
154
- # example, an entry <USER, 123> will cause all user quota limits to use 123
155
- # as the user ID. See google/api/quota.proto for the definition of LimitType.
156
- # CLIENT_PROJECT: Not supported.
157
- # USER: Value of this entry will be used for enforcing user-level quota
158
- # limits. If none specified, caller IP passed in the
159
- # servicecontrol.googleapis.com/caller_ip label will be used instead.
160
- # If the server cannot resolve a value for this LimitType, an error
161
- # will be thrown. No validation will be performed on this ID.
162
- # Deprecated: use servicecontrol.googleapis.com/user label to send user ID.
163
- # Corresponds to the JSON property `limitByIds`
164
- # @return [Hash<String,String>]
165
- attr_accessor :limit_by_ids
177
+ # Contains the quota information for a quota check response.
178
+ # Corresponds to the JSON property `quotaInfo`
179
+ # @return [Google::Apis::ServicecontrolV1::QuotaInfo]
180
+ attr_accessor :quota_info
166
181
 
167
182
  def initialize(**args)
168
183
  update!(**args)
@@ -170,36 +185,46 @@ module Google
170
185
 
171
186
  # Update properties of this object
172
187
  def update!(**args)
173
- @quota_mode = args[:quota_mode] if args.key?(:quota_mode)
174
- @limit_by_ids = args[:limit_by_ids] if args.key?(:limit_by_ids)
188
+ @operation_id = args[:operation_id] if args.key?(:operation_id)
189
+ @quota_info = args[:quota_info] if args.key?(:quota_info)
175
190
  end
176
191
  end
177
192
 
178
- # Describing buckets with constant width.
179
- class LinearBuckets
193
+ # Response message for the Report method.
194
+ class ReportResponse
180
195
  include Google::Apis::Core::Hashable
181
196
 
182
- # The i'th linear bucket covers the interval
183
- # [offset + (i-1) * width, offset + i * width)
184
- # where i ranges from 1 to num_finite_buckets, inclusive.
185
- # Must be strictly positive.
186
- # Corresponds to the JSON property `width`
187
- # @return [Float]
188
- attr_accessor :width
197
+ # Quota usage for each quota release `Operation` request.
198
+ # Fully or partially failed quota release request may or may not be present
199
+ # in `report_quota_info`. For example, a failed quota release request will
200
+ # have the current quota usage info when precise quota library returns the
201
+ # info. A deadline exceeded quota request will not have quota usage info.
202
+ # If there is no quota release request, report_quota_info will be empty.
203
+ # Corresponds to the JSON property `reportInfos`
204
+ # @return [Array<Google::Apis::ServicecontrolV1::ReportInfo>]
205
+ attr_accessor :report_infos
189
206
 
190
- # The i'th linear bucket covers the interval
191
- # [offset + (i-1) * width, offset + i * width)
192
- # where i ranges from 1 to num_finite_buckets, inclusive.
193
- # Corresponds to the JSON property `offset`
194
- # @return [Float]
195
- attr_accessor :offset
207
+ # The actual config id used to process the request.
208
+ # Corresponds to the JSON property `serviceConfigId`
209
+ # @return [String]
210
+ attr_accessor :service_config_id
196
211
 
197
- # The number of finite buckets. With the underflow and overflow buckets,
198
- # the total number of buckets is `num_finite_buckets` + 2.
199
- # See comments on `bucket_options` for details.
200
- # Corresponds to the JSON property `numFiniteBuckets`
201
- # @return [Fixnum]
202
- attr_accessor :num_finite_buckets
212
+ # Partial failures, one for each `Operation` in the request that failed
213
+ # processing. There are three possible combinations of the RPC status:
214
+ # 1. The combination of a successful RPC status and an empty `report_errors`
215
+ # list indicates a complete success where all `Operations` in the
216
+ # request are processed successfully.
217
+ # 2. The combination of a successful RPC status and a non-empty
218
+ # `report_errors` list indicates a partial success where some
219
+ # `Operations` in the request succeeded. Each
220
+ # `Operation` that failed processing has a corresponding item
221
+ # in this list.
222
+ # 3. A failed RPC status indicates a general non-deterministic failure.
223
+ # When this happens, it's impossible to know which of the
224
+ # 'Operations' in the request succeeded or failed.
225
+ # Corresponds to the JSON property `reportErrors`
226
+ # @return [Array<Google::Apis::ServicecontrolV1::ReportError>]
227
+ attr_accessor :report_errors
203
228
 
204
229
  def initialize(**args)
205
230
  update!(**args)
@@ -207,26 +232,117 @@ module Google
207
232
 
208
233
  # Update properties of this object
209
234
  def update!(**args)
210
- @width = args[:width] if args.key?(:width)
211
- @offset = args[:offset] if args.key?(:offset)
212
- @num_finite_buckets = args[:num_finite_buckets] if args.key?(:num_finite_buckets)
235
+ @report_infos = args[:report_infos] if args.key?(:report_infos)
236
+ @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
237
+ @report_errors = args[:report_errors] if args.key?(:report_errors)
213
238
  end
214
239
  end
215
240
 
216
- # Authentication information for the operation.
217
- class AuthenticationInfo
241
+ # Represents information regarding an operation.
242
+ class Operation
218
243
  include Google::Apis::Core::Hashable
219
244
 
220
- # The email address of the authenticated user making the request.
221
- # Corresponds to the JSON property `principalEmail`
245
+ # Identity of the consumer who is using the service.
246
+ # This field should be filled in for the operations initiated by a
247
+ # consumer, but not for service-initiated operations that are
248
+ # not related to a specific consumer.
249
+ # This can be in one of the following formats:
250
+ # project:<project_id>,
251
+ # project_number:<project_number>,
252
+ # api_key:<api_key>.
253
+ # Corresponds to the JSON property `consumerId`
222
254
  # @return [String]
223
- attr_accessor :principal_email
255
+ attr_accessor :consumer_id
224
256
 
225
- # The authority selector specified by the requestor, if any.
226
- # It is not guaranteed that the principal was allowed to use this authority.
227
- # Corresponds to the JSON property `authoritySelector`
257
+ # Identity of the operation. This must be unique within the scope of the
258
+ # service that generated the operation. If the service calls
259
+ # Check() and Report() on the same operation, the two calls should carry
260
+ # the same id.
261
+ # UUID version 4 is recommended, though not required.
262
+ # In scenarios where an operation is computed from existing information
263
+ # and an idempotent id is desirable for deduplication purpose, UUID version 5
264
+ # is recommended. See RFC 4122 for details.
265
+ # Corresponds to the JSON property `operationId`
228
266
  # @return [String]
229
- attr_accessor :authority_selector
267
+ attr_accessor :operation_id
268
+
269
+ # Fully qualified name of the operation. Reserved for future use.
270
+ # Corresponds to the JSON property `operationName`
271
+ # @return [String]
272
+ attr_accessor :operation_name
273
+
274
+ # End time of the operation.
275
+ # Required when the operation is used in ServiceController.Report,
276
+ # but optional when the operation is used in ServiceController.Check.
277
+ # Corresponds to the JSON property `endTime`
278
+ # @return [String]
279
+ attr_accessor :end_time
280
+
281
+ # Required. Start time of the operation.
282
+ # Corresponds to the JSON property `startTime`
283
+ # @return [String]
284
+ attr_accessor :start_time
285
+
286
+ # DO NOT USE. This is an experimental field.
287
+ # Corresponds to the JSON property `importance`
288
+ # @return [String]
289
+ attr_accessor :importance
290
+
291
+ # The resource name of the parent of a resource in the resource hierarchy.
292
+ # This can be in one of the following formats:
293
+ # - “projects/<project-id or project-number>”
294
+ # - “folders/<folder-id>”
295
+ # - “organizations/<organization-id>”
296
+ # Corresponds to the JSON property `resourceContainer`
297
+ # @return [String]
298
+ attr_accessor :resource_container
299
+
300
+ # Labels describing the operation. Only the following labels are allowed:
301
+ # - Labels describing monitored resources as defined in
302
+ # the service configuration.
303
+ # - Default labels of metric values. When specified, labels defined in the
304
+ # metric value override these default.
305
+ # - The following labels defined by Google Cloud Platform:
306
+ # - `cloud.googleapis.com/location` describing the location where the
307
+ # operation happened,
308
+ # - `servicecontrol.googleapis.com/user_agent` describing the user agent
309
+ # of the API request,
310
+ # - `servicecontrol.googleapis.com/service_agent` describing the service
311
+ # used to handle the API request (e.g. ESP),
312
+ # - `servicecontrol.googleapis.com/platform` describing the platform
313
+ # where the API is served (e.g. GAE, GCE, GKE).
314
+ # Corresponds to the JSON property `labels`
315
+ # @return [Hash<String,String>]
316
+ attr_accessor :labels
317
+
318
+ # Represents information to be logged.
319
+ # Corresponds to the JSON property `logEntries`
320
+ # @return [Array<Google::Apis::ServicecontrolV1::LogEntry>]
321
+ attr_accessor :log_entries
322
+
323
+ # User defined labels for the resource that this operation is associated
324
+ # with.
325
+ # Corresponds to the JSON property `userLabels`
326
+ # @return [Hash<String,String>]
327
+ attr_accessor :user_labels
328
+
329
+ # Represents information about this operation. Each MetricValueSet
330
+ # corresponds to a metric defined in the service configuration.
331
+ # The data type used in the MetricValueSet must agree with
332
+ # the data type specified in the metric definition.
333
+ # Within a single operation, it is not allowed to have more than one
334
+ # MetricValue instances that have the same metric names and identical
335
+ # label value combinations. If a request has such duplicated MetricValue
336
+ # instances, the entire request is rejected with
337
+ # an invalid argument error.
338
+ # Corresponds to the JSON property `metricValueSets`
339
+ # @return [Array<Google::Apis::ServicecontrolV1::MetricValueSet>]
340
+ attr_accessor :metric_value_sets
341
+
342
+ # Represents the properties needed for quota operations.
343
+ # Corresponds to the JSON property `quotaProperties`
344
+ # @return [Google::Apis::ServicecontrolV1::QuotaProperties]
345
+ attr_accessor :quota_properties
230
346
 
231
347
  def initialize(**args)
232
348
  update!(**args)
@@ -234,49 +350,54 @@ module Google
234
350
 
235
351
  # Update properties of this object
236
352
  def update!(**args)
237
- @principal_email = args[:principal_email] if args.key?(:principal_email)
238
- @authority_selector = args[:authority_selector] if args.key?(:authority_selector)
353
+ @consumer_id = args[:consumer_id] if args.key?(:consumer_id)
354
+ @operation_id = args[:operation_id] if args.key?(:operation_id)
355
+ @operation_name = args[:operation_name] if args.key?(:operation_name)
356
+ @end_time = args[:end_time] if args.key?(:end_time)
357
+ @start_time = args[:start_time] if args.key?(:start_time)
358
+ @importance = args[:importance] if args.key?(:importance)
359
+ @resource_container = args[:resource_container] if args.key?(:resource_container)
360
+ @labels = args[:labels] if args.key?(:labels)
361
+ @log_entries = args[:log_entries] if args.key?(:log_entries)
362
+ @user_labels = args[:user_labels] if args.key?(:user_labels)
363
+ @metric_value_sets = args[:metric_value_sets] if args.key?(:metric_value_sets)
364
+ @quota_properties = args[:quota_properties] if args.key?(:quota_properties)
239
365
  end
240
366
  end
241
367
 
242
- # Response message for the AllocateQuota method.
243
- class AllocateQuotaResponse
368
+ # Response message for the Check method.
369
+ class CheckResponse
244
370
  include Google::Apis::Core::Hashable
245
371
 
246
- # The same operation_id value used in the AllocateQuotaRequest. Used for
247
- # logging and diagnostics purposes.
372
+ # The same operation_id value used in the CheckRequest.
373
+ # Used for logging and diagnostics purposes.
248
374
  # Corresponds to the JSON property `operationId`
249
375
  # @return [String]
250
376
  attr_accessor :operation_id
251
377
 
252
- # ID of the actual config used to process the request.
378
+ # Indicate the decision of the check.
379
+ # If no check errors are present, the service should process the operation.
380
+ # Otherwise the service should use the list of errors to determine the
381
+ # appropriate action.
382
+ # Corresponds to the JSON property `checkErrors`
383
+ # @return [Array<Google::Apis::ServicecontrolV1::CheckError>]
384
+ attr_accessor :check_errors
385
+
386
+ # Feedback data returned from the server during processing a Check request.
387
+ # Corresponds to the JSON property `checkInfo`
388
+ # @return [Google::Apis::ServicecontrolV1::CheckInfo]
389
+ attr_accessor :check_info
390
+
391
+ # Contains the quota information for a quota check response.
392
+ # Corresponds to the JSON property `quotaInfo`
393
+ # @return [Google::Apis::ServicecontrolV1::QuotaInfo]
394
+ attr_accessor :quota_info
395
+
396
+ # The actual config id used to process the request.
253
397
  # Corresponds to the JSON property `serviceConfigId`
254
398
  # @return [String]
255
399
  attr_accessor :service_config_id
256
400
 
257
- # Indicates the decision of the allocate.
258
- # Corresponds to the JSON property `allocateErrors`
259
- # @return [Array<Google::Apis::ServicecontrolV1::QuotaError>]
260
- attr_accessor :allocate_errors
261
-
262
- # Quota metrics to indicate the result of allocation. Depending on the
263
- # request, one or more of the following metrics will be included:
264
- # 1. For rate quota, per quota group or per quota metric incremental usage
265
- # will be specified using the following delta metric:
266
- # "serviceruntime.googleapis.com/api/consumer/quota_used_count"
267
- # 2. For allocation quota, per quota metric total usage will be specified
268
- # using the following gauge metric:
269
- # "serviceruntime.googleapis.com/allocation/consumer/quota_used_count"
270
- # 3. For both rate quota and allocation quota, the quota limit reached
271
- # condition will be specified using the following boolean metric:
272
- # "serviceruntime.googleapis.com/quota/exceeded"
273
- # 4. For allocation quota, value for each quota limit associated with
274
- # the metrics will be specified using the following gauge metric:
275
- # "serviceruntime.googleapis.com/quota/limit"
276
- # Corresponds to the JSON property `quotaMetrics`
277
- # @return [Array<Google::Apis::ServicecontrolV1::MetricValueSet>]
278
- attr_accessor :quota_metrics
279
-
280
401
  def initialize(**args)
281
402
  update!(**args)
282
403
  end
@@ -284,27 +405,72 @@ module Google
284
405
  # Update properties of this object
285
406
  def update!(**args)
286
407
  @operation_id = args[:operation_id] if args.key?(:operation_id)
408
+ @check_errors = args[:check_errors] if args.key?(:check_errors)
409
+ @check_info = args[:check_info] if args.key?(:check_info)
410
+ @quota_info = args[:quota_info] if args.key?(:quota_info)
287
411
  @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
288
- @allocate_errors = args[:allocate_errors] if args.key?(:allocate_errors)
289
- @quota_metrics = args[:quota_metrics] if args.key?(:quota_metrics)
290
412
  end
291
413
  end
292
414
 
293
- # Request message for the ReleaseQuota method.
294
- class ReleaseQuotaRequest
415
+ # The `Status` type defines a logical error model that is suitable for different
416
+ # programming environments, including REST APIs and RPC APIs. It is used by
417
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
418
+ # - Simple to use and understand for most users
419
+ # - Flexible enough to meet unexpected needs
420
+ # # Overview
421
+ # The `Status` message contains three pieces of data: error code, error message,
422
+ # and error details. The error code should be an enum value of
423
+ # google.rpc.Code, but it may accept additional error codes if needed. The
424
+ # error message should be a developer-facing English message that helps
425
+ # developers *understand* and *resolve* the error. If a localized user-facing
426
+ # error message is needed, put the localized message in the error details or
427
+ # localize it in the client. The optional error details may contain arbitrary
428
+ # information about the error. There is a predefined set of error detail types
429
+ # in the package `google.rpc` which can be used for common error conditions.
430
+ # # Language mapping
431
+ # The `Status` message is the logical representation of the error model, but it
432
+ # is not necessarily the actual wire format. When the `Status` message is
433
+ # exposed in different client libraries and different wire protocols, it can be
434
+ # mapped differently. For example, it will likely be mapped to some exceptions
435
+ # in Java, but more likely mapped to some error codes in C.
436
+ # # Other uses
437
+ # The error model and the `Status` message can be used in a variety of
438
+ # environments, either with or without APIs, to provide a
439
+ # consistent developer experience across different environments.
440
+ # Example uses of this error model include:
441
+ # - Partial errors. If a service needs to return partial errors to the client,
442
+ # it may embed the `Status` in the normal response to indicate the partial
443
+ # errors.
444
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
445
+ # have a `Status` message for error reporting purpose.
446
+ # - Batch operations. If a client uses batch request and batch response, the
447
+ # `Status` message should be used directly inside batch response, one for
448
+ # each error sub-response.
449
+ # - Asynchronous operations. If an API call embeds asynchronous operation
450
+ # results in its response, the status of those operations should be
451
+ # represented directly using the `Status` message.
452
+ # - Logging. If some API errors are stored in logs, the message `Status` could
453
+ # be used directly after any stripping needed for security/privacy reasons.
454
+ class Status
295
455
  include Google::Apis::Core::Hashable
296
456
 
297
- # Specifies which version of service configuration should be used to process
298
- # the request. If unspecified or no matching version can be found, the latest
299
- # one will be used.
300
- # Corresponds to the JSON property `serviceConfigId`
457
+ # A developer-facing error message, which should be in English. Any
458
+ # user-facing error message should be localized and sent in the
459
+ # google.rpc.Status.details field, or localized by the client.
460
+ # Corresponds to the JSON property `message`
301
461
  # @return [String]
302
- attr_accessor :service_config_id
462
+ attr_accessor :message
303
463
 
304
- # Represents information regarding a quota operation.
305
- # Corresponds to the JSON property `releaseOperation`
306
- # @return [Google::Apis::ServicecontrolV1::QuotaOperation]
307
- attr_accessor :release_operation
464
+ # A list of messages that carry the error details. There will be a
465
+ # common set of message types for APIs to use.
466
+ # Corresponds to the JSON property `details`
467
+ # @return [Array<Hash<String,Object>>]
468
+ attr_accessor :details
469
+
470
+ # The status code, which should be an enum value of google.rpc.Code.
471
+ # Corresponds to the JSON property `code`
472
+ # @return [Fixnum]
473
+ attr_accessor :code
308
474
 
309
475
  def initialize(**args)
310
476
  update!(**args)
@@ -312,31 +478,35 @@ module Google
312
478
 
313
479
  # Update properties of this object
314
480
  def update!(**args)
315
- @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
316
- @release_operation = args[:release_operation] if args.key?(:release_operation)
481
+ @message = args[:message] if args.key?(:message)
482
+ @details = args[:details] if args.key?(:details)
483
+ @code = args[:code] if args.key?(:code)
317
484
  end
318
485
  end
319
486
 
320
- #
321
- class QuotaError
487
+ # Request message for the Report method.
488
+ class ReportRequest
322
489
  include Google::Apis::Core::Hashable
323
490
 
324
- # Subject to whom this error applies. See the specific enum for more details
325
- # on this field. For example, "clientip:<ip address of client>" or
326
- # "project:<Google developer project id>".
327
- # Corresponds to the JSON property `subject`
328
- # @return [String]
329
- attr_accessor :subject
330
-
331
- # Free-form text that provides details on the cause of the error.
332
- # Corresponds to the JSON property `description`
333
- # @return [String]
334
- attr_accessor :description
491
+ # Operations to be reported.
492
+ # Typically the service should report one operation per request.
493
+ # Putting multiple operations into a single request is allowed, but should
494
+ # be used only when multiple operations are natually available at the time
495
+ # of the report.
496
+ # If multiple operations are in a single request, the total request size
497
+ # should be no larger than 1MB. See ReportResponse.report_errors for
498
+ # partial failure behavior.
499
+ # Corresponds to the JSON property `operations`
500
+ # @return [Array<Google::Apis::ServicecontrolV1::Operation>]
501
+ attr_accessor :operations
335
502
 
336
- # Error code.
337
- # Corresponds to the JSON property `code`
503
+ # Specifies which version of service config should be used to process the
504
+ # request.
505
+ # If unspecified or no matching version can be found, the
506
+ # latest one will be used.
507
+ # Corresponds to the JSON property `serviceConfigId`
338
508
  # @return [String]
339
- attr_accessor :code
509
+ attr_accessor :service_config_id
340
510
 
341
511
  def initialize(**args)
342
512
  update!(**args)
@@ -344,101 +514,62 @@ module Google
344
514
 
345
515
  # Update properties of this object
346
516
  def update!(**args)
347
- @subject = args[:subject] if args.key?(:subject)
348
- @description = args[:description] if args.key?(:description)
349
- @code = args[:code] if args.key?(:code)
517
+ @operations = args[:operations] if args.key?(:operations)
518
+ @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
350
519
  end
351
520
  end
352
521
 
353
- # Metadata about the request.
354
- class RequestMetadata
522
+ # An individual log entry.
523
+ class LogEntry
355
524
  include Google::Apis::Core::Hashable
356
525
 
357
- # The IP address of the caller.
358
- # Corresponds to the JSON property `callerIp`
359
- # @return [String]
360
- attr_accessor :caller_ip
526
+ # A set of user-defined (key, value) data that provides additional
527
+ # information about the log entry.
528
+ # Corresponds to the JSON property `labels`
529
+ # @return [Hash<String,String>]
530
+ attr_accessor :labels
361
531
 
362
- # The user agent of the caller.
363
- # This information is not authenticated and should be treated accordingly.
364
- # For example:
365
- # + `google-api-python-client/1.4.0`:
366
- # The request was made by the Google API client for Python.
367
- # + `Cloud SDK Command Line Tool apitools-client/1.0 gcloud/0.9.62`:
368
- # The request was made by the Google Cloud SDK CLI (gcloud).
369
- # + `AppEngine-Google; (+http://code.google.com/appengine; appid: s~my-project`
370
- # :
371
- # The request was made from the `my-project` App Engine app.
372
- # Corresponds to the JSON property `callerSuppliedUserAgent`
532
+ # The severity of the log entry. The default value is
533
+ # `LogSeverity.DEFAULT`.
534
+ # Corresponds to the JSON property `severity`
373
535
  # @return [String]
374
- attr_accessor :caller_supplied_user_agent
375
-
376
- def initialize(**args)
377
- update!(**args)
378
- end
379
-
380
- # Update properties of this object
381
- def update!(**args)
382
- @caller_ip = args[:caller_ip] if args.key?(:caller_ip)
383
- @caller_supplied_user_agent = args[:caller_supplied_user_agent] if args.key?(:caller_supplied_user_agent)
384
- end
385
- end
386
-
387
- #
388
- class CheckInfo
389
- include Google::Apis::Core::Hashable
390
-
391
- # A list of fields and label keys that are ignored by the server.
392
- # The client doesn't need to send them for following requests to improve
393
- # performance and allow better aggregation.
394
- # Corresponds to the JSON property `unusedArguments`
395
- # @return [Array<String>]
396
- attr_accessor :unused_arguments
397
-
398
- def initialize(**args)
399
- update!(**args)
400
- end
401
-
402
- # Update properties of this object
403
- def update!(**args)
404
- @unused_arguments = args[:unused_arguments] if args.key?(:unused_arguments)
405
- end
406
- end
536
+ attr_accessor :severity
407
537
 
408
- # Response message for the ReleaseQuota method.
409
- class ReleaseQuotaResponse
410
- include Google::Apis::Core::Hashable
538
+ # A unique ID for the log entry used for deduplication. If omitted,
539
+ # the implementation will generate one based on operation_id.
540
+ # Corresponds to the JSON property `insertId`
541
+ # @return [String]
542
+ attr_accessor :insert_id
411
543
 
412
- # The same operation_id value used in the ReleaseQuotaRequest. Used for
413
- # logging and diagnostics purposes.
414
- # Corresponds to the JSON property `operationId`
544
+ # Required. The log to which this log entry belongs. Examples: `"syslog"`,
545
+ # `"book_log"`.
546
+ # Corresponds to the JSON property `name`
415
547
  # @return [String]
416
- attr_accessor :operation_id
548
+ attr_accessor :name
417
549
 
418
- # ID of the actual config used to process the request.
419
- # Corresponds to the JSON property `serviceConfigId`
550
+ # The log entry payload, represented as a structure that
551
+ # is expressed as a JSON object.
552
+ # Corresponds to the JSON property `structPayload`
553
+ # @return [Hash<String,Object>]
554
+ attr_accessor :struct_payload
555
+
556
+ # The log entry payload, represented as a Unicode string (UTF-8).
557
+ # Corresponds to the JSON property `textPayload`
420
558
  # @return [String]
421
- attr_accessor :service_config_id
559
+ attr_accessor :text_payload
422
560
 
423
- # Indicates the decision of the release.
424
- # Corresponds to the JSON property `releaseErrors`
425
- # @return [Array<Google::Apis::ServicecontrolV1::QuotaError>]
426
- attr_accessor :release_errors
561
+ # The log entry payload, represented as a protocol buffer that is
562
+ # expressed as a JSON object. You can only pass `protoPayload`
563
+ # values that belong to a set of approved types.
564
+ # Corresponds to the JSON property `protoPayload`
565
+ # @return [Hash<String,Object>]
566
+ attr_accessor :proto_payload
427
567
 
428
- # Quota metrics to indicate the result of release. Depending on the
429
- # request, one or more of the following metrics will be included:
430
- # 1. For rate quota, per quota group or per quota metric released amount
431
- # will be specified using the following delta metric:
432
- # "serviceruntime.googleapis.com/api/consumer/quota_refund_count"
433
- # 2. For allocation quota, per quota metric total usage will be specified
434
- # using the following gauge metric:
435
- # "serviceruntime.googleapis.com/allocation/consumer/quota_used_count"
436
- # 3. For allocation quota, value for each quota limit associated with
437
- # the metrics will be specified using the following gauge metric:
438
- # "serviceruntime.googleapis.com/quota/limit"
439
- # Corresponds to the JSON property `quotaMetrics`
440
- # @return [Array<Google::Apis::ServicecontrolV1::MetricValueSet>]
441
- attr_accessor :quota_metrics
568
+ # The time the event described by the log entry occurred. If
569
+ # omitted, defaults to operation start time.
570
+ # Corresponds to the JSON property `timestamp`
571
+ # @return [String]
572
+ attr_accessor :timestamp
442
573
 
443
574
  def initialize(**args)
444
575
  update!(**args)
@@ -446,77 +577,88 @@ module Google
446
577
 
447
578
  # Update properties of this object
448
579
  def update!(**args)
449
- @operation_id = args[:operation_id] if args.key?(:operation_id)
450
- @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
451
- @release_errors = args[:release_errors] if args.key?(:release_errors)
452
- @quota_metrics = args[:quota_metrics] if args.key?(:quota_metrics)
580
+ @labels = args[:labels] if args.key?(:labels)
581
+ @severity = args[:severity] if args.key?(:severity)
582
+ @insert_id = args[:insert_id] if args.key?(:insert_id)
583
+ @name = args[:name] if args.key?(:name)
584
+ @struct_payload = args[:struct_payload] if args.key?(:struct_payload)
585
+ @text_payload = args[:text_payload] if args.key?(:text_payload)
586
+ @proto_payload = args[:proto_payload] if args.key?(:proto_payload)
587
+ @timestamp = args[:timestamp] if args.key?(:timestamp)
453
588
  end
454
589
  end
455
590
 
456
- # Request message for the AllocateQuota method.
457
- class AllocateQuotaRequest
591
+ # Common audit log format for Google Cloud Platform API operations.
592
+ class AuditLog
458
593
  include Google::Apis::Core::Hashable
459
594
 
460
- # Allocation mode for this operation.
461
- # Deprecated: use QuotaMode inside the QuotaOperation.
462
- # Corresponds to the JSON property `allocationMode`
463
- # @return [String]
464
- attr_accessor :allocation_mode
465
-
466
- # Specifies which version of service configuration should be used to process
467
- # the request. If unspecified or no matching version can be found, the latest
468
- # one will be used.
469
- # Corresponds to the JSON property `serviceConfigId`
595
+ # The name of the API service performing the operation. For example,
596
+ # `"datastore.googleapis.com"`.
597
+ # Corresponds to the JSON property `serviceName`
470
598
  # @return [String]
471
- attr_accessor :service_config_id
472
-
473
- # Represents information regarding a quota operation.
474
- # Corresponds to the JSON property `allocateOperation`
475
- # @return [Google::Apis::ServicecontrolV1::QuotaOperation]
476
- attr_accessor :allocate_operation
599
+ attr_accessor :service_name
477
600
 
478
- def initialize(**args)
479
- update!(**args)
480
- end
601
+ # The operation response. This may not include all response elements,
602
+ # such as those that are too large, privacy-sensitive, or duplicated
603
+ # elsewhere in the log record.
604
+ # It should never include user-generated data, such as file contents.
605
+ # When the JSON object represented here has a proto equivalent, the proto
606
+ # name will be indicated in the `@type` property.
607
+ # Corresponds to the JSON property `response`
608
+ # @return [Hash<String,Object>]
609
+ attr_accessor :response
481
610
 
482
- # Update properties of this object
483
- def update!(**args)
484
- @allocation_mode = args[:allocation_mode] if args.key?(:allocation_mode)
485
- @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
486
- @allocate_operation = args[:allocate_operation] if args.key?(:allocate_operation)
487
- end
488
- end
611
+ # The name of the service method or operation.
612
+ # For API calls, this should be the name of the API method.
613
+ # For example,
614
+ # "google.datastore.v1.Datastore.RunQuery"
615
+ # "google.logging.v1.LoggingService.DeleteLog"
616
+ # Corresponds to the JSON property `methodName`
617
+ # @return [String]
618
+ attr_accessor :method_name
489
619
 
490
- # Represents a set of metric values in the same metric.
491
- # Each metric value in the set should have a unique combination of start time,
492
- # end time, and label values.
493
- class MetricValueSet
494
- include Google::Apis::Core::Hashable
620
+ # Authorization information. If there are multiple
621
+ # resources or permissions involved, then there is
622
+ # one AuthorizationInfo element for each `resource, permission` tuple.
623
+ # Corresponds to the JSON property `authorizationInfo`
624
+ # @return [Array<Google::Apis::ServicecontrolV1::AuthorizationInfo>]
625
+ attr_accessor :authorization_info
495
626
 
496
- # The metric name defined in the service configuration.
497
- # Corresponds to the JSON property `metricName`
627
+ # The resource or collection that is the target of the operation.
628
+ # The name is a scheme-less URI, not including the API service name.
629
+ # For example:
630
+ # "shelves/SHELF_ID/books"
631
+ # "shelves/SHELF_ID/books/BOOK_ID"
632
+ # Corresponds to the JSON property `resourceName`
498
633
  # @return [String]
499
- attr_accessor :metric_name
634
+ attr_accessor :resource_name
500
635
 
501
- # The values in this metric.
502
- # Corresponds to the JSON property `metricValues`
503
- # @return [Array<Google::Apis::ServicecontrolV1::MetricValue>]
504
- attr_accessor :metric_values
636
+ # The operation request. This may not include all request parameters,
637
+ # such as those that are too large, privacy-sensitive, or duplicated
638
+ # elsewhere in the log record.
639
+ # It should never include user-generated data, such as file contents.
640
+ # When the JSON object represented here has a proto equivalent, the proto
641
+ # name will be indicated in the `@type` property.
642
+ # Corresponds to the JSON property `request`
643
+ # @return [Hash<String,Object>]
644
+ attr_accessor :request
505
645
 
506
- def initialize(**args)
507
- update!(**args)
508
- end
646
+ # Metadata about the request.
647
+ # Corresponds to the JSON property `requestMetadata`
648
+ # @return [Google::Apis::ServicecontrolV1::RequestMetadata]
649
+ attr_accessor :request_metadata
509
650
 
510
- # Update properties of this object
511
- def update!(**args)
512
- @metric_name = args[:metric_name] if args.key?(:metric_name)
513
- @metric_values = args[:metric_values] if args.key?(:metric_values)
514
- end
515
- end
651
+ # Other service-specific data about the request, response, and other
652
+ # activities.
653
+ # Corresponds to the JSON property `serviceData`
654
+ # @return [Hash<String,Object>]
655
+ attr_accessor :service_data
516
656
 
517
- # Represents the processing error of one `Operation` in the request.
518
- class ReportError
519
- include Google::Apis::Core::Hashable
657
+ # The number of items returned from a List or Query API method,
658
+ # if applicable.
659
+ # Corresponds to the JSON property `numResponseItems`
660
+ # @return [Fixnum]
661
+ attr_accessor :num_response_items
520
662
 
521
663
  # The `Status` type defines a logical error model that is suitable for different
522
664
  # programming environments, including REST APIs and RPC APIs. It is used by
@@ -561,10 +703,10 @@ module Google
561
703
  # @return [Google::Apis::ServicecontrolV1::Status]
562
704
  attr_accessor :status
563
705
 
564
- # The Operation.operation_id value from the request.
565
- # Corresponds to the JSON property `operationId`
566
- # @return [String]
567
- attr_accessor :operation_id
706
+ # Authentication information for the operation.
707
+ # Corresponds to the JSON property `authenticationInfo`
708
+ # @return [Google::Apis::ServicecontrolV1::AuthenticationInfo]
709
+ attr_accessor :authentication_info
568
710
 
569
711
  def initialize(**args)
570
712
  update!(**args)
@@ -572,26 +714,81 @@ module Google
572
714
 
573
715
  # Update properties of this object
574
716
  def update!(**args)
717
+ @service_name = args[:service_name] if args.key?(:service_name)
718
+ @response = args[:response] if args.key?(:response)
719
+ @method_name = args[:method_name] if args.key?(:method_name)
720
+ @authorization_info = args[:authorization_info] if args.key?(:authorization_info)
721
+ @resource_name = args[:resource_name] if args.key?(:resource_name)
722
+ @request = args[:request] if args.key?(:request)
723
+ @request_metadata = args[:request_metadata] if args.key?(:request_metadata)
724
+ @service_data = args[:service_data] if args.key?(:service_data)
725
+ @num_response_items = args[:num_response_items] if args.key?(:num_response_items)
575
726
  @status = args[:status] if args.key?(:status)
576
- @operation_id = args[:operation_id] if args.key?(:operation_id)
727
+ @authentication_info = args[:authentication_info] if args.key?(:authentication_info)
577
728
  end
578
729
  end
579
730
 
580
- #
581
- class StartReconciliationRequest
731
+ # Represents a single metric value.
732
+ class MetricValue
582
733
  include Google::Apis::Core::Hashable
583
734
 
584
- # Represents information regarding a quota operation.
585
- # Corresponds to the JSON property `reconciliationOperation`
586
- # @return [Google::Apis::ServicecontrolV1::QuotaOperation]
587
- attr_accessor :reconciliation_operation
735
+ # The start of the time period over which this metric value's measurement
736
+ # applies. The time period has different semantics for different metric
737
+ # types (cumulative, delta, and gauge). See the metric definition
738
+ # documentation in the service configuration for details.
739
+ # Corresponds to the JSON property `startTime`
740
+ # @return [String]
741
+ attr_accessor :start_time
588
742
 
589
- # Specifies which version of service configuration should be used to process
590
- # the request. If unspecified or no matching version can be found, the latest
591
- # one will be used.
592
- # Corresponds to the JSON property `serviceConfigId`
743
+ # Represents an amount of money with its currency type.
744
+ # Corresponds to the JSON property `moneyValue`
745
+ # @return [Google::Apis::ServicecontrolV1::Money]
746
+ attr_accessor :money_value
747
+
748
+ # The labels describing the metric value.
749
+ # See comments on google.api.servicecontrol.v1.Operation.labels for
750
+ # the overriding relationship.
751
+ # Corresponds to the JSON property `labels`
752
+ # @return [Hash<String,String>]
753
+ attr_accessor :labels
754
+
755
+ # A text string value.
756
+ # Corresponds to the JSON property `stringValue`
593
757
  # @return [String]
594
- attr_accessor :service_config_id
758
+ attr_accessor :string_value
759
+
760
+ # A double precision floating point value.
761
+ # Corresponds to the JSON property `doubleValue`
762
+ # @return [Float]
763
+ attr_accessor :double_value
764
+
765
+ # A signed 64-bit integer value.
766
+ # Corresponds to the JSON property `int64Value`
767
+ # @return [Fixnum]
768
+ attr_accessor :int64_value
769
+
770
+ # Distribution represents a frequency distribution of double-valued sample
771
+ # points. It contains the size of the population of sample points plus
772
+ # additional optional information:
773
+ # - the arithmetic mean of the samples
774
+ # - the minimum and maximum of the samples
775
+ # - the sum-squared-deviation of the samples, used to compute variance
776
+ # - a histogram of the values of the sample points
777
+ # Corresponds to the JSON property `distributionValue`
778
+ # @return [Google::Apis::ServicecontrolV1::Distribution]
779
+ attr_accessor :distribution_value
780
+
781
+ # A boolean value.
782
+ # Corresponds to the JSON property `boolValue`
783
+ # @return [Boolean]
784
+ attr_accessor :bool_value
785
+ alias_method :bool_value?, :bool_value
786
+
787
+ # The end of the time period over which this metric value's measurement
788
+ # applies.
789
+ # Corresponds to the JSON property `endTime`
790
+ # @return [String]
791
+ attr_accessor :end_time
595
792
 
596
793
  def initialize(**args)
597
794
  update!(**args)
@@ -599,25 +796,58 @@ module Google
599
796
 
600
797
  # Update properties of this object
601
798
  def update!(**args)
602
- @reconciliation_operation = args[:reconciliation_operation] if args.key?(:reconciliation_operation)
603
- @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
799
+ @start_time = args[:start_time] if args.key?(:start_time)
800
+ @money_value = args[:money_value] if args.key?(:money_value)
801
+ @labels = args[:labels] if args.key?(:labels)
802
+ @string_value = args[:string_value] if args.key?(:string_value)
803
+ @double_value = args[:double_value] if args.key?(:double_value)
804
+ @int64_value = args[:int64_value] if args.key?(:int64_value)
805
+ @distribution_value = args[:distribution_value] if args.key?(:distribution_value)
806
+ @bool_value = args[:bool_value] if args.key?(:bool_value)
807
+ @end_time = args[:end_time] if args.key?(:end_time)
604
808
  end
605
809
  end
606
810
 
607
- # Defines the errors to be returned in
608
- # google.api.servicecontrol.v1.CheckResponse.check_errors.
609
- class CheckError
811
+ #
812
+ class EndReconciliationResponse
610
813
  include Google::Apis::Core::Hashable
611
814
 
612
- # The error code.
613
- # Corresponds to the JSON property `code`
815
+ # The same operation_id value used in the EndReconciliationRequest. Used for
816
+ # logging and diagnostics purposes.
817
+ # Corresponds to the JSON property `operationId`
614
818
  # @return [String]
615
- attr_accessor :code
819
+ attr_accessor :operation_id
616
820
 
617
- # Free-form text providing details on the error cause of the error.
618
- # Corresponds to the JSON property `detail`
821
+ # Indicates the decision of the reconciliation end.
822
+ # Corresponds to the JSON property `reconciliationErrors`
823
+ # @return [Array<Google::Apis::ServicecontrolV1::QuotaError>]
824
+ attr_accessor :reconciliation_errors
825
+
826
+ # ID of the actual config used to process the request.
827
+ # Corresponds to the JSON property `serviceConfigId`
619
828
  # @return [String]
620
- attr_accessor :detail
829
+ attr_accessor :service_config_id
830
+
831
+ # Metric values as tracked by One Platform before the adjustment was made.
832
+ # The following metrics will be included:
833
+ # 1. Per quota metric total usage will be specified using the following gauge
834
+ # metric:
835
+ # "serviceruntime.googleapis.com/allocation/consumer/quota_used_count"
836
+ # 2. Value for each quota limit associated with the metrics will be specified
837
+ # using the following gauge metric:
838
+ # "serviceruntime.googleapis.com/quota/limit"
839
+ # 3. Delta value of the usage after the reconciliation for limits associated
840
+ # with the metrics will be specified using the following metric:
841
+ # "serviceruntime.googleapis.com/allocation/reconciliation_delta"
842
+ # The delta value is defined as:
843
+ # new_usage_from_client - existing_value_in_spanner.
844
+ # This metric is not defined in serviceruntime.yaml or in Cloud Monarch.
845
+ # This metric is meant for callers' use only. Since this metric is not
846
+ # defined in the monitoring backend, reporting on this metric will result in
847
+ # an error.
848
+ # Corresponds to the JSON property `quotaMetrics`
849
+ # @return [Array<Google::Apis::ServicecontrolV1::MetricValueSet>]
850
+ attr_accessor :quota_metrics
621
851
 
622
852
  def initialize(**args)
623
853
  update!(**args)
@@ -625,46 +855,37 @@ module Google
625
855
 
626
856
  # Update properties of this object
627
857
  def update!(**args)
628
- @code = args[:code] if args.key?(:code)
629
- @detail = args[:detail] if args.key?(:detail)
858
+ @operation_id = args[:operation_id] if args.key?(:operation_id)
859
+ @reconciliation_errors = args[:reconciliation_errors] if args.key?(:reconciliation_errors)
860
+ @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
861
+ @quota_metrics = args[:quota_metrics] if args.key?(:quota_metrics)
630
862
  end
631
863
  end
632
864
 
633
- # Contains the quota information for a quota check response.
634
- class QuotaInfo
865
+ # Represents an amount of money with its currency type.
866
+ class Money
635
867
  include Google::Apis::Core::Hashable
636
868
 
637
- # Map of quota group name to the actual number of tokens consumed. If the
638
- # quota check was not successful, then this will not be populated due to no
639
- # quota consumption.
640
- # Deprecated: Use quota_metrics to get per quota group usage.
641
- # Corresponds to the JSON property `quotaConsumed`
642
- # @return [Hash<String,Fixnum>]
643
- attr_accessor :quota_consumed
869
+ # The 3-letter currency code defined in ISO 4217.
870
+ # Corresponds to the JSON property `currencyCode`
871
+ # @return [String]
872
+ attr_accessor :currency_code
644
873
 
645
- # Quota metrics to indicate the usage. Depending on the check request, one or
646
- # more of the following metrics will be included:
647
- # 1. For rate quota, per quota group or per quota metric incremental usage
648
- # will be specified using the following delta metric:
649
- # "serviceruntime.googleapis.com/api/consumer/quota_used_count"
650
- # 2. For allocation quota, per quota metric total usage will be specified
651
- # using the following gauge metric:
652
- # "serviceruntime.googleapis.com/allocation/consumer/quota_used_count"
653
- # 3. For both rate quota and allocation quota, the quota limit reached
654
- # condition will be specified using the following boolean metric:
655
- # "serviceruntime.googleapis.com/quota/exceeded"
656
- # Corresponds to the JSON property `quotaMetrics`
657
- # @return [Array<Google::Apis::ServicecontrolV1::MetricValueSet>]
658
- attr_accessor :quota_metrics
874
+ # Number of nano (10^-9) units of the amount.
875
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
876
+ # If `units` is positive, `nanos` must be positive or zero.
877
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
878
+ # If `units` is negative, `nanos` must be negative or zero.
879
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
880
+ # Corresponds to the JSON property `nanos`
881
+ # @return [Fixnum]
882
+ attr_accessor :nanos
659
883
 
660
- # Quota Metrics that have exceeded quota limits.
661
- # For QuotaGroup-based quota, this is QuotaGroup.name
662
- # For QuotaLimit-based quota, this is QuotaLimit.name
663
- # See: google.api.Quota
664
- # Deprecated: Use quota_metrics to get per quota group limit exceeded status.
665
- # Corresponds to the JSON property `limitExceeded`
666
- # @return [Array<String>]
667
- attr_accessor :limit_exceeded
884
+ # The whole units of the amount.
885
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
886
+ # Corresponds to the JSON property `units`
887
+ # @return [Fixnum]
888
+ attr_accessor :units
668
889
 
669
890
  def initialize(**args)
670
891
  update!(**args)
@@ -672,41 +893,32 @@ module Google
672
893
 
673
894
  # Update properties of this object
674
895
  def update!(**args)
675
- @quota_consumed = args[:quota_consumed] if args.key?(:quota_consumed)
676
- @quota_metrics = args[:quota_metrics] if args.key?(:quota_metrics)
677
- @limit_exceeded = args[:limit_exceeded] if args.key?(:limit_exceeded)
896
+ @currency_code = args[:currency_code] if args.key?(:currency_code)
897
+ @nanos = args[:nanos] if args.key?(:nanos)
898
+ @units = args[:units] if args.key?(:units)
678
899
  end
679
900
  end
680
901
 
681
- # Request message for the Check method.
682
- class CheckRequest
902
+ # Describing buckets with arbitrary user-provided width.
903
+ class ExplicitBuckets
683
904
  include Google::Apis::Core::Hashable
684
905
 
685
- # Indicates if service activation check should be skipped for this request.
686
- # Default behavior is to perform the check and apply relevant quota.
687
- # Corresponds to the JSON property `skipActivationCheck`
688
- # @return [Boolean]
689
- attr_accessor :skip_activation_check
690
- alias_method :skip_activation_check?, :skip_activation_check
691
-
692
- # Represents information regarding an operation.
693
- # Corresponds to the JSON property `operation`
694
- # @return [Google::Apis::ServicecontrolV1::Operation]
695
- attr_accessor :operation
696
-
697
- # Requests the project settings to be returned as part of the check response.
698
- # Corresponds to the JSON property `requestProjectSettings`
699
- # @return [Boolean]
700
- attr_accessor :request_project_settings
701
- alias_method :request_project_settings?, :request_project_settings
702
-
703
- # Specifies which version of service configuration should be used to process
704
- # the request.
705
- # If unspecified or no matching version can be found, the
706
- # latest one will be used.
707
- # Corresponds to the JSON property `serviceConfigId`
708
- # @return [String]
709
- attr_accessor :service_config_id
906
+ # 'bound' is a list of strictly increasing boundaries between
907
+ # buckets. Note that a list of length N-1 defines N buckets because
908
+ # of fenceposting. See comments on `bucket_options` for details.
909
+ # The i'th finite bucket covers the interval
910
+ # [bound[i-1], bound[i])
911
+ # where i ranges from 1 to bound_size() - 1. Note that there are no
912
+ # finite buckets at all if 'bound' only contains a single element; in
913
+ # that special case the single bound defines the boundary between the
914
+ # underflow and overflow buckets.
915
+ # bucket number lower bound upper bound
916
+ # i == 0 (underflow) -inf bound[i]
917
+ # 0 < i < bound_size() bound[i-1] bound[i]
918
+ # i == bound_size() (overflow) bound[i-1] +inf
919
+ # Corresponds to the JSON property `bounds`
920
+ # @return [Array<Float>]
921
+ attr_accessor :bounds
710
922
 
711
923
  def initialize(**args)
712
924
  update!(**args)
@@ -714,70 +926,76 @@ module Google
714
926
 
715
927
  # Update properties of this object
716
928
  def update!(**args)
717
- @skip_activation_check = args[:skip_activation_check] if args.key?(:skip_activation_check)
718
- @operation = args[:operation] if args.key?(:operation)
719
- @request_project_settings = args[:request_project_settings] if args.key?(:request_project_settings)
720
- @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
929
+ @bounds = args[:bounds] if args.key?(:bounds)
721
930
  end
722
931
  end
723
932
 
724
- # Represents information regarding a quota operation.
725
- class QuotaOperation
933
+ # Distribution represents a frequency distribution of double-valued sample
934
+ # points. It contains the size of the population of sample points plus
935
+ # additional optional information:
936
+ # - the arithmetic mean of the samples
937
+ # - the minimum and maximum of the samples
938
+ # - the sum-squared-deviation of the samples, used to compute variance
939
+ # - a histogram of the values of the sample points
940
+ class Distribution
726
941
  include Google::Apis::Core::Hashable
727
942
 
728
- # Labels describing the operation.
729
- # Corresponds to the JSON property `labels`
730
- # @return [Hash<String,String>]
731
- attr_accessor :labels
943
+ # The total number of samples in the distribution. Must be >= 0.
944
+ # Corresponds to the JSON property `count`
945
+ # @return [Fixnum]
946
+ attr_accessor :count
732
947
 
733
- # Identity of the consumer for whom this quota operation is being performed.
734
- # This can be in one of the following formats:
735
- # project:<project_id>,
736
- # project_number:<project_number>,
737
- # api_key:<api_key>.
738
- # Corresponds to the JSON property `consumerId`
739
- # @return [String]
740
- attr_accessor :consumer_id
948
+ # The arithmetic mean of the samples in the distribution. If `count` is
949
+ # zero then this field must be zero.
950
+ # Corresponds to the JSON property `mean`
951
+ # @return [Float]
952
+ attr_accessor :mean
741
953
 
742
- # Identity of the operation. This must be unique within the scope of the
743
- # service that generated the operation. If the service calls AllocateQuota
744
- # and ReleaseQuota on the same operation, the two calls should carry the
745
- # same ID.
746
- # UUID version 4 is recommended, though not required. In scenarios where an
747
- # operation is computed from existing information and an idempotent id is
748
- # desirable for deduplication purpose, UUID version 5 is recommended. See
749
- # RFC 4122 for details.
750
- # Corresponds to the JSON property `operationId`
751
- # @return [String]
752
- attr_accessor :operation_id
954
+ # The number of samples in each histogram bucket. `bucket_counts` are
955
+ # optional. If present, they must sum to the `count` value.
956
+ # The buckets are defined below in `bucket_option`. There are N buckets.
957
+ # `bucket_counts[0]` is the number of samples in the underflow bucket.
958
+ # `bucket_counts[1]` to `bucket_counts[N-1]` are the numbers of samples
959
+ # in each of the finite buckets. And `bucket_counts[N] is the number
960
+ # of samples in the overflow bucket. See the comments of `bucket_option`
961
+ # below for more details.
962
+ # Any suffix of trailing zeros may be omitted.
963
+ # Corresponds to the JSON property `bucketCounts`
964
+ # @return [Array<Fixnum>]
965
+ attr_accessor :bucket_counts
753
966
 
754
- # Quota mode for this operation.
755
- # Corresponds to the JSON property `quotaMode`
756
- # @return [String]
757
- attr_accessor :quota_mode
967
+ # Describing buckets with arbitrary user-provided width.
968
+ # Corresponds to the JSON property `explicitBuckets`
969
+ # @return [Google::Apis::ServicecontrolV1::ExplicitBuckets]
970
+ attr_accessor :explicit_buckets
758
971
 
759
- # Fully qualified name of the API method for which this quota operation is
760
- # requested. This name is used for matching quota rules or metric rules and
761
- # billing status rules defined in service configuration. This field is not
762
- # required if the quota operation is performed on non-API resources.
763
- # Example of an RPC method name:
764
- # google.example.library.v1.LibraryService.CreateShelf
765
- # Corresponds to the JSON property `methodName`
766
- # @return [String]
767
- attr_accessor :method_name
972
+ # The maximum of the population of values. Ignored if `count` is zero.
973
+ # Corresponds to the JSON property `maximum`
974
+ # @return [Float]
975
+ attr_accessor :maximum
768
976
 
769
- # Represents information about this operation. Each MetricValueSet
770
- # corresponds to a metric defined in the service configuration.
771
- # The data type used in the MetricValueSet must agree with
772
- # the data type specified in the metric definition.
773
- # Within a single operation, it is not allowed to have more than one
774
- # MetricValue instances that have the same metric names and identical
775
- # label value combinations. If a request has such duplicated MetricValue
776
- # instances, the entire request is rejected with
777
- # an invalid argument error.
778
- # Corresponds to the JSON property `quotaMetrics`
779
- # @return [Array<Google::Apis::ServicecontrolV1::MetricValueSet>]
780
- attr_accessor :quota_metrics
977
+ # The sum of squared deviations from the mean:
978
+ # Sum[i=1..count]((x_i - mean)^2)
979
+ # where each x_i is a sample values. If `count` is zero then this field
980
+ # must be zero, otherwise validation of the request fails.
981
+ # Corresponds to the JSON property `sumOfSquaredDeviation`
982
+ # @return [Float]
983
+ attr_accessor :sum_of_squared_deviation
984
+
985
+ # Describing buckets with exponentially growing width.
986
+ # Corresponds to the JSON property `exponentialBuckets`
987
+ # @return [Google::Apis::ServicecontrolV1::ExponentialBuckets]
988
+ attr_accessor :exponential_buckets
989
+
990
+ # Describing buckets with constant width.
991
+ # Corresponds to the JSON property `linearBuckets`
992
+ # @return [Google::Apis::ServicecontrolV1::LinearBuckets]
993
+ attr_accessor :linear_buckets
994
+
995
+ # The minimum of the population of values. Ignored if `count` is zero.
996
+ # Corresponds to the JSON property `minimum`
997
+ # @return [Float]
998
+ attr_accessor :minimum
781
999
 
782
1000
  def initialize(**args)
783
1001
  update!(**args)
@@ -785,30 +1003,44 @@ module Google
785
1003
 
786
1004
  # Update properties of this object
787
1005
  def update!(**args)
788
- @labels = args[:labels] if args.key?(:labels)
789
- @consumer_id = args[:consumer_id] if args.key?(:consumer_id)
790
- @operation_id = args[:operation_id] if args.key?(:operation_id)
791
- @quota_mode = args[:quota_mode] if args.key?(:quota_mode)
792
- @method_name = args[:method_name] if args.key?(:method_name)
793
- @quota_metrics = args[:quota_metrics] if args.key?(:quota_metrics)
1006
+ @count = args[:count] if args.key?(:count)
1007
+ @mean = args[:mean] if args.key?(:mean)
1008
+ @bucket_counts = args[:bucket_counts] if args.key?(:bucket_counts)
1009
+ @explicit_buckets = args[:explicit_buckets] if args.key?(:explicit_buckets)
1010
+ @maximum = args[:maximum] if args.key?(:maximum)
1011
+ @sum_of_squared_deviation = args[:sum_of_squared_deviation] if args.key?(:sum_of_squared_deviation)
1012
+ @exponential_buckets = args[:exponential_buckets] if args.key?(:exponential_buckets)
1013
+ @linear_buckets = args[:linear_buckets] if args.key?(:linear_buckets)
1014
+ @minimum = args[:minimum] if args.key?(:minimum)
794
1015
  end
795
1016
  end
796
1017
 
797
- #
798
- class EndReconciliationRequest
1018
+ # Describing buckets with exponentially growing width.
1019
+ class ExponentialBuckets
799
1020
  include Google::Apis::Core::Hashable
800
1021
 
801
- # Represents information regarding a quota operation.
802
- # Corresponds to the JSON property `reconciliationOperation`
803
- # @return [Google::Apis::ServicecontrolV1::QuotaOperation]
804
- attr_accessor :reconciliation_operation
1022
+ # The i'th exponential bucket covers the interval
1023
+ # [scale * growth_factor^(i-1), scale * growth_factor^i)
1024
+ # where i ranges from 1 to num_finite_buckets inclusive.
1025
+ # Must be > 0.
1026
+ # Corresponds to the JSON property `scale`
1027
+ # @return [Float]
1028
+ attr_accessor :scale
805
1029
 
806
- # Specifies which version of service configuration should be used to process
807
- # the request. If unspecified or no matching version can be found, the latest
808
- # one will be used.
809
- # Corresponds to the JSON property `serviceConfigId`
810
- # @return [String]
811
- attr_accessor :service_config_id
1030
+ # The number of finite buckets. With the underflow and overflow buckets,
1031
+ # the total number of buckets is `num_finite_buckets` + 2.
1032
+ # See comments on `bucket_options` for details.
1033
+ # Corresponds to the JSON property `numFiniteBuckets`
1034
+ # @return [Fixnum]
1035
+ attr_accessor :num_finite_buckets
1036
+
1037
+ # The i'th exponential bucket covers the interval
1038
+ # [scale * growth_factor^(i-1), scale * growth_factor^i)
1039
+ # where i ranges from 1 to num_finite_buckets inclusive.
1040
+ # Must be larger than 1.0.
1041
+ # Corresponds to the JSON property `growthFactor`
1042
+ # @return [Float]
1043
+ attr_accessor :growth_factor
812
1044
 
813
1045
  def initialize(**args)
814
1046
  update!(**args)
@@ -816,24 +1048,33 @@ module Google
816
1048
 
817
1049
  # Update properties of this object
818
1050
  def update!(**args)
819
- @reconciliation_operation = args[:reconciliation_operation] if args.key?(:reconciliation_operation)
820
- @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
1051
+ @scale = args[:scale] if args.key?(:scale)
1052
+ @num_finite_buckets = args[:num_finite_buckets] if args.key?(:num_finite_buckets)
1053
+ @growth_factor = args[:growth_factor] if args.key?(:growth_factor)
821
1054
  end
822
1055
  end
823
1056
 
824
- #
825
- class ReportInfo
1057
+ # Authorization information for the operation.
1058
+ class AuthorizationInfo
826
1059
  include Google::Apis::Core::Hashable
827
1060
 
828
- # The Operation.operation_id value from the request.
829
- # Corresponds to the JSON property `operationId`
1061
+ # The resource being accessed, as a REST-style string. For example:
1062
+ # bigquery.googlapis.com/projects/PROJECTID/datasets/DATASETID
1063
+ # Corresponds to the JSON property `resource`
1064
+ # @return [String]
1065
+ attr_accessor :resource
1066
+
1067
+ # Whether or not authorization for `resource` and `permission`
1068
+ # was granted.
1069
+ # Corresponds to the JSON property `granted`
1070
+ # @return [Boolean]
1071
+ attr_accessor :granted
1072
+ alias_method :granted?, :granted
1073
+
1074
+ # The required IAM permission.
1075
+ # Corresponds to the JSON property `permission`
830
1076
  # @return [String]
831
- attr_accessor :operation_id
832
-
833
- # Contains the quota information for a quota check response.
834
- # Corresponds to the JSON property `quotaInfo`
835
- # @return [Google::Apis::ServicecontrolV1::QuotaInfo]
836
- attr_accessor :quota_info
1077
+ attr_accessor :permission
837
1078
 
838
1079
  def initialize(**args)
839
1080
  update!(**args)
@@ -841,116 +1082,80 @@ module Google
841
1082
 
842
1083
  # Update properties of this object
843
1084
  def update!(**args)
844
- @operation_id = args[:operation_id] if args.key?(:operation_id)
845
- @quota_info = args[:quota_info] if args.key?(:quota_info)
1085
+ @resource = args[:resource] if args.key?(:resource)
1086
+ @granted = args[:granted] if args.key?(:granted)
1087
+ @permission = args[:permission] if args.key?(:permission)
846
1088
  end
847
1089
  end
848
1090
 
849
- # Represents information regarding an operation.
850
- class Operation
1091
+ #
1092
+ class StartReconciliationResponse
851
1093
  include Google::Apis::Core::Hashable
852
1094
 
853
- # Represents the properties needed for quota operations.
854
- # Corresponds to the JSON property `quotaProperties`
855
- # @return [Google::Apis::ServicecontrolV1::QuotaProperties]
856
- attr_accessor :quota_properties
857
-
858
- # Identity of the consumer who is using the service.
859
- # This field should be filled in for the operations initiated by a
860
- # consumer, but not for service-initiated operations that are
861
- # not related to a specific consumer.
862
- # This can be in one of the following formats:
863
- # project:<project_id>,
864
- # project_number:<project_number>,
865
- # api_key:<api_key>.
866
- # Corresponds to the JSON property `consumerId`
867
- # @return [String]
868
- attr_accessor :consumer_id
869
-
870
- # Identity of the operation. This must be unique within the scope of the
871
- # service that generated the operation. If the service calls
872
- # Check() and Report() on the same operation, the two calls should carry
873
- # the same id.
874
- # UUID version 4 is recommended, though not required.
875
- # In scenarios where an operation is computed from existing information
876
- # and an idempotent id is desirable for deduplication purpose, UUID version 5
877
- # is recommended. See RFC 4122 for details.
1095
+ # The same operation_id value used in the StartReconciliationRequest. Used
1096
+ # for logging and diagnostics purposes.
878
1097
  # Corresponds to the JSON property `operationId`
879
1098
  # @return [String]
880
1099
  attr_accessor :operation_id
881
1100
 
882
- # End time of the operation.
883
- # Required when the operation is used in ServiceController.Report,
884
- # but optional when the operation is used in ServiceController.Check.
885
- # Corresponds to the JSON property `endTime`
886
- # @return [String]
887
- attr_accessor :end_time
1101
+ # Indicates the decision of the reconciliation start.
1102
+ # Corresponds to the JSON property `reconciliationErrors`
1103
+ # @return [Array<Google::Apis::ServicecontrolV1::QuotaError>]
1104
+ attr_accessor :reconciliation_errors
888
1105
 
889
- # Fully qualified name of the operation. Reserved for future use.
890
- # Corresponds to the JSON property `operationName`
1106
+ # ID of the actual config used to process the request.
1107
+ # Corresponds to the JSON property `serviceConfigId`
891
1108
  # @return [String]
892
- attr_accessor :operation_name
1109
+ attr_accessor :service_config_id
893
1110
 
894
- # Required. Start time of the operation.
895
- # Corresponds to the JSON property `startTime`
896
- # @return [String]
897
- attr_accessor :start_time
1111
+ # Metric values as tracked by One Platform before the start of
1112
+ # reconciliation. The following metrics will be included:
1113
+ # 1. Per quota metric total usage will be specified using the following gauge
1114
+ # metric:
1115
+ # "serviceruntime.googleapis.com/allocation/consumer/quota_used_count"
1116
+ # 2. Value for each quota limit associated with the metrics will be specified
1117
+ # using the following gauge metric:
1118
+ # "serviceruntime.googleapis.com/quota/limit"
1119
+ # Corresponds to the JSON property `quotaMetrics`
1120
+ # @return [Array<Google::Apis::ServicecontrolV1::MetricValueSet>]
1121
+ attr_accessor :quota_metrics
898
1122
 
899
- # DO NOT USE. This is an experimental field.
900
- # Corresponds to the JSON property `importance`
901
- # @return [String]
902
- attr_accessor :importance
1123
+ def initialize(**args)
1124
+ update!(**args)
1125
+ end
903
1126
 
904
- # The resource name of the parent of a resource in the resource hierarchy.
905
- # This can be in one of the following formats:
906
- # - “projects/<project-id or project-number>”
907
- # - “folders/<folder-id>”
908
- # - “organizations/<organization-id>”
909
- # Corresponds to the JSON property `resourceContainer`
910
- # @return [String]
911
- attr_accessor :resource_container
1127
+ # Update properties of this object
1128
+ def update!(**args)
1129
+ @operation_id = args[:operation_id] if args.key?(:operation_id)
1130
+ @reconciliation_errors = args[:reconciliation_errors] if args.key?(:reconciliation_errors)
1131
+ @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
1132
+ @quota_metrics = args[:quota_metrics] if args.key?(:quota_metrics)
1133
+ end
1134
+ end
912
1135
 
913
- # Labels describing the operation. Only the following labels are allowed:
914
- # - Labels describing monitored resources as defined in
915
- # the service configuration.
916
- # - Default labels of metric values. When specified, labels defined in the
917
- # metric value override these default.
918
- # - The following labels defined by Google Cloud Platform:
919
- # - `cloud.googleapis.com/location` describing the location where the
920
- # operation happened,
921
- # - `servicecontrol.googleapis.com/user_agent` describing the user agent
922
- # of the API request,
923
- # - `servicecontrol.googleapis.com/service_agent` describing the service
924
- # used to handle the API request (e.g. ESP),
925
- # - `servicecontrol.googleapis.com/platform` describing the platform
926
- # where the API is served (e.g. GAE, GCE, GKE).
927
- # Corresponds to the JSON property `labels`
928
- # @return [Hash<String,String>]
929
- attr_accessor :labels
1136
+ # Represents the properties needed for quota operations.
1137
+ class QuotaProperties
1138
+ include Google::Apis::Core::Hashable
930
1139
 
931
- # Represents information to be logged.
932
- # Corresponds to the JSON property `logEntries`
933
- # @return [Array<Google::Apis::ServicecontrolV1::LogEntry>]
934
- attr_accessor :log_entries
1140
+ # Quota mode for this operation.
1141
+ # Corresponds to the JSON property `quotaMode`
1142
+ # @return [String]
1143
+ attr_accessor :quota_mode
935
1144
 
936
- # User defined labels for the resource that this operation is associated
937
- # with.
938
- # Corresponds to the JSON property `userLabels`
1145
+ # LimitType IDs that should be used for checking quota. Key in this map
1146
+ # should be a valid LimitType string, and the value is the ID to be used. For
1147
+ # example, an entry <USER, 123> will cause all user quota limits to use 123
1148
+ # as the user ID. See google/api/quota.proto for the definition of LimitType.
1149
+ # CLIENT_PROJECT: Not supported.
1150
+ # USER: Value of this entry will be used for enforcing user-level quota
1151
+ # limits. If none specified, caller IP passed in the
1152
+ # servicecontrol.googleapis.com/caller_ip label will be used instead.
1153
+ # If the server cannot resolve a value for this LimitType, an error
1154
+ # will be thrown. No validation will be performed on this ID.
1155
+ # Deprecated: use servicecontrol.googleapis.com/user label to send user ID.
1156
+ # Corresponds to the JSON property `limitByIds`
939
1157
  # @return [Hash<String,String>]
940
- attr_accessor :user_labels
941
-
942
- # Represents information about this operation. Each MetricValueSet
943
- # corresponds to a metric defined in the service configuration.
944
- # The data type used in the MetricValueSet must agree with
945
- # the data type specified in the metric definition.
946
- # Within a single operation, it is not allowed to have more than one
947
- # MetricValue instances that have the same metric names and identical
948
- # label value combinations. If a request has such duplicated MetricValue
949
- # instances, the entire request is rejected with
950
- # an invalid argument error.
951
- # Corresponds to the JSON property `metricValueSets`
952
- # @return [Array<Google::Apis::ServicecontrolV1::MetricValueSet>]
953
- attr_accessor :metric_value_sets
1158
+ attr_accessor :limit_by_ids
954
1159
 
955
1160
  def initialize(**args)
956
1161
  update!(**args)
@@ -958,56 +1163,36 @@ module Google
958
1163
 
959
1164
  # Update properties of this object
960
1165
  def update!(**args)
961
- @quota_properties = args[:quota_properties] if args.key?(:quota_properties)
962
- @consumer_id = args[:consumer_id] if args.key?(:consumer_id)
963
- @operation_id = args[:operation_id] if args.key?(:operation_id)
964
- @end_time = args[:end_time] if args.key?(:end_time)
965
- @operation_name = args[:operation_name] if args.key?(:operation_name)
966
- @start_time = args[:start_time] if args.key?(:start_time)
967
- @importance = args[:importance] if args.key?(:importance)
968
- @resource_container = args[:resource_container] if args.key?(:resource_container)
969
- @labels = args[:labels] if args.key?(:labels)
970
- @log_entries = args[:log_entries] if args.key?(:log_entries)
971
- @user_labels = args[:user_labels] if args.key?(:user_labels)
972
- @metric_value_sets = args[:metric_value_sets] if args.key?(:metric_value_sets)
1166
+ @quota_mode = args[:quota_mode] if args.key?(:quota_mode)
1167
+ @limit_by_ids = args[:limit_by_ids] if args.key?(:limit_by_ids)
973
1168
  end
974
1169
  end
975
1170
 
976
- # Response message for the Report method.
977
- class ReportResponse
1171
+ # Describing buckets with constant width.
1172
+ class LinearBuckets
978
1173
  include Google::Apis::Core::Hashable
979
1174
 
980
- # Partial failures, one for each `Operation` in the request that failed
981
- # processing. There are three possible combinations of the RPC status:
982
- # 1. The combination of a successful RPC status and an empty `report_errors`
983
- # list indicates a complete success where all `Operations` in the
984
- # request are processed successfully.
985
- # 2. The combination of a successful RPC status and a non-empty
986
- # `report_errors` list indicates a partial success where some
987
- # `Operations` in the request succeeded. Each
988
- # `Operation` that failed processing has a corresponding item
989
- # in this list.
990
- # 3. A failed RPC status indicates a general non-deterministic failure.
991
- # When this happens, it's impossible to know which of the
992
- # 'Operations' in the request succeeded or failed.
993
- # Corresponds to the JSON property `reportErrors`
994
- # @return [Array<Google::Apis::ServicecontrolV1::ReportError>]
995
- attr_accessor :report_errors
1175
+ # The i'th linear bucket covers the interval
1176
+ # [offset + (i-1) * width, offset + i * width)
1177
+ # where i ranges from 1 to num_finite_buckets, inclusive.
1178
+ # Must be strictly positive.
1179
+ # Corresponds to the JSON property `width`
1180
+ # @return [Float]
1181
+ attr_accessor :width
996
1182
 
997
- # Quota usage for each quota release `Operation` request.
998
- # Fully or partially failed quota release request may or may not be present
999
- # in `report_quota_info`. For example, a failed quota release request will
1000
- # have the current quota usage info when precise quota library returns the
1001
- # info. A deadline exceeded quota request will not have quota usage info.
1002
- # If there is no quota release request, report_quota_info will be empty.
1003
- # Corresponds to the JSON property `reportInfos`
1004
- # @return [Array<Google::Apis::ServicecontrolV1::ReportInfo>]
1005
- attr_accessor :report_infos
1183
+ # The i'th linear bucket covers the interval
1184
+ # [offset + (i-1) * width, offset + i * width)
1185
+ # where i ranges from 1 to num_finite_buckets, inclusive.
1186
+ # Corresponds to the JSON property `offset`
1187
+ # @return [Float]
1188
+ attr_accessor :offset
1006
1189
 
1007
- # The actual config id used to process the request.
1008
- # Corresponds to the JSON property `serviceConfigId`
1009
- # @return [String]
1010
- attr_accessor :service_config_id
1190
+ # The number of finite buckets. With the underflow and overflow buckets,
1191
+ # the total number of buckets is `num_finite_buckets` + 2.
1192
+ # See comments on `bucket_options` for details.
1193
+ # Corresponds to the JSON property `numFiniteBuckets`
1194
+ # @return [Fixnum]
1195
+ attr_accessor :num_finite_buckets
1011
1196
 
1012
1197
  def initialize(**args)
1013
1198
  update!(**args)
@@ -1015,44 +1200,26 @@ module Google
1015
1200
 
1016
1201
  # Update properties of this object
1017
1202
  def update!(**args)
1018
- @report_errors = args[:report_errors] if args.key?(:report_errors)
1019
- @report_infos = args[:report_infos] if args.key?(:report_infos)
1020
- @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
1203
+ @width = args[:width] if args.key?(:width)
1204
+ @offset = args[:offset] if args.key?(:offset)
1205
+ @num_finite_buckets = args[:num_finite_buckets] if args.key?(:num_finite_buckets)
1021
1206
  end
1022
1207
  end
1023
1208
 
1024
- # Response message for the Check method.
1025
- class CheckResponse
1209
+ # Authentication information for the operation.
1210
+ class AuthenticationInfo
1026
1211
  include Google::Apis::Core::Hashable
1027
1212
 
1028
- # The same operation_id value used in the CheckRequest.
1029
- # Used for logging and diagnostics purposes.
1030
- # Corresponds to the JSON property `operationId`
1031
- # @return [String]
1032
- attr_accessor :operation_id
1033
-
1034
- # Indicate the decision of the check.
1035
- # If no check errors are present, the service should process the operation.
1036
- # Otherwise the service should use the list of errors to determine the
1037
- # appropriate action.
1038
- # Corresponds to the JSON property `checkErrors`
1039
- # @return [Array<Google::Apis::ServicecontrolV1::CheckError>]
1040
- attr_accessor :check_errors
1041
-
1042
- # Feedback data returned from the server during processing a Check request.
1043
- # Corresponds to the JSON property `checkInfo`
1044
- # @return [Google::Apis::ServicecontrolV1::CheckInfo]
1045
- attr_accessor :check_info
1046
-
1047
- # Contains the quota information for a quota check response.
1048
- # Corresponds to the JSON property `quotaInfo`
1049
- # @return [Google::Apis::ServicecontrolV1::QuotaInfo]
1050
- attr_accessor :quota_info
1213
+ # The authority selector specified by the requestor, if any.
1214
+ # It is not guaranteed that the principal was allowed to use this authority.
1215
+ # Corresponds to the JSON property `authoritySelector`
1216
+ # @return [String]
1217
+ attr_accessor :authority_selector
1051
1218
 
1052
- # The actual config id used to process the request.
1053
- # Corresponds to the JSON property `serviceConfigId`
1219
+ # The email address of the authenticated user making the request.
1220
+ # Corresponds to the JSON property `principalEmail`
1054
1221
  # @return [String]
1055
- attr_accessor :service_config_id
1222
+ attr_accessor :principal_email
1056
1223
 
1057
1224
  def initialize(**args)
1058
1225
  update!(**args)
@@ -1060,73 +1227,48 @@ module Google
1060
1227
 
1061
1228
  # Update properties of this object
1062
1229
  def update!(**args)
1063
- @operation_id = args[:operation_id] if args.key?(:operation_id)
1064
- @check_errors = args[:check_errors] if args.key?(:check_errors)
1065
- @check_info = args[:check_info] if args.key?(:check_info)
1066
- @quota_info = args[:quota_info] if args.key?(:quota_info)
1067
- @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
1230
+ @authority_selector = args[:authority_selector] if args.key?(:authority_selector)
1231
+ @principal_email = args[:principal_email] if args.key?(:principal_email)
1068
1232
  end
1069
1233
  end
1070
1234
 
1071
- # The `Status` type defines a logical error model that is suitable for different
1072
- # programming environments, including REST APIs and RPC APIs. It is used by
1073
- # [gRPC](https://github.com/grpc). The error model is designed to be:
1074
- # - Simple to use and understand for most users
1075
- # - Flexible enough to meet unexpected needs
1076
- # # Overview
1077
- # The `Status` message contains three pieces of data: error code, error message,
1078
- # and error details. The error code should be an enum value of
1079
- # google.rpc.Code, but it may accept additional error codes if needed. The
1080
- # error message should be a developer-facing English message that helps
1081
- # developers *understand* and *resolve* the error. If a localized user-facing
1082
- # error message is needed, put the localized message in the error details or
1083
- # localize it in the client. The optional error details may contain arbitrary
1084
- # information about the error. There is a predefined set of error detail types
1085
- # in the package `google.rpc` which can be used for common error conditions.
1086
- # # Language mapping
1087
- # The `Status` message is the logical representation of the error model, but it
1088
- # is not necessarily the actual wire format. When the `Status` message is
1089
- # exposed in different client libraries and different wire protocols, it can be
1090
- # mapped differently. For example, it will likely be mapped to some exceptions
1091
- # in Java, but more likely mapped to some error codes in C.
1092
- # # Other uses
1093
- # The error model and the `Status` message can be used in a variety of
1094
- # environments, either with or without APIs, to provide a
1095
- # consistent developer experience across different environments.
1096
- # Example uses of this error model include:
1097
- # - Partial errors. If a service needs to return partial errors to the client,
1098
- # it may embed the `Status` in the normal response to indicate the partial
1099
- # errors.
1100
- # - Workflow errors. A typical workflow has multiple steps. Each step may
1101
- # have a `Status` message for error reporting purpose.
1102
- # - Batch operations. If a client uses batch request and batch response, the
1103
- # `Status` message should be used directly inside batch response, one for
1104
- # each error sub-response.
1105
- # - Asynchronous operations. If an API call embeds asynchronous operation
1106
- # results in its response, the status of those operations should be
1107
- # represented directly using the `Status` message.
1108
- # - Logging. If some API errors are stored in logs, the message `Status` could
1109
- # be used directly after any stripping needed for security/privacy reasons.
1110
- class Status
1235
+ # Response message for the AllocateQuota method.
1236
+ class AllocateQuotaResponse
1111
1237
  include Google::Apis::Core::Hashable
1112
1238
 
1113
- # A list of messages that carry the error details. There will be a
1114
- # common set of message types for APIs to use.
1115
- # Corresponds to the JSON property `details`
1116
- # @return [Array<Hash<String,Object>>]
1117
- attr_accessor :details
1118
-
1119
- # The status code, which should be an enum value of google.rpc.Code.
1120
- # Corresponds to the JSON property `code`
1121
- # @return [Fixnum]
1122
- attr_accessor :code
1239
+ # The same operation_id value used in the AllocateQuotaRequest. Used for
1240
+ # logging and diagnostics purposes.
1241
+ # Corresponds to the JSON property `operationId`
1242
+ # @return [String]
1243
+ attr_accessor :operation_id
1123
1244
 
1124
- # A developer-facing error message, which should be in English. Any
1125
- # user-facing error message should be localized and sent in the
1126
- # google.rpc.Status.details field, or localized by the client.
1127
- # Corresponds to the JSON property `message`
1245
+ # ID of the actual config used to process the request.
1246
+ # Corresponds to the JSON property `serviceConfigId`
1128
1247
  # @return [String]
1129
- attr_accessor :message
1248
+ attr_accessor :service_config_id
1249
+
1250
+ # Indicates the decision of the allocate.
1251
+ # Corresponds to the JSON property `allocateErrors`
1252
+ # @return [Array<Google::Apis::ServicecontrolV1::QuotaError>]
1253
+ attr_accessor :allocate_errors
1254
+
1255
+ # Quota metrics to indicate the result of allocation. Depending on the
1256
+ # request, one or more of the following metrics will be included:
1257
+ # 1. For rate quota, per quota group or per quota metric incremental usage
1258
+ # will be specified using the following delta metric:
1259
+ # "serviceruntime.googleapis.com/api/consumer/quota_used_count"
1260
+ # 2. For allocation quota, per quota metric total usage will be specified
1261
+ # using the following gauge metric:
1262
+ # "serviceruntime.googleapis.com/allocation/consumer/quota_used_count"
1263
+ # 3. For both rate quota and allocation quota, the quota limit reached
1264
+ # condition will be specified using the following boolean metric:
1265
+ # "serviceruntime.googleapis.com/quota/exceeded"
1266
+ # 4. For allocation quota, value for each quota limit associated with
1267
+ # the metrics will be specified using the following gauge metric:
1268
+ # "serviceruntime.googleapis.com/quota/limit"
1269
+ # Corresponds to the JSON property `quotaMetrics`
1270
+ # @return [Array<Google::Apis::ServicecontrolV1::MetricValueSet>]
1271
+ attr_accessor :quota_metrics
1130
1272
 
1131
1273
  def initialize(**args)
1132
1274
  update!(**args)
@@ -1134,166 +1276,62 @@ module Google
1134
1276
 
1135
1277
  # Update properties of this object
1136
1278
  def update!(**args)
1137
- @details = args[:details] if args.key?(:details)
1138
- @code = args[:code] if args.key?(:code)
1139
- @message = args[:message] if args.key?(:message)
1279
+ @operation_id = args[:operation_id] if args.key?(:operation_id)
1280
+ @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
1281
+ @allocate_errors = args[:allocate_errors] if args.key?(:allocate_errors)
1282
+ @quota_metrics = args[:quota_metrics] if args.key?(:quota_metrics)
1140
1283
  end
1141
1284
  end
1142
1285
 
1143
- # Request message for the Report method.
1144
- class ReportRequest
1286
+ # Request message for the ReleaseQuota method.
1287
+ class ReleaseQuotaRequest
1145
1288
  include Google::Apis::Core::Hashable
1146
1289
 
1147
- # Operations to be reported.
1148
- # Typically the service should report one operation per request.
1149
- # Putting multiple operations into a single request is allowed, but should
1150
- # be used only when multiple operations are natually available at the time
1151
- # of the report.
1152
- # If multiple operations are in a single request, the total request size
1153
- # should be no larger than 1MB. See ReportResponse.report_errors for
1154
- # partial failure behavior.
1155
- # Corresponds to the JSON property `operations`
1156
- # @return [Array<Google::Apis::ServicecontrolV1::Operation>]
1157
- attr_accessor :operations
1158
-
1159
- # Specifies which version of service config should be used to process the
1160
- # request.
1161
- # If unspecified or no matching version can be found, the
1162
- # latest one will be used.
1290
+ # Specifies which version of service configuration should be used to process
1291
+ # the request. If unspecified or no matching version can be found, the latest
1292
+ # one will be used.
1163
1293
  # Corresponds to the JSON property `serviceConfigId`
1164
1294
  # @return [String]
1165
1295
  attr_accessor :service_config_id
1166
1296
 
1297
+ # Represents information regarding a quota operation.
1298
+ # Corresponds to the JSON property `releaseOperation`
1299
+ # @return [Google::Apis::ServicecontrolV1::QuotaOperation]
1300
+ attr_accessor :release_operation
1301
+
1167
1302
  def initialize(**args)
1168
1303
  update!(**args)
1169
1304
  end
1170
1305
 
1171
1306
  # Update properties of this object
1172
1307
  def update!(**args)
1173
- @operations = args[:operations] if args.key?(:operations)
1174
1308
  @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
1309
+ @release_operation = args[:release_operation] if args.key?(:release_operation)
1175
1310
  end
1176
1311
  end
1177
1312
 
1178
- # Common audit log format for Google Cloud Platform API operations.
1179
- class AuditLog
1313
+ # Metadata about the request.
1314
+ class RequestMetadata
1180
1315
  include Google::Apis::Core::Hashable
1181
1316
 
1182
- # The number of items returned from a List or Query API method,
1183
- # if applicable.
1184
- # Corresponds to the JSON property `numResponseItems`
1185
- # @return [Fixnum]
1186
- attr_accessor :num_response_items
1187
-
1188
- # Authentication information for the operation.
1189
- # Corresponds to the JSON property `authenticationInfo`
1190
- # @return [Google::Apis::ServicecontrolV1::AuthenticationInfo]
1191
- attr_accessor :authentication_info
1192
-
1193
- # The `Status` type defines a logical error model that is suitable for different
1194
- # programming environments, including REST APIs and RPC APIs. It is used by
1195
- # [gRPC](https://github.com/grpc). The error model is designed to be:
1196
- # - Simple to use and understand for most users
1197
- # - Flexible enough to meet unexpected needs
1198
- # # Overview
1199
- # The `Status` message contains three pieces of data: error code, error message,
1200
- # and error details. The error code should be an enum value of
1201
- # google.rpc.Code, but it may accept additional error codes if needed. The
1202
- # error message should be a developer-facing English message that helps
1203
- # developers *understand* and *resolve* the error. If a localized user-facing
1204
- # error message is needed, put the localized message in the error details or
1205
- # localize it in the client. The optional error details may contain arbitrary
1206
- # information about the error. There is a predefined set of error detail types
1207
- # in the package `google.rpc` which can be used for common error conditions.
1208
- # # Language mapping
1209
- # The `Status` message is the logical representation of the error model, but it
1210
- # is not necessarily the actual wire format. When the `Status` message is
1211
- # exposed in different client libraries and different wire protocols, it can be
1212
- # mapped differently. For example, it will likely be mapped to some exceptions
1213
- # in Java, but more likely mapped to some error codes in C.
1214
- # # Other uses
1215
- # The error model and the `Status` message can be used in a variety of
1216
- # environments, either with or without APIs, to provide a
1217
- # consistent developer experience across different environments.
1218
- # Example uses of this error model include:
1219
- # - Partial errors. If a service needs to return partial errors to the client,
1220
- # it may embed the `Status` in the normal response to indicate the partial
1221
- # errors.
1222
- # - Workflow errors. A typical workflow has multiple steps. Each step may
1223
- # have a `Status` message for error reporting purpose.
1224
- # - Batch operations. If a client uses batch request and batch response, the
1225
- # `Status` message should be used directly inside batch response, one for
1226
- # each error sub-response.
1227
- # - Asynchronous operations. If an API call embeds asynchronous operation
1228
- # results in its response, the status of those operations should be
1229
- # represented directly using the `Status` message.
1230
- # - Logging. If some API errors are stored in logs, the message `Status` could
1231
- # be used directly after any stripping needed for security/privacy reasons.
1232
- # Corresponds to the JSON property `status`
1233
- # @return [Google::Apis::ServicecontrolV1::Status]
1234
- attr_accessor :status
1235
-
1236
- # The name of the API service performing the operation. For example,
1237
- # `"datastore.googleapis.com"`.
1238
- # Corresponds to the JSON property `serviceName`
1239
- # @return [String]
1240
- attr_accessor :service_name
1241
-
1242
- # The operation response. This may not include all response elements,
1243
- # such as those that are too large, privacy-sensitive, or duplicated
1244
- # elsewhere in the log record.
1245
- # It should never include user-generated data, such as file contents.
1246
- # When the JSON object represented here has a proto equivalent, the proto
1247
- # name will be indicated in the `@type` property.
1248
- # Corresponds to the JSON property `response`
1249
- # @return [Hash<String,Object>]
1250
- attr_accessor :response
1251
-
1252
- # The name of the service method or operation.
1253
- # For API calls, this should be the name of the API method.
1254
- # For example,
1255
- # "google.datastore.v1.Datastore.RunQuery"
1256
- # "google.logging.v1.LoggingService.DeleteLog"
1257
- # Corresponds to the JSON property `methodName`
1258
- # @return [String]
1259
- attr_accessor :method_name
1260
-
1261
- # The resource or collection that is the target of the operation.
1262
- # The name is a scheme-less URI, not including the API service name.
1263
- # For example:
1264
- # "shelves/SHELF_ID/books"
1265
- # "shelves/SHELF_ID/books/BOOK_ID"
1266
- # Corresponds to the JSON property `resourceName`
1267
- # @return [String]
1268
- attr_accessor :resource_name
1269
-
1270
- # Authorization information. If there are multiple
1271
- # resources or permissions involved, then there is
1272
- # one AuthorizationInfo element for each `resource, permission` tuple.
1273
- # Corresponds to the JSON property `authorizationInfo`
1274
- # @return [Array<Google::Apis::ServicecontrolV1::AuthorizationInfo>]
1275
- attr_accessor :authorization_info
1276
-
1277
- # The operation request. This may not include all request parameters,
1278
- # such as those that are too large, privacy-sensitive, or duplicated
1279
- # elsewhere in the log record.
1280
- # It should never include user-generated data, such as file contents.
1281
- # When the JSON object represented here has a proto equivalent, the proto
1282
- # name will be indicated in the `@type` property.
1283
- # Corresponds to the JSON property `request`
1284
- # @return [Hash<String,Object>]
1285
- attr_accessor :request
1286
-
1287
- # Other service-specific data about the request, response, and other
1288
- # activities.
1289
- # Corresponds to the JSON property `serviceData`
1290
- # @return [Hash<String,Object>]
1291
- attr_accessor :service_data
1317
+ # The user agent of the caller.
1318
+ # This information is not authenticated and should be treated accordingly.
1319
+ # For example:
1320
+ # + `google-api-python-client/1.4.0`:
1321
+ # The request was made by the Google API client for Python.
1322
+ # + `Cloud SDK Command Line Tool apitools-client/1.0 gcloud/0.9.62`:
1323
+ # The request was made by the Google Cloud SDK CLI (gcloud).
1324
+ # + `AppEngine-Google; (+http://code.google.com/appengine; appid: s~my-project`
1325
+ # :
1326
+ # The request was made from the `my-project` App Engine app.
1327
+ # Corresponds to the JSON property `callerSuppliedUserAgent`
1328
+ # @return [String]
1329
+ attr_accessor :caller_supplied_user_agent
1292
1330
 
1293
- # Metadata about the request.
1294
- # Corresponds to the JSON property `requestMetadata`
1295
- # @return [Google::Apis::ServicecontrolV1::RequestMetadata]
1296
- attr_accessor :request_metadata
1331
+ # The IP address of the caller.
1332
+ # Corresponds to the JSON property `callerIp`
1333
+ # @return [String]
1334
+ attr_accessor :caller_ip
1297
1335
 
1298
1336
  def initialize(**args)
1299
1337
  update!(**args)
@@ -1301,71 +1339,54 @@ module Google
1301
1339
 
1302
1340
  # Update properties of this object
1303
1341
  def update!(**args)
1304
- @num_response_items = args[:num_response_items] if args.key?(:num_response_items)
1305
- @authentication_info = args[:authentication_info] if args.key?(:authentication_info)
1306
- @status = args[:status] if args.key?(:status)
1307
- @service_name = args[:service_name] if args.key?(:service_name)
1308
- @response = args[:response] if args.key?(:response)
1309
- @method_name = args[:method_name] if args.key?(:method_name)
1310
- @resource_name = args[:resource_name] if args.key?(:resource_name)
1311
- @authorization_info = args[:authorization_info] if args.key?(:authorization_info)
1312
- @request = args[:request] if args.key?(:request)
1313
- @service_data = args[:service_data] if args.key?(:service_data)
1314
- @request_metadata = args[:request_metadata] if args.key?(:request_metadata)
1342
+ @caller_supplied_user_agent = args[:caller_supplied_user_agent] if args.key?(:caller_supplied_user_agent)
1343
+ @caller_ip = args[:caller_ip] if args.key?(:caller_ip)
1315
1344
  end
1316
1345
  end
1317
1346
 
1318
- # An individual log entry.
1319
- class LogEntry
1347
+ #
1348
+ class QuotaError
1320
1349
  include Google::Apis::Core::Hashable
1321
1350
 
1322
- # The severity of the log entry. The default value is
1323
- # `LogSeverity.DEFAULT`.
1324
- # Corresponds to the JSON property `severity`
1351
+ # Subject to whom this error applies. See the specific enum for more details
1352
+ # on this field. For example, "clientip:<ip address of client>" or
1353
+ # "project:<Google developer project id>".
1354
+ # Corresponds to the JSON property `subject`
1325
1355
  # @return [String]
1326
- attr_accessor :severity
1356
+ attr_accessor :subject
1327
1357
 
1328
- # Required. The log to which this log entry belongs. Examples: `"syslog"`,
1329
- # `"book_log"`.
1330
- # Corresponds to the JSON property `name`
1358
+ # Free-form text that provides details on the cause of the error.
1359
+ # Corresponds to the JSON property `description`
1331
1360
  # @return [String]
1332
- attr_accessor :name
1361
+ attr_accessor :description
1333
1362
 
1334
- # A unique ID for the log entry used for deduplication. If omitted,
1335
- # the implementation will generate one based on operation_id.
1336
- # Corresponds to the JSON property `insertId`
1363
+ # Error code.
1364
+ # Corresponds to the JSON property `code`
1337
1365
  # @return [String]
1338
- attr_accessor :insert_id
1339
-
1340
- # The log entry payload, represented as a structure that
1341
- # is expressed as a JSON object.
1342
- # Corresponds to the JSON property `structPayload`
1343
- # @return [Hash<String,Object>]
1344
- attr_accessor :struct_payload
1366
+ attr_accessor :code
1345
1367
 
1346
- # The log entry payload, represented as a Unicode string (UTF-8).
1347
- # Corresponds to the JSON property `textPayload`
1348
- # @return [String]
1349
- attr_accessor :text_payload
1368
+ def initialize(**args)
1369
+ update!(**args)
1370
+ end
1350
1371
 
1351
- # The log entry payload, represented as a protocol buffer that is
1352
- # expressed as a JSON object. You can only pass `protoPayload`
1353
- # values that belong to a set of approved types.
1354
- # Corresponds to the JSON property `protoPayload`
1355
- # @return [Hash<String,Object>]
1356
- attr_accessor :proto_payload
1372
+ # Update properties of this object
1373
+ def update!(**args)
1374
+ @subject = args[:subject] if args.key?(:subject)
1375
+ @description = args[:description] if args.key?(:description)
1376
+ @code = args[:code] if args.key?(:code)
1377
+ end
1378
+ end
1357
1379
 
1358
- # The time the event described by the log entry occurred. If
1359
- # omitted, defaults to operation start time.
1360
- # Corresponds to the JSON property `timestamp`
1361
- # @return [String]
1362
- attr_accessor :timestamp
1380
+ #
1381
+ class CheckInfo
1382
+ include Google::Apis::Core::Hashable
1363
1383
 
1364
- # A set of user-defined (key, value) data that provides additional
1365
- # information about the log entry.
1366
- # Corresponds to the JSON property `labels`
1367
- # @return [Hash<String,String>]
1368
- attr_accessor :labels
1384
+ # A list of fields and label keys that are ignored by the server.
1385
+ # The client doesn't need to send them for following requests to improve
1386
+ # performance and allow better aggregation.
1387
+ # Corresponds to the JSON property `unusedArguments`
1388
+ # @return [Array<String>]
1389
+ attr_accessor :unused_arguments
1369
1390
 
1370
1391
  def initialize(**args)
1371
1392
  update!(**args)
@@ -1373,78 +1394,79 @@ module Google
1373
1394
 
1374
1395
  # Update properties of this object
1375
1396
  def update!(**args)
1376
- @severity = args[:severity] if args.key?(:severity)
1377
- @name = args[:name] if args.key?(:name)
1378
- @insert_id = args[:insert_id] if args.key?(:insert_id)
1379
- @struct_payload = args[:struct_payload] if args.key?(:struct_payload)
1380
- @text_payload = args[:text_payload] if args.key?(:text_payload)
1381
- @proto_payload = args[:proto_payload] if args.key?(:proto_payload)
1382
- @timestamp = args[:timestamp] if args.key?(:timestamp)
1383
- @labels = args[:labels] if args.key?(:labels)
1397
+ @unused_arguments = args[:unused_arguments] if args.key?(:unused_arguments)
1384
1398
  end
1385
1399
  end
1386
1400
 
1387
- # Represents a single metric value.
1388
- class MetricValue
1401
+ # Response message for the ReleaseQuota method.
1402
+ class ReleaseQuotaResponse
1389
1403
  include Google::Apis::Core::Hashable
1390
1404
 
1391
- # The end of the time period over which this metric value's measurement
1392
- # applies.
1393
- # Corresponds to the JSON property `endTime`
1394
- # @return [String]
1395
- attr_accessor :end_time
1405
+ # Indicates the decision of the release.
1406
+ # Corresponds to the JSON property `releaseErrors`
1407
+ # @return [Array<Google::Apis::ServicecontrolV1::QuotaError>]
1408
+ attr_accessor :release_errors
1396
1409
 
1397
- # The start of the time period over which this metric value's measurement
1398
- # applies. The time period has different semantics for different metric
1399
- # types (cumulative, delta, and gauge). See the metric definition
1400
- # documentation in the service configuration for details.
1401
- # Corresponds to the JSON property `startTime`
1402
- # @return [String]
1403
- attr_accessor :start_time
1410
+ # Quota metrics to indicate the result of release. Depending on the
1411
+ # request, one or more of the following metrics will be included:
1412
+ # 1. For rate quota, per quota group or per quota metric released amount
1413
+ # will be specified using the following delta metric:
1414
+ # "serviceruntime.googleapis.com/api/consumer/quota_refund_count"
1415
+ # 2. For allocation quota, per quota metric total usage will be specified
1416
+ # using the following gauge metric:
1417
+ # "serviceruntime.googleapis.com/allocation/consumer/quota_used_count"
1418
+ # 3. For allocation quota, value for each quota limit associated with
1419
+ # the metrics will be specified using the following gauge metric:
1420
+ # "serviceruntime.googleapis.com/quota/limit"
1421
+ # Corresponds to the JSON property `quotaMetrics`
1422
+ # @return [Array<Google::Apis::ServicecontrolV1::MetricValueSet>]
1423
+ attr_accessor :quota_metrics
1404
1424
 
1405
- # Represents an amount of money with its currency type.
1406
- # Corresponds to the JSON property `moneyValue`
1407
- # @return [Google::Apis::ServicecontrolV1::Money]
1408
- attr_accessor :money_value
1425
+ # The same operation_id value used in the ReleaseQuotaRequest. Used for
1426
+ # logging and diagnostics purposes.
1427
+ # Corresponds to the JSON property `operationId`
1428
+ # @return [String]
1429
+ attr_accessor :operation_id
1409
1430
 
1410
- # A text string value.
1411
- # Corresponds to the JSON property `stringValue`
1431
+ # ID of the actual config used to process the request.
1432
+ # Corresponds to the JSON property `serviceConfigId`
1412
1433
  # @return [String]
1413
- attr_accessor :string_value
1434
+ attr_accessor :service_config_id
1414
1435
 
1415
- # The labels describing the metric value.
1416
- # See comments on google.api.servicecontrol.v1.Operation.labels for
1417
- # the overriding relationship.
1418
- # Corresponds to the JSON property `labels`
1419
- # @return [Hash<String,String>]
1420
- attr_accessor :labels
1436
+ def initialize(**args)
1437
+ update!(**args)
1438
+ end
1421
1439
 
1422
- # A double precision floating point value.
1423
- # Corresponds to the JSON property `doubleValue`
1424
- # @return [Float]
1425
- attr_accessor :double_value
1440
+ # Update properties of this object
1441
+ def update!(**args)
1442
+ @release_errors = args[:release_errors] if args.key?(:release_errors)
1443
+ @quota_metrics = args[:quota_metrics] if args.key?(:quota_metrics)
1444
+ @operation_id = args[:operation_id] if args.key?(:operation_id)
1445
+ @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
1446
+ end
1447
+ end
1426
1448
 
1427
- # A signed 64-bit integer value.
1428
- # Corresponds to the JSON property `int64Value`
1429
- # @return [Fixnum]
1430
- attr_accessor :int64_value
1449
+ # Request message for the AllocateQuota method.
1450
+ class AllocateQuotaRequest
1451
+ include Google::Apis::Core::Hashable
1431
1452
 
1432
- # Distribution represents a frequency distribution of double-valued sample
1433
- # points. It contains the size of the population of sample points plus
1434
- # additional optional information:
1435
- # - the arithmetic mean of the samples
1436
- # - the minimum and maximum of the samples
1437
- # - the sum-squared-deviation of the samples, used to compute variance
1438
- # - a histogram of the values of the sample points
1439
- # Corresponds to the JSON property `distributionValue`
1440
- # @return [Google::Apis::ServicecontrolV1::Distribution]
1441
- attr_accessor :distribution_value
1453
+ # Represents information regarding a quota operation.
1454
+ # Corresponds to the JSON property `allocateOperation`
1455
+ # @return [Google::Apis::ServicecontrolV1::QuotaOperation]
1456
+ attr_accessor :allocate_operation
1442
1457
 
1443
- # A boolean value.
1444
- # Corresponds to the JSON property `boolValue`
1445
- # @return [Boolean]
1446
- attr_accessor :bool_value
1447
- alias_method :bool_value?, :bool_value
1458
+ # Allocation mode for this operation.
1459
+ # Deprecated: use QuotaMode inside the QuotaOperation.
1460
+ # Corresponds to the JSON property `allocationMode`
1461
+ # @return [String]
1462
+ attr_accessor :allocation_mode
1463
+
1464
+ # Specifies which version of service configuration should be used to process
1465
+ # the request. If unspecified or no matching version can be found, the latest
1466
+ # one will be used.
1467
+ # Corresponds to the JSON property `serviceConfigId`
1468
+ # @return [String]
1469
+ attr_accessor :service_config_id
1448
1470
 
1449
1471
  def initialize(**args)
1450
1472
  update!(**args)
@@ -1452,42 +1474,27 @@ module Google
1452
1474
 
1453
1475
  # Update properties of this object
1454
1476
  def update!(**args)
1455
- @end_time = args[:end_time] if args.key?(:end_time)
1456
- @start_time = args[:start_time] if args.key?(:start_time)
1457
- @money_value = args[:money_value] if args.key?(:money_value)
1458
- @string_value = args[:string_value] if args.key?(:string_value)
1459
- @labels = args[:labels] if args.key?(:labels)
1460
- @double_value = args[:double_value] if args.key?(:double_value)
1461
- @int64_value = args[:int64_value] if args.key?(:int64_value)
1462
- @distribution_value = args[:distribution_value] if args.key?(:distribution_value)
1463
- @bool_value = args[:bool_value] if args.key?(:bool_value)
1477
+ @allocate_operation = args[:allocate_operation] if args.key?(:allocate_operation)
1478
+ @allocation_mode = args[:allocation_mode] if args.key?(:allocation_mode)
1479
+ @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
1464
1480
  end
1465
1481
  end
1466
1482
 
1467
- # Represents an amount of money with its currency type.
1468
- class Money
1483
+ # Represents a set of metric values in the same metric.
1484
+ # Each metric value in the set should have a unique combination of start time,
1485
+ # end time, and label values.
1486
+ class MetricValueSet
1469
1487
  include Google::Apis::Core::Hashable
1470
1488
 
1471
- # Number of nano (10^-9) units of the amount.
1472
- # The value must be between -999,999,999 and +999,999,999 inclusive.
1473
- # If `units` is positive, `nanos` must be positive or zero.
1474
- # If `units` is zero, `nanos` can be positive, zero, or negative.
1475
- # If `units` is negative, `nanos` must be negative or zero.
1476
- # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
1477
- # Corresponds to the JSON property `nanos`
1478
- # @return [Fixnum]
1479
- attr_accessor :nanos
1480
-
1481
- # The whole units of the amount.
1482
- # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
1483
- # Corresponds to the JSON property `units`
1484
- # @return [Fixnum]
1485
- attr_accessor :units
1486
-
1487
- # The 3-letter currency code defined in ISO 4217.
1488
- # Corresponds to the JSON property `currencyCode`
1489
+ # The metric name defined in the service configuration.
1490
+ # Corresponds to the JSON property `metricName`
1489
1491
  # @return [String]
1490
- attr_accessor :currency_code
1492
+ attr_accessor :metric_name
1493
+
1494
+ # The values in this metric.
1495
+ # Corresponds to the JSON property `metricValues`
1496
+ # @return [Array<Google::Apis::ServicecontrolV1::MetricValue>]
1497
+ attr_accessor :metric_values
1491
1498
 
1492
1499
  def initialize(**args)
1493
1500
  update!(**args)
@@ -1495,52 +1502,62 @@ module Google
1495
1502
 
1496
1503
  # Update properties of this object
1497
1504
  def update!(**args)
1498
- @nanos = args[:nanos] if args.key?(:nanos)
1499
- @units = args[:units] if args.key?(:units)
1500
- @currency_code = args[:currency_code] if args.key?(:currency_code)
1505
+ @metric_name = args[:metric_name] if args.key?(:metric_name)
1506
+ @metric_values = args[:metric_values] if args.key?(:metric_values)
1501
1507
  end
1502
1508
  end
1503
1509
 
1504
- #
1505
- class EndReconciliationResponse
1510
+ # Represents the processing error of one `Operation` in the request.
1511
+ class ReportError
1506
1512
  include Google::Apis::Core::Hashable
1507
1513
 
1508
- # The same operation_id value used in the EndReconciliationRequest. Used for
1509
- # logging and diagnostics purposes.
1514
+ # The Operation.operation_id value from the request.
1510
1515
  # Corresponds to the JSON property `operationId`
1511
1516
  # @return [String]
1512
1517
  attr_accessor :operation_id
1513
1518
 
1514
- # Indicates the decision of the reconciliation end.
1515
- # Corresponds to the JSON property `reconciliationErrors`
1516
- # @return [Array<Google::Apis::ServicecontrolV1::QuotaError>]
1517
- attr_accessor :reconciliation_errors
1518
-
1519
- # ID of the actual config used to process the request.
1520
- # Corresponds to the JSON property `serviceConfigId`
1521
- # @return [String]
1522
- attr_accessor :service_config_id
1523
-
1524
- # Metric values as tracked by One Platform before the adjustment was made.
1525
- # The following metrics will be included:
1526
- # 1. Per quota metric total usage will be specified using the following gauge
1527
- # metric:
1528
- # "serviceruntime.googleapis.com/allocation/consumer/quota_used_count"
1529
- # 2. Value for each quota limit associated with the metrics will be specified
1530
- # using the following gauge metric:
1531
- # "serviceruntime.googleapis.com/quota/limit"
1532
- # 3. Delta value of the usage after the reconciliation for limits associated
1533
- # with the metrics will be specified using the following metric:
1534
- # "serviceruntime.googleapis.com/allocation/reconciliation_delta"
1535
- # The delta value is defined as:
1536
- # new_usage_from_client - existing_value_in_spanner.
1537
- # This metric is not defined in serviceruntime.yaml or in Cloud Monarch.
1538
- # This metric is meant for callers' use only. Since this metric is not
1539
- # defined in the monitoring backend, reporting on this metric will result in
1540
- # an error.
1541
- # Corresponds to the JSON property `quotaMetrics`
1542
- # @return [Array<Google::Apis::ServicecontrolV1::MetricValueSet>]
1543
- attr_accessor :quota_metrics
1519
+ # The `Status` type defines a logical error model that is suitable for different
1520
+ # programming environments, including REST APIs and RPC APIs. It is used by
1521
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
1522
+ # - Simple to use and understand for most users
1523
+ # - Flexible enough to meet unexpected needs
1524
+ # # Overview
1525
+ # The `Status` message contains three pieces of data: error code, error message,
1526
+ # and error details. The error code should be an enum value of
1527
+ # google.rpc.Code, but it may accept additional error codes if needed. The
1528
+ # error message should be a developer-facing English message that helps
1529
+ # developers *understand* and *resolve* the error. If a localized user-facing
1530
+ # error message is needed, put the localized message in the error details or
1531
+ # localize it in the client. The optional error details may contain arbitrary
1532
+ # information about the error. There is a predefined set of error detail types
1533
+ # in the package `google.rpc` which can be used for common error conditions.
1534
+ # # Language mapping
1535
+ # The `Status` message is the logical representation of the error model, but it
1536
+ # is not necessarily the actual wire format. When the `Status` message is
1537
+ # exposed in different client libraries and different wire protocols, it can be
1538
+ # mapped differently. For example, it will likely be mapped to some exceptions
1539
+ # in Java, but more likely mapped to some error codes in C.
1540
+ # # Other uses
1541
+ # The error model and the `Status` message can be used in a variety of
1542
+ # environments, either with or without APIs, to provide a
1543
+ # consistent developer experience across different environments.
1544
+ # Example uses of this error model include:
1545
+ # - Partial errors. If a service needs to return partial errors to the client,
1546
+ # it may embed the `Status` in the normal response to indicate the partial
1547
+ # errors.
1548
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
1549
+ # have a `Status` message for error reporting purpose.
1550
+ # - Batch operations. If a client uses batch request and batch response, the
1551
+ # `Status` message should be used directly inside batch response, one for
1552
+ # each error sub-response.
1553
+ # - Asynchronous operations. If an API call embeds asynchronous operation
1554
+ # results in its response, the status of those operations should be
1555
+ # represented directly using the `Status` message.
1556
+ # - Logging. If some API errors are stored in logs, the message `Status` could
1557
+ # be used directly after any stripping needed for security/privacy reasons.
1558
+ # Corresponds to the JSON property `status`
1559
+ # @return [Google::Apis::ServicecontrolV1::Status]
1560
+ attr_accessor :status
1544
1561
 
1545
1562
  def initialize(**args)
1546
1563
  update!(**args)
@@ -1549,78 +1566,51 @@ module Google
1549
1566
  # Update properties of this object
1550
1567
  def update!(**args)
1551
1568
  @operation_id = args[:operation_id] if args.key?(:operation_id)
1552
- @reconciliation_errors = args[:reconciliation_errors] if args.key?(:reconciliation_errors)
1553
- @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
1554
- @quota_metrics = args[:quota_metrics] if args.key?(:quota_metrics)
1569
+ @status = args[:status] if args.key?(:status)
1555
1570
  end
1556
1571
  end
1557
1572
 
1558
- # Distribution represents a frequency distribution of double-valued sample
1559
- # points. It contains the size of the population of sample points plus
1560
- # additional optional information:
1561
- # - the arithmetic mean of the samples
1562
- # - the minimum and maximum of the samples
1563
- # - the sum-squared-deviation of the samples, used to compute variance
1564
- # - a histogram of the values of the sample points
1565
- class Distribution
1573
+ # Defines the errors to be returned in
1574
+ # google.api.servicecontrol.v1.CheckResponse.check_errors.
1575
+ class CheckError
1566
1576
  include Google::Apis::Core::Hashable
1567
1577
 
1568
- # The maximum of the population of values. Ignored if `count` is zero.
1569
- # Corresponds to the JSON property `maximum`
1570
- # @return [Float]
1571
- attr_accessor :maximum
1572
-
1573
- # The sum of squared deviations from the mean:
1574
- # Sum[i=1..count]((x_i - mean)^2)
1575
- # where each x_i is a sample values. If `count` is zero then this field
1576
- # must be zero, otherwise validation of the request fails.
1577
- # Corresponds to the JSON property `sumOfSquaredDeviation`
1578
- # @return [Float]
1579
- attr_accessor :sum_of_squared_deviation
1580
-
1581
- # Describing buckets with exponentially growing width.
1582
- # Corresponds to the JSON property `exponentialBuckets`
1583
- # @return [Google::Apis::ServicecontrolV1::ExponentialBuckets]
1584
- attr_accessor :exponential_buckets
1578
+ # The error code.
1579
+ # Corresponds to the JSON property `code`
1580
+ # @return [String]
1581
+ attr_accessor :code
1585
1582
 
1586
- # The minimum of the population of values. Ignored if `count` is zero.
1587
- # Corresponds to the JSON property `minimum`
1588
- # @return [Float]
1589
- attr_accessor :minimum
1583
+ # Free-form text providing details on the error cause of the error.
1584
+ # Corresponds to the JSON property `detail`
1585
+ # @return [String]
1586
+ attr_accessor :detail
1590
1587
 
1591
- # Describing buckets with constant width.
1592
- # Corresponds to the JSON property `linearBuckets`
1593
- # @return [Google::Apis::ServicecontrolV1::LinearBuckets]
1594
- attr_accessor :linear_buckets
1588
+ def initialize(**args)
1589
+ update!(**args)
1590
+ end
1595
1591
 
1596
- # The total number of samples in the distribution. Must be >= 0.
1597
- # Corresponds to the JSON property `count`
1598
- # @return [Fixnum]
1599
- attr_accessor :count
1592
+ # Update properties of this object
1593
+ def update!(**args)
1594
+ @code = args[:code] if args.key?(:code)
1595
+ @detail = args[:detail] if args.key?(:detail)
1596
+ end
1597
+ end
1600
1598
 
1601
- # The arithmetic mean of the samples in the distribution. If `count` is
1602
- # zero then this field must be zero.
1603
- # Corresponds to the JSON property `mean`
1604
- # @return [Float]
1605
- attr_accessor :mean
1599
+ #
1600
+ class StartReconciliationRequest
1601
+ include Google::Apis::Core::Hashable
1606
1602
 
1607
- # The number of samples in each histogram bucket. `bucket_counts` are
1608
- # optional. If present, they must sum to the `count` value.
1609
- # The buckets are defined below in `bucket_option`. There are N buckets.
1610
- # `bucket_counts[0]` is the number of samples in the underflow bucket.
1611
- # `bucket_counts[1]` to `bucket_counts[N-1]` are the numbers of samples
1612
- # in each of the finite buckets. And `bucket_counts[N] is the number
1613
- # of samples in the overflow bucket. See the comments of `bucket_option`
1614
- # below for more details.
1615
- # Any suffix of trailing zeros may be omitted.
1616
- # Corresponds to the JSON property `bucketCounts`
1617
- # @return [Array<Fixnum>]
1618
- attr_accessor :bucket_counts
1603
+ # Represents information regarding a quota operation.
1604
+ # Corresponds to the JSON property `reconciliationOperation`
1605
+ # @return [Google::Apis::ServicecontrolV1::QuotaOperation]
1606
+ attr_accessor :reconciliation_operation
1619
1607
 
1620
- # Describing buckets with arbitrary user-provided width.
1621
- # Corresponds to the JSON property `explicitBuckets`
1622
- # @return [Google::Apis::ServicecontrolV1::ExplicitBuckets]
1623
- attr_accessor :explicit_buckets
1608
+ # Specifies which version of service configuration should be used to process
1609
+ # the request. If unspecified or no matching version can be found, the latest
1610
+ # one will be used.
1611
+ # Corresponds to the JSON property `serviceConfigId`
1612
+ # @return [String]
1613
+ attr_accessor :service_config_id
1624
1614
 
1625
1615
  def initialize(**args)
1626
1616
  update!(**args)
@@ -1628,38 +1618,46 @@ module Google
1628
1618
 
1629
1619
  # Update properties of this object
1630
1620
  def update!(**args)
1631
- @maximum = args[:maximum] if args.key?(:maximum)
1632
- @sum_of_squared_deviation = args[:sum_of_squared_deviation] if args.key?(:sum_of_squared_deviation)
1633
- @exponential_buckets = args[:exponential_buckets] if args.key?(:exponential_buckets)
1634
- @minimum = args[:minimum] if args.key?(:minimum)
1635
- @linear_buckets = args[:linear_buckets] if args.key?(:linear_buckets)
1636
- @count = args[:count] if args.key?(:count)
1637
- @mean = args[:mean] if args.key?(:mean)
1638
- @bucket_counts = args[:bucket_counts] if args.key?(:bucket_counts)
1639
- @explicit_buckets = args[:explicit_buckets] if args.key?(:explicit_buckets)
1621
+ @reconciliation_operation = args[:reconciliation_operation] if args.key?(:reconciliation_operation)
1622
+ @service_config_id = args[:service_config_id] if args.key?(:service_config_id)
1640
1623
  end
1641
1624
  end
1642
1625
 
1643
- # Describing buckets with arbitrary user-provided width.
1644
- class ExplicitBuckets
1626
+ # Contains the quota information for a quota check response.
1627
+ class QuotaInfo
1645
1628
  include Google::Apis::Core::Hashable
1646
1629
 
1647
- # 'bound' is a list of strictly increasing boundaries between
1648
- # buckets. Note that a list of length N-1 defines N buckets because
1649
- # of fenceposting. See comments on `bucket_options` for details.
1650
- # The i'th finite bucket covers the interval
1651
- # [bound[i-1], bound[i])
1652
- # where i ranges from 1 to bound_size() - 1. Note that there are no
1653
- # finite buckets at all if 'bound' only contains a single element; in
1654
- # that special case the single bound defines the boundary between the
1655
- # underflow and overflow buckets.
1656
- # bucket number lower bound upper bound
1657
- # i == 0 (underflow) -inf bound[i]
1658
- # 0 < i < bound_size() bound[i-1] bound[i]
1659
- # i == bound_size() (overflow) bound[i-1] +inf
1660
- # Corresponds to the JSON property `bounds`
1661
- # @return [Array<Float>]
1662
- attr_accessor :bounds
1630
+ # Quota Metrics that have exceeded quota limits.
1631
+ # For QuotaGroup-based quota, this is QuotaGroup.name
1632
+ # For QuotaLimit-based quota, this is QuotaLimit.name
1633
+ # See: google.api.Quota
1634
+ # Deprecated: Use quota_metrics to get per quota group limit exceeded status.
1635
+ # Corresponds to the JSON property `limitExceeded`
1636
+ # @return [Array<String>]
1637
+ attr_accessor :limit_exceeded
1638
+
1639
+ # Map of quota group name to the actual number of tokens consumed. If the
1640
+ # quota check was not successful, then this will not be populated due to no
1641
+ # quota consumption.
1642
+ # Deprecated: Use quota_metrics to get per quota group usage.
1643
+ # Corresponds to the JSON property `quotaConsumed`
1644
+ # @return [Hash<String,Fixnum>]
1645
+ attr_accessor :quota_consumed
1646
+
1647
+ # Quota metrics to indicate the usage. Depending on the check request, one or
1648
+ # more of the following metrics will be included:
1649
+ # 1. For rate quota, per quota group or per quota metric incremental usage
1650
+ # will be specified using the following delta metric:
1651
+ # "serviceruntime.googleapis.com/api/consumer/quota_used_count"
1652
+ # 2. For allocation quota, per quota metric total usage will be specified
1653
+ # using the following gauge metric:
1654
+ # "serviceruntime.googleapis.com/allocation/consumer/quota_used_count"
1655
+ # 3. For both rate quota and allocation quota, the quota limit reached
1656
+ # condition will be specified using the following boolean metric:
1657
+ # "serviceruntime.googleapis.com/quota/exceeded"
1658
+ # Corresponds to the JSON property `quotaMetrics`
1659
+ # @return [Array<Google::Apis::ServicecontrolV1::MetricValueSet>]
1660
+ attr_accessor :quota_metrics
1663
1661
 
1664
1662
  def initialize(**args)
1665
1663
  update!(**args)
@@ -1667,7 +1665,9 @@ module Google
1667
1665
 
1668
1666
  # Update properties of this object
1669
1667
  def update!(**args)
1670
- @bounds = args[:bounds] if args.key?(:bounds)
1668
+ @limit_exceeded = args[:limit_exceeded] if args.key?(:limit_exceeded)
1669
+ @quota_consumed = args[:quota_consumed] if args.key?(:quota_consumed)
1670
+ @quota_metrics = args[:quota_metrics] if args.key?(:quota_metrics)
1671
1671
  end
1672
1672
  end
1673
1673
  end