Leggi lo stato del registro
Identifica il registro attivo e leggi checkpoint e stato dei testimoni visti dal server.
/v1/log- Accesso
- Pubblico; chiave API facoltativa
- Client
- Fetch dal browser supportato
Esempi di richiesta#
curl -fsS 'https://veil.rip/v1/log'const response = await fetch("https://veil.rip/v1/log");
const result = await response.json();Prova la richiesta#
Risposta#
origin, size, root, checkpoint, witnesses, quorum, quorumMet e informazioni di freschezza e coerenza. Sono i controlli del server.
| Campo | Tipo | Significato |
|---|---|---|
origin | string | Origine del registro. |
size | integer | Dimensione corrente dell’albero. |
root | string | Hash firmato della radice in base64. |
logSignatureOk | boolean | Controllo della firma del registro eseguito dal server. |
rootOk | boolean | Controllo di coerenza del checkpoint eseguito dal server. |
quorum | integer | Firme dei testimoni richieste. |
signed | integer | Firme valide dei testimoni sulla dimensione corrente. |
of | integer | Numero dei testimoni configurati. |
quorumMet | boolean | Indica se il checkpoint corrente raggiunge il quorum. |
witnesses | array<object> | Ogni riga ha id, name, size, signedAt (secondi Unix o null), ok, current, error, operator, kind, logo e initials. |
checkpoint | string | Nota firmata completa. |
checkedAt | string | Data e ora del controllo del server in ISO 8601 UTC. |
newestCosignatureAt | integer | null | Controfirma valida più recente in secondi Unix. |
fresh | boolean | Indica se il checkpoint rientra in freshSeconds. |
freshSeconds | integer | Soglia di freschezza in secondi. |
consistency | object | from, fromRoot, proof, ok, firstUse, behind ed error descrivono il confronto con il checkpoint accettato. |
accepted | object | null | Ultimi size, root e at accettati, più firstSize e firstAt dell’inizio della catena. |
format | integer | optional | Il formato del registro quando non è 1: 2 per intestazioni, corpi e indice. |
staffOrg | string | optional | Formato 2: il token dell’organizzazione Veil, il parametro dell’indice. Manca in formato 1 e finché il server non ha un’organizzazione Veil. Un browser rifiuta un registro in formato 2 che non lo dice. |
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. |
Retry-After | integer seconds, on rate_limited or busy | Attendi almeno questo intervallo prima di riprovare. Altri codici 429/503 non lo includono necessariamente. |
Cosa verificare#
Fissa il registro atteso e la policy dei testimoni per una verifica indipendente. Un registro diverso non è una storia intercambiabile.
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 |
|---|---|---|
| 503 | log_unavailable | Al momento il registro pubblico non può essere letto, verificato o usato per pubblicare. Per le letture, considera il risultato non verificato e riprova più tardi. Prima di ripetere una scrittura, leggi la scheda per controllare se la pubblicazione è terminata. |
Quando usi una chiave API facoltativa
| HTTP | Codice | Significato e cosa fare |
|---|---|---|
| 401 | invalid_api_key | La credenziale Bearer è malformata, sconosciuta, scaduta o revocata. Usa una chiave attiva. Per l’accesso pubblico anonimo, rimuovi del tutto |
| 403 | api_key_scope | La chiave API non ha il permesso read o verify, oppure l’endpoint non accetta chiavi Bearer. Usa il permesso corretto. Le modifiche alle schede e la gestione delle chiavi richiedono una firma del dispositivo. |
| 403 | api_key_suspended | Questa chiave API è sospesa. Chiedi allo staff di ripristinarla; un’altra chiave non rimuove la sospensione dell’account. |
| 403 | developer_suspended | L’account API del titolare è sospeso oppure la scheda titolare non è disponibile. Controlla l’account titolare e le restrizioni dello staff. Creare un’altra chiave non aggira la sospensione. |
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 |