Prefect · Capability

Prefect Cloud API — Rate Limits

Prefect Cloud API — Rate Limits. 7 operations. Lead operation: List Actor Names. Self-contained Naftiko capability covering one Prefect business surface.

Run with Naftiko PrefectRate Limits

What You Can Do

GET
Listactornamesapiaccountsaccountidratelimitsactornamesget — List Actor Names
/v1/api/accounts/{account-id}/rate-limits/actor-names
GET
Listapikeynamesapiaccountsaccountidratelimitsapikeynamesget — List Api Key Names
/v1/api/accounts/{account-id}/rate-limits/api-key-names
GET
Readeventsgroupedusageapiaccountsaccountidratelimitseventsget — Read Events Grouped Usage
/v1/api/accounts/{account-id}/rate-limits/events
GET
Readorchestrationapigroupedusageapiaccountsaccountidratelimitsorchestrationapiget — Read Orchestration Api Grouped Usage
/v1/api/accounts/{account-id}/rate-limits/orchestration-api
GET
Readratelimitstatusapiaccountsaccountidratelimitsstatusget — Read Rate Limit Status
/v1/api/accounts/{account-id}/rate-limits/status
GET
Readratelimitusageapiaccountsaccountidratelimitsusageget — Read Rate Limit Usage
/v1/api/accounts/{account-id}/rate-limits/usage
GET
Downloadratelimitusageapiaccountsaccountidratelimitsusagedownloadget — Download Rate Limit Usage
/v1/api/accounts/{account-id}/rate-limits/usage/download

MCP Tools

list-actor-names

List Actor Names

read-only idempotent
list-api-key-names

List Api Key Names

read-only idempotent
read-events-grouped-usage

Read Events Grouped Usage

read-only idempotent
read-orchestration-api-grouped-usage

Read Orchestration Api Grouped Usage

read-only idempotent
read-rate-limit-status

Read Rate Limit Status

read-only idempotent
read-rate-limit-usage

Read Rate Limit Usage

read-only idempotent
download-rate-limit-usage

Download Rate Limit Usage

read-only idempotent

Capability Spec

prefect-rate-limits.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Prefect Cloud API — Rate Limits
  description: 'Prefect Cloud API — Rate Limits. 7 operations. Lead operation: List Actor Names. Self-contained Naftiko capability
    covering one Prefect business surface.'
  tags:
  - Prefect
  - Rate Limits
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    PREFECT_API_KEY: PREFECT_API_KEY
capability:
  consumes:
  - type: http
    namespace: prefect-rate-limits
    baseUri: ''
    description: Prefect Cloud API — Rate Limits business capability. Self-contained, no shared references.
    resources:
    - name: api-accounts-account_id-rate-limits-actor-names
      path: /api/accounts/{account_id}/rate-limits/actor-names
      operations:
      - name: listactornamesapiaccountsaccountidratelimitsactornamesget
        method: GET
        description: List Actor Names
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: account_id
          in: path
          type: string
          required: true
        - name: since
          in: query
          type: string
          description: Start time of the search period (inclusive)
          required: true
        - name: until
          in: query
          type: string
          description: End time of the search period (inclusive)
          required: true
        - name: search
          in: query
          type: string
          description: Fuzzy search string (case-insensitive substring match)
        - name: limit
          in: query
          type: integer
          description: Maximum number of results to return
        - name: keys
          in: query
          type: string
          description: Filter to specific rate limit keys (e.g., orchestration-api, logs-and-events)
    - name: api-accounts-account_id-rate-limits-api-key-names
      path: /api/accounts/{account_id}/rate-limits/api-key-names
      operations:
      - name: listapikeynamesapiaccountsaccountidratelimitsapikeynamesget
        method: GET
        description: List Api Key Names
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: account_id
          in: path
          type: string
          required: true
        - name: since
          in: query
          type: string
          description: Start time of the search period (inclusive)
          required: true
        - name: until
          in: query
          type: string
          description: End time of the search period (inclusive)
          required: true
        - name: search
          in: query
          type: string
          description: Fuzzy search string (case-insensitive substring match)
        - name: limit
          in: query
          type: integer
          description: Maximum number of results to return
        - name: keys
          in: query
          type: string
          description: Filter to specific rate limit keys (e.g., orchestration-api, logs-and-events)
    - name: api-accounts-account_id-rate-limits-events
      path: /api/accounts/{account_id}/rate-limits/events
      operations:
      - name: readeventsgroupedusageapiaccountsaccountidratelimitseventsget
        method: GET
        description: Read Events Grouped Usage
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: account_id
          in: path
          type: string
          required: true
        - name: since
          in: query
          type: string
          description: Start time of the usage period (inclusive)
          required: true
        - name: until
          in: query
          type: string
          description: End time of the usage period (inclusive)
          required: true
        - name: group_by
          in: query
          type: string
          description: The dimension to group usage by (e.g., workspace_id, event_name)
          required: true
        - name: workspace_id
          in: query
          type: string
          description: Filter by workspace ID
        - name: api_key_name
          in: query
          type: string
          description: Filter by API key name
        - name: actor_name
          in: query
          type: string
          description: Filter by actor name
    - name: api-accounts-account_id-rate-limits-orchestration-api
      path: /api/accounts/{account_id}/rate-limits/orchestration-api
      operations:
      - name: readorchestrationapigroupedusageapiaccountsaccountidratelimitsorchestrationapiget
        method: GET
        description: Read Orchestration Api Grouped Usage
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: account_id
          in: path
          type: string
          required: true
        - name: since
          in: query
          type: string
          description: Start time of the usage period (inclusive)
          required: true
        - name: until
          in: query
          type: string
          description: End time of the usage period (inclusive)
          required: true
        - name: group_by
          in: query
          type: string
          description: The dimension to group usage by (e.g., workspace_id, api_key_name)
          required: true
        - name: workspace_id
          in: query
          type: string
          description: Filter by workspace ID
        - name: api_key_name
          in: query
          type: string
          description: Filter by API key name
        - name: actor_name
          in: query
          type: string
          description: Filter by actor name
    - name: api-accounts-account_id-rate-limits-status
      path: /api/accounts/{account_id}/rate-limits/status
      operations:
      - name: readratelimitstatusapiaccountsaccountidratelimitsstatusget
        method: GET
        description: Read Rate Limit Status
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: account_id
          in: path
          type: string
          required: true
    - name: api-accounts-account_id-rate-limits-usage
      path: /api/accounts/{account_id}/rate-limits/usage
      operations:
      - name: readratelimitusageapiaccountsaccountidratelimitsusageget
        method: GET
        description: Read Rate Limit Usage
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: account_id
          in: path
          type: string
          required: true
        - name: since
          in: query
          type: string
          description: The start date of the usage period
        - name: until
          in: query
          type: string
          description: The end date of the usage period
        - name: keys
          in: query
          type: array
          description: The keys to query usage for
    - name: api-accounts-account_id-rate-limits-usage-download
      path: /api/accounts/{account_id}/rate-limits/usage/download
      operations:
      - name: downloadratelimitusageapiaccountsaccountidratelimitsusagedownloadget
        method: GET
        description: Download Rate Limit Usage
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: account_id
          in: path
          type: string
          required: true
        - name: since
          in: query
          type: string
          description: The start date of the usage period
        - name: until
          in: query
          type: string
          description: The end date of the usage period
        - name: keys
          in: query
          type: array
          description: The keys to query usage for
  exposes:
  - type: rest
    namespace: prefect-rate-limits-rest
    port: 8080
    description: REST adapter for Prefect Cloud API — Rate Limits. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/api/accounts/{account-id}/rate-limits/actor-names
      name: api-accounts-account-id-rate-limits-actor-names
      description: REST surface for api-accounts-account_id-rate-limits-actor-names.
      operations:
      - method: GET
        name: listactornamesapiaccountsaccountidratelimitsactornamesget
        description: List Actor Names
        call: prefect-rate-limits.listactornamesapiaccountsaccountidratelimitsactornamesget
        with:
          account_id: rest.account_id
          since: rest.since
          until: rest.until
          search: rest.search
          limit: rest.limit
          keys: rest.keys
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/accounts/{account-id}/rate-limits/api-key-names
      name: api-accounts-account-id-rate-limits-api-key-names
      description: REST surface for api-accounts-account_id-rate-limits-api-key-names.
      operations:
      - method: GET
        name: listapikeynamesapiaccountsaccountidratelimitsapikeynamesget
        description: List Api Key Names
        call: prefect-rate-limits.listapikeynamesapiaccountsaccountidratelimitsapikeynamesget
        with:
          account_id: rest.account_id
          since: rest.since
          until: rest.until
          search: rest.search
          limit: rest.limit
          keys: rest.keys
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/accounts/{account-id}/rate-limits/events
      name: api-accounts-account-id-rate-limits-events
      description: REST surface for api-accounts-account_id-rate-limits-events.
      operations:
      - method: GET
        name: readeventsgroupedusageapiaccountsaccountidratelimitseventsget
        description: Read Events Grouped Usage
        call: prefect-rate-limits.readeventsgroupedusageapiaccountsaccountidratelimitseventsget
        with:
          account_id: rest.account_id
          since: rest.since
          until: rest.until
          group_by: rest.group_by
          workspace_id: rest.workspace_id
          api_key_name: rest.api_key_name
          actor_name: rest.actor_name
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/accounts/{account-id}/rate-limits/orchestration-api
      name: api-accounts-account-id-rate-limits-orchestration-api
      description: REST surface for api-accounts-account_id-rate-limits-orchestration-api.
      operations:
      - method: GET
        name: readorchestrationapigroupedusageapiaccountsaccountidratelimitsorchestrationapiget
        description: Read Orchestration Api Grouped Usage
        call: prefect-rate-limits.readorchestrationapigroupedusageapiaccountsaccountidratelimitsorchestrationapiget
        with:
          account_id: rest.account_id
          since: rest.since
          until: rest.until
          group_by: rest.group_by
          workspace_id: rest.workspace_id
          api_key_name: rest.api_key_name
          actor_name: rest.actor_name
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/accounts/{account-id}/rate-limits/status
      name: api-accounts-account-id-rate-limits-status
      description: REST surface for api-accounts-account_id-rate-limits-status.
      operations:
      - method: GET
        name: readratelimitstatusapiaccountsaccountidratelimitsstatusget
        description: Read Rate Limit Status
        call: prefect-rate-limits.readratelimitstatusapiaccountsaccountidratelimitsstatusget
        with:
          account_id: rest.account_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/accounts/{account-id}/rate-limits/usage
      name: api-accounts-account-id-rate-limits-usage
      description: REST surface for api-accounts-account_id-rate-limits-usage.
      operations:
      - method: GET
        name: readratelimitusageapiaccountsaccountidratelimitsusageget
        description: Read Rate Limit Usage
        call: prefect-rate-limits.readratelimitusageapiaccountsaccountidratelimitsusageget
        with:
          account_id: rest.account_id
          since: rest.since
          until: rest.until
          keys: rest.keys
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/accounts/{account-id}/rate-limits/usage/download
      name: api-accounts-account-id-rate-limits-usage-download
      description: REST surface for api-accounts-account_id-rate-limits-usage-download.
      operations:
      - method: GET
        name: downloadratelimitusageapiaccountsaccountidratelimitsusagedownloadget
        description: Download Rate Limit Usage
        call: prefect-rate-limits.downloadratelimitusageapiaccountsaccountidratelimitsusagedownloadget
        with:
          account_id: rest.account_id
          since: rest.since
          until: rest.until
          keys: rest.keys
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: prefect-rate-limits-mcp
    port: 9090
    transport: http
    description: MCP adapter for Prefect Cloud API — Rate Limits. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: list-actor-names
      description: List Actor Names
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: prefect-rate-limits.listactornamesapiaccountsaccountidratelimitsactornamesget
      with:
        account_id: tools.account_id
        since: tools.since
        until: tools.until
        search: tools.search
        limit: tools.limit
        keys: tools.keys
      outputParameters:
      - type: object
        mapping: $.
    - name: list-api-key-names
      description: List Api Key Names
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: prefect-rate-limits.listapikeynamesapiaccountsaccountidratelimitsapikeynamesget
      with:
        account_id: tools.account_id
        since: tools.since
        until: tools.until
        search: tools.search
        limit: tools.limit
        keys: tools.keys
      outputParameters:
      - type: object
        mapping: $.
    - name: read-events-grouped-usage
      description: Read Events Grouped Usage
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: prefect-rate-limits.readeventsgroupedusageapiaccountsaccountidratelimitseventsget
      with:
        account_id: tools.account_id
        since: tools.since
        until: tools.until
        group_by: tools.group_by
        workspace_id: tools.workspace_id
        api_key_name: tools.api_key_name
        actor_name: tools.actor_name
      outputParameters:
      - type: object
        mapping: $.
    - name: read-orchestration-api-grouped-usage
      description: Read Orchestration Api Grouped Usage
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: prefect-rate-limits.readorchestrationapigroupedusageapiaccountsaccountidratelimitsorchestrationapiget
      with:
        account_id: tools.account_id
        since: tools.since
        until: tools.until
        group_by: tools.group_by
        workspace_id: tools.workspace_id
        api_key_name: tools.api_key_name
        actor_name: tools.actor_name
      outputParameters:
      - type: object
        mapping: $.
    - name: read-rate-limit-status
      description: Read Rate Limit Status
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: prefect-rate-limits.readratelimitstatusapiaccountsaccountidratelimitsstatusget
      with:
        account_id: tools.account_id
      outputParameters:
      - type: object
        mapping: $.
    - name: read-rate-limit-usage
      description: Read Rate Limit Usage
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: prefect-rate-limits.readratelimitusageapiaccountsaccountidratelimitsusageget
      with:
        account_id: tools.account_id
        since: tools.since
        until: tools.until
        keys: tools.keys
      outputParameters:
      - type: object
        mapping: $.
    - name: download-rate-limit-usage
      description: Download Rate Limit Usage
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: prefect-rate-limits.downloadratelimitusageapiaccountsaccountidratelimitsusagedownloadget
      with:
        account_id: tools.account_id
        since: tools.since
        until: tools.until
        keys: tools.keys
      outputParameters:
      - type: object
        mapping: $.