docs/RateLimiterApi.md in fastly-5.2.2 vs docs/RateLimiterApi.md in fastly-5.3.0
- old
+ new
@@ -8,15 +8,78 @@
## Methods
| Method | HTTP request | Description |
| ------ | ------------ | ----------- |
+| [**create_rate_limiter**](RateLimiterApi.md#create_rate_limiter) | **POST** /service/{service_id}/version/{version_id}/rate-limiters | Create a rate limiter |
| [**delete_rate_limiter**](RateLimiterApi.md#delete_rate_limiter) | **DELETE** /rate-limiters/{rate_limiter_id} | Delete a rate limiter |
| [**get_rate_limiter**](RateLimiterApi.md#get_rate_limiter) | **GET** /rate-limiters/{rate_limiter_id} | Get a rate limiter |
| [**list_rate_limiters**](RateLimiterApi.md#list_rate_limiters) | **GET** /service/{service_id}/version/{version_id}/rate-limiters | List rate limiters |
+| [**update_rate_limiter**](RateLimiterApi.md#update_rate_limiter) | **PUT** /rate-limiters/{rate_limiter_id} | Update a rate limiter |
+## `create_rate_limiter()`
+
+```ruby
+create_rate_limiter(opts): <RateLimiterResponse> # Create a rate limiter
+```
+
+Create a rate limiter for a particular service and version.
+
+### Examples
+
+```ruby
+api_instance = Fastly::RateLimiterApi.new
+opts = {
+ service_id: 'service_id_example', # String | Alphanumeric string identifying the service.
+ version_id: 56, # Integer | Integer identifying a service version.
+ name: 'name_example', # String | A human readable name for the rate limiting rule.
+ uri_dictionary_name: 'uri_dictionary_name_example', # String | The name of an Edge Dictionary containing URIs as keys. If not defined or `null`, all origin URIs will be rate limited.
+ http_methods: ['HEAD'], # Array<String> | Array of HTTP methods to apply rate limiting to.
+ rps_limit: 56, # Integer | Upper limit of requests per second allowed by the rate limiter.
+ window_size: 1, # Integer | Number of seconds during which the RPS limit must be exceeded in order to trigger a violation.
+ client_key: ['inner_example'], # Array<String> | Array of VCL variables used to generate a counter key to identify a client. Example variables include `req.http.Fastly-Client-IP`, `req.http.User-Agent`, or a custom header like `req.http.API-Key`.
+ penalty_box_duration: 56, # Integer | Length of time in minutes that the rate limiter is in effect after the initial violation is detected.
+ action: 'response', # String | The action to take when a rate limiter violation is detected.
+ response_object_name: 'response_object_name_example', # String | Name of existing response object. Required if `action` is `response_object`. Note that the rate limiter response is only updated to reflect the response object content when saving the rate limiter configuration.
+ logger_type: 'azureblob', # String | Name of the type of logging endpoint to be used when action is `log_only`. The logging endpoint type is used to determine the appropriate log format to use when emitting log entries.
+ feature_revision: 56, # Integer | Revision number of the rate limiting feature implementation. Defaults to the most recent revision.
+}
+
+begin
+ # Create a rate limiter
+ result = api_instance.create_rate_limiter(opts)
+ p result
+rescue Fastly::ApiError => e
+ puts "Error when calling RateLimiterApi->create_rate_limiter: #{e}"
+end
+```
+
+### Options
+
+| Name | Type | Description | Notes |
+| ---- | ---- | ----------- | ----- |
+| **service_id** | **String** | Alphanumeric string identifying the service. | |
+| **version_id** | **Integer** | Integer identifying a service version. | |
+| **name** | **String** | A human readable name for the rate limiting rule. | [optional] |
+| **uri_dictionary_name** | **String** | The name of an Edge Dictionary containing URIs as keys. If not defined or `null`, all origin URIs will be rate limited. | [optional] |
+| **http_methods** | [**Array<String>**](String.md) | Array of HTTP methods to apply rate limiting to. | [optional] |
+| **rps_limit** | **Integer** | Upper limit of requests per second allowed by the rate limiter. | [optional] |
+| **window_size** | **Integer** | Number of seconds during which the RPS limit must be exceeded in order to trigger a violation. | [optional] |
+| **client_key** | [**Array<String>**](String.md) | Array of VCL variables used to generate a counter key to identify a client. Example variables include `req.http.Fastly-Client-IP`, `req.http.User-Agent`, or a custom header like `req.http.API-Key`. | [optional] |
+| **penalty_box_duration** | **Integer** | Length of time in minutes that the rate limiter is in effect after the initial violation is detected. | [optional] |
+| **action** | **String** | The action to take when a rate limiter violation is detected. | [optional] |
+| **response_object_name** | **String** | Name of existing response object. Required if `action` is `response_object`. Note that the rate limiter response is only updated to reflect the response object content when saving the rate limiter configuration. | [optional] |
+| **logger_type** | **String** | Name of the type of logging endpoint to be used when action is `log_only`. The logging endpoint type is used to determine the appropriate log format to use when emitting log entries. | [optional] |
+| **feature_revision** | **Integer** | Revision number of the rate limiting feature implementation. Defaults to the most recent revision. | [optional] |
+
+### Return type
+
+[**RateLimiterResponse**](RateLimiterResponse.md)
+
+[[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
+[[Back to README]](../../README.md)
## `delete_rate_limiter()`
```ruby
delete_rate_limiter(opts): <InlineResponse200> # Delete a rate limiter
```
@@ -123,8 +186,67 @@
| **version_id** | **Integer** | Integer identifying a service version. | |
### Return type
[**Array<RateLimiterResponse>**](RateLimiterResponse.md)
+
+[[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
+[[Back to README]](../../README.md)
+## `update_rate_limiter()`
+
+```ruby
+update_rate_limiter(opts): <RateLimiterResponse> # Update a rate limiter
+```
+
+Update a rate limiter by its ID.
+
+### Examples
+
+```ruby
+api_instance = Fastly::RateLimiterApi.new
+opts = {
+ rate_limiter_id: 'rate_limiter_id_example', # String | Alphanumeric string identifying the rate limiter.
+ name: 'name_example', # String | A human readable name for the rate limiting rule.
+ uri_dictionary_name: 'uri_dictionary_name_example', # String | The name of an Edge Dictionary containing URIs as keys. If not defined or `null`, all origin URIs will be rate limited.
+ http_methods: ['HEAD'], # Array<String> | Array of HTTP methods to apply rate limiting to.
+ rps_limit: 56, # Integer | Upper limit of requests per second allowed by the rate limiter.
+ window_size: 1, # Integer | Number of seconds during which the RPS limit must be exceeded in order to trigger a violation.
+ client_key: ['inner_example'], # Array<String> | Array of VCL variables used to generate a counter key to identify a client. Example variables include `req.http.Fastly-Client-IP`, `req.http.User-Agent`, or a custom header like `req.http.API-Key`.
+ penalty_box_duration: 56, # Integer | Length of time in minutes that the rate limiter is in effect after the initial violation is detected.
+ action: 'response', # String | The action to take when a rate limiter violation is detected.
+ response_object_name: 'response_object_name_example', # String | Name of existing response object. Required if `action` is `response_object`. Note that the rate limiter response is only updated to reflect the response object content when saving the rate limiter configuration.
+ logger_type: 'azureblob', # String | Name of the type of logging endpoint to be used when action is `log_only`. The logging endpoint type is used to determine the appropriate log format to use when emitting log entries.
+ feature_revision: 56, # Integer | Revision number of the rate limiting feature implementation. Defaults to the most recent revision.
+}
+
+begin
+ # Update a rate limiter
+ result = api_instance.update_rate_limiter(opts)
+ p result
+rescue Fastly::ApiError => e
+ puts "Error when calling RateLimiterApi->update_rate_limiter: #{e}"
+end
+```
+
+### Options
+
+| Name | Type | Description | Notes |
+| ---- | ---- | ----------- | ----- |
+| **rate_limiter_id** | **String** | Alphanumeric string identifying the rate limiter. | |
+| **name** | **String** | A human readable name for the rate limiting rule. | [optional] |
+| **uri_dictionary_name** | **String** | The name of an Edge Dictionary containing URIs as keys. If not defined or `null`, all origin URIs will be rate limited. | [optional] |
+| **http_methods** | [**Array<String>**](String.md) | Array of HTTP methods to apply rate limiting to. | [optional] |
+| **rps_limit** | **Integer** | Upper limit of requests per second allowed by the rate limiter. | [optional] |
+| **window_size** | **Integer** | Number of seconds during which the RPS limit must be exceeded in order to trigger a violation. | [optional] |
+| **client_key** | [**Array<String>**](String.md) | Array of VCL variables used to generate a counter key to identify a client. Example variables include `req.http.Fastly-Client-IP`, `req.http.User-Agent`, or a custom header like `req.http.API-Key`. | [optional] |
+| **penalty_box_duration** | **Integer** | Length of time in minutes that the rate limiter is in effect after the initial violation is detected. | [optional] |
+| **action** | **String** | The action to take when a rate limiter violation is detected. | [optional] |
+| **response_object_name** | **String** | Name of existing response object. Required if `action` is `response_object`. Note that the rate limiter response is only updated to reflect the response object content when saving the rate limiter configuration. | [optional] |
+| **logger_type** | **String** | Name of the type of logging endpoint to be used when action is `log_only`. The logging endpoint type is used to determine the appropriate log format to use when emitting log entries. | [optional] |
+| **feature_revision** | **Integer** | Revision number of the rate limiting feature implementation. Defaults to the most recent revision. | [optional] |
+
+### Return type
+
+[**RateLimiterResponse**](RateLimiterResponse.md)
[[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
[[Back to README]](../../README.md)