Akamai Contracts and groups API

The Contracts and groups API from Akamai — 4 operation(s) for contracts and groups.

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-contracts-and-groups-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: 'Akamai: API Endpoint Definition Access tokens Contracts and groups API'
  version: '2'
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
servers:
- url: https://{hostname}/api-definitions/v2
tags:
- name: Contracts and groups
paths:
  /contracts/groups:
    get:
      description: You provision each API endpoint within the context of your contract with Akamai and a Control Center portal group. The response objects encapsulate pairings of contract and group identifiers available within the scope of the user who provisioned the API token, as described in [Get started](https://techdocs.akamai.com/api-definitions/reference/api-get-started).
      operationId: get-contracts-groups
      summary: List contracts and groups
      tags:
      - Contracts and groups
      externalDocs:
        description: See documentation for this operation in Akamai's API Endpoint Definition API
        url: https://techdocs.akamai.com/api-definitions/reference/get-contracts-groups
      responses:
        '200':
          description: The response lists combined contracts and groups you can use for API definitions.
          content:
            application/json:
              schema:
                description: The collection of pairings of contracts and groups under which you provision the security and delivery settings for an endpoint.
                type: array
                items:
                  additionalProperties: false
                  description: Contains information about a pairing of contract and group under which you provision the security and delivery settings for an endpoint.
                  type: object
                  properties:
                    acgId:
                      description: The unique identifier for the pairing of contract and group.
                      type: string
                    contractId:
                      description: The unique identifier for the Akamai contract within the pairing.
                      type: string
                    displayName:
                      description: The descriptive name for the pairing of contract and group.
                      type: string
                    groupId:
                      description: The unique identifier for the group within the pairing.
                      type: number
                  x-akamai:
                    file-path: schemas/aCGPickerRow.yaml
                x-akamai:
                  file-path: schemas/aCGPickerRows.yaml
              example:
              - acgId: 3-1Cgoa
                contractId: K-0N7RAK7
                displayName: Bookstore Users
                groupId: 58220
              - acgId: 3-1Cgoa.G75683
                contractId: C-0N7RAC7
                displayName: Bookstore Users - Developers
                groupId: 75683
        '403':
          description: You don't have permission to edit the API endpoint.
          content:
            application/problem+json:
              schema:
                additionalProperties: false
                description: Contains debugging information for error responses.
                type: object
                properties:
                  detail:
                    description: The detailed error message.
                    type: string
                  errors:
                    description: The collection of nested error responses.
                    type: array
                    items:
                      additionalProperties: false
                      description: A further nested problem detail object.
                      type: object
                      x-akamai:
                        file-path: schemas/httpProblemDetails-recurse.yaml
                  instance:
                    description: The non-referenceable URL for 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 title of the error.
                    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
                x-akamai:
                  file-path: schemas/httpProblemDetails.yaml
      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
  /contracts/{contractId}/groups/{groupId}/hosts:
    parameters:
    - description: The unique identifier for the group.
      example: '{{groupId}}'
      in: path
      name: groupId
      required: true
      schema:
        type: integer
      x-akamai:
        file-path: parameters/groupId-path.yaml
    - description: The unique identifier for the contract.
      example: '{{contractId}}'
      in: path
      name: contractId
      required: true
      schema:
        type: string
      x-akamai:
        file-path: parameters/contractId-path.yaml
    get:
      description: Lists all hostnames through which API consumers can access an endpoint service under a given contract and group pairing. You can use Property Manager (or [PAPI](https://techdocs.akamai.com/property-mgr/reference/api)) to create new hostnames to make available to users.
      operationId: get-contract-group-hosts
      summary: List hostnames
      tags:
      - Contracts and groups
      externalDocs:
        description: See documentation for this operation in Akamai's API Endpoint Definition API
        url: https://techdocs.akamai.com/api-definitions/reference/get-contract-group-hosts
      responses:
        '200':
          description: The response lists hosts for the contract and group.
          content:
            application/json:
              example:
              - bookstore.api.akamai.com
              - bookstore2.api.akamai.com
              schema:
                description: The collection of hostnames assigned to an endpoint.
                type: array
                items:
                  type: string
                x-akamai:
                  file-path: schemas/hostsSchema.yaml
        '403':
          description: You don't have permission to read the API endpoint for the specified contract and group.
          content:
            application/problem+json:
              schema:
                additionalProperties: false
                description: Contains debugging information for error responses.
                type: object
                properties:
                  detail:
                    description: The detailed error message.
                    type: string
                  errors:
                    description: The collection of nested error responses.
                    type: array
                    items:
                      additionalProperties: false
                      description: A further nested problem detail object.
                      type: object
                      x-akamai:
                        file-path: schemas/httpProblemDetails-recurse.yaml
                  instance:
                    description: The non-referenceable URL for 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 title of the error.
                    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
                x-akamai:
                  file-path: schemas/httpProblemDetails.yaml
      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
  /contracts/{contractId}/groups/{groupId}/hostsAcgs:
    parameters:
    - description: The unique identifier for the group.
      example: '{{groupId}}'
      in: path
      name: groupId
      required: true
      schema:
        type: integer
      x-akamai:
        file-path: parameters/groupId-path.yaml
    - description: The unique identifier for the contract.
      example: '{{contractId}}'
      in: path
      name: contractId
      required: true
      schema:
        type: string
      x-akamai:
        file-path: parameters/contractId-path.yaml
    get:
      description: Lists all hostnames through which API consumers can access an endpoint service under a given contract and group pairing. Returns each hostname together with the access control group where the hostname is registered. You can use Property Manager (or [PAPI](https://techdocs.akamai.com/property-mgr/reference/api)) to create new hostnames to make available to users.
      operationId: get-contract-group-hosts-acgs
      summary: List hostnames with access control groups
      tags:
      - Contracts and groups
      externalDocs:
        description: See documentation for this operation in Akamai's API Endpoint Definition API
        url: https://techdocs.akamai.com/api-definitions/reference/get-contract-group-hosts-acgs
      responses:
        '200':
          description: Response data lists hosts for the contract and group.
          content:
            application/json:
              schema:
                description: The collection of hostnames assigned to an endpoint.
                type: array
                items:
                  additionalProperties: false
                  description: Contains information about a hostname and access control group where the hostname is registered.
                  type: object
                  properties:
                    acgId:
                      description: The unique identifier for the access control group where the hostname is registered.
                      type: string
                    contractId:
                      description: The unique identifier for the Akamai contract within the access control group.
                      type: string
                    hostname:
                      description: The hostname that may receive traffic for an endpoint.
                      type: string
                  x-akamai:
                    file-path: schemas/acgsHost.yaml
                x-akamai:
                  file-path: schemas/acgsHosts.yaml
              example:
              - acgId: WAA-3-1AINU1T
                contractId: C-0N7RAC71
                hostname: www.bookstore.api.akamai.com
              - acgId: WAA-3-WNNG6F
                contractId: K-0N7RAK71
                hostname: www.bookstore2.api.akamai.com
        '403':
          description: You don't have permission to read the API endpoint for the specified contract and group.
          content:
            application/problem+json:
              schema:
                additionalProperties: false
                description: Contains debugging information for error responses.
                type: object
                properties:
                  detail:
                    description: The detailed error message.
                    type: string
                  errors:
                    description: The collection of nested error responses.
                    type: array
                    items:
                      additionalProperties: false
                      description: A further nested problem detail object.
                      type: object
                      x-akamai:
                        file-path: schemas/httpProblemDetails-recurse.yaml
                  instance:
                    description: The non-referenceable URL for 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 title of the error.
                    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
                x-akamai:
                  file-path: schemas/httpProblemDetails.yaml
      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
  /contracts-groups:
    x-akamai:
      file-path: paths/contracts-groups.yaml
      path-info: /contracts-groups
    get:
      description: __All products__ List the contracts and groups for your account. Each object contains the contract, groups associated with the contract, and whether Kona Site Defender or Web Application Protector is the product for that contract. You'll need this information when you create a new security configuration or when you want to get a list of hostnames still available for use in a security policy.
      externalDocs:
        description: See documentation for this operation in Akamai's Application Security API
        url: https://techdocs.akamai.com/application-security/reference/get-contracts-groups
      operationId: get-contracts-groups
      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
      responses:
        '200':
          content:
            application/json:
              example:
                contract_groups:
                - contractId: C-0N7RAC71
                  displayName: 'Main Street Corporation '
                  groupId: 12345
                - contractId: K-0N7RAK71
                  displayName: AltQ
                  groupId: 12345
                - contractId: K-0N7RAK71
                  displayName: BV QA
                  groupId: 32145
              schema:
                additionalProperties: false
                description: Specifies contracts and groups that have Kona Site Defender or Web Application Firewall.
                properties:
                  contract_groups:
                    description: The list of contract and group pairs.
                    items:
                      additionalProperties: false
                      properties:
                        contractId:
                          description: A unique identifier for a contract.
                          type: string
                        displayName:
                          description: The display name for a contract group pair.
                          type: string
                        groupId:
                          description: A unique identifier for a group.
                          type: integer
                      type: object
                    type: array
                type: object
                x-akamai:
                  file-path: schemas/contract-groups.yaml
          description: Successful response.
        '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:
                    description: Pointers to fields for which invalid input was provided, whose values are messages detailing the reason this input was invalid for this field.
                    type: object
                  instance:
                    description: The non-referenceable URI that indicates the error instance.
                    example: https://problems.luna.akamaiapis.net/api-definitions/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749
                    type: string
                  status:
                    description: The HTTP status code.
                    example: 404
                    type: integer
                  title:
                    description: The error title.
                    example: Not Found
                    type: string
                  type:
                    description: The URL for the error type.
                    example: https://problems.luna.akamaiapis.net/api-definitions/error-types/NOT-FOUND
                    type: string
                required:
                - title
                - type
                - detail
                - instance
                - status
                type: object
                x-akamai:
                  file-path: schemas/problem-details.yaml
          description: '[Forbidden](https://techdocs.akamai.com/application-security/reference/403). You don''t have access to the resource.'
          x-akamai:
            file-path: errors/403.yaml
        '404':
          content:
            application/problem+json:
              example:
                detail: The requested resource is not found
                instance: https://problems.luna.akamaiapis.net/appsec/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749
                status: 404
                title: Not Found
                type: https://problems.luna.akamaiapis.net/appsec/error-types/NOT-FOUND
              schema:
                additionalProperties: true
                description: Details the errors you can receive.
                properties:
                  detail:
                    description: The detailed error message.
                    type: string
                  fieldErrors:
                    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). That resource doesn''t exist, or the URL is malformed.'
          x-akamai:
            file-path: errors/404.yaml
      summary: List contracts and groups
      tags:
      - Contracts and groups
      x-akamai:
        labels:
        - All products
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