google-api-client 0.11.2 → 0.11.3

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