---
title: "Read a recorded public request intent."
method: GET
path: "/request-intents/{intentId}"
tags: ["Request Intents"]
---

# Read a recorded public request intent.

`GET /request-intents/{intentId}`

## Request

- Base URL: `https://huggingbay.xyz`
- URL: `https://huggingbay.xyz/request-intents/{intentId}`
- Auth: none required

Public, privacy-safe projection loaded from the authoritative request-intent record and rendered through the recorded request-intent adapter. Supports HTML, JSON, JSON-LD, agent, CLI, share, and Markdown negotiation. Requester, contact, IP, user-agent, referrer, locale, geography, and abuse data are never exposed. This route fails closed when retained public state cannot be reproduced exactly.

**Inputs.** Path, query and header fields are listed below. No request body is required.

**Outputs.** See each status below for its media type, schema and headers. A missing record or unavailable capability is not a successful empty result.

**Errors.** Read the status and Content-Type before decoding. Document, image, redirect and file routes need not return JSON errors.

**Rate limits.** Public read budgets apply by client IP and route group. This operation can have a smaller route-specific budget. Read Retry-After on 429 or retryable 503 responses.

**Example setup.** Use an identifier returned by the matching list, search or create operation. Sample identifiers are not a promise that a record exists.

## Path parameters

- `intentId` string, required

## Query parameters

- `format` 'html' | 'json' | 'jsonld' | 'agent' | 'cli' | 'share' | 'markdown'

## Headers

- `If-None-Match` string

## Response `200`

recorded negotiated request-intent representation.

- RequestIntentSurface
  - `schema` 'hugging-bay.request-intent.v1', required
  - `intentId` string, required
  - `intentKey` string, required
  - `kind` 'exact-representation' | 'dataset' | 'runtime-verification' | 'preservation' | 'feature', required
  - `title` string, required
  - `description` string, required
  - `canonicalUrl` string, uri, required
  - `jsonUrl` string, uri, required
  - `generatedAt` string, date-time, required
  - `identity` object, required
    - `constraints` object, required
      - `commercialUse` 'required' | 'preferred' | 'not-required'
      - `format` string
      - `hardwareTier` string
      - `contextTokens` integer
      - `minBytes` integer
      - `maxBytes` integer
      - `quantPreference` string
      - `task` string
      - `licenseId` string
      - `licensePolicy` string
    - `exactSelector` object, required
      - `representationId` string, nullable
      - `quant` string, nullable
      - `config` string, nullable
      - `split` string, nullable
      - `subset` string, nullable
    - `kind` string, required
    - `publicVisibility` 'public', required
  - `lifecycle` object, required
    - `state` 'recorded' | 'under-review' | 'evidence-needed' | 'blocked' | 'fulfilled' | 'rejected' | 'superseded', required
    - `reason` string, required
    - `evidenceCutoff` string, date-time, required
  - `fulfillment` object, required
    - `fulfilled` boolean, required
    - `authoritativeFulfillmentRef` object, nullable, required
      - `authority` string, required
      - `recordId` string, required
      - `ref` string, required
  - `authorityRefs` object[], required
    - `authority` string, required
    - `refKind` string, required
    - `ref` string, required
    - `state` 'unobserved' | 'fulfilled', required
  - `nextAction` string, required
  - `license` object, nullable, required
  - `supersededBy` string, nullable, required
  - `blockers` object[], required
    - `code` string, required
    - `detail` string, required
  - `uncertainty` unknown[], required
    - unknown
  - `claims` object[], required
    - `id` string, required
    - `label` string, required
    - `value` string, required
    - `evidenceSource` string, required
    - `evidenceDigest` string, nullable, required
    - `timestamp` string, date-time, required
    - `canonicalVerificationUrl` string, uri, required
    - `citationId` string, required
    - `digest` string, required
  - `surfaceDigest` string, required
  - `etag` string, required

## Other responses

- `304`: The selected representation matches If-None-Match.
- `404`: The recorded public intent does not exist or the identifier is invalid.
- `405`: Method not allowed; this surface supports GET and HEAD only.
- `406`: The requested representation is unsupported.
- `410`: The authoritative intent is rejected or superseded; the complete recorded packet remains available without an unsafe obtain/run action.
- `429`: Server request-rate budget exceeded.
- `503`: Authoritative state, exact public reconstruction, deadline, or read admission is unavailable; no partial projection is returned.

---

[API](https://skmtc.dev/huggingbay/apis/hugging-bay-public-api.md) · [All operations](https://skmtc.dev/huggingbay/apis/hugging-bay-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/huggingbay/apis/hugging-bay-public-api/revisions/63c474bf0fe4?raw)
