TracePass
Passaporti

Ottenere uno snapshot del passaporto

Restituisce il registro archivistico completo per uno snapshot di immutabilità: l'intero payload JSON-LD esattamente com'era il passaporto quando è stato acquisito lo snapshot — alla pubblicazione o dopo ogni modifica di un passaporto pubblicato, sospeso, scaduto o archiviato — i metadati dello snapshot (versione, motivo, actor — chi ha causato la modifica — e timestamp) e la ri-verifica dell'hash del contenuto. Per ottenere la versione valida a una certa data, usare ?at= in Elencare gli snapshot del passaporto. hashValid: false significa che il payload memorizzato è stato modificato dopo che lo snapshot è stato acquisito — indicativo di manomissione at-rest.

GET/api/v1/passports/{id}/snapshots/{snapshotId}
Scarica OpenAPI 3.1
GET/api/v1/passports/{id}/snapshots/{snapshotId}

Ottenere uno snapshot del passaporto

Restituisce il registro archivistico completo per uno snapshot di immutabilità: l'intero payload JSON-LD esattamente com'era il passaporto quando è stato acquisito lo snapshot — alla pubblicazione o dopo ogni modifica di un passaporto pubblicato, sospeso, scaduto o archiviato — i metadati dello snapshot (versione, motivo, actor — chi ha causato la modifica — e timestamp) e la ri-verifica dell'hash del contenuto. Per ottenere la versione valida a una certa data, usare ?at= in Elencare gli snapshot del passaporto. hashValid: false significa che il payload memorizzato è stato modificato dopo che lo snapshot è stato acquisito — indicativo di manomissione at-rest.

Il flag restorable indica se rawFields è stato catturato al momento dello snapshot. Quando restorable è true, un'azione di ripristino dalla dashboard può riportare il passaporto live a questa versione campo per campo. Quando è false (perché rawFields non è stato catturato, o è vuoto), lo snapshot è solo di evidenza — il JSON-LD è ancora preservato e verificabile, ma un ripristino automatizzato a livello di campo non è possibile.

Scoped per tenant: puoi leggere solo gli snapshot dei passaporti della tua azienda. Conta come una lettura v1 passaporto contro il limite giornaliero. Fornisci l'ID dello snapshot dai valori entries[].id restituiti da Elencare gli snapshot del passaporto.

Parametri di percorso

  • idobbligatorio

    string (24 hex chars)

    ID del passaporto.

  • snapshotIdobbligatorio

    string (24 hex chars)

    ID dello snapshot (dal campo entries[].id di Elencare gli snapshot del passaporto).

Header

  • Authorizationobbligatorio

    string

    Bearer <token> — una chiave API tp_ (Developer → API Keys; più semplice, per server-to-server) oppure un access token OAuth 2.0 (Developer → OAuth Apps; per app autorizzate dall'utente, scoped e revocabili). La pagina Authentication contiene il flusso OAuth completo e l'elenco degli scopes.

    e.g. Bearer tp_REDACTED_xxxxxxxxxxxx

Richiesta

curl -sS "https://app.tracepass.eu/api/v1/passports/6650b2c3d4e5f6a7b8c9d0e1/snapshots/65a0f1b2c3d4e5f6a7b8c9d1" \
  -H "Authorization: Bearer tp_REDACTED_xxxxxxxxxxxx"

Risposta

{
  "id": "65a0f1b2c3d4e5f6a7b8c9d1",
  "version": 3,
  "reason": "field_edit",
  "actor": "apikey:tp_89b2482d",
  "snapshotAt": "2026-09-15T14:32:00.000Z",
  "contentHash": "a3f1c2d4e5b6a7c8d9e0f1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c2",
  "hashValid": true,
  "restorable": true,
  "fieldCount": 142,
  "jsonLd": {
    "@context": "https://gs1.org/voc/",
    "@type": "gs1:Product",
    "gs1:productName": "Industrial Battery 48V 200Ah",
    "gs1:gtin": "09506000134376"
  }
}