google-api-client 0.11.1 → 0.11.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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