---
title: "Project an accepted-run proof into immutable distribution objects."
method: GET
path: "/api/run-proof-distribution/{proofId}"
tags: ["Run Cards"]
---

# Project an accepted-run proof into immutable distribution objects.

`GET /api/run-proof-distribution/{proofId}`

## Request

- Base URL: `https://huggingbay.xyz`
- URL: `https://huggingbay.xyz/api/run-proof-distribution/{proofId}`
- Auth: none required

Loads the same replay-validated accepted-run proof authority as the recorded proof route, then emits a deterministic badge, social-card image, share packet, or MCP result. A stale, revoked, retracted, or otherwise downgraded proof is never projected as verified.

**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.** API JSON failures use the documented response schema. Read code, message and next; retry only when the response allows it. Auth, invalid input and missing records need a caller change.

**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

- `proofId` string, required

## Query parameters

- `format` 'badge' | 'og' | 'share' | 'mcp'

## Headers

- `If-None-Match` string

## Response `200`

Deterministic proof-bound distribution object

- AcceptedRunProofDistributionShareCard
  - `schema` 'hugging-bay.accepted-run-proof.distribution.v1', required
  - `version` '1.0.0', required
  - `kind` 'share-card', required
  - `proofId` string, required
  - `proofDigest` string, required
  - `status` 'current' | 'expired' | 'stale' | 'superseded' | 'revoked' | 'retracted', required
  - `projectionState` 'verified' | 'blocked', required
  - `evidenceCutoff` string, date-time, required
  - `canonicalUrl` string, uri, required
  - `contentDigest` string, required
  - `etag` string, required
  - `overline` string, required
  - `headline` string, required
  - `subheadline` string, required
  - `statusLine` string, required
  - `hardwareClass` string, required
  - `evidenceStrength` string, required
  - `accentColor` string, required
  - `width` unknown, required
  - `height` unknown, required

## Other responses

- `304`: Exact representation ETag match; no response body
- `404`: Proof mapping not found or proof id malformed
- `405`: Only GET and HEAD are supported
- `406`: Requested distribution representation is unsupported
- `409`: Proof authority or projection binding is permanently divergent
- `503`: Proof authority or bounded projection temporarily unavailable

---

[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)
