Akamai API Security Security policy: Evaluation mode API

Set the evaluation mode for your security policies. This mode runs concurrently with your existing Web Application Firewall Rule settings and records how the rules would respond if applied to live traffic.

OpenAPI Specification

akamai-api-security-security-policy-evaluation-mode-api-openapi.yml Raw ↑
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 Security policy: Evaluation mode API'
  version: v1
servers:
- url: https://{hostname}/appsec/v1
tags:
- description: 'Set the evaluation mode for your security policies.  This mode

    runs concurrently with your existing Web Application Firewall

    Rule settings and records how the rules would respond if applied

    to live traffic.'
  name: 'Security policy: Evaluation mode'
paths:
  /configs/{configId}/versions/{versionNumber}/security-policies/{policyId}/eval:
    parameters:
    - 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 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 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
    x-akamai:
      file-path: paths/policy-eval.yaml
      path-info: /configs/{configId}/versions/{versionNumber}/security-policies/{policyId}/eval
    post:
      description: 'Evaluation mode runs concurrently with your existing Web Application Firewall Rule settings and records how the rules would respond if they were applied to live traffic. The default action for evaluation rules is `alert`. Unlike other POST or PUT actions, this request object supports values other than `enabled` or `disabled`. Use `START` to begin evaluation mode. An evaluation period lasts four weeks unless you stop the evaluation. Once you begin, the rules you evaluate will respond to traffic as if they are your current rules. However, instead of taking an action the evaluation rules will log which action they would have taken if they were your active rules and not a test of future rules. Use `STOP` to end the evaluation before it completes on its own, and not upgrade your rules. Use `RESTART` to start an evaluation you previously stopped, or one that has expired. Use `COMPLETE` to stop your in-progress evaluation and automatically upgrade your existing KRS rules to the rule set you just evaluated. Use `UPDATE` to upgrade to the newest available version of evaluation rules. A request value of `START`, `RESTART`, or `COMPLETE` returns an `eval` value of `enabled`. A request value of `STOP` or `UPDATE` returns an `eval` value of `disabled`. _Products:_ Kona Site Defender, App & API Protector with the Advanced Security module.  If you''re using Adaptive Security Engine, pass `eval` as usual, and add `"mode": "ASE_AUTO"` or `ASE_MANUAL` in your request. If you''re using Kona Rule Sets, continue to pass only the `eval` value.'
      externalDocs:
        description: See documentation for this operation in Akamai's Application Security API
        url: https://techdocs.akamai.com/application-security/reference/post-policy-eval
      operationId: post-policy-eval
      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:
              eval: START
              mode: ASE_MANUAL
            schema:
              additionalProperties: false
              description: Contains setting for eval mode action.
              properties:
                eval:
                  description: Set `eval` to `start`, `stop`, `restart`, `complete`, or `update` to manage the evaluation of new rules you want to test before you upgrade. If you set `eval` to `start`, `restart`, or `update`, the response object will have an `eval` value of `enabled`. The value is `disabled` for requests of `stop` or `complete`. For more information see [Set evaluation mode](https://techdocs.akamai.com/application-security/reference/post-policy-eval).
                  enum:
                  - START
                  - STOP
                  - RESTART
                  - COMPLETE
                  - UPDATE
                  example: '{{eval}}'
                  type: string
                mode:
                  description: Optionally lets you specify between two Adaptive Security Engine (ASE) rule set types. Use `ASE_AUTO` for automatic updates to the ASE evaluation rules, or `ASE_MANUAL` to manually retrieve current evaluation rules. When not specified, the mode uses default settings. For a KRS 1.0 policy, that means using the KRS 1.0 rule set.
                  enum:
                  - ASE_AUTO
                  - ASE_MANUAL
                  example: '{{mode}}'
                  type: string
              required:
              - eval
              type: object
              x-akamai:
                file-path: schemas/eval-mode.yaml
        required: true
      responses:
        '201':
          content:
            application/json:
              example:
                current: ASE Manual (Mar 16, 2022)
                eval: enabled
                evaluating: ASE Manual (Mar 16, 2022)
                mode: ASE_MANUAL
              schema:
                additionalProperties: false
                description: Contains setting for eval mode action.
                properties:
                  eval:
                    description: Set `eval` to `start`, `stop`, `restart`, `complete`, or `update` to manage the evaluation of new rules you want to test before you upgrade. If you set `eval` to `start`, `restart`, or `update`, the response object will have an `eval` value of `enabled`. The value is `disabled` for requests of `stop` or `complete`. For more information see [Set evaluation mode](https://techdocs.akamai.com/application-security/reference/post-policy-eval).
                    enum:
                    - START
                    - STOP
                    - RESTART
                    - COMPLETE
                    - UPDATE
                    type: string
                  mode:
                    description: Optionally lets you specify between two Adaptive Security Engine (ASE) rule set types. Use `ASE_AUTO` for automatic updates to the ASE evaluation rules, or `ASE_MANUAL` to manually retrieve current evaluation rules. When not specified, the mode uses default settings. For a KRS 1.0 policy, that means using the KRS 1.0 rule set.
                    enum:
                    - ASE_AUTO
                    - ASE_MANUAL
                    type: string
                required:
                - eval
                type: object
                x-akamai:
                  file-path: schemas/eval-mode.yaml
          description: Successfully set the evaluation action in the specified security policy.
        '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 this security configuration.'
          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). Security configuration version wasn''t found.'
          x-akamai:
            file-path: errors/404.yaml
      summary: Akamai API Security Set Evaluation Mode
      tags:
      - 'Security policy: Evaluation mode'
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