---
title: "Read an owned private capability revision"
method: GET
path: "/v0/capabilities/{capability_id}"
---

# Read an owned private capability revision

`GET /v0/capabilities/{capability_id}`

## Request

- Base URL: `https://exactlane.dev` (the document declares no server; this is the origin it was published from)
- URL: `https://exactlane.dev/v0/capabilities/{capability_id}`
- Auth: HTTP bearer

Owner-only. Returns snapshot bytes while the caller credential is still valid. After Public Preview grant expiry the bearer is expired; snapshot_digest is not a retrieval key and cannot fetch bytes. There is no digest-fetch API.

## Path parameters

- `capability_id` string, required

## Response `200`

Private capability revision

- CapabilityResponse
  - `capability` Capability, required
    - `capability_key` string, required
    - `created_at` string, date-time, required
    - `expires_at` string, date-time, required
    - `id` string, required
    - `revision_label` string, required
    - `snapshot` CapabilitySnapshot
      - `captured_at` string, date-time
      - `protocol` object
        - `name` string
        - `revision` string
        - `transport` string
      - `schema_version` string
      - `tools` CapabilityTool[]
        - `_meta` object: Accepted for tools/list compatibility and discarded before storage, digest and evaluation
        - `annotations` object: Accepted for tools/list compatibility and discarded before storage, digest and evaluation
        - `description` string: Accepted for tools/list compatibility and discarded before storage, digest and evaluation
        - `icons` unknown[]: Accepted for tools/list compatibility and discarded before storage, digest and evaluation
          - unknown
        - `inputSchema` JsonSchemaObject: JSON Schema object; the fixed profile supports only its documented keyword subset
        - `max_input_bytes` integer
        - `name` string, required
        - `outputSchema` JsonSchemaObject: JSON Schema object; the fixed profile supports only its documented keyword subset
        - `title` string: Accepted for tools/list compatibility and discarded before storage, digest and evaluation
    - `snapshot_digest` string, required: Integrity hash of the stored caller-provided snapshot. Not a retrieval key. After Public Preview grant expiry, this digest cannot be used to fetch snapshot bytes; keep inline bytes or re-submit. GET /v0/capabilities/{capability_id} returns bytes only while the owner credential is still valid. There is no digest-fetch API.
    - `source_kind` 'CALLER_PROVIDED', required

## Other responses

- `400`: Malformed request or idempotency key
- `401`: Missing or invalid credential
- `403`: Insufficient scope or disabled live mode
- `404`: Resource absent or not owned
- `409`: Idempotency or unique-event conflict
- `411`: Content-Length is required
- `413`: Request exceeds a hard bound
- `415`: Media type or content encoding is unsupported
- `422`: Request shape or fixed profile is unsupported
- `429`: Principal quota exceeded
- `500`: Bounded internal failure

---

[API](https://skmtc.dev/exactlane/apis/exactlane-preflight-phase-0a.md) · [All operations](https://skmtc.dev/exactlane/apis/exactlane-preflight-phase-0a/llms.txt) · [OpenAPI document](https://skmtc.dev/exactlane/apis/exactlane-preflight-phase-0a/revisions/544a503598aa?raw)
