naftiko: 1.0.0-alpha2 info: label: Datadog API — Archive description: 'Datadog API — Archive. 10 operations. Lead operation: Datadog Archive Case. Self-contained Naftiko capability covering one Datadog business surface.' tags: - Datadog - Archive created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: DATADOG_API_KEY: DATADOG_API_KEY capability: consumes: - type: http namespace: datadog-archive baseUri: https://{subdomain}.{site} description: Datadog API — Archive business capability. Self-contained, no shared references. resources: - name: api-v2-cases-case_id-archive path: /api/v2/cases/{case_id}/archive operations: - name: archivecase method: POST description: Datadog Archive Case outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-logs-config-archive-order path: /api/v2/logs/config/archive-order operations: - name: getlogsarchiveorder method: GET description: Datadog Get Archive Order outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatelogsarchiveorder method: PUT description: Datadog Update Archive Order outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-logs-config-archives path: /api/v2/logs/config/archives operations: - name: createlogsarchive method: POST description: Datadog Create an Archive outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-logs-config-archives-archive_id path: /api/v2/logs/config/archives/{archive_id} operations: - name: deletelogsarchive method: DELETE description: Datadog Delete an Archive outputRawFormat: json outputParameters: - name: result type: object value: $. - name: getlogsarchive method: GET description: Datadog Get an Archive outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatelogsarchive method: PUT description: Datadog Update an Archive outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-logs-config-archives-archive_id-readers path: /api/v2/logs/config/archives/{archive_id}/readers operations: - name: removerolefromarchive method: DELETE description: Datadog Revoke Role from an Archive outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: listarchivereadroles method: GET description: Datadog List Read Roles for an Archive outputRawFormat: json outputParameters: - name: result type: object value: $. - name: addreadroletoarchive method: POST description: Datadog Grant Role to an Archive 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-archive-rest port: 8080 description: REST adapter for Datadog API — Archive. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/v2/cases/{case-id}/archive name: api-v2-cases-case-id-archive description: REST surface for api-v2-cases-case_id-archive. operations: - method: POST name: archivecase description: Datadog Archive Case call: datadog-archive.archivecase with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/logs/config/archive-order name: api-v2-logs-config-archive-order description: REST surface for api-v2-logs-config-archive-order. operations: - method: GET name: getlogsarchiveorder description: Datadog Get Archive Order call: datadog-archive.getlogsarchiveorder outputParameters: - type: object mapping: $. - method: PUT name: updatelogsarchiveorder description: Datadog Update Archive Order call: datadog-archive.updatelogsarchiveorder with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/logs/config/archives name: api-v2-logs-config-archives description: REST surface for api-v2-logs-config-archives. operations: - method: POST name: createlogsarchive description: Datadog Create an Archive call: datadog-archive.createlogsarchive with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/logs/config/archives/{archive-id} name: api-v2-logs-config-archives-archive-id description: REST surface for api-v2-logs-config-archives-archive_id. operations: - method: DELETE name: deletelogsarchive description: Datadog Delete an Archive call: datadog-archive.deletelogsarchive outputParameters: - type: object mapping: $. - method: GET name: getlogsarchive description: Datadog Get an Archive call: datadog-archive.getlogsarchive outputParameters: - type: object mapping: $. - method: PUT name: updatelogsarchive description: Datadog Update an Archive call: datadog-archive.updatelogsarchive with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/logs/config/archives/{archive-id}/readers name: api-v2-logs-config-archives-archive-id-readers description: REST surface for api-v2-logs-config-archives-archive_id-readers. operations: - method: DELETE name: removerolefromarchive description: Datadog Revoke Role from an Archive call: datadog-archive.removerolefromarchive with: body: rest.body outputParameters: - type: object mapping: $. - method: GET name: listarchivereadroles description: Datadog List Read Roles for an Archive call: datadog-archive.listarchivereadroles outputParameters: - type: object mapping: $. - method: POST name: addreadroletoarchive description: Datadog Grant Role to an Archive call: datadog-archive.addreadroletoarchive with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: datadog-archive-mcp port: 9090 transport: http description: MCP adapter for Datadog API — Archive. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: datadog-archive-case description: Datadog Archive Case hints: readOnly: false destructive: false idempotent: false call: datadog-archive.archivecase with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-get-archive-order description: Datadog Get Archive Order hints: readOnly: true destructive: false idempotent: true call: datadog-archive.getlogsarchiveorder outputParameters: - type: object mapping: $. - name: datadog-update-archive-order description: Datadog Update Archive Order hints: readOnly: false destructive: false idempotent: true call: datadog-archive.updatelogsarchiveorder with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-create-archive description: Datadog Create an Archive hints: readOnly: false destructive: false idempotent: false call: datadog-archive.createlogsarchive with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-delete-archive description: Datadog Delete an Archive hints: readOnly: false destructive: true idempotent: true call: datadog-archive.deletelogsarchive outputParameters: - type: object mapping: $. - name: datadog-get-archive description: Datadog Get an Archive hints: readOnly: true destructive: false idempotent: true call: datadog-archive.getlogsarchive outputParameters: - type: object mapping: $. - name: datadog-update-archive description: Datadog Update an Archive hints: readOnly: false destructive: false idempotent: true call: datadog-archive.updatelogsarchive with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-revoke-role-archive description: Datadog Revoke Role from an Archive hints: readOnly: false destructive: true idempotent: true call: datadog-archive.removerolefromarchive with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-list-read-roles-archive description: Datadog List Read Roles for an Archive hints: readOnly: true destructive: false idempotent: true call: datadog-archive.listarchivereadroles outputParameters: - type: object mapping: $. - name: datadog-grant-role-archive description: Datadog Grant Role to an Archive hints: readOnly: false destructive: false idempotent: false call: datadog-archive.addreadroletoarchive with: body: tools.body outputParameters: - type: object mapping: $.