Datadog · Capability

Datadog API — Keys

Datadog API — Keys. 19 operations. Lead operation: Datadog Get All Api Keys. Self-contained Naftiko capability covering one Datadog business surface.

Run with Naftiko DatadogKeys

What You Can Do

GET
Listapikeys — Datadog Get All Api Keys
/v1/api/v2/api-keys
POST
Createapikey — Datadog Create an Api Key
/v1/api/v2/api-keys
DELETE
Deleteapikey — Datadog Delete an Api Key
/v1/api/v2/api-keys/{api-key-id}
GET
Getapikey — Datadog Get Api Key
/v1/api/v2/api-keys/{api-key-id}
PATCH
Updateapikey — Datadog Edit an Api Key
/v1/api/v2/api-keys/{api-key-id}
GET
Listapplicationkeys — Datadog Get All Application Keys
/v1/api/v2/application-keys
DELETE
Deleteapplicationkey — Datadog Delete an Application Key
/v1/api/v2/application-keys/{app-key-id}
GET
Getapplicationkey — Datadog Get an Application Key
/v1/api/v2/application-keys/{app-key-id}
PATCH
Updateapplicationkey — Datadog Edit an Application Key
/v1/api/v2/application-keys/{app-key-id}
GET
Listcurrentuserapplicationkeys — Datadog Get All Application Keys Owned by Current User
/v1/api/v2/current-user/application-keys
POST
Createcurrentuserapplicationkey — Datadog Create an Application Key for Current User
/v1/api/v2/current-user/application-keys
DELETE
Deletecurrentuserapplicationkey — Datadog Delete an Application Key Owned by Current User
/v1/api/v2/current-user/application-keys/{app-key-id}
GET
Getcurrentuserapplicationkey — Datadog Get One Application Key Owned by Current User
/v1/api/v2/current-user/application-keys/{app-key-id}
PATCH
Updatecurrentuserapplicationkey — Datadog Edit an Application Key Owned by Current User
/v1/api/v2/current-user/application-keys/{app-key-id}
GET
Listserviceaccountapplicationkeys — Datadog List Application Keys for This Service Account
/v1/api/v2/service-accounts/{service-account-id}/application-keys
POST
Createserviceaccountapplicationkey — Datadog Create an Application Key for This Service Account
/v1/api/v2/service-accounts/{service-account-id}/application-keys
DELETE
Deleteserviceaccountapplicationkey — Datadog Delete an Application Key for This Service Account
/v1/api/v2/service-accounts/{service-account-id}/application-keys/{app-key-id}
GET
Getserviceaccountapplicationkey — Datadog Get One Application Key for This Service Account
/v1/api/v2/service-accounts/{service-account-id}/application-keys/{app-key-id}
PATCH
Updateserviceaccountapplicationkey — Datadog Edit an Application Key for This Service Account
/v1/api/v2/service-accounts/{service-account-id}/application-keys/{app-key-id}

MCP Tools

datadog-get-all-api-keys

Datadog Get All Api Keys

read-only idempotent
datadog-create-api-key

Datadog Create an Api Key

datadog-delete-api-key

Datadog Delete an Api Key

idempotent
datadog-get-api-key

Datadog Get Api Key

read-only idempotent
datadog-edit-api-key

Datadog Edit an Api Key

idempotent
datadog-get-all-application-keys

Datadog Get All Application Keys

read-only idempotent
datadog-delete-application-key

Datadog Delete an Application Key

idempotent
datadog-get-application-key

Datadog Get an Application Key

read-only idempotent
datadog-edit-application-key

Datadog Edit an Application Key

idempotent
datadog-get-all-application-keys-2

Datadog Get All Application Keys Owned by Current User

read-only idempotent
datadog-create-application-key-current

Datadog Create an Application Key for Current User

datadog-delete-application-key-owned

Datadog Delete an Application Key Owned by Current User

idempotent
datadog-get-one-application-key

Datadog Get One Application Key Owned by Current User

read-only idempotent
datadog-edit-application-key-owned

Datadog Edit an Application Key Owned by Current User

idempotent
datadog-list-application-keys-this

Datadog List Application Keys for This Service Account

read-only idempotent
datadog-create-application-key-this

Datadog Create an Application Key for This Service Account

datadog-delete-application-key-this

Datadog Delete an Application Key for This Service Account

idempotent
datadog-get-one-application-key-2

Datadog Get One Application Key for This Service Account

read-only idempotent
datadog-edit-application-key-this

Datadog Edit an Application Key for This Service Account

idempotent

Capability Spec

datadog-keys.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Datadog API — Keys
  description: 'Datadog API — Keys. 19 operations. Lead operation: Datadog Get All Api Keys. Self-contained Naftiko capability
    covering one Datadog business surface.'
  tags:
  - Datadog
  - Keys
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    DATADOG_API_KEY: DATADOG_API_KEY
capability:
  consumes:
  - type: http
    namespace: datadog-keys
    baseUri: https://{subdomain}.{site}
    description: Datadog API — Keys business capability. Self-contained, no shared references.
    resources:
    - name: api-v2-api_keys
      path: /api/v2/api_keys
      operations:
      - name: listapikeys
        method: GET
        description: Datadog Get All Api Keys
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createapikey
        method: POST
        description: Datadog Create an Api Key
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-v2-api_keys-api_key_id
      path: /api/v2/api_keys/{api_key_id}
      operations:
      - name: deleteapikey
        method: DELETE
        description: Datadog Delete an Api Key
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: getapikey
        method: GET
        description: Datadog Get Api Key
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updateapikey
        method: PATCH
        description: Datadog Edit an Api Key
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-v2-application_keys
      path: /api/v2/application_keys
      operations:
      - name: listapplicationkeys
        method: GET
        description: Datadog Get All Application Keys
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-v2-application_keys-app_key_id
      path: /api/v2/application_keys/{app_key_id}
      operations:
      - name: deleteapplicationkey
        method: DELETE
        description: Datadog Delete an Application Key
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: getapplicationkey
        method: GET
        description: Datadog Get an Application Key
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updateapplicationkey
        method: PATCH
        description: Datadog Edit an Application Key
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-v2-current_user-application_keys
      path: /api/v2/current_user/application_keys
      operations:
      - name: listcurrentuserapplicationkeys
        method: GET
        description: Datadog Get All Application Keys Owned by Current User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createcurrentuserapplicationkey
        method: POST
        description: Datadog Create an Application Key for Current User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-v2-current_user-application_keys-app_key_id
      path: /api/v2/current_user/application_keys/{app_key_id}
      operations:
      - name: deletecurrentuserapplicationkey
        method: DELETE
        description: Datadog Delete an Application Key Owned by Current User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: getcurrentuserapplicationkey
        method: GET
        description: Datadog Get One Application Key Owned by Current User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updatecurrentuserapplicationkey
        method: PATCH
        description: Datadog Edit an Application Key Owned by Current User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-v2-service_accounts-service_account_id-application_keys
      path: /api/v2/service_accounts/{service_account_id}/application_keys
      operations:
      - name: listserviceaccountapplicationkeys
        method: GET
        description: Datadog List Application Keys for This Service Account
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createserviceaccountapplicationkey
        method: POST
        description: Datadog Create an Application Key for This Service Account
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-v2-service_accounts-service_account_id-application_keys-app_key_id
      path: /api/v2/service_accounts/{service_account_id}/application_keys/{app_key_id}
      operations:
      - name: deleteserviceaccountapplicationkey
        method: DELETE
        description: Datadog Delete an Application Key for This Service Account
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: getserviceaccountapplicationkey
        method: GET
        description: Datadog Get One Application Key for This Service Account
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updateserviceaccountapplicationkey
        method: PATCH
        description: Datadog Edit an Application Key for This Service Account
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    authentication:
      type: bearer
      token: '{{env.DATADOG_API_KEY}}'
  exposes:
  - type: rest
    namespace: datadog-keys-rest
    port: 8080
    description: REST adapter for Datadog API — Keys. One Spectral-compliant resource per consumed operation, prefixed with
      /v1.
    resources:
    - path: /v1/api/v2/api-keys
      name: api-v2-api-keys
      description: REST surface for api-v2-api_keys.
      operations:
      - method: GET
        name: listapikeys
        description: Datadog Get All Api Keys
        call: datadog-keys.listapikeys
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createapikey
        description: Datadog Create an Api Key
        call: datadog-keys.createapikey
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/api-keys/{api-key-id}
      name: api-v2-api-keys-api-key-id
      description: REST surface for api-v2-api_keys-api_key_id.
      operations:
      - method: DELETE
        name: deleteapikey
        description: Datadog Delete an Api Key
        call: datadog-keys.deleteapikey
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: getapikey
        description: Datadog Get Api Key
        call: datadog-keys.getapikey
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updateapikey
        description: Datadog Edit an Api Key
        call: datadog-keys.updateapikey
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/application-keys
      name: api-v2-application-keys
      description: REST surface for api-v2-application_keys.
      operations:
      - method: GET
        name: listapplicationkeys
        description: Datadog Get All Application Keys
        call: datadog-keys.listapplicationkeys
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/application-keys/{app-key-id}
      name: api-v2-application-keys-app-key-id
      description: REST surface for api-v2-application_keys-app_key_id.
      operations:
      - method: DELETE
        name: deleteapplicationkey
        description: Datadog Delete an Application Key
        call: datadog-keys.deleteapplicationkey
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: getapplicationkey
        description: Datadog Get an Application Key
        call: datadog-keys.getapplicationkey
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updateapplicationkey
        description: Datadog Edit an Application Key
        call: datadog-keys.updateapplicationkey
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/current-user/application-keys
      name: api-v2-current-user-application-keys
      description: REST surface for api-v2-current_user-application_keys.
      operations:
      - method: GET
        name: listcurrentuserapplicationkeys
        description: Datadog Get All Application Keys Owned by Current User
        call: datadog-keys.listcurrentuserapplicationkeys
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createcurrentuserapplicationkey
        description: Datadog Create an Application Key for Current User
        call: datadog-keys.createcurrentuserapplicationkey
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/current-user/application-keys/{app-key-id}
      name: api-v2-current-user-application-keys-app-key-id
      description: REST surface for api-v2-current_user-application_keys-app_key_id.
      operations:
      - method: DELETE
        name: deletecurrentuserapplicationkey
        description: Datadog Delete an Application Key Owned by Current User
        call: datadog-keys.deletecurrentuserapplicationkey
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: getcurrentuserapplicationkey
        description: Datadog Get One Application Key Owned by Current User
        call: datadog-keys.getcurrentuserapplicationkey
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updatecurrentuserapplicationkey
        description: Datadog Edit an Application Key Owned by Current User
        call: datadog-keys.updatecurrentuserapplicationkey
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/service-accounts/{service-account-id}/application-keys
      name: api-v2-service-accounts-service-account-id-application-keys
      description: REST surface for api-v2-service_accounts-service_account_id-application_keys.
      operations:
      - method: GET
        name: listserviceaccountapplicationkeys
        description: Datadog List Application Keys for This Service Account
        call: datadog-keys.listserviceaccountapplicationkeys
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createserviceaccountapplicationkey
        description: Datadog Create an Application Key for This Service Account
        call: datadog-keys.createserviceaccountapplicationkey
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/service-accounts/{service-account-id}/application-keys/{app-key-id}
      name: api-v2-service-accounts-service-account-id-application-keys-app-key-id
      description: REST surface for api-v2-service_accounts-service_account_id-application_keys-app_key_id.
      operations:
      - method: DELETE
        name: deleteserviceaccountapplicationkey
        description: Datadog Delete an Application Key for This Service Account
        call: datadog-keys.deleteserviceaccountapplicationkey
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: getserviceaccountapplicationkey
        description: Datadog Get One Application Key for This Service Account
        call: datadog-keys.getserviceaccountapplicationkey
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updateserviceaccountapplicationkey
        description: Datadog Edit an Application Key for This Service Account
        call: datadog-keys.updateserviceaccountapplicationkey
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: datadog-keys-mcp
    port: 9090
    transport: http
    description: MCP adapter for Datadog API — Keys. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: datadog-get-all-api-keys
      description: Datadog Get All Api Keys
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: datadog-keys.listapikeys
      outputParameters:
      - type: object
        mapping: $.
    - name: datadog-create-api-key
      description: Datadog Create an Api Key
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: datadog-keys.createapikey
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: datadog-delete-api-key
      description: Datadog Delete an Api Key
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: datadog-keys.deleteapikey
      outputParameters:
      - type: object
        mapping: $.
    - name: datadog-get-api-key
      description: Datadog Get Api Key
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: datadog-keys.getapikey
      outputParameters:
      - type: object
        mapping: $.
    - name: datadog-edit-api-key
      description: Datadog Edit an Api Key
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: datadog-keys.updateapikey
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: datadog-get-all-application-keys
      description: Datadog Get All Application Keys
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: datadog-keys.listapplicationkeys
      outputParameters:
      - type: object
        mapping: $.
    - name: datadog-delete-application-key
      description: Datadog Delete an Application Key
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: datadog-keys.deleteapplicationkey
      outputParameters:
      - type: object
        mapping: $.
    - name: datadog-get-application-key
      description: Datadog Get an Application Key
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: datadog-keys.getapplicationkey
      outputParameters:
      - type: object
        mapping: $.
    - name: datadog-edit-application-key
      description: Datadog Edit an Application Key
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: datadog-keys.updateapplicationkey
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: datadog-get-all-application-keys-2
      description: Datadog Get All Application Keys Owned by Current User
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: datadog-keys.listcurrentuserapplicationkeys
      outputParameters:
      - type: object
        mapping: $.
    - name: datadog-create-application-key-current
      description: Datadog Create an Application Key for Current User
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: datadog-keys.createcurrentuserapplicationkey
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: datadog-delete-application-key-owned
      description: Datadog Delete an Application Key Owned by Current User
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: datadog-keys.deletecurrentuserapplicationkey
      outputParameters:
      - type: object
        mapping: $.
    - name: datadog-get-one-application-key
      description: Datadog Get One Application Key Owned by Current User
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: datadog-keys.getcurrentuserapplicationkey
      outputParameters:
      - type: object
        mapping: $.
    - name: datadog-edit-application-key-owned
      description: Datadog Edit an Application Key Owned by Current User
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: datadog-keys.updatecurrentuserapplicationkey
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: datadog-list-application-keys-this
      description: Datadog List Application Keys for This Service Account
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: datadog-keys.listserviceaccountapplicationkeys
      outputParameters:
      - type: object
        mapping: $.
    - name: datadog-create-application-key-this
      description: Datadog Create an Application Key for This Service Account
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: datadog-keys.createserviceaccountapplicationkey
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: datadog-delete-application-key-this
      description: Datadog Delete an Application Key for This Service Account
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: datadog-keys.deleteserviceaccountapplicationkey
      outputParameters:
      - type: object
        mapping: $.
    - name: datadog-get-one-application-key-2
      description: Datadog Get One Application Key for This Service Account
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: datadog-keys.getserviceaccountapplicationkey
      outputParameters:
      - type: object
        mapping: $.
    - name: datadog-edit-application-key-this
      description: Datadog Edit an Application Key for This Service Account
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: datadog-keys.updateserviceaccountapplicationkey
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.