SmartWebSecurity API, gRPC: AdvancedRateLimiterProfileService
- Calls AdvancedRateLimiterProfileService
- Get
- List
- ListAdvancedRateLimiterProfilesRequest
- ListAdvancedRateLimiterProfilesResponse
- AdvancedRateLimiterProfile
- AdvancedRateLimiterRule
- StaticQuota
- DynamicQuota
- Characteristic
- SimpleCharacteristic
- KeyCharacteristic
- Condition
- StringMatcher
- HttpMethodMatcher
- AuthorityMatcher
- RequestUriMatcher
- QueryMatcher
- HeaderMatcher
- IpMatcher
- IpRangesMatcher
- GeoIpMatcher
- Create
- CreateAdvancedRateLimiterProfileRequest
- AdvancedRateLimiterRule
- StaticQuota
- DynamicQuota
- Characteristic
- SimpleCharacteristic
- KeyCharacteristic
- Condition
- StringMatcher
- HttpMethodMatcher
- AuthorityMatcher
- RequestUriMatcher
- QueryMatcher
- HeaderMatcher
- IpMatcher
- IpRangesMatcher
- GeoIpMatcher
- Operation
- CreateAdvancedRateLimiterProfileMetadata
- AdvancedRateLimiterProfile
- Update
- UpdateAdvancedRateLimiterProfileRequest
- AdvancedRateLimiterRule
- StaticQuota
- DynamicQuota
- Characteristic
- SimpleCharacteristic
- KeyCharacteristic
- Condition
- StringMatcher
- HttpMethodMatcher
- AuthorityMatcher
- RequestUriMatcher
- QueryMatcher
- HeaderMatcher
- IpMatcher
- IpRangesMatcher
- GeoIpMatcher
- Operation
- UpdateAdvancedRateLimiterProfileMetadata
- AdvancedRateLimiterProfile
- Delete
A set of methods for managing AdvancedRateLimiterProfile resources.
Call | Description |
---|---|
Get | Returns the specified AdvancedRateLimiterProfile resource. |
List | Retrieves the list of AdvancedRateLimiterProfile resources in the specified folder. |
Create | Creates a ARL profile in the specified folder using the data specified in the request. |
Update | Updates the specified ARL profile. |
Delete | Deletes the specified ARL profile. |
Calls AdvancedRateLimiterProfileService
Get
Returns the specified AdvancedRateLimiterProfile resource.
rpc Get (GetAdvancedRateLimiterProfileRequest) returns (AdvancedRateLimiterProfile)
GetAdvancedRateLimiterProfileRequest
Field | Description |
---|---|
advanced_rate_limiter_profile_id | string Required. ID of the AdvancedRateLimiterProfile resource to return. |
AdvancedRateLimiterProfile
Field | Description |
---|---|
id | string ID of the ARL profile. |
folder_id | string ID of the folder that the ARL profile belongs to. |
labels | map<string,string> Labels as key:value pairs. Maximum of 64 per resource. No more than 64 per resource. The maximum string length in characters for each value is 63. Each value must match the regular expression [-_0-9a-z]* . The string length in characters for each key must be 1-63. Each key must match the regular expression [a-z][-_0-9a-z]* . |
name | string Required. Name of the ARL profile. The name is unique within the folder. 1-50 characters long. The string length in characters must be 1-50. Value must match the regular expression [a-zA-Z0-9][a-zA-Z0-9-_.]* . |
description | string Optional description of the ARL profile. The maximum string length in characters is 512. |
advanced_rate_limiter_rules[] | AdvancedRateLimiterRule List of rules. |
created_at | google.protobuf.Timestamp Creation timestamp in RFC3339 |
cloud_id | string ID of the cloud that the ARL profile belongs to. |
AdvancedRateLimiterRule
Field | Description |
---|---|
name | string Required. Name of the rule. The name is unique within the ARL profile. 1-50 characters long. The string length in characters must be 1-50. Value must match the regular expression [a-zA-Z0-9][a-zA-Z0-9-_.]* . |
priority | int64 Determines the priority in case there are several matched rules. Enter an integer within the range of 1 and 999999. The rule priority must be unique within the entire ARL profile. A lower numeric value means a higher priority. Acceptable values are 1 to 999999, inclusive. |
description | string Optional description of the rule. 0-512 characters long. The maximum string length in characters is 512. |
dry_run | bool This allows you to evaluate backend capabilities and find the optimum limit values. Requests will not be blocked in this mode. |
rule_specifier | oneof: static_quota or dynamic_quota |
static_quota | StaticQuota Static quota. Counting each request individually. |
dynamic_quota | DynamicQuota Dynamic quota. Grouping requests by a certain attribute and limiting the number of groups. |
StaticQuota
Field | Description |
---|---|
action | enum Action Action in case of exceeding this quota.
|
condition | Condition The condition for matching the quota. |
limit | int64 Desired maximum number of requests per period. Enter an integer within the range of 1 and 9999999999999. Acceptable values are 1 to 9999999999999, inclusive. |
period | int64 Period of time in seconds. Value must be equal to 1,5,10,30,60,120,180,240,300,600,900,1200,1800,2700,3600. |
DynamicQuota
Field | Description |
---|---|
action | enum Action Action in case of exceeding this quota.
|
condition | Condition The condition for matching the quota. |
limit | int64 Desired maximum number of requests per period. Enter an integer within the range of 1 and 9999999999999. Acceptable values are 1 to 9999999999999, inclusive. |
period | int64 Period of time in seconds. Value must be equal to 1,5,10,30,60,120,180,240,300,600,900,1200,1800,2700,3600. |
characteristics[] | Characteristic List of characteristics. The maximum number of elements is 3. |
Characteristic
Field | Description |
---|---|
characteristic_specifier | oneof: simple_characteristic or key_characteristic |
simple_characteristic | SimpleCharacteristic Characteristic automatically based on the Request path, HTTP method, IP address, Region, and Host attributes. See Rules for more details. |
key_characteristic | KeyCharacteristic Characteristic based on key match in the Query params, HTTP header, and HTTP cookie attributes. See Rules for more details. |
case_insensitive | bool Determines case-sensitive or case-insensitive keys matching. |
SimpleCharacteristic
Field | Description |
---|---|
type | enum Type Type of simple characteristic.
|
KeyCharacteristic
Field | Description |
---|---|
type | enum Type Type of key characteristic.
|
value | string String value of the key. |
Condition
Field | Description |
---|---|
authority | AuthorityMatcher Match authority (Host header). |
http_method | HttpMethodMatcher Match HTTP method. |
request_uri | RequestUriMatcher Match Request URI. |
headers[] | HeaderMatcher Match HTTP headers. The maximum number of elements is 20. |
source_ip | IpMatcher Match IP. |
StringMatcher
Field | Description |
---|---|
match | oneof: exact_match , exact_not_match , prefix_match , prefix_not_match , pire_regex_match or pire_regex_not_match |
exact_match | string The string length in characters must be 0-255. |
exact_not_match | string The string length in characters must be 0-255. |
prefix_match | string The string length in characters must be 0-255. |
prefix_not_match | string The string length in characters must be 0-255. |
pire_regex_match | string The string length in characters must be 0-255. |
pire_regex_not_match | string The string length in characters must be 0-255. |
HttpMethodMatcher
Field | Description |
---|---|
http_methods[] | StringMatcher List of HTTP methods. OR semantics implied. The maximum number of elements is 20. |
AuthorityMatcher
Field | Description |
---|---|
authorities[] | StringMatcher List of authorities. OR semantics implied. The maximum number of elements is 20. |
RequestUriMatcher
Field | Description |
---|---|
path | StringMatcher Path of the URI RFC3986 |
queries[] | QueryMatcher List of query matchers. AND semantics implied. The maximum number of elements is 20. |
QueryMatcher
Field | Description |
---|---|
key | string Required. Key of the query parameter. The string length in characters must be 1-255. |
value | StringMatcher Required. Value of the query parameter. |
HeaderMatcher
Field | Description |
---|---|
name | string Required. Name of header (case insensitive). The string length in characters must be 1-255. |
value | StringMatcher Required. Value of the header. |
IpMatcher
Field | Description |
---|---|
ip_ranges_match | IpRangesMatcher |
ip_ranges_not_match | IpRangesMatcher |
geo_ip_match | GeoIpMatcher |
geo_ip_not_match | GeoIpMatcher |
IpRangesMatcher
Field | Description |
---|---|
ip_ranges[] | string List of IP ranges. OR semantics implied. The maximum number of elements is 10000. |
GeoIpMatcher
Field | Description |
---|---|
locations[] | string ISO 3166-1 alpha 2. OR semantics implied. The minimum number of elements is 1. The string length in characters for each value must be equal to 2. |
List
Retrieves the list of AdvancedRateLimiterProfile resources in the specified folder.
rpc List (ListAdvancedRateLimiterProfilesRequest) returns (ListAdvancedRateLimiterProfilesResponse)
ListAdvancedRateLimiterProfilesRequest
Field | Description |
---|---|
folder_id | string Required. ID of the folder that the ARL profile belongs to. Currently page_size, page_token, filter and order_by are not supported and List method will return all ARL profiles in the folder. |
ListAdvancedRateLimiterProfilesResponse
Field | Description |
---|---|
advanced_rate_limiter_profiles[] | AdvancedRateLimiterProfile List of AdvancedRateLimiterProfile resources. Currently next_page_token is not supported and List method will return all ARL profiles in the folder. |
AdvancedRateLimiterProfile
Field | Description |
---|---|
id | string ID of the ARL profile. |
folder_id | string ID of the folder that the ARL profile belongs to. |
labels | map<string,string> Labels as key:value pairs. Maximum of 64 per resource. No more than 64 per resource. The maximum string length in characters for each value is 63. Each value must match the regular expression [-_0-9a-z]* . The string length in characters for each key must be 1-63. Each key must match the regular expression [a-z][-_0-9a-z]* . |
name | string Required. Name of the ARL profile. The name is unique within the folder. 1-50 characters long. The string length in characters must be 1-50. Value must match the regular expression [a-zA-Z0-9][a-zA-Z0-9-_.]* . |
description | string Optional description of the ARL profile. The maximum string length in characters is 512. |
advanced_rate_limiter_rules[] | AdvancedRateLimiterRule List of rules. |
created_at | google.protobuf.Timestamp Creation timestamp in RFC3339 |
cloud_id | string ID of the cloud that the ARL profile belongs to. |
AdvancedRateLimiterRule
Field | Description |
---|---|
name | string Required. Name of the rule. The name is unique within the ARL profile. 1-50 characters long. The string length in characters must be 1-50. Value must match the regular expression [a-zA-Z0-9][a-zA-Z0-9-_.]* . |
priority | int64 Determines the priority in case there are several matched rules. Enter an integer within the range of 1 and 999999. The rule priority must be unique within the entire ARL profile. A lower numeric value means a higher priority. Acceptable values are 1 to 999999, inclusive. |
description | string Optional description of the rule. 0-512 characters long. The maximum string length in characters is 512. |
dry_run | bool This allows you to evaluate backend capabilities and find the optimum limit values. Requests will not be blocked in this mode. |
rule_specifier | oneof: static_quota or dynamic_quota |
static_quota | StaticQuota Static quota. Counting each request individually. |
dynamic_quota | DynamicQuota Dynamic quota. Grouping requests by a certain attribute and limiting the number of groups. |
StaticQuota
Field | Description |
---|---|
action | enum Action Action in case of exceeding this quota.
|
condition | Condition The condition for matching the quota. |
limit | int64 Desired maximum number of requests per period. Enter an integer within the range of 1 and 9999999999999. Acceptable values are 1 to 9999999999999, inclusive. |
period | int64 Period of time in seconds. Value must be equal to 1,5,10,30,60,120,180,240,300,600,900,1200,1800,2700,3600. |
DynamicQuota
Field | Description |
---|---|
action | enum Action Action in case of exceeding this quota.
|
condition | Condition The condition for matching the quota. |
limit | int64 Desired maximum number of requests per period. Enter an integer within the range of 1 and 9999999999999. Acceptable values are 1 to 9999999999999, inclusive. |
period | int64 Period of time in seconds. Value must be equal to 1,5,10,30,60,120,180,240,300,600,900,1200,1800,2700,3600. |
characteristics[] | Characteristic List of characteristics. The maximum number of elements is 3. |
Characteristic
Field | Description |
---|---|
characteristic_specifier | oneof: simple_characteristic or key_characteristic |
simple_characteristic | SimpleCharacteristic Characteristic automatically based on the Request path, HTTP method, IP address, Region, and Host attributes. See Rules for more details. |
key_characteristic | KeyCharacteristic Characteristic based on key match in the Query params, HTTP header, and HTTP cookie attributes. See Rules for more details. |
case_insensitive | bool Determines case-sensitive or case-insensitive keys matching. |
SimpleCharacteristic
Field | Description |
---|---|
type | enum Type Type of simple characteristic.
|
KeyCharacteristic
Field | Description |
---|---|
type | enum Type Type of key characteristic.
|
value | string String value of the key. |
Condition
Field | Description |
---|---|
authority | AuthorityMatcher Match authority (Host header). |
http_method | HttpMethodMatcher Match HTTP method. |
request_uri | RequestUriMatcher Match Request URI. |
headers[] | HeaderMatcher Match HTTP headers. The maximum number of elements is 20. |
source_ip | IpMatcher Match IP. |
StringMatcher
Field | Description |
---|---|
match | oneof: exact_match , exact_not_match , prefix_match , prefix_not_match , pire_regex_match or pire_regex_not_match |
exact_match | string The string length in characters must be 0-255. |
exact_not_match | string The string length in characters must be 0-255. |
prefix_match | string The string length in characters must be 0-255. |
prefix_not_match | string The string length in characters must be 0-255. |
pire_regex_match | string The string length in characters must be 0-255. |
pire_regex_not_match | string The string length in characters must be 0-255. |
HttpMethodMatcher
Field | Description |
---|---|
http_methods[] | StringMatcher List of HTTP methods. OR semantics implied. The maximum number of elements is 20. |
AuthorityMatcher
Field | Description |
---|---|
authorities[] | StringMatcher List of authorities. OR semantics implied. The maximum number of elements is 20. |
RequestUriMatcher
Field | Description |
---|---|
path | StringMatcher Path of the URI RFC3986 |
queries[] | QueryMatcher List of query matchers. AND semantics implied. The maximum number of elements is 20. |
QueryMatcher
Field | Description |
---|---|
key | string Required. Key of the query parameter. The string length in characters must be 1-255. |
value | StringMatcher Required. Value of the query parameter. |
HeaderMatcher
Field | Description |
---|---|
name | string Required. Name of header (case insensitive). The string length in characters must be 1-255. |
value | StringMatcher Required. Value of the header. |
IpMatcher
Field | Description |
---|---|
ip_ranges_match | IpRangesMatcher |
ip_ranges_not_match | IpRangesMatcher |
geo_ip_match | GeoIpMatcher |
geo_ip_not_match | GeoIpMatcher |
IpRangesMatcher
Field | Description |
---|---|
ip_ranges[] | string List of IP ranges. OR semantics implied. The maximum number of elements is 10000. |
GeoIpMatcher
Field | Description |
---|---|
locations[] | string ISO 3166-1 alpha 2. OR semantics implied. The minimum number of elements is 1. The string length in characters for each value must be equal to 2. |
Create
Creates a ARL profile in the specified folder using the data specified in the request.
rpc Create (CreateAdvancedRateLimiterProfileRequest) returns (operation.Operation)
Metadata and response of Operation:
Operation.metadata:CreateAdvancedRateLimiterProfileMetadata
Operation.response:AdvancedRateLimiterProfile
CreateAdvancedRateLimiterProfileRequest
Field | Description |
---|---|
folder_id | string Required. ID of the folder to create a ARL profile in. |
labels | map<string,string> Labels as key:value pairs. Maximum of 64 per resource. |
name | string Name of the ARL profile. The name is unique within the folder. 1-50 characters long. |
description | string Optional description of the ARL profile. |
advanced_rate_limiter_rules[] | AdvancedRateLimiterRule List of rules. |
AdvancedRateLimiterRule
Field | Description |
---|---|
name | string Required. Name of the rule. The name is unique within the ARL profile. 1-50 characters long. The string length in characters must be 1-50. Value must match the regular expression [a-zA-Z0-9][a-zA-Z0-9-_.]* . |
priority | int64 Determines the priority in case there are several matched rules. Enter an integer within the range of 1 and 999999. The rule priority must be unique within the entire ARL profile. A lower numeric value means a higher priority. Acceptable values are 1 to 999999, inclusive. |
description | string Optional description of the rule. 0-512 characters long. The maximum string length in characters is 512. |
dry_run | bool This allows you to evaluate backend capabilities and find the optimum limit values. Requests will not be blocked in this mode. |
rule_specifier | oneof: static_quota or dynamic_quota |
static_quota | StaticQuota Static quota. Counting each request individually. |
dynamic_quota | DynamicQuota Dynamic quota. Grouping requests by a certain attribute and limiting the number of groups. |
StaticQuota
Field | Description |
---|---|
action | enum Action Action in case of exceeding this quota.
|
condition | Condition The condition for matching the quota. |
limit | int64 Desired maximum number of requests per period. Enter an integer within the range of 1 and 9999999999999. Acceptable values are 1 to 9999999999999, inclusive. |
period | int64 Period of time in seconds. Value must be equal to 1,5,10,30,60,120,180,240,300,600,900,1200,1800,2700,3600. |
DynamicQuota
Field | Description |
---|---|
action | enum Action Action in case of exceeding this quota.
|
condition | Condition The condition for matching the quota. |
limit | int64 Desired maximum number of requests per period. Enter an integer within the range of 1 and 9999999999999. Acceptable values are 1 to 9999999999999, inclusive. |
period | int64 Period of time in seconds. Value must be equal to 1,5,10,30,60,120,180,240,300,600,900,1200,1800,2700,3600. |
characteristics[] | Characteristic List of characteristics. The maximum number of elements is 3. |
Characteristic
Field | Description |
---|---|
characteristic_specifier | oneof: simple_characteristic or key_characteristic |
simple_characteristic | SimpleCharacteristic Characteristic automatically based on the Request path, HTTP method, IP address, Region, and Host attributes. See Rules for more details. |
key_characteristic | KeyCharacteristic Characteristic based on key match in the Query params, HTTP header, and HTTP cookie attributes. See Rules for more details. |
case_insensitive | bool Determines case-sensitive or case-insensitive keys matching. |
SimpleCharacteristic
Field | Description |
---|---|
type | enum Type Type of simple characteristic.
|
KeyCharacteristic
Field | Description |
---|---|
type | enum Type Type of key characteristic.
|
value | string String value of the key. |
Condition
Field | Description |
---|---|
authority | AuthorityMatcher Match authority (Host header). |
http_method | HttpMethodMatcher Match HTTP method. |
request_uri | RequestUriMatcher Match Request URI. |
headers[] | HeaderMatcher Match HTTP headers. The maximum number of elements is 20. |
source_ip | IpMatcher Match IP. |
StringMatcher
Field | Description |
---|---|
match | oneof: exact_match , exact_not_match , prefix_match , prefix_not_match , pire_regex_match or pire_regex_not_match |
exact_match | string The string length in characters must be 0-255. |
exact_not_match | string The string length in characters must be 0-255. |
prefix_match | string The string length in characters must be 0-255. |
prefix_not_match | string The string length in characters must be 0-255. |
pire_regex_match | string The string length in characters must be 0-255. |
pire_regex_not_match | string The string length in characters must be 0-255. |
HttpMethodMatcher
Field | Description |
---|---|
http_methods[] | StringMatcher List of HTTP methods. OR semantics implied. The maximum number of elements is 20. |
AuthorityMatcher
Field | Description |
---|---|
authorities[] | StringMatcher List of authorities. OR semantics implied. The maximum number of elements is 20. |
RequestUriMatcher
Field | Description |
---|---|
path | StringMatcher Path of the URI RFC3986 |
queries[] | QueryMatcher List of query matchers. AND semantics implied. The maximum number of elements is 20. |
QueryMatcher
Field | Description |
---|---|
key | string Required. Key of the query parameter. The string length in characters must be 1-255. |
value | StringMatcher Required. Value of the query parameter. |
HeaderMatcher
Field | Description |
---|---|
name | string Required. Name of header (case insensitive). The string length in characters must be 1-255. |
value | StringMatcher Required. Value of the header. |
IpMatcher
Field | Description |
---|---|
ip_ranges_match | IpRangesMatcher |
ip_ranges_not_match | IpRangesMatcher |
geo_ip_match | GeoIpMatcher |
geo_ip_not_match | GeoIpMatcher |
IpRangesMatcher
Field | Description |
---|---|
ip_ranges[] | string List of IP ranges. OR semantics implied. The maximum number of elements is 10000. |
GeoIpMatcher
Field | Description |
---|---|
locations[] | string ISO 3166-1 alpha 2. OR semantics implied. The minimum number of elements is 1. The string length in characters for each value must be equal to 2. |
Operation
Field | Description |
---|---|
id | string ID of the operation. |
description | string Description of the operation. 0-256 characters long. |
created_at | google.protobuf.Timestamp Creation timestamp. |
created_by | string ID of the user or service account who initiated the operation. |
modified_at | google.protobuf.Timestamp The time when the Operation resource was last modified. |
done | bool If the value is false , it means the operation is still in progress. If true , the operation is completed, and either error or response is available. |
metadata | google.protobuf.Any Service-specific metadata associated with the operation. It typically contains the ID of the target resource that the operation is performed on. Any method that returns a long-running operation should document the metadata type, if any. |
result | oneof: error or response The operation result. If done == false and there was no failure detected, neither error nor response is set. If done == false and there was a failure detected, error is set. If done == true , exactly one of error or response is set. |
error | google.rpc.Status The error result of the operation in case of failure or cancellation. |
response | google.protobuf.Any if operation finished successfully. |
CreateAdvancedRateLimiterProfileMetadata
Field | Description |
---|---|
advanced_rate_limiter_profile_id | string ID of the ARL profile that is being created. |
AdvancedRateLimiterProfile
Field | Description |
---|---|
id | string ID of the ARL profile. |
folder_id | string ID of the folder that the ARL profile belongs to. |
labels | map<string,string> Labels as key:value pairs. Maximum of 64 per resource. No more than 64 per resource. The maximum string length in characters for each value is 63. Each value must match the regular expression [-_0-9a-z]* . The string length in characters for each key must be 1-63. Each key must match the regular expression [a-z][-_0-9a-z]* . |
name | string Required. Name of the ARL profile. The name is unique within the folder. 1-50 characters long. The string length in characters must be 1-50. Value must match the regular expression [a-zA-Z0-9][a-zA-Z0-9-_.]* . |
description | string Optional description of the ARL profile. The maximum string length in characters is 512. |
advanced_rate_limiter_rules[] | AdvancedRateLimiterRule List of rules. |
created_at | google.protobuf.Timestamp Creation timestamp in RFC3339 |
cloud_id | string ID of the cloud that the ARL profile belongs to. |
Update
Updates the specified ARL profile.
rpc Update (UpdateAdvancedRateLimiterProfileRequest) returns (operation.Operation)
Metadata and response of Operation:
Operation.metadata:UpdateAdvancedRateLimiterProfileMetadata
Operation.response:AdvancedRateLimiterProfile
UpdateAdvancedRateLimiterProfileRequest
Field | Description |
---|---|
advanced_rate_limiter_profile_id | string Required. ID of the ARL profile to update. |
update_mask | google.protobuf.FieldMask Field mask that specifies which fields of the AdvancedRateLimiterProfile resource are going to be updated. |
labels | map<string,string> Labels as key:value pairs. Maximum of 64 per resource. |
name | string Name of the ARL profile. The name is unique within the folder. 1-50 characters long. |
description | string Optional description of the ARL profile. |
advanced_rate_limiter_rules[] | AdvancedRateLimiterRule List of rules. |
AdvancedRateLimiterRule
Field | Description |
---|---|
name | string Required. Name of the rule. The name is unique within the ARL profile. 1-50 characters long. The string length in characters must be 1-50. Value must match the regular expression [a-zA-Z0-9][a-zA-Z0-9-_.]* . |
priority | int64 Determines the priority in case there are several matched rules. Enter an integer within the range of 1 and 999999. The rule priority must be unique within the entire ARL profile. A lower numeric value means a higher priority. Acceptable values are 1 to 999999, inclusive. |
description | string Optional description of the rule. 0-512 characters long. The maximum string length in characters is 512. |
dry_run | bool This allows you to evaluate backend capabilities and find the optimum limit values. Requests will not be blocked in this mode. |
rule_specifier | oneof: static_quota or dynamic_quota |
static_quota | StaticQuota Static quota. Counting each request individually. |
dynamic_quota | DynamicQuota Dynamic quota. Grouping requests by a certain attribute and limiting the number of groups. |
StaticQuota
Field | Description |
---|---|
action | enum Action Action in case of exceeding this quota.
|
condition | Condition The condition for matching the quota. |
limit | int64 Desired maximum number of requests per period. Enter an integer within the range of 1 and 9999999999999. Acceptable values are 1 to 9999999999999, inclusive. |
period | int64 Period of time in seconds. Value must be equal to 1,5,10,30,60,120,180,240,300,600,900,1200,1800,2700,3600. |
DynamicQuota
Field | Description |
---|---|
action | enum Action Action in case of exceeding this quota.
|
condition | Condition The condition for matching the quota. |
limit | int64 Desired maximum number of requests per period. Enter an integer within the range of 1 and 9999999999999. Acceptable values are 1 to 9999999999999, inclusive. |
period | int64 Period of time in seconds. Value must be equal to 1,5,10,30,60,120,180,240,300,600,900,1200,1800,2700,3600. |
characteristics[] | Characteristic List of characteristics. The maximum number of elements is 3. |
Characteristic
Field | Description |
---|---|
characteristic_specifier | oneof: simple_characteristic or key_characteristic |
simple_characteristic | SimpleCharacteristic Characteristic automatically based on the Request path, HTTP method, IP address, Region, and Host attributes. See Rules for more details. |
key_characteristic | KeyCharacteristic Characteristic based on key match in the Query params, HTTP header, and HTTP cookie attributes. See Rules for more details. |
case_insensitive | bool Determines case-sensitive or case-insensitive keys matching. |
SimpleCharacteristic
Field | Description |
---|---|
type | enum Type Type of simple characteristic.
|
KeyCharacteristic
Field | Description |
---|---|
type | enum Type Type of key characteristic.
|
value | string String value of the key. |
Condition
Field | Description |
---|---|
authority | AuthorityMatcher Match authority (Host header). |
http_method | HttpMethodMatcher Match HTTP method. |
request_uri | RequestUriMatcher Match Request URI. |
headers[] | HeaderMatcher Match HTTP headers. The maximum number of elements is 20. |
source_ip | IpMatcher Match IP. |
StringMatcher
Field | Description |
---|---|
match | oneof: exact_match , exact_not_match , prefix_match , prefix_not_match , pire_regex_match or pire_regex_not_match |
exact_match | string The string length in characters must be 0-255. |
exact_not_match | string The string length in characters must be 0-255. |
prefix_match | string The string length in characters must be 0-255. |
prefix_not_match | string The string length in characters must be 0-255. |
pire_regex_match | string The string length in characters must be 0-255. |
pire_regex_not_match | string The string length in characters must be 0-255. |
HttpMethodMatcher
Field | Description |
---|---|
http_methods[] | StringMatcher List of HTTP methods. OR semantics implied. The maximum number of elements is 20. |
AuthorityMatcher
Field | Description |
---|---|
authorities[] | StringMatcher List of authorities. OR semantics implied. The maximum number of elements is 20. |
RequestUriMatcher
Field | Description |
---|---|
path | StringMatcher Path of the URI RFC3986 |
queries[] | QueryMatcher List of query matchers. AND semantics implied. The maximum number of elements is 20. |
QueryMatcher
Field | Description |
---|---|
key | string Required. Key of the query parameter. The string length in characters must be 1-255. |
value | StringMatcher Required. Value of the query parameter. |
HeaderMatcher
Field | Description |
---|---|
name | string Required. Name of header (case insensitive). The string length in characters must be 1-255. |
value | StringMatcher Required. Value of the header. |
IpMatcher
Field | Description |
---|---|
ip_ranges_match | IpRangesMatcher |
ip_ranges_not_match | IpRangesMatcher |
geo_ip_match | GeoIpMatcher |
geo_ip_not_match | GeoIpMatcher |
IpRangesMatcher
Field | Description |
---|---|
ip_ranges[] | string List of IP ranges. OR semantics implied. The maximum number of elements is 10000. |
GeoIpMatcher
Field | Description |
---|---|
locations[] | string ISO 3166-1 alpha 2. OR semantics implied. The minimum number of elements is 1. The string length in characters for each value must be equal to 2. |
Operation
Field | Description |
---|---|
id | string ID of the operation. |
description | string Description of the operation. 0-256 characters long. |
created_at | google.protobuf.Timestamp Creation timestamp. |
created_by | string ID of the user or service account who initiated the operation. |
modified_at | google.protobuf.Timestamp The time when the Operation resource was last modified. |
done | bool If the value is false , it means the operation is still in progress. If true , the operation is completed, and either error or response is available. |
metadata | google.protobuf.Any Service-specific metadata associated with the operation. It typically contains the ID of the target resource that the operation is performed on. Any method that returns a long-running operation should document the metadata type, if any. |
result | oneof: error or response The operation result. If done == false and there was no failure detected, neither error nor response is set. If done == false and there was a failure detected, error is set. If done == true , exactly one of error or response is set. |
error | google.rpc.Status The error result of the operation in case of failure or cancellation. |
response | google.protobuf.Any if operation finished successfully. |
UpdateAdvancedRateLimiterProfileMetadata
Field | Description |
---|---|
advanced_rate_limiter_profile_id | string ID of the AdvancedRateLimiterProfile resource that is being updated. |
AdvancedRateLimiterProfile
Field | Description |
---|---|
id | string ID of the ARL profile. |
folder_id | string ID of the folder that the ARL profile belongs to. |
labels | map<string,string> Labels as key:value pairs. Maximum of 64 per resource. No more than 64 per resource. The maximum string length in characters for each value is 63. Each value must match the regular expression [-_0-9a-z]* . The string length in characters for each key must be 1-63. Each key must match the regular expression [a-z][-_0-9a-z]* . |
name | string Required. Name of the ARL profile. The name is unique within the folder. 1-50 characters long. The string length in characters must be 1-50. Value must match the regular expression [a-zA-Z0-9][a-zA-Z0-9-_.]* . |
description | string Optional description of the ARL profile. The maximum string length in characters is 512. |
advanced_rate_limiter_rules[] | AdvancedRateLimiterRule List of rules. |
created_at | google.protobuf.Timestamp Creation timestamp in RFC3339 |
cloud_id | string ID of the cloud that the ARL profile belongs to. |
Delete
Deletes the specified ARL profile.
rpc Delete (DeleteAdvancedRateLimiterProfileRequest) returns (operation.Operation)
Metadata and response of Operation:
Operation.metadata:DeleteAdvancedRateLimiterProfileMetadata
Operation.response:google.protobuf.Empty
DeleteAdvancedRateLimiterProfileRequest
Field | Description |
---|---|
advanced_rate_limiter_profile_id | string Required. ID of the ARL profile to delete. |
Operation
Field | Description |
---|---|
id | string ID of the operation. |
description | string Description of the operation. 0-256 characters long. |
created_at | google.protobuf.Timestamp Creation timestamp. |
created_by | string ID of the user or service account who initiated the operation. |
modified_at | google.protobuf.Timestamp The time when the Operation resource was last modified. |
done | bool If the value is false , it means the operation is still in progress. If true , the operation is completed, and either error or response is available. |
metadata | google.protobuf.Any Service-specific metadata associated with the operation. It typically contains the ID of the target resource that the operation is performed on. Any method that returns a long-running operation should document the metadata type, if any. |
result | oneof: error or response The operation result. If done == false and there was no failure detected, neither error nor response is set. If done == false and there was a failure detected, error is set. If done == true , exactly one of error or response is set. |
error | google.rpc.Status The error result of the operation in case of failure or cancellation. |
response | google.protobuf.Any if operation finished successfully. |
DeleteAdvancedRateLimiterProfileMetadata
Field | Description |
---|---|
advanced_rate_limiter_profile_id | string ID of the AdvancedRateLimiterProfile resource that is being deleted. |