Akamai · Capability

Akamai: EdgeWorkers API — Reports

Akamai: EdgeWorkers API — Reports. 2 operations. Lead operation: Akamai List Reports. Self-contained Naftiko capability covering one Akamai business surface.

Run with Naftiko AkamaiReports

What You Can Do

GET
Getreports — Akamai List Reports
/v1/reports
GET
Getreport — Akamai Get an EdgeWorker Report
/v1/reports/{reportid}

MCP Tools

akamai-list-reports

Akamai List Reports

read-only idempotent
akamai-get-edgeworker-report

Akamai Get an EdgeWorker Report

read-only idempotent

Capability Spec

edgeworkers-reports.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: 'Akamai: EdgeWorkers API — Reports'
  description: 'Akamai: EdgeWorkers API — Reports. 2 operations. Lead operation: Akamai List Reports. Self-contained Naftiko
    capability covering one Akamai business surface.'
  tags:
  - Akamai
  - Reports
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    AKAMAI_API_KEY: AKAMAI_API_KEY
capability:
  consumes:
  - type: http
    namespace: edgeworkers-reports
    baseUri: https://{hostname}/edgeworkers/v1
    description: 'Akamai: EdgeWorkers API — Reports business capability. Self-contained, no shared references.'
    resources:
    - name: reports
      path: /reports
      operations:
      - name: getreports
        method: GET
        description: Akamai List Reports
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - 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: reports-reportId
      path: /reports/{reportId}
      operations:
      - name: getreport
        method: GET
        description: Akamai Get an EdgeWorker Report
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: start
          in: query
          type: string
          description: ISO 8601 timestamp indicating the start time of the EdgeWorker report.
          required: true
        - name: end
          in: query
          type: string
          description: ISO 8601 timestamp indicating the end time of the EdgeWorker report. If not specified, the end time
            defaults to the current time.
          required: true
        - name: edgeWorker
          in: query
          type: string
          description: Filter by EdgeWorker ID such as `42` or more specific version such as `42-1.0`.
          required: true
        - name: status
          in: query
          type: string
          description: __Enum__ Filter by the EdgeWorker status, either `success`, `genericError`, `unknownEdgeWorkerId`,
            `unimplementedEventHandler`, `runtimeError`, `executionError`
          required: true
        - name: eventHandler
          in: query
          type: string
          description: __Enum__ Filter EdgeWorkers by the event that triggers them, either `onClientRequest`, `onOriginRequest`,
            `onOriginResponse`, `onClientResponse`, or `responsePr
        - 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: edgeworkers-reports-rest
    port: 8080
    description: 'REST adapter for Akamai: EdgeWorkers API — Reports. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.'
    resources:
    - path: /v1/reports
      name: reports
      description: REST surface for reports.
      operations:
      - method: GET
        name: getreports
        description: Akamai List Reports
        call: edgeworkers-reports.getreports
        with:
          accountSwitchKey: rest.accountSwitchKey
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/reports/{reportid}
      name: reports-reportid
      description: REST surface for reports-reportId.
      operations:
      - method: GET
        name: getreport
        description: Akamai Get an EdgeWorker Report
        call: edgeworkers-reports.getreport
        with:
          start: rest.start
          end: rest.end
          edgeWorker: rest.edgeWorker
          status: rest.status
          eventHandler: rest.eventHandler
          accountSwitchKey: rest.accountSwitchKey
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: edgeworkers-reports-mcp
    port: 9090
    transport: http
    description: 'MCP adapter for Akamai: EdgeWorkers API — Reports. One tool per consumed operation, routed inline through
      this capability''s consumes block.'
    tools:
    - name: akamai-list-reports
      description: Akamai List Reports
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: edgeworkers-reports.getreports
      with:
        accountSwitchKey: tools.accountSwitchKey
      outputParameters:
      - type: object
        mapping: $.
    - name: akamai-get-edgeworker-report
      description: Akamai Get an EdgeWorker Report
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: edgeworkers-reports.getreport
      with:
        start: tools.start
        end: tools.end
        edgeWorker: tools.edgeWorker
        status: tools.status
        eventHandler: tools.eventHandler
        accountSwitchKey: tools.accountSwitchKey
      outputParameters:
      - type: object
        mapping: $.