Send feedback
Class Quota (2.12.0) Stay organized with collections
Save and categorize content based on your preferences.
Version 2.12.0 keyboard_arrow_down
public
final
class
Quota
extends
GeneratedMessageV3
implements
QuotaOrBuilder
Quota configuration helps to achieve fairness and budgeting in service
usage.
The metric based quota configuration works this way:
The service configuration defines a set of metrics.
For API calls, the quota.metric_rules maps methods to metrics with
corresponding costs.
The quota.limits defines limits on the metrics, which will be used for
quota checks at runtime.
An example quota configuration in yaml format:
quota:
limits: name: apiWriteQpsPerProject
metric: library.googleapis.com/write_calls
unit: "1/min/{project}" # rate limit for consumer projects
values:
STANDARD: 10000
(The metric rules bind all methods to the read_calls metric,
except for the UpdateBook and DeleteBook methods. These two methods
are mapped to the write_calls metric, with the UpdateBook method
consuming at twice rate as the DeleteBook method.)
metric_rules:
selector: "*"
metric_costs:
library.googleapis.com/read_calls: 1
selector: google.example.library.v1.LibraryService.UpdateBook
metric_costs:
library.googleapis.com/write_calls: 2
selector: google.example.library.v1.LibraryService.DeleteBook
metric_costs:
library.googleapis.com/write_calls: 1
Corresponding Metric definition:
metrics:
name: library.googleapis.com/read_calls
display_name: Read requests
metric_kind: DELTA
value_type: INT64
name: library.googleapis.com/write_calls
display_name: Write requests
metric_kind: DELTA
value_type: INT64
Protobuf type google.api.Quota
Static Fields
LIMITS_FIELD_NUMBER
public
static
final
int
LIMITS_FIELD_NUMBER
Field Value
METRIC_RULES_FIELD_NUMBER
public
static
final
int
METRIC_RULES_FIELD_NUMBER
Field Value
Static Methods
getDefaultInstance()
public
static
Quota
getDefaultInstance
()
Returns
getDescriptor()
public
static
final
Descriptors
.
Descriptor
getDescriptor
()
Returns
newBuilder()
public
static
Quota
.
Builder
newBuilder
()
Returns
newBuilder(Quota prototype)
public
static
Quota
.
Builder
newBuilder
(
Quota
prototype
)
Parameter
Returns
public
static
Quota
parseDelimitedFrom
(
InputStream
input
)
Parameter
Returns
Exceptions
public
static
Quota
parseDelimitedFrom
(
InputStream
input
,
ExtensionRegistryLite
extensionRegistry
)
Parameters
Returns
Exceptions
parseFrom(byte[] data)
public
static
Quota
parseFrom
(
byte
[]
data
)
Parameter
Returns
Exceptions
parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
public
static
Quota
parseFrom
(
byte
[]
data
,
ExtensionRegistryLite
extensionRegistry
)
Parameters
Returns
Exceptions
parseFrom(ByteString data)
public
static
Quota
parseFrom
(
ByteString
data
)
Parameter
Returns
Exceptions
parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
public
static
Quota
parseFrom
(
ByteString
data
,
ExtensionRegistryLite
extensionRegistry
)
Parameters
Returns
Exceptions
public
static
Quota
parseFrom
(
CodedInputStream
input
)
Parameter
Returns
Exceptions
public
static
Quota
parseFrom
(
CodedInputStream
input
,
ExtensionRegistryLite
extensionRegistry
)
Parameters
Returns
Exceptions
public
static
Quota
parseFrom
(
InputStream
input
)
Parameter
Returns
Exceptions
public
static
Quota
parseFrom
(
InputStream
input
,
ExtensionRegistryLite
extensionRegistry
)
Parameters
Returns
Exceptions
parseFrom(ByteBuffer data)
public
static
Quota
parseFrom
(
ByteBuffer
data
)
Parameter
Returns
Exceptions
parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
public
static
Quota
parseFrom
(
ByteBuffer
data
,
ExtensionRegistryLite
extensionRegistry
)
Parameters
Returns
Exceptions
parser()
public
static
Parser<Quota>
parser
()
Returns
Methods
equals(Object obj)
public
boolean
equals
(
Object
obj
)
Parameter
Returns
Overrides
getDefaultInstanceForType()
public
Quota
getDefaultInstanceForType
()
Returns
getLimits(int index)
public
QuotaLimit
getLimits
(
int
index
)
List of QuotaLimit definitions for the service.
repeated .google.api.QuotaLimit limits = 3;
Parameter
Returns
getLimitsCount()
public
int
getLimitsCount
()
List of QuotaLimit definitions for the service.
repeated .google.api.QuotaLimit limits = 3;
Returns
getLimitsList()
public
List<QuotaLimit>
getLimitsList
()
List of QuotaLimit definitions for the service.
repeated .google.api.QuotaLimit limits = 3;
Returns
getLimitsOrBuilder(int index)
public
QuotaLimitOrBuilder
getLimitsOrBuilder
(
int
index
)
List of QuotaLimit definitions for the service.
repeated .google.api.QuotaLimit limits = 3;
Parameter
Returns
getLimitsOrBuilderList()
public
List
< ?
extends
QuotaLimitOrBuilder
>
getLimitsOrBuilderList
()
List of QuotaLimit definitions for the service.
repeated .google.api.QuotaLimit limits = 3;
Returns
getMetricRules(int index)
public
MetricRule
getMetricRules
(
int
index
)
List of MetricRule definitions, each one mapping a selected method to one
or more metrics.
repeated .google.api.MetricRule metric_rules = 4;
Parameter
Returns
getMetricRulesCount()
public
int
getMetricRulesCount
()
List of MetricRule definitions, each one mapping a selected method to one
or more metrics.
repeated .google.api.MetricRule metric_rules = 4;
Returns
getMetricRulesList()
public
List<MetricRule>
getMetricRulesList
()
List of MetricRule definitions, each one mapping a selected method to one
or more metrics.
repeated .google.api.MetricRule metric_rules = 4;
Returns
getMetricRulesOrBuilder(int index)
public
MetricRuleOrBuilder
getMetricRulesOrBuilder
(
int
index
)
List of MetricRule definitions, each one mapping a selected method to one
or more metrics.
repeated .google.api.MetricRule metric_rules = 4;
Parameter
Returns
getMetricRulesOrBuilderList()
public
List
< ?
extends
MetricRuleOrBuilder
>
getMetricRulesOrBuilderList
()
List of MetricRule definitions, each one mapping a selected method to one
or more metrics.
repeated .google.api.MetricRule metric_rules = 4;
Returns
getParserForType()
public
Parser<Quota>
getParserForType
()
Returns
Overrides
getSerializedSize()
public
int
getSerializedSize
()
Returns
Overrides
getUnknownFields()
public
final
UnknownFieldSet
getUnknownFields
()
Returns
Overrides
hashCode()
Returns
Overrides
internalGetFieldAccessorTable()
protected
GeneratedMessageV3
.
FieldAccessorTable
internalGetFieldAccessorTable
()
Returns
Overrides
isInitialized()
public
final
boolean
isInitialized
()
Returns
Overrides
newBuilderForType()
public
Quota
.
Builder
newBuilderForType
()
Returns
newBuilderForType(GeneratedMessageV3.BuilderParent parent)
protected
Quota
.
Builder
newBuilderForType
(
GeneratedMessageV3
.
BuilderParent
parent
)
Parameter
Returns
Overrides
newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
protected
Object
newInstance
(
GeneratedMessageV3
.
UnusedPrivateParameter
unused
)
Parameter
Returns
Overrides
toBuilder()
public
Quota
.
Builder
toBuilder
()
Returns
writeTo(CodedOutputStream output)
public
void
writeTo
(
CodedOutputStream
output
)
Parameter
Overrides
Exceptions
Send feedback
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License
, and code samples are licensed under the Apache 2.0 License
. For details, see the Google Developers Site Policies
. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-09-04 UTC.
Need to tell us more?
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[],[],null,[]]