Leggi una dichiarazione
Una dichiarazione firmata per il suo id, con la sua scheda e, per un ritiro, la dichiarazione che ritira. /statements/{id} è la sua pagina, con l’anteprima e un Article in JSON-LD; con .json dà questo JSON.
/v1/statements/{id}- Accesso
- Pubblico; chiave API facoltativa
- Client
- Fetch dal browser supportato
Altri indirizzi#
/statements/{id}
Parametri#
| Nome | Posizione | Significato |
|---|---|---|
idObbligatorio | Percorso | L’id della dichiarazione: la sua posizione nel registro. |
Esempi di richiesta#
curl -fsS 'https://veil.rip/v1/statements/1'Risposta#
La dichiarazione.
| Campo | Tipo | Significato |
|---|---|---|
card | object | n, type, name, token e url della scheda. |
statement | object | La dichiarazione, come nell’elenco della scheda. |
retracts | object | null | Per un ritiro, la dichiarazione che ritira. |
Intestazioni della risposta#
| Intestazione | Valore | Significato |
|---|---|---|
Content-Type | application/json | Usa il tipo dichiarato per scegliere come leggere il corpo. |
Date | HTTP date | Ora del server. Confrontala con il tuo orologio per firmare le richieste. |
Cache-Control | no-cache | Richiedila ogni volta: una dichiarazione o un avviso nuovi si vedono subito. |
Cosa verificare#
Controlla ogni elemento prima di mostrarlo come della scheda: dichiarazione canonica, c = SHA-256(salt ‖ statement), la firma della voce su "veil-rubrica:card-entry:v2\n" e la voce senza firma, con una chiave attiva per chi firma alla posizione i (dalle sue versioni di autorità), e l’inclusione in un checkpoint firmato dal registro e controfirmato da un quorum. L’elenco in sé è la parola del server: può tralasciare una voce.
Errori#
Gli errori API restituiscono un oggetto error. Usa error.code nella logica del programma; error.message è un testo inglese per le persone e può cambiare. Guida a risposte ed errori
| HTTP | Codice | Significato e cosa fare |
|---|---|---|
| 400 | invalid_parameter | Un campo del percorso, della query o del corpo manca, è malformato o fuori intervallo. Correggi il campo indicato in |
| 400 | wrong_format | La richiesta o la lettura appartiene all’altro formato del registro di questo server: un record v1 su un registro in formato 2, o una lettura del formato 2 su un registro in formato 1. Leggi |
| 404 | not_found | La scheda, la chiave, l’alias, il codice o la risorsa richiesti non sono stati trovati. Controlla l’identificatore. Codici e anteprime temporanei potrebbero essere scaduti o già usati. |
| 410 | erased | La scheda esisteva ed è stata cancellata o rimossa. La risposta contiene anche la ricevuta pubblica di cancellazione. Smetti di usare questa scheda come autorità corrente. Conserva soltanto la ricevuta pubblica se serve. |
Errori comuni delle richieste
| HTTP | Codice | Significato e cosa fare |
|---|---|---|
| 429 | rate_limited | È stato superato un limite anonimo, delle richieste firmate o della chiave API. Attendi almeno i secondi indicati da |
| 500 | internal_error | Si è verificato un errore imprevisto del server. I dettagli interni non vengono restituiti. Riprova le letture con attese crescenti e un limite. Controlla l’esito delle scritture prima di inviare una nuova operazione firmata. |
| 503 | busy | L’applicazione ha raggiunto un limite temporaneo di concorrenza o del database. Attendi i secondi indicati da |