Akamai Rate limits API

Groups operations that let you control rate limits.

Documentation

Specifications

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-attack-payload-logging-get-200-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-attack-payload-logging-put-200-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-attack-payload-logging-put-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-attack-payload-logging-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-behavioral-ddos-bypass-client-list-condition-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-behavioral-ddos-bypass-request-header-condition-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-behavioral-ddos-host-path-exception-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-behavioral-ddos-profile-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-behavioral-ddos-profiles-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-behavioral-ddos-sensitivity-override-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-behavioral-ddos-suspend-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-bypass-network-lists-get-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-bypass-network-lists-put-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-client-reputation-condition-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-config-clone-post-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-config-custom-rules-usage-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-config-custom-rules-usage-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-config-get-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-config-post-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-config-rename-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-configs-get-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-cookie-settings-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-custom-denies-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-custom-deny-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/appsec-custom-rule-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/fast-purge-post-cpcode-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/fast-purge-post-tag-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/fast-purge-post-url-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/fast-purge-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/siem-problem-nested-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/siem-problem-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/siem-siem-event-200-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/siem-siem-response-context-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/siem-streamed-response-200-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/site-shield-http-problem-details-nested-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/site-shield-http-problem-details-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/site-shield-site-shield-map-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/json-schema/site-shield-site-shield-maps-schema.json

OpenAPI Specification

akamai-rate-limits-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: 'Akamai: API Endpoint Definition Access tokens Rate limits API'
  version: '2'
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  description: Groups operations that let you control rate limits.
servers:
- url: https://{hostname}/api-definitions/v2
tags:
- description: Groups operations that let you control rate limits.
  name: Rate limits
paths:
  /rate-limit-status/{purge-type}:
    parameters:
    - description: __Enum__ A single item within a purge request that identifies the content you want to purge. You can identify your content by a URL or ARL (Akamai resource locator), content provider (CP) code, or cache tag.
      in: path
      name: purge-type
      required: true
      schema:
        enum:
        - cpcode
        - tag
        - url
        example: cpcode
        type: string
      x-akamai:
        file-path: parameters/purge-type.yaml
    x-akamai:
      file-path: paths/rate-limit-status.yaml
      path-info: /rate-limit-status/{purge-type}
    post:
      description: 'The Fast Purge API uses a token bucket model for [rate limiting](https://techdocs.akamai.com/purge-cache/reference/rate-limiting) to protect itself from inadvertent or malicious overuse. For each Akamai account, there''s a rate limit shared by all object types (CP codes, cache tags, and URL/ARLs), and three separate resource limits for each object type. Each purge request uses one rate limit token from the requests bucket. Each purge object in a request takes up a token from the resource bucket.

        This operation fetches information on the remaining number of requests and objects for a specific account. You can use these details to monitor the request consumption or throttle requests to prevent exceeding the limits, which results in the [429](https://techdocs.akamai.com/purge-cache/reference/429) error.'
      externalDocs:
        description: See documentation for this operation in Akamai's Fast Purge API
        url: https://techdocs.akamai.com/purge-cache/reference/post-rate-limit-status
      operationId: post-rate-limit-status
      parameters: []
      responses:
        '201':
          content:
            application/json:
              example:
                detail: Request accepted
                estimatedSeconds: 5
                httpStatus: 201
                purgeId: edcp-NZbXzFpHBjcJeryhw6PVgG
                supportId: edcp-NZbXzFpHBjcJeryhw6PVgG
              schema:
                additionalProperties: true
                description: Rate limit status response.
                properties:
                  describedBy:
                    description: A URL that describes the API's error response.
                    type: string
                  detail:
                    description: Detailed information about the HTTP status code returned with the response.
                    type: string
                  httpStatus:
                    description: The HTTP code that indicates the status of the rate limit status request. Successful requests yield a 201 response code.
                    type: integer
                  rateLimit:
                    description: The maximum number of requests allowed each second per account. Unlike the response header, this JSON response body field only appears if the request exceeded the rate limit and got rejected with the [429](https://techdocs.akamai.com/purge-cache/reference/429) error.
                    type: integer
                  rateLimitCurrentRequestSize:
                    description: The size of the request. For the request limit, this usually equals 1. For the resource limit, this depends on the number of purge objects included in the request, such as CP codes, cache tags, and URL/ARLs. Unlike the response header, this JSON response body field only appears if a request exceeded the rate limit and was rejected with the [429](https://techdocs.akamai.com/purge-cache/reference/429) error.
                    type: integer
                  rateLimitRemaining:
                    description: The number of requests or objects remaining in the token bucket before the rate limit is exceeded. Unlike the response header, this field only appears if a request exceeded the rate limit and was rejected with the [429](https://techdocs.akamai.com/purge-cache/reference/429) error.
                    type: integer
                  supportId:
                    description: Identifier to provide Akamai Technical Support if issues arise.
                    type: string
                  title:
                    description: Describes the response type, for example, `Rate Limit exceeded`.
                    type: string
                required:
                - httpStatus
                - supportId
                - detail
                type: object
                x-akamai:
                  file-path: schemas/rate-limit-status-response.yaml
          description: Successful POST of a rate limit status request.
          headers:
            X-Ratelimit-Limit:
              description: The burst limit that specifies how many requests you can make in excess of the imposed rate limit. See [Rate limiting](https://techdocs.akamai.com/purge-cache/reference/rate-limiting) for details.
              schema:
                example: 100
                type: integer
              x-akamai:
                file-path: headers/x-ratelimit-limit.yaml
            X-Ratelimit-Limit-Objects:
              description: The burst limit that specifies how many objects you can add to a request in excess of the imposed rate limit. This depends on the object type in the given request. See [Rate limiting](https://techdocs.akamai.com/purge-cache/reference/rate-limiting) for details.
              schema:
                example: 10000
                type: integer
              x-akamai:
                file-path: headers/x-ratelimit-limit-objects.yaml
            X-Ratelimit-Limit-Per-Second:
              description: Maximum sustainable number of requests allowed each second per account. See [Rate limiting](https://techdocs.akamai.com/purge-cache/reference/rate-limiting) for details.
              schema:
                example: 50
                type: number
              x-akamai:
                file-path: headers/x-ratelimit-limit-per-second.yaml
            X-Ratelimit-Limit-Per-Second-Objects:
              description: Maximum sustainable number of objects allowed each second per request. This depends on the object type in the given request. See [Rate limiting](https://techdocs.akamai.com/purge-cache/reference/rate-limiting) for details.
              schema:
                example: 200
                type: number
              x-akamai:
                file-path: headers/x-ratelimit-limit-per-second-objects.yaml
            X-Ratelimit-Remaining:
              description: The number of requests left before exceeding the limit, which results in the [429](https://techdocs.akamai.com/purge-cache/reference/429) error. See [Rate limiting](https://techdocs.akamai.com/purge-cache/reference/rate-limiting) for details.
              schema:
                example: 99
                type: integer
              x-akamai:
                file-path: headers/x-ratelimit-remaining.yaml
            X-Ratelimit-Remaining-Objects:
              description: The number of objects left before exceeding the limit, which results in the [429](https://techdocs.akamai.com/purge-cache/reference/429) error. This depends on the object type in the given request. See [Rate limiting](https://techdocs.akamai.com/purge-cache/reference/rate-limiting) for details.
              schema:
                example: 10000
                type: integer
              x-akamai:
                file-path: headers/x-ratelimit-remaining-objects.yaml
            X-Ratelimit-Seconds-To-Refresh-Limit:
              description: The minimum number of seconds to wait before you can send a request burst of size `X-Ratelimit-Limit`. See [Rate limiting](https://techdocs.akamai.com/purge-cache/reference/rate-limiting) for details.
              schema:
                example: 0.02
                type: number
              x-akamai:
                file-path: headers/x-ratelimit-seconds-to-refresh-limit.yaml
            X-Ratelimit-Seconds-To-Refresh-Limit-Objects:
              description: The minimum number of seconds to wait before you can send a request burst of size `X-Ratelimit-Limit-Objects`. See [Rate limiting](https://techdocs.akamai.com/purge-cache/reference/rate-limiting) for details.
              schema:
                example: 0
                type: number
              x-akamai:
                file-path: headers/x-ratelimit-seconds-to-refresh-limit-objects.yaml
        '400':
          content:
            application/api-problem+json:
              example:
                describedBy: https://techdocs.akamai.com/purge-cache/reference/api-errors
                detail: Invalid or malformed hostname
                httpStatus: 400
                supportId: edcp-NZbXzFpHBjcJeryhw6PVgG
                title: bad URL hostname
              schema:
                additionalProperties: true
                description: V3 Purge response schema.
                properties:
                  describedBy:
                    description: A URL that describes the API's error response.
                    type: string
                  detail:
                    description: Detailed information about the HTTP status code returned with the response.
                    type: string
                  estimatedSeconds:
                    description: The estimated number of seconds before the purge is to complete.
                    type: integer
                  httpStatus:
                    description: The HTTP code that indicates the status of the request to invalidate or purge content. Successful requests yield a `201` code.
                    type: integer
                  purgeId:
                    description: Unique identifier for the purge request.
                    type: string
                  supportId:
                    description: Identifier to provide Akamai Technical Support if issues arise.
                    type: string
                  title:
                    description: Describes the response type, for example, `Rate Limit exceeded`.
                    type: string
                required:
                - httpStatus
                - supportId
                - detail
                type: object
                x-akamai:
                  file-path: schemas/response.yaml
          description: '[Bad request](https://techdocs.akamai.com/purge-cache/reference/400).'
          x-akamai:
            file-path: errors/400.yaml
        '403':
          content:
            application/api-problem+json:
              example:
                describedBy: https://techdocs.akamai.com/purge-cache/reference/api-errors
                detail: http://fpj-test.bad-ideas2.org/
                httpStatus: 403
                supportId: edcp-NZbXzFpHBjcJeryhw6PVgG
                title: unauthorized arl
              schema:
                additionalProperties: true
                description: V3 Purge response schema.
                properties:
                  describedBy:
                    description: A URL that describes the API's error response.
                    type: string
                  detail:
                    description: Detailed information about the HTTP status code returned with the response.
                    type: string
                  estimatedSeconds:
                    description: The estimated number of seconds before the purge is to complete.
                    type: integer
                  httpStatus:
                    description: The HTTP code that indicates the status of the request to invalidate or purge content. Successful requests yield a `201` code.
                    type: integer
                  purgeId:
                    description: Unique identifier for the purge request.
                    type: string
                  supportId:
                    description: Identifier to provide Akamai Technical Support if issues arise.
                    type: string
                  title:
                    description: Describes the response type, for example, `Rate Limit exceeded`.
                    type: string
                required:
                - httpStatus
                - supportId
                - detail
                type: object
                x-akamai:
                  file-path: schemas/response.yaml
          description: '[Forbidden](https://techdocs.akamai.com/purge-cache/reference/403).'
          x-akamai:
            file-path: errors/403.yaml
        '429':
          content:
            application/api-problem+json:
              example:
                describedBy: https://techdocs.akamai.com/purge-cache/reference/api-errors
                detail: ''
                httpStatus: 429
                rateLimit: 10000
                rateLimitCurrentRequestSize: 110
                rateLimitRemaining: 94
                supportId: edup-NZbXzFpHBjcJeryhw6PVgG
                title: URL Rate Limit exceeded
              schema:
                additionalProperties: true
                description: V3 Purge response schema.
                properties:
                  describedBy:
                    description: A URL that describes the API's error response.
                    type: string
                  detail:
                    description: Detailed information about the HTTP status code returned with the response.
                    type: string
                  estimatedSeconds:
                    description: The estimated number of seconds before the purge is to complete.
                    type: integer
                  httpStatus:
                    description: The HTTP code that indicates the status of the request to invalidate or purge content. Successful requests yield a `201` code.
                    type: integer
                  purgeId:
                    description: Unique identifier for the purge request.
                    type: string
                  supportId:
                    description: Identifier to provide Akamai Technical Support if issues arise.
                    type: string
                  title:
                    description: Describes the response type, for example, `Rate Limit exceeded`.
                    type: string
                required:
                - httpStatus
                - supportId
                - detail
                type: object
                x-akamai:
                  file-path: schemas/response.yaml
          description: '[Too many requests](https://techdocs.akamai.com/purge-cache/reference/429).'
          x-akamai:
            file-path: errors/429-url.yaml
        '500':
          content:
            application/api-problem+json:
              example:
                describedBy: https://techdocs.akamai.com/purge-cache/reference/api-errors
                detail: If problem persists over multiple requests, please contact Customer Care
                httpStatus: 500
                supportId: edcp-NZbXzFpHBjcJeryhw6PVgG
                title: internal error
              schema:
                additionalProperties: true
                description: V3 Purge response schema.
                properties:
                  describedBy:
                    description: A URL that describes the API's error response.
                    type: string
                  detail:
                    description: Detailed information about the HTTP status code returned with the response.
                    type: string
                  estimatedSeconds:
                    description: The estimated number of seconds before the purge is to complete.
                    type: integer
                  httpStatus:
                    description: The HTTP code that indicates the status of the request to invalidate or purge content. Successful requests yield a `201` code.
                    type: integer
                  purgeId:
                    description: Unique identifier for the purge request.
                    type: string
                  supportId:
                    description: Identifier to provide Akamai Technical Support if issues arise.
                    type: string
                  title:
                    description: Describes the response type, for example, `Rate Limit exceeded`.
                    type: string
                required:
                - httpStatus
                - supportId
                - detail
                type: object
                x-akamai:
                  file-path: schemas/response.yaml
          description: '[Internal server error](https://techdocs.akamai.com/purge-cache/reference/500).'
          x-akamai:
            file-path: errors/500.yaml
      summary: Check rate and object limit statuses
      tags:
      - Rate limits
      x-akamai:
        supports-account-switch-key: false
externalDocs:
  description: See documentation for Akamai's API Endpoint Definition API
  url: https://techdocs.akamai.com/api-definitions/reference
x-readme:
  samples-languages:
  - curl
  - python
  - node