Akamai URL protection policies API

Manage your URL protection policies.

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-url-protection-policies-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: 'Akamai: API Endpoint Definition Access tokens URL protection policies API'
  version: '2'
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  description: Manage your URL protection policies.
servers:
- url: https://{hostname}/api-definitions/v2
tags:
- description: Manage your URL protection policies.
  name: URL protection policies
paths:
  /configs/{configId}/versions/{versionNumber}/url-protections:
    parameters:
    - description: A unique identifier for each configuration.
      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.
      in: path
      name: versionNumber
      required: true
      schema:
        example: 25
        type: integer
      x-akamai:
        file-path: parameters/version-number-path.yaml
    x-akamai:
      file-path: paths/url-protections.yaml
      path-info: /configs/{configId}/versions/{versionNumber}/url-protections
    post:
      description: __All products__ Creates a new URL protection policy for a specific configuration version.
      externalDocs:
        description: See documentation for this operation in Akamai's Application Security API
        url: https://techdocs.akamai.com/application-security/reference/post-url-protection-policies
      operationId: post-url-protection-policies
      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).
        in: query
        name: accountSwitchKey
        required: false
        schema:
          example: 1-5C0YLB:1-8BYUX
          type: string
      requestBody:
        content:
          application/json:
            example:
              bypassCondition:
                atomicConditions:
                - className: NetworkListCondition
                  value:
                  - 12345_10CLIENTLIST
                  - '54321_123'
                - className: RequestHeaderCondition
                  name:
                  - my-custom-header
                  value:
                  - my-custom-value
              categories:
              - type: BOTS
              - type: CLOUD_PROVIDERS
              - type: PROXIES
              - type: TOR_EXIT_NODES
              - type: PLATFORM_DDOS_INTELLIGENCE
              - listIds:
                - 12345_10CLIENTLIST
                - '54321_123'
                positiveMatch: true
                type: CLIENT_LIST
              description: URL Protection
              hostnamePaths:
              - hostname: api.demo.com
                paths:
                - /login
                - /checkout
                - /history
              intelligentLoadShedding: true
              name: Transaction site protection
              protectionType: MULTIPLE
              rateThreshold: 195
              sheddingThresholdHitsPerSec: 150
            schema:
              additionalProperties: false
              description: Contains details about a URL protection policy.
              properties:
                apiDefinitions:
                  description: The API endpoints to match on in incoming requests. This only applies to the `api` `matchType`.
                  items:
                    additionalProperties: false
                    properties:
                      apiDefinitionId:
                        description: Uniquely identifies each API endpoint.
                        format: int64
                        type: integer
                      definedResources:
                        description: When `true`, match on any resource explicitly added to your API definition without including a `resourceId`. When `false`, you'll need to pass a `resourceId`.
                        type: boolean
                      resourceIds:
                        description: The unique identifiers of the endpoint's resources.
                        items:
                          format: int64
                          type: integer
                        type: array
                      undefinedResources:
                        description: When `true`, match on any resource you have not explicitly added to your API definition without including a `resourceId`.  When `false`, you'll need to pass a `resourceId`.
                        type: boolean
                    required:
                    - apiDefinitionId
                    type: object
                  type: array
                bypassCondition:
                  additionalProperties: false
                  description: Exempts specific clients from being processed by the URL protection policy.
                  properties:
                    atomicConditions:
                      description: Specify one or more types of conditions to match on. You can match on client lists, request headers, or both.
                      items:
                        oneOf:
                        - additionalProperties: false
                          description: Collects data needed for condition matches on request headers.
                          properties:
                            className:
                              description: Choose `RequestHeaderCondition` to match a header from the requesting client to the specified header.
                              enum:
                              - RequestHeaderCondition
                              type: string
                            name:
                              description: Use `name` to check whether the specified header exists.
                              items:
                                minLength: 1
                                type: string
                              minItems: 1
                              type: array
                              uniqueItems: true
                            nameWildcard:
                              description: Whether to interpret `?` and `*` as wildcards in the specified `name`.
                              type: boolean
                            positiveMatch:
                              description: __Read-only__ Whether the condition triggers on a match or lack of match.
                              readOnly: true
                              type: boolean
                            value:
                              description: A list of unique header values. Use both `value` and `name` to check whether the requesting client’s header matches the specified headers.
                              items:
                                minLength: 1
                                type: string
                              nullable: true
                              type: array
                              uniqueItems: true
                            valueCase:
                              description: Whether to consider case when matching header values, `true` for case-sensitive matches.
                              type: boolean
                            valueWildcard:
                              description: Whether to interpret `?` and `*` as wildcards in the specified `value`.
                              type: boolean
                          required:
                          - className
                          - name
                          title: RequestHeaderCondition
                          type: object
                          x-akamai:
                            file-path: schemas/url-protection-bypass-request-header-condition.yaml
                        - additionalProperties: false
                          description: Collects data needed for condition matches on client lists and network lists.
                          properties:
                            checkIps:
                              description: __Read-only__ Whether the connecting IP or both the connecting IP and `X-Forwarded-For` (XFF) header match on the client list or network list. URL protection bypass supports `connecting` only.
                              enum:
                              - connecting
                              readOnly: true
                              type: string
                            className:
                              description: Choose `NetworkListCondition` to match the requesting client's identifier, like IP, GEO, ASN or TLS Fingerprint, against the specified client list or network list.
                              enum:
                              - NetworkListCondition
                              type: string
                            positiveMatch:
                              description: __Read-only__ Whether the condition triggers on a match or lack of match.
                              readOnly: true
                              type: boolean
                            value:
                              description: Identifies the client list or network list.
                              items:
                                minLength: 1
                                type: string
                              nullable: true
                              type: array
                              uniqueItems: true
                          required:
                          - className
                          - value
                          title: NetworkListCondition
                          type: object
                          x-akamai:
                            file-path: schemas/url-protection-bypass-client-list-condition.yaml
                      minItems: 1
                      type: array
                  type: object
                categories:
                  description: The traffic categories to perform load shedding on when the origin traffic rate exceeds the load shedding threshold. If `intelligentLoadShedding` is set to `true`, specify one or more categories.
                  items:
                    oneOf:
                    - additionalProperties: false
                      description: Specify one or more load shedding categories for the URL protection policy.
                      properties:
                        type:
                          description: Specify the type of traffic to shed first before reaching the requests per second (RPS) limit. `BOTS` includes bots from Akamai's existing list of known bots. `CLIENT_REPUTATIONS` includes traffic from clients with a bad client reputation score. `CLOUD_PROVIDERS` includes traffic from providers like AWS, Microsoft Azure, and Google Cloud. `PROXIES` includes proxy traffic as determined by IPQualityScore (IPQS) and Akamai EdgeScape. `TOR_EXIT_NODES` includes traffic defined in Akamai's existing network list of nodes. `PLATFORM_DDOS_INTELLIGENCE` includes traffic detected by Akamai's DDOS Intelligence platform.
                          enum:
                          - BOTS
                          - CLIENT_REPUTATIONS
                          - CLOUD_PROVIDERS
                          - PROXIES
                          - TOR_EXIT_NODES
                          - PLATFORM_DDOS_INTELLIGENCE
                          type: string
                      required:
                      - type
                      title: Client list category
                      type: object
                      x-akamai:
                        file-path: schemas/url-protection-category.yaml
                    - additionalProperties: false
                      description: Defines a `CLIENT_LIST` load shedding category for a URL protection policy.
                      properties:
                        listIds:
                          description: A list of client list identifiers to match on.
                          items:
                            type: string
                          type: array
                        positiveMatch:
                          description: Whether the selected client lists match.
                          type: boolean
                        type:
                          description: Specify `CLIENT_LIST` to match on a client list.
                          enum:
                          - CLIENT_LIST
                          type: string
                      required:
                      - type
                      title: Other categories
                      type: object
                      x-akamai:
                        file-path: schemas/url-protection-client-list-category.yaml
                  type: array
                configId:
                  description: Uniquely identifies the security configuration.
                  format: int64
                  type: integer
                configVersion:
                  description: The security configuration version.
                  type: integer
                createDate:
                  description: __Read-only__ The timestamp when you created the URL protection policy.
                  format: date-time
                  readOnly: true
                  type: string
                createdBy:
                  description: __Read-only__ The username of the person who created the URL protection policy.
                  readOnly: true
                  type: string
                description:
                  description: A description of the rate policy.
                  type: string
                hostnamePaths:
                  description: The hostname and path combinations to match on.
                  items:
                    additionalProperties: false
                    description: The hostname and path combinations to match on.
                    properties:
                      hostname:
                        description: The hostnames you choose to match on.
                        type: string
                      paths:
                        description: The list of paths to match on.
                        items:
                          type: string
                        type: array
                    required:
                    - hostname
                    - paths
                    type: object
                    x-akamai:
                      file-path: schemas/url-protection-policy-hostpath.yaml
                  minItems: 1
                  type: array
                intelligentLoadShedding:
                  description: Enable or disable intelligent load shedding. If enabled, traffic that matches the load shedding categories is eligible for shedding if the origin rate exceeds the load shedding threshold.
                  type: boolean
                name:
                  description: The rate policy's unique name.
                  type: string
                policyId:
                  description: __Read-only__ Uniquely identifies the URL protection policy.
                  format: int64
                  readOnly: true
                  type: integer
                protectionType:
                  description: If matching on `hostnamePaths`, specify `SINGLE` to match on a hostname and path, or `MULTIPLE` to match on hostname and path combinations.
                  enum:
                  - SINGLE
                  - MULTIPLE
                  type: string
                rateThreshold:
                  description: The allowed hits per second during any five-second interval.
                  type: integer
                sheddingThresholdHitsPerSec:
                  description: Specify the threshold value, in hits per second, after which traffic can be shed. The `sheddingThresholdHitsPerSec` value must be between 25%-90% of the `rateThreshold` value. If you enabled `intelligentLoadShedding`, this value is required.
                  type: integer
                updateDate:
                  description: __Read-only__ The ISO 8601 timestamp when you last updated the URL protection policy.
                  format: date-time
                  readOnly: true
                  type: string
                updatedBy:
                  description: __Read-only__ Username who last updated the URL protection policy.
                  readOnly: true
                  type: string
                used:
                  description: __Read-only__ Whether you're currently using the URL protection policy.
                  readOnly: true
                  type: boolean
              required:
              - intelligentLoadShedding
              - rateThreshold
              - name
              type: object
              x-akamai:
                file-path: schemas/url-protection-policy.yaml
        required: true
      responses:
        '201':
          content:
            application/json:
              example:
                bypassCondition:
                  atomicConditions:
                  - checkIps: connecting
                    className: NetworkListCondition
                    positiveMatch: true
                    value:
                    - 12345_10CLIENTLIST
                    - '54321_123'
                  - className: RequestHeaderCondition
                    name:
                    - my-custom-header
                    nameWildcard: false
                    positiveMatch: true
                    value:
                    - my-custom-value
                    valueCase: false
                    valueWildcard: false
                categories:
                - type: BOTS
                - listIds:
                  - 12345_10CLIENTLIST
                  - '54321_123'
                  positiveMatch: true
                  type: CLIENT_LIST
                - listIds:
                  - 16656_CPISERVERS
                  positiveMatch: true
                  type: CLIENT_LIST
                - type: CLOUD_PROVIDERS
                - type: PROXIES
                - type: TOR_EXIT_NODES
                - type: PLATFORM_DDOS_INTELLIGENCE
                configId: 43007
                configVersion: 40
                createDate: '2023-04-14T18:58:53Z'
                createdBy: jsmith
                description: URL Protection
                hostnamePaths:
                - hostname: custom.com
                  paths:
                  - /asd
                  - /my-test-path
                intelligentLoadShedding: true
                name: URL Protection
                policyId: 681
                protectionType: MULTIPLE
                rateThreshold: 195
                sheddingThresholdHitsPerSec: 150
                updateDate: '2023-04-26T02:42:28Z'
                updatedBy: jperez
                used: true
              schema:
                additionalProperties: false
                description: Contains details about a URL protection policy.
                properties:
                  apiDefinitions:
                    description: The API endpoints to match on in incoming requests. This only applies to the `api` `matchType`.
                    items:
                      additionalProperties: false
                      properties:
                        apiDefinitionId:
                          description: Uniquely identifies each API endpoint.
                          format: int64
                          type: integer
                        definedResources:
                          description: When `true`, match on any resource explicitly added to your API definition without including a `resourceId`. When `false`, you'll need to pass a `resourceId`.
                          type: boolean
                        resourceIds:
                          description: The unique identifiers of the endpoint's resources.
                          items:
                            format: int64
                            type: integer
                          type: array
                        undefinedResources:
                          description: When `true`, match on any resource you have not explicitly added to your API definition without including a `resourceId`.  When `false`, you'll need to pass a `resourceId`.
                          type: boolean
                      required:
                      - apiDefinitionId
                      type: object
                    type: array
                  bypassCondition:
                    additionalProperties: false
                    description: Exempts specific clients from being processed by the URL protection policy.
                    properties:
                      atomicConditions:
                        description: Specify one or more types of conditions to match on. You can match on client lists, request headers, or both.
                        items:
                          oneOf:
                          - additionalProperties: false
                            description: Collects data needed for condition matches on request headers.
                            properties:
                              className:
                                description: Choose `RequestHeaderCondition` to match a header from the requesting client to the specified header.
                                enum:
                                - RequestHeaderCondition
                                type: string
                              name:
                                description: Use `name` to check whether the specified header exists.
                                items:
                                  minLength: 1
                                  type: string
                                minItems: 1
                                type: array
                                uniqueItems: true
                              nameWildcard:
                                description: Whether to interpret `?` and `*` as wildcards in the specified `name`.
                                type: boolean
                              positiveMatch:
                                description: __Read-only__ Whether the condition triggers on a match or lack of match.
                                readOnly: true
                                type: boolean
                              value:
                                description: A list of unique header values. Use both `value` and `name` to check whether the requesting client’s header matches the specified headers.
                                items:
                                  minLength: 1
                                  type: string
                                nullable: true
                                type: array
                                uniqueItems: true
                              valueCase:
                                description: Whether to consider case when matching header values, `true` for case-sensitive matches.
                                type: boolean
                              valueWildcard:
                                description: Whether to interpret `?` and `*` as wildcards in the specified `value`.
                                type: boolean
                            required:
                            - className
                            - name
                            title: RequestHeaderCondition
                            type: object
                            x-akamai:
                              file-path: schemas/url-protection-bypass-request-header-condition.yaml
                          - additionalProperties: false
                            description: Collects data needed for condition matches on client lists and network lists.
                            properties:
                              checkIps:
                                description: __Read-only__ Whether the connecting IP or both the connecting IP and `X-Forwarded-For` (XFF) header match on the client list or network list. URL protection bypass supports `connecting` only.
                                enum:
                                - connecting
                                readOnly: true
                                type: string
                              className:
                                description: Choose `NetworkListCondition` to match the requesting client's identifier, like IP, GEO, ASN or TLS Fingerprint, against the specified client list or network list.
                                enum:
                                - NetworkListCondition
                                type: string
                              positiveMatch:
                                description: __Read-only__ Whether the condition triggers on a match or lack of match.
                                readOnly: true
                                type: boolean
                              value:
                                description: Identifies the client list or network list.
                                items:
                                  minLength: 1
                                  type: string
                                nullable: true
                                type: array
                                uniqueItems: true
                            required:
                            - className
                            - value
                            title: NetworkListCondition
                            type: object
                            x-akamai:
                              file-path: schemas/url-protection-bypass-client-list-condition.yaml
                        minItems: 1
                        type: array
                    type: object
                  categories:
                    description: The traffic categories to perform load shedding on when the origin traffic rate exceeds the load shedding threshold. If `intelligentLoadShedding` is set to `true`, specify one or more categories.
                    items:
                      oneOf:
                      - additionalProperties: false
                        description: Specify one or more load shedding categories for the URL protection policy.
                        properties:
                          type:
                            description: Specify the type of traffic to shed first before reaching the requests per second (RPS) limit. `BOTS` includes bots from Akamai's existing list of known bots. `CLIENT_REPUTATIONS` includes traffic from clients with a bad client reputation score. `CLOUD_PROVIDERS` includes traffic from providers like AWS, Microsoft Azure, and Google Cloud. `PROXIES` includes proxy traffic as determined by IPQualityScore (IPQS) and Akamai EdgeScape. `TOR_EXIT_NODES` includes traffic defined in Akamai's existing network list of nodes. `PLATFORM_DDOS_INTELLIGENCE` includes traffic detected by Akamai's DDOS Intelligence platform.
                            enum:
                            - BOTS
                            - CLIENT_REPUTATIONS
                            - CLOUD_PROVIDERS
                            - PROXIES
                            - TOR_EXIT_NODES
                            - PLATFORM_DDOS_INTELLIGENCE
                            type: string
                        required:
                        - type
                        title: Client list category
                        type: object
                        x-akamai:
                          file-path: schemas/url-protection-category.yaml
                      - additionalProperties: false
                        description: Defines a `CLIENT_LIST` load shedding category for a URL protection policy.
                        properties:
                          listIds:
                            description: A list of client list identifiers to match on.
                            items:
                              type: string
                            type: array
                          positiveMatch:
                            description: Whether the selected client lists match.
                            type: boolean
                          type:
                            description: Specify `CLIENT_LIST` to match on a client list.
                            enum:
                            - CLIENT_LIST
                            type: string
                        required:
                        - type
                        title: Other categories
                        type: object
                        x-akamai:
                          file-path: schemas/url-protection-client-list-category.yaml
                    type: array
                  configId:
                    description: Uniquely identifies the security configuration.
                    format: int64
                    type: integer
                  configVersion:
                    description: The security configuration version.
                    type: integer
                  createDate:
                    description: __Read-only__ The timestamp when you created the URL protection policy.
                    format: date-time
                    readOnly: true
                    type: string
                  createdBy:
                    description: __Read-only__ The username of the person who created the URL protection policy.
                    readOnly: true
                    type: string
                  description:
                    description: A description of the rate policy.
                    type: string
                  hostnamePaths:
                    description: The hostname and path combinations to match on.
                    items:
                      additionalProperties: false
                      description: The hostname and path combinations to match on.
                      properties:
                        hostname:
                          description: The hostnames you choose to match on.
                          type: string
                        paths:
                          description: The list of paths to match on.
                          items:
                            type: string
                          type: array
                      required:
                      - hostname
                      - paths
                      type: object
                      x-akamai:
                        file-path: schemas/url-protection-policy-hostpath.yaml
                    minItems: 1
                    type: array
                  intelligentLoadShedding:
                    description: Enable or disable intelligent load shedding. If enabled, traffic that matches the load shedding categories is eligible for shedding if the origin rate exceeds the load shedding threshold.
                    type: boolean
                  name:
                    description: The rate policy's unique name.
                    type: string
                  policyId:
                    description: __Read-only__ Uniquely identifies the URL protection policy.
                    format: int64
                    readOnly: true
                    type: integer
                  protectionType:
                    description: If matching on `hostnamePaths`, specify `SINGLE` to match on a hostname and path, or `MULTIPLE` to match on hostname and path combinations.
                    enum:
                    - SINGLE
                    - MULTIPLE
                    type: string
                  rateThreshold:
                    description: The allowed hits per second during any five-second interval.
                    type: integer
                  sheddingThresholdHitsPerSec:
                    description: Specify the threshold value, in hits per second, after which traffic can be shed. The `sheddingThresholdHitsPerSec` value must be between 25%-90% of the `rateThreshold` value. If you enabled `intelligentLoadShedding`, this value is required.
                    type: integer
                  updateDate:
                    description: __Read-only__ The ISO 8601 timestamp when you last updated the URL protection policy.
                    format: date-time
                    readOnly: true
                    type: string
                  updatedBy:
                    description: __Read-only__ Username who last updated the URL protection policy.
                    readOnly: true
                    type: string
                 

# --- truncated at 32 KB (129 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/akamai/refs/heads/main/openapi/akamai-url-protection-policies-api-openapi.yml