Passports

Full archival record of one snapshot.

Returns the complete authority-level JSON-LD the passport asserted at snapshot time, plus a re-verification of the content hash. A tampered at-rest document surfaces as hashValid: false rather than being silently trusted.

The same tenant-scoping and 404-for-foreign-ids semantics as the parent list endpoint apply: an unknown snapshot id and a snapshot that belongs to a different passport or company both return 404.

Read-only; counts as one v1 passport read against the daily cap.

get/api/v1/passports/{id}/snapshots/{snapshotId}

Request

  • Base URL: https://app.tracepass.eu
  • URL: https://app.tracepass.eu/api/v1/passports/{id}/snapshots/{snapshotId}
  • Auth: one of:
    • HTTP bearer
    • OAuth 2 (authorization code, authorization URL https://app.tracepass.eu/api/oauth/authorize, token URL https://app.tracepass.eu/api/oauth/token, scopes: passports:read)

Response

Snapshot detail.

idstring required

The snapshot's TracePass id (MongoDB ObjectId hex).

versioninteger required

The passport version counter at the time of this snapshot.

reason'published' | 'republished' | 'manual' | 'field_edit' | 'status_change' | 'parties' | 'supplier' | 'ai' | 'restore' | 'system' | 'baseline' required

Why this snapshot was taken.

actorstring

Who caused the change, when known: user:<id>, apikey:<prefix>, oauth:<clientId>, supplier:<requestId> or system:<job>.

snapshotAtstring date-time required

When the snapshot was taken (ISO 8601).

contentHashstring required

SHA-256 hex digest of the canonical JSON-LD archived at snapshot time. Re-verified on every read — if the stored document was tampered with at rest, hashValid is false.

hashValidboolean required

True when the freshly-computed sha256(jsonLd) matches the stored contentHash. False indicates at-rest tampering.

restorableboolean required

True when the snapshot carries rawFields and can drive a field-level restore. Snapshots taken before rawFields was captured are evidence-only (permanently restorable: false).

fieldCountinteger nullable required

Number of fields captured in rawFields, or null for pre-rawFields snapshots.

jsonLdobject required

The complete JSON-LD document archived at snapshot time — what the public passport viewer would have returned for this passport on the snapshot date. The content hash covers this field only.

Changes

No recorded changes to this operation across all 1 revision of this API.