openapi: 3.0.0 info: description: 'Manage your configurations for Kona Site Defender, Web Application Protector, and Client Reputation. ' license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0.html title: 'Akamai: Application Security Activation history Rate policy actions API' version: v1 servers: - url: https://{hostname}/appsec/v1 tags: - description: 'Manage rate policy actions, which are the actions each policy takes when conditions are met.' name: Rate policy actions paths: /configs/{configId}/versions/{versionNumber}/security-policies/{policyId}/rate-policies: parameters: - description: A unique identifier for each configuration. example: '{{configId}}' in: path name: configId required: true schema: example: 77653 format: int64 type: integer x-akamai: file-path: parameters/config-id-path.yaml - description: A unique identifier for each version of a configuration. example: '{{versionNumber}}' in: path name: versionNumber required: true schema: example: 25 type: integer x-akamai: file-path: parameters/version-number-path.yaml - description: A unique identifier for a security policy. example: '{{policyId}}' in: path name: policyId required: true schema: example: boBF_19288 type: string x-akamai: file-path: parameters/policy-id-path.yaml x-akamai: file-path: paths/policy-rate-policies.yaml path-info: /configs/{configId}/versions/{versionNumber}/security-policies/{policyId}/rate-policies get: description: Returns a list of all rate policies currently in use with the actions each policy takes when conditions are met. _Products:_ All. externalDocs: description: See documentation for this operation in Akamai's Application Security API url: https://techdocs.akamai.com/application-security/reference/get-rate-policies-actions operationId: get-rate-policies-actions parameters: - description: For customers who manage more than one account, this [runs the operation from another account](https://techdocs.akamai.com/developer/docs/manage-many-accounts-with-one-api-client). The Identity and Access Management API provides a [list of available account switch keys](https://techdocs.akamai.com/iam-api/reference/get-client-account-switch-keys). example: '{{accountSwitchKey}}' in: query name: accountSwitchKey required: false schema: example: 1-5C0YLB:1-8BYUX type: string responses: '200': content: application/json: example: ratePolicyActions: - id: 102718 ipv4Action: alert ipv6Action: none - id: 102719 ipv4Action: deny ipv6Action: deny - id: 102720 ipv4Action: alert ipv6Action: deny schema: additionalProperties: false description: Contains details about rate policy actions. properties: ratePolicyActions: description: Contains settings for rate policy actions. items: additionalProperties: false properties: id: description: __Read-only__ Uniquely identifies each rate policy. readOnly: true type: integer ipv4Action: description: The IPv4 action to assign to this rate policy. For `BOTMAN` policies, choose `monitor`, `delay`, `slow`, `deny`,` tarpit`, `none`, or a custom action. For `WAF` policies, choose `alert`, `deny`, `challenge_{id}`, or `none`. Or use `deny_custom_{custom_deny_id}` to apply a custom action to your WAF rate policy. Run [Modify a custom deny action](https://techdocs.akamai.com/application-security/reference/put-custom-deny) to manage your custom deny actions. If the action is `none`, the rate policy is inactive in the policy. Refer to [Challenge actions](https://techdocs.akamai.com/bot-manager/reference/post-challenge-action) for `POST`, `GET`, `PUT`, and `DELETE` operation details. minLength: 1 oneOf: - enum: - alert - deny - none - monitor - tarpit - delay - slow title: Predefined actions - pattern: ^(cond_action|deny_custom|serve_alt|challenge)_[0-9]+$ title: Custom actions type: string ipv6Action: description: The IPv6 action to assign to this rate policy. For `BOTMAN` policies, specify the same action you chose for `ipv4Action`. For `WAF` policies, choose `alert`, `deny`, `challenge_{id}`, or `none`. Or use `deny_custom_{custom_deny_id}` to apply a custom action to your WAF rate policy. Run [Modify a custom deny action](https://techdocs.akamai.com/application-security/reference/put-custom-deny) to manage your custom deny actions. If the action is `none`, the rate policy is inactive in the policy. Refer to [Challenge actions](https://techdocs.akamai.com/bot-manager/reference/post-challenge-action) for `POST`, `GET`, `PUT`, and `DELETE` operation details. minLength: 1 oneOf: - enum: - alert - deny - none - monitor - tarpit - delay - slow title: Predefined actions - pattern: ^(cond_action|deny_custom|serve_alt|challenge)_[0-9]+$ title: Custom actions type: string required: - id - ipv4Action - ipv6Action type: object type: array required: - ratePolicyActions type: object x-akamai: file-path: schemas/rate-policy-actions.yaml description: All the used rate policies for this configuration. '404': content: application/problem+json: example: detail: The requested resource is not found instance: https://problems.luna.akamaiapis.net/appsec/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749 status: 404 title: Not Found type: https://problems.luna.akamaiapis.net/appsec/error-types/NOT-FOUND schema: additionalProperties: true description: Details the errors you can receive. properties: detail: description: The detailed error message. type: string fieldErrors: additionalProperties: description: Fields that provide additional details about the problem. type: string description: Pointers to fields for which invalid input was provided, whose values are messages detailing the reason this input was invalid for this field. type: object instance: description: The non-referenceable URI that indicates the error instance. example: https://problems.luna.akamaiapis.net/api-definitions/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749 type: string status: description: The HTTP status code. example: 404 type: integer title: description: The error title. example: Not Found type: string type: description: The URL for the error type. example: https://problems.luna.akamaiapis.net/api-definitions/error-types/NOT-FOUND type: string required: - title - type - detail - instance - status type: object x-akamai: file-path: schemas/problem-details.yaml description: '[Not found](https://techdocs.akamai.com/application-security/reference/404). Security configuration version or policy wasn''t found.' x-akamai: file-path: errors/404.yaml summary: Akamai API Security List Rate Policy Actions tags: - Rate policy actions /configs/{configId}/versions/{versionNumber}/security-policies/{policyId}/rate-policies/{ratePolicyId}: parameters: - description: A unique identifier for each configuration. example: '{{configId}}' in: path name: configId required: true schema: example: 77653 format: int64 type: integer x-akamai: file-path: parameters/config-id-path.yaml - description: A unique identifier for each version of a configuration. example: '{{versionNumber}}' in: path name: versionNumber required: true schema: example: 25 type: integer x-akamai: file-path: parameters/version-number-path.yaml - description: A unique identifier for a security policy. example: '{{policyId}}' in: path name: policyId required: true schema: example: boBF_19288 type: string x-akamai: file-path: parameters/policy-id-path.yaml - description: A unique identifier for each rate policy. example: '{{ratePolicyId}}' in: path name: ratePolicyId required: true schema: example: 112231 type: integer x-akamai: file-path: parameters/rate-policy-id-path.yaml x-akamai: file-path: paths/policy-rate-policy.yaml path-info: /configs/{configId}/versions/{versionNumber}/security-policies/{policyId}/rate-policies/{ratePolicyId} put: description: Updates the actions in a rate policy. _Products:_ All. externalDocs: description: See documentation for this operation in Akamai's Application Security API url: https://techdocs.akamai.com/application-security/reference/put-rate-policy-action operationId: put-rate-policy-action parameters: - description: For customers who manage more than one account, this [runs the operation from another account](https://techdocs.akamai.com/developer/docs/manage-many-accounts-with-one-api-client). The Identity and Access Management API provides a [list of available account switch keys](https://techdocs.akamai.com/iam-api/reference/get-client-account-switch-keys). example: '{{accountSwitchKey}}' in: query name: accountSwitchKey required: false schema: example: 1-5C0YLB:1-8BYUX type: string requestBody: content: application/json: example: ipv4Action: alert ipv6Action: alert schema: additionalProperties: false description: Contains details about a rate policy action. properties: ipv4Action: description: The IPv4 action to assign to this rate policy. For `BOTMAN` policies, choose `monitor`, `delay`, `slow`, `deny`,` tarpit`, `none`, or a custom action. For `WAF` policies, choose `alert`, `deny`, `challenge_{id}`, or `none`. Or use `deny_custom_{custom_deny_id}` to apply a custom action to your WAF rate policy. Run [Modify a custom deny action](https://techdocs.akamai.com/application-security/reference/put-custom-deny) to manage your custom deny actions. If the action is `none`, the rate policy is inactive in the policy. Refer to [Challenge actions](https://techdocs.akamai.com/bot-manager/reference/post-challenge-action) for `POST`, `GET`, `PUT`, and `DELETE` operation details. example: '{{ipv4Action}}' minLength: 1 oneOf: - enum: - alert - deny - none - monitor - tarpit - delay - slow title: Predefined actions - pattern: ^(cond_action|deny_custom|serve_alt|challenge)_[0-9]+$ title: Custom actions type: string ipv6Action: description: 'The IPv6 action to assign to this rate policy. For `BOTMAN` policies, specify the same action you chose for `ipv4Action`. For `WAF` policies, choose `alert`, `deny`, `challenge_{id}`, or `none`. Or use `deny_custom_{custom_deny_id}` to apply a custom action to your WAF rate policy. Run [Modify a custom deny action](https://techdocs.akamai.com/application-security/reference/put-custom-deny) to manage your custom deny actions. If the action is `none`, the rate policy is inactive in the policy. Refer to [Challenge actions](https://techdocs.akamai.com/bot-manager/reference/post-challenge-action) for `POST`, `GET`, `PUT`, and `DELETE` operation details. ' example: '{{ipv6Action}}' minLength: 1 oneOf: - enum: - alert - deny - none - monitor - tarpit - delay - slow title: Predefined actions - pattern: ^(cond_action|deny_custom|serve_alt|challenge)_[0-9]+$ title: Custom actions type: string required: - ipv4Action - ipv6Action type: object x-akamai: file-path: schemas/rate-policy-action-put.yaml required: true responses: '200': content: application/json: example: ipv4Action: alert ipv6Action: alert schema: additionalProperties: false description: Contains details about a rate policy action. properties: ipv4Action: description: The IPv4 action to assign to this rate policy. For `BOTMAN` policies, choose `monitor`, `delay`, `slow`, `deny`,` tarpit`, `none`, or a custom action. For `WAF` policies, choose `alert`, `deny`, `challenge_{id}`, or `none`. Or use `deny_custom_{custom_deny_id}` to apply a custom action to your WAF rate policy. Run [Modify a custom deny action](https://techdocs.akamai.com/application-security/reference/put-custom-deny) to manage your custom deny actions. If the action is `none`, the rate policy is inactive in the policy. Refer to [Challenge actions](https://techdocs.akamai.com/bot-manager/reference/post-challenge-action) for `POST`, `GET`, `PUT`, and `DELETE` operation details. minLength: 1 oneOf: - enum: - alert - deny - none - monitor - tarpit - delay - slow title: Predefined actions - pattern: ^(cond_action|deny_custom|serve_alt|challenge)_[0-9]+$ title: Custom actions type: string ipv6Action: description: 'The IPv6 action to assign to this rate policy. For `BOTMAN` policies, specify the same action you chose for `ipv4Action`. For `WAF` policies, choose `alert`, `deny`, `challenge_{id}`, or `none`. Or use `deny_custom_{custom_deny_id}` to apply a custom action to your WAF rate policy. Run [Modify a custom deny action](https://techdocs.akamai.com/application-security/reference/put-custom-deny) to manage your custom deny actions. If the action is `none`, the rate policy is inactive in the policy. Refer to [Challenge actions](https://techdocs.akamai.com/bot-manager/reference/post-challenge-action) for `POST`, `GET`, `PUT`, and `DELETE` operation details. ' minLength: 1 oneOf: - enum: - alert - deny - none - monitor - tarpit - delay - slow title: Predefined actions - pattern: ^(cond_action|deny_custom|serve_alt|challenge)_[0-9]+$ title: Custom actions type: string required: - ipv4Action - ipv6Action type: object x-akamai: file-path: schemas/rate-policy-action-put.yaml description: Updated action. '400': content: application/problem+json: example: detail: The request could not be understood by the server due to malformed syntax. instance: https://problems.luna.akamaiapis.net/appsec/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749 status: 400 title: Bad Request type: https://problems.luna.akamaiapis.net/appsec/error-types/BAD-REQUEST schema: additionalProperties: true description: Details the errors you can receive. properties: detail: description: The detailed error message. type: string fieldErrors: additionalProperties: description: Fields that provide additional details about the problem. type: string description: Pointers to fields for which invalid input was provided, whose values are messages detailing the reason this input was invalid for this field. type: object instance: description: The non-referenceable URI that indicates the error instance. example: https://problems.luna.akamaiapis.net/api-definitions/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749 type: string status: description: The HTTP status code. example: 404 type: integer title: description: The error title. example: Not Found type: string type: description: The URL for the error type. example: https://problems.luna.akamaiapis.net/api-definitions/error-types/NOT-FOUND type: string required: - title - type - detail - instance - status type: object x-akamai: file-path: schemas/problem-details.yaml description: '[Bad request](https://techdocs.akamai.com/application-security/reference/400). Invalid request body or URL parameter input.' x-akamai: file-path: errors/400.yaml '403': content: application/problem+json: example: detail: You do not have the necessary access to perform this operation or the requested resource cannot be modified instance: https://problems.luna.akamaiapis.net/appsec/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749 status: 403 title: Forbidden type: https://problems.luna.akamaiapis.net/appsec-resource/error-types/ACCESS-DENIED schema: additionalProperties: true description: Details the errors you can receive. properties: detail: description: The detailed error message. type: string fieldErrors: additionalProperties: description: Fields that provide additional details about the problem. type: string description: Pointers to fields for which invalid input was provided, whose values are messages detailing the reason this input was invalid for this field. type: object instance: description: The non-referenceable URI that indicates the error instance. example: https://problems.luna.akamaiapis.net/api-definitions/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749 type: string status: description: The HTTP status code. example: 404 type: integer title: description: The error title. example: Not Found type: string type: description: The URL for the error type. example: https://problems.luna.akamaiapis.net/api-definitions/error-types/NOT-FOUND type: string required: - title - type - detail - instance - status type: object x-akamai: file-path: schemas/problem-details.yaml description: '[Forbidden](https://techdocs.akamai.com/application-security/reference/403). You don''t have access to the resource.' x-akamai: file-path: errors/403.yaml '404': content: application/problem+json: example: detail: The requested resource is not found instance: https://problems.luna.akamaiapis.net/appsec/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749 status: 404 title: Not Found type: https://problems.luna.akamaiapis.net/appsec/error-types/NOT-FOUND schema: additionalProperties: true description: Details the errors you can receive. properties: detail: description: The detailed error message. type: string fieldErrors: additionalProperties: description: Fields that provide additional details about the problem. type: string description: Pointers to fields for which invalid input was provided, whose values are messages detailing the reason this input was invalid for this field. type: object instance: description: The non-referenceable URI that indicates the error instance. example: https://problems.luna.akamaiapis.net/api-definitions/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749 type: string status: description: The HTTP status code. example: 404 type: integer title: description: The error title. example: Not Found type: string type: description: The URL for the error type. example: https://problems.luna.akamaiapis.net/api-definitions/error-types/NOT-FOUND type: string required: - title - type - detail - instance - status type: object x-akamai: file-path: schemas/problem-details.yaml description: '[Not found](https://techdocs.akamai.com/application-security/reference/404). The config doesn''t exist or you don''t have access to it.' x-akamai: file-path: errors/404.yaml summary: Akamai API Security Modify a Rate Policy Action tags: - Rate policy actions externalDocs: description: See documentation for Akamai's Application Security API url: https://techdocs.akamai.com/application-security/reference x-readme: samples-languages: - curl - python - node