Akamai API Security Shared resources: Reputation profiles API

Manage your reputation profiles. Reputation protections identify potentially malicious IP addresses, scoring them based on prior interactions with other Akamai customers.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/akamai-api-security-shared-resources-reputation-profiles-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

akamai-api-security-shared-resources-reputation-profiles-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 Shared resources: Reputation profiles API'
  version: v1
servers:
- url: https://{hostname}/appsec/v1
tags:
- description: 'Manage your reputation profiles.  Reputation protections

    identify potentially malicious IP addresses, scoring them based

    on prior interactions with other Akamai customers.'
  name: 'Shared resources: Reputation profiles'
paths:
  /configs/{configId}/versions/{versionNumber}/reputation-profiles:
    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
    x-akamai:
      file-path: paths/config-reputation-profiles.yaml
      path-info: /configs/{configId}/versions/{versionNumber}/reputation-profiles
    post:
      description: Create a new reputation profile for a specific configuration version. _Products:_ Kona Site Defender, App & API Protector with the Advanced Security module.
      externalDocs:
        description: See documentation for this operation in Akamai's Application Security API
        url: https://techdocs.akamai.com/application-security/reference/post-reputation-profiles
      operationId: post-reputation-profiles
      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:
              condition:
                atomicConditions:
                - className: AsNumberCondition
                  positiveMatch: true
                  value:
                  - '1'
                - className: RequestCookieCondition
                  name: x-header
                  nameCase: true
                  nameWildcard: true
                  positiveMatch: true
                  valueWildcard: true
                - className: HostCondition
                  host:
                  - '*.com'
                  positiveMatch: true
                  valueWildcard: true
                positiveMatch: true
              context: WEBATCK
              description: Reputation profile description
              name: Web Attack Rep Profile
              sharedIpHandling: NON_SHARED
              threshold: 5
            schema:
              additionalProperties: false
              description: Contains details about a reputation profile.
              properties:
                condition:
                  additionalProperties: false
                  description: Contains information about the criteria that trigger the reputation profile.
                  properties:
                    atomicConditions:
                      description: The conditions that trigger the reputation profile.
                      items:
                        additionalProperties: false
                        properties:
                          positiveMatch:
                            description: Whether the condition should trigger on a match (`true`) or a lack of match (`false`).
                            type: boolean
                          type:
                            description: The condition type. For available values, see [Condition Values](https://techdocs.akamai.com/application-security/reference/condition-values).
                            enum:
                            - NetworkListCondition
                            - AsNumberCondition
                            - IpAddressCondition
                            - RequestCookieCondition
                            - RequestHeaderCondition
                            - HostCondition
                            - UrlPatternCondition
                            type: string
                          value:
                            description: The list of values that trigger the condition.
                            items:
                              type: string
                            minItems: 1
                            type: array
                            uniqueItems: true
                          valueCase:
                            default: false
                            description: Whether to consider the character case when comparing the value string with the request value. The default is `false`, meaning that a value such as `url` would match a string `UrL` in the request.
                            type: boolean
                          valueWildcard:
                            default: true
                            description: Whether to treat the asterisk (`*`) and question mark (`?`) as wildcards when comparing the value string with the request value. Note that setting this to `false` isn't supported by the host condition, and means that the value string must match exactly.
                            type: boolean
                        type: object
                      type: array
                    positiveMatch:
                      description: Whether the condition should trigger on a match (`true`) or a lack of match (`false`).
                      type: boolean
                  type: object
                context:
                  description: Identifies the reputation category. Web scrapers (`WEBSCRP`) crawl sites and collect data like hotel rates, product prices, store locations, and more. DoS attackers (`DOSATCK`) are web clients or botnets that use automated tools to launch volumetric Denial of Service (DoS) attacks. Web attackers (`WEBATCK`) target websites and web apps with techniques like SQL injection, remote file inclusion, or cross-site scripting. Scanning tools (`SCANTL`) probe web apps for vulnerabilities during an attack's reconnaissance phase.
                  enum:
                  - WEBSCRP
                  - DOSATCK
                  - WEBATCK
                  - SCANTL
                  example: '{{context}}'
                  type: string
                contextReadable:
                  description: __Read-only__ Describes the reputation category.
                  example: '{{contextReadable}}'
                  readOnly: true
                  type: string
                description:
                  description: Describes the reputation profile.
                  example: '{{description}}'
                  type: string
                enabled:
                  description: __Read-only__ Whether you enabled the reputation profile.
                  example: '{{enabled}}'
                  readOnly: true
                  type: boolean
                id:
                  description: __Read-only__ Uniquely identifies the reputation profile.
                  example: '{{id}}'
                  readOnly: true
                  type: integer
                name:
                  description: The name you assigned to the reputation profile.
                  example: '{{name}}'
                  type: string
                sharedIpHandling:
                  description: Identifies the IP sharing. Either `NON_SHARED`, `SHARED_ONLY`, `BOTH`.
                  enum:
                  - NON_SHARED
                  - SHARED_ONLY
                  - BOTH
                  example: '{{sharedIpHandling}}'
                  type: string
                threshold:
                  description: The threshold when the profile to triggers.
                  example: '{{threshold}}'
                  type: number
              required:
              - name
              - context
              - threshold
              - sharedIpHandling
              type: object
              x-akamai:
                file-path: schemas/reputation-profile.yaml
        required: true
      responses:
        '201':
          content:
            application/json:
              example:
                condition:
                  atomicConditions:
                  - checkIps: connecting
                    className: AsNumberCondition
                    index: 1
                    positiveMatch: true
                    value:
                    - '1'
                  - className: RequestCookieCondition
                    index: 2
                    name: x-header
                    nameCase: true
                    nameWildcard: true
                    positiveMatch: true
                    valueCase: false
                    valueWildcard: true
                  - className: HostCondition
                    host:
                    - '*.com'
                    index: 3
                    positiveMatch: true
                    valueWildcard: true
                  positiveMatch: true
                context: WEBATCK
                description: Reputation profile description
                enabled: false
                id: 2509987
                name: Web Attack Rep Profile
                sharedIpHandling: NON_SHARED
                threshold: 5
              schema:
                additionalProperties: false
                description: Contains details about a reputation profile.
                properties:
                  condition:
                    additionalProperties: false
                    description: Contains information about the criteria that trigger the reputation profile.
                    properties:
                      atomicConditions:
                        description: The conditions that trigger the reputation profile.
                        items:
                          additionalProperties: false
                          properties:
                            positiveMatch:
                              description: Whether the condition should trigger on a match (`true`) or a lack of match (`false`).
                              type: boolean
                            type:
                              description: The condition type. For available values, see [Condition Values](https://techdocs.akamai.com/application-security/reference/condition-values).
                              enum:
                              - NetworkListCondition
                              - AsNumberCondition
                              - IpAddressCondition
                              - RequestCookieCondition
                              - RequestHeaderCondition
                              - HostCondition
                              - UrlPatternCondition
                              type: string
                            value:
                              description: The list of values that trigger the condition.
                              items:
                                type: string
                              minItems: 1
                              type: array
                              uniqueItems: true
                            valueCase:
                              default: false
                              description: Whether to consider the character case when comparing the value string with the request value. The default is `false`, meaning that a value such as `url` would match a string `UrL` in the request.
                              type: boolean
                            valueWildcard:
                              default: true
                              description: Whether to treat the asterisk (`*`) and question mark (`?`) as wildcards when comparing the value string with the request value. Note that setting this to `false` isn't supported by the host condition, and means that the value string must match exactly.
                              type: boolean
                          type: object
                        type: array
                      positiveMatch:
                        description: Whether the condition should trigger on a match (`true`) or a lack of match (`false`).
                        type: boolean
                    type: object
                  context:
                    description: Identifies the reputation category. Web scrapers (`WEBSCRP`) crawl sites and collect data like hotel rates, product prices, store locations, and more. DoS attackers (`DOSATCK`) are web clients or botnets that use automated tools to launch volumetric Denial of Service (DoS) attacks. Web attackers (`WEBATCK`) target websites and web apps with techniques like SQL injection, remote file inclusion, or cross-site scripting. Scanning tools (`SCANTL`) probe web apps for vulnerabilities during an attack's reconnaissance phase.
                    enum:
                    - WEBSCRP
                    - DOSATCK
                    - WEBATCK
                    - SCANTL
                    type: string
                  contextReadable:
                    description: __Read-only__ Describes the reputation category.
                    readOnly: true
                    type: string
                  description:
                    description: Describes the reputation profile.
                    type: string
                  enabled:
                    description: __Read-only__ Whether you enabled the reputation profile.
                    readOnly: true
                    type: boolean
                  id:
                    description: __Read-only__ Uniquely identifies the reputation profile.
                    readOnly: true
                    type: integer
                  name:
                    description: The name you assigned to the reputation profile.
                    type: string
                  sharedIpHandling:
                    description: Identifies the IP sharing. Either `NON_SHARED`, `SHARED_ONLY`, `BOTH`.
                    enum:
                    - NON_SHARED
                    - SHARED_ONLY
                    - BOTH
                    type: string
                  threshold:
                    description: The threshold when the profile to triggers.
                    type: number
                required:
                - name
                - context
                - threshold
                - sharedIpHandling
                type: object
                x-akamai:
                  file-path: schemas/reputation-profile.yaml
          description: Successfully created a  reputation profile.
        '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 reputation profiles in 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 Create a Reputation Profile
      tags:
      - 'Shared resources: Reputation profiles'
    get:
      description: Returns reputation profiles for a specific security configuration version. To use reputation profiles, you need to add [Client Reputation](https://techdocs.akamai.com/app-api-protector/docs/control-client-reputation) to Kona Site Defender on your contract. _Products:_ Kona Site Defender, App & API Protector with the Advanced Security module.
      externalDocs:
        description: See documentation for this operation in Akamai's Application Security API
        url: https://techdocs.akamai.com/application-security/reference/get-reputation-profiles
      operationId: get-reputation-profiles
      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:
                reputationProfiles:
                - context: SCANTL
                  contextReadable: Scanning Tools
                  enabled: false
                  id: 146254
                  name: Scanning Tools (High Threat)
                  sharedIpHandling: NON_SHARED
                  threshold: 9
                - context: WEBATCK
                  contextReadable: Web Attackers
                  enabled: false
                  id: 146258
                  name: Web Attackers (Low Threat)
                  sharedIpHandling: SHARED_ONLY
                  threshold: 5
                - condition:
                    atomicConditions:
                    - className: RequestCookieCondition
                      name: cookie
                      nameWildcard: true
                      positiveMatch: true
                      value:
                      - cookie
                      valueWildcard: true
                    description: Rep condition description
                    id: '2156'
                    name: Rep condition
                    positiveMatch: true
                  context: WEBATCK
                  contextReadable: Web Attackers
                  description: this is a customized reputation profile
                  enabled: true
                  id: 146259
                  name: Custom Reputation Profile
                  sharedIpHandling: SHARED_ONLY
                  threshold: 3
              schema:
                additionalProperties: false
                description: Contains details about reputation profiles.
                properties:
                  reputationProfiles:
                    description: A list of reputation profiles in this configuration version.
                    items:
                      additionalProperties: false
                      description: Contains details about a reputation profile.
                      properties:
                        condition:
                          additionalProperties: false
                          description: Contains information about the criteria that trigger the reputation profile.
                          properties:
                            atomicConditions:
                              description: The conditions that trigger the reputation profile.
                              items:
                                additionalProperties: false
                                properties:
                                  positiveMatch:
                                    description: Whether the condition should trigger on a match (`true`) or a lack of match (`false`).
                                    type: boolean
                                  type:
                                    description: The condition type. For available values, see [Condition Values](https://techdocs.akamai.com/application-security/reference/condition-values).
                                    enum:
                                    - NetworkListCondition
                                    - AsNumberCondition
                                    - IpAddressCondition
                                    - RequestCookieCondition
                                    - RequestHeaderCondition
                                    - HostCondition
                                    - UrlPatternCondition
                                    type: string
                                  value:
                                    description: The list of values that trigger the condition.
                                    items:
                                      type: string
                                    minItems: 1
                                    type: array
                                    uniqueItems: true
                                  valueCase:
                                    default: false
                                    description: Whether to consider the character case when comparing the value string with the request value. The default is `false`, meaning that a value such as `url` would match a string `UrL` in the request.
                                    type: boolean
                                  valueWildcard:
                                    default: true
                                    description: Whether to treat the asterisk (`*`) and question mark (`?`) as wildcards when comparing the value string with the request value. Note that setting this to `false` isn't supported by the host condition, and means that the value string must match exactly.
                                    type: boolean
                                type: object
                              type: array
                            positiveMatch:
                              description: Whether the condition should trigger on a match (`true`) or a lack of match (`false`).
                              type: boolean
                          type: object
                        context:
                          description: Identifies the reputation category. Web scrapers (`WEBSCRP`) crawl sites and collect data like hotel rates, product prices, store locations, and more. DoS attackers (`DOSATCK`) are web clients or botnets that use automated tools to launch volumetric Denial of Service (DoS) attacks. Web attackers (`WEBATCK`) target websites and web apps with techniques like SQL injection, remote file inclusion, or cross-site scripting. Scanning tools (`SCANTL`) probe web apps for vulnerabilities during an attack's reconnaissance phase.
                          enum:
                          - WEBSCRP
                          - DOSATCK
                          - WEBATCK
                          - SCANTL
                          type: string
                        contextReadable:
                          description: __Read-only__ Describes the reputation category.
                          readOnly: true
                          type: string
                        description:
                          description: Describes the reputation profile.
                          type: string
                        enabled:
                          description: __Read-only__ Whether you enabled the reputation profile.
                          readOnly: true
                          type: boolean
                        id:
                          description: __Read-only__ Uniquely identifies the reputation profile.
                          readOnly: true
                          type: integer
                        name:
                          description: The name you assigned to the reputation profile.
                          type: string
                        sharedIpHandling:
                          description: Identifies the IP sharing. Either `NON_SHARED`, `SHARED_ONLY`, `BOTH`.
                          enum:
                          - NON_SHARED
                          - SHARED_ONLY
                          - BOTH
                          type: string
                        threshold:
                          description: The threshold when the profile to triggers.
                          type: number
                      required:
                      - name
                      - context
                      - threshold
                      - sharedIpHandling
                      type: object
                      x-akamai:
                        file-path: schemas/reputation-profile.yaml
                    type: array
                type: object
                x-akamai:
                  file-path: schemas/reputation-profiles.yaml
          description: Successfully returned reputation profiles.
        '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 p

# --- truncated at 32 KB (76 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/akamai-api-security/refs/heads/main/openapi/akamai-api-security-shared-resources-reputation-profiles-api-openapi.yml