Akamai · Capability

Akamai: Property Manager API — CP codes

Akamai: Property Manager API — CP codes. 3 operations. Lead operation: Akamai Create a New CP Code. Self-contained Naftiko capability covering one Akamai business surface.

Run with Naftiko AkamaiCP codes

What You Can Do

POST
Postcpcodes — Akamai Create a New CP Code
/v1/cpcodes
GET
Getcpcodes — Akamai List CP Codes
/v1/cpcodes
GET
Getcpcode — Akamai Get a CP Code
/v1/cpcodes/{cpcodeid}

MCP Tools

akamai-create-new-cp-code

Akamai Create a New CP Code

akamai-list-cp-codes

Akamai List CP Codes

read-only idempotent
akamai-get-cp-code

Akamai Get a CP Code

read-only idempotent

Capability Spec

papi-cp-codes.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: 'Akamai: Property Manager API — CP codes'
  description: 'Akamai: Property Manager API — CP codes. 3 operations. Lead operation: Akamai Create a New CP Code. Self-contained
    Naftiko capability covering one Akamai business surface.'
  tags:
  - Akamai
  - CP codes
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    AKAMAI_API_KEY: AKAMAI_API_KEY
capability:
  consumes:
  - type: http
    namespace: papi-cp-codes
    baseUri: https://{hostname}/papi/v1
    description: 'Akamai: Property Manager API — CP codes business capability. Self-contained, no shared references.'
    resources:
    - name: cpcodes
      path: /cpcodes
      operations:
      - name: postcpcodes
        method: POST
        description: Akamai Create a New CP Code
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: PAPI-Use-Prefixes
          in: header
          type: string
          description: __Enum__ Sets whether to represent [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes)
            in response data. Set to `false` when exchangin
          required: true
        - name: contractId
          in: query
          type: string
          description: Unique identifier for the contract. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes)
            for details on omitting the value's `ctr_`
          required: true
        - name: groupId
          in: query
          type: string
          description: Unique identifier for the group. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes)
            for details on omitting the value's `grp_` pr
          required: true
        - name: accountSwitchKey
          in: query
          type: string
          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-w
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: getcpcodes
        method: GET
        description: Akamai List CP Codes
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: PAPI-Use-Prefixes
          in: header
          type: string
          description: __Enum__ Sets whether to represent [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes)
            in response data. Set to `false` when exchangin
          required: true
        - name: contractId
          in: query
          type: string
          description: Unique identifier for the contract. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes)
            for details on omitting the value's `ctr_`
          required: true
        - name: groupId
          in: query
          type: string
          description: Unique identifier for the group. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes)
            for details on omitting the value's `grp_` pr
          required: true
        - name: accountSwitchKey
          in: query
          type: string
          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-w
    - name: cpcodes-cpcodeId
      path: /cpcodes/{cpcodeId}
      operations:
      - name: getcpcode
        method: GET
        description: Akamai Get a CP Code
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: PAPI-Use-Prefixes
          in: header
          type: string
          description: __Enum__ Sets whether to represent [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes)
            in response data. Set to `false` when exchangin
          required: true
        - name: contractId
          in: query
          type: string
          description: Unique identifier for the contract. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes)
            for details on omitting the value's `ctr_`
          required: true
        - name: groupId
          in: query
          type: string
          description: Unique identifier for the group. See [ID prefixes](https://techdocs.akamai.com/property-mgr/reference/id-prefixes)
            for details on omitting the value's `grp_` pr
          required: true
        - name: accountSwitchKey
          in: query
          type: string
          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-w
  exposes:
  - type: rest
    namespace: papi-cp-codes-rest
    port: 8080
    description: 'REST adapter for Akamai: Property Manager API — CP codes. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.'
    resources:
    - path: /v1/cpcodes
      name: cpcodes
      description: REST surface for cpcodes.
      operations:
      - method: POST
        name: postcpcodes
        description: Akamai Create a New CP Code
        call: papi-cp-codes.postcpcodes
        with:
          PAPI-Use-Prefixes: rest.PAPI-Use-Prefixes
          contractId: rest.contractId
          groupId: rest.groupId
          accountSwitchKey: rest.accountSwitchKey
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: getcpcodes
        description: Akamai List CP Codes
        call: papi-cp-codes.getcpcodes
        with:
          PAPI-Use-Prefixes: rest.PAPI-Use-Prefixes
          contractId: rest.contractId
          groupId: rest.groupId
          accountSwitchKey: rest.accountSwitchKey
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cpcodes/{cpcodeid}
      name: cpcodes-cpcodeid
      description: REST surface for cpcodes-cpcodeId.
      operations:
      - method: GET
        name: getcpcode
        description: Akamai Get a CP Code
        call: papi-cp-codes.getcpcode
        with:
          PAPI-Use-Prefixes: rest.PAPI-Use-Prefixes
          contractId: rest.contractId
          groupId: rest.groupId
          accountSwitchKey: rest.accountSwitchKey
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: papi-cp-codes-mcp
    port: 9090
    transport: http
    description: 'MCP adapter for Akamai: Property Manager API — CP codes. One tool per consumed operation, routed inline
      through this capability''s consumes block.'
    tools:
    - name: akamai-create-new-cp-code
      description: Akamai Create a New CP Code
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: papi-cp-codes.postcpcodes
      with:
        PAPI-Use-Prefixes: tools.PAPI-Use-Prefixes
        contractId: tools.contractId
        groupId: tools.groupId
        accountSwitchKey: tools.accountSwitchKey
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: akamai-list-cp-codes
      description: Akamai List CP Codes
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: papi-cp-codes.getcpcodes
      with:
        PAPI-Use-Prefixes: tools.PAPI-Use-Prefixes
        contractId: tools.contractId
        groupId: tools.groupId
        accountSwitchKey: tools.accountSwitchKey
      outputParameters:
      - type: object
        mapping: $.
    - name: akamai-get-cp-code
      description: Akamai Get a CP Code
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: papi-cp-codes.getcpcode
      with:
        PAPI-Use-Prefixes: tools.PAPI-Use-Prefixes
        contractId: tools.contractId
        groupId: tools.groupId
        accountSwitchKey: tools.accountSwitchKey
      outputParameters:
      - type: object
        mapping: $.