Leggi gli avvisi via email di una scheda
Una chiave attiva della scheda legge con una GET firmata se gli avvisi via email sono attivi.
/v1/identities/{n}/notices- Accesso
- Richiesta firmata
- Client
- Client locale o server
Parametri#
| Nome | Posizione | Significato |
|---|---|---|
nObbligatorio | Percorso | Numero della scheda. |
Manda le intestazioni comuni di firma, inclusi X-Nonce e X-Timestamp. Una GET firmata non ha corpo JSON. Firma delle richieste
Esempi di richiesta#
curl -fsS \
-H "X-Public-Key: $PUBLIC_KEY" -H "X-Signature: $REQUEST_SIGNATURE" \
-H "X-Nonce: $NONCE" -H "X-Timestamp: $TIMESTAMP_MS" \
"https://veil.rip/v1/identities/CARD_NUMBER/notices"Risposta#
Lo stato degli avvisi della scheda: se sono attivi, la lingua, dove vanno le email e quali eventi ne mandano una.
| Campo | Tipo | Significato |
|---|---|---|
n | integer | Numero della scheda. |
on | boolean | Se la scheda ha attivato gli avvisi. |
lang | string | null | Lingua delle email, en o it, quando sono attivi. |
since | string | null | Quando il proprietario li ha attivati. |
lastSentAt | string | null | Quando è partito l’ultimo avviso. |
email | string | null | Dove vanno le email: l’indirizzo email verificato più vecchio della scheda, letto quando parte ognuna. Null se non ce n’è. |
mail | boolean | Se questo server può mandare email. |
events | array<string> | Gli eventi per cui parte un avviso: takeover, device_added, device_revoked, backup_missing, proof_failing, key_idle, e canary_due per i proprietari dell’organizzazione Veil. |
dailyCap | integer | Email al massimo per scheda e per giorno UTC; gli avvisi in più partono in un riepilogo. |
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. |
Note d’uso#
- Per attivarli serve un collegamento email verificato sulla scheda. Gli avvisi vanno al suo indirizzo verificato più vecchio, un’email per evento, in testo semplice, con l’indirizzo della scheda, il perché e un link per fermarli; al massimo 3 per scheda per giorno UTC, poi un riepilogo. Niente di firmato cambia.
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 |
| 403 | key_mismatch | La chiave di firma non è autorizzata per questa scheda o operazione. Usa una chiave di dispositivo attiva con il ruolo di titolare o membro richiesto. |
| 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. |
| 422 | not_for_organizations | Gli avvisi sono per la scheda di una persona. Un’organizzazione non ne ha di suoi. Ogni proprietario li attiva sulla propria scheda. |
Errori comuni delle richieste
| HTTP | Codice | Significato e cosa fare |
|---|---|---|
| 400 | invalid_nonce | Il nonce della richiesta firmata ha un formato errato. Genera un nuovo nonce da 16 a 128 caratteri usando lettere, cifre, _ o -. |
| 400 | invalid_signature_alg |
Usa un algoritmo di firma supportato e la codifica corretta per chiave e firma. |
| 400 | invalid_timestamp | Il timestamp della richiesta firmata non è espresso in millisecondi Unix. Usa un timestamp Unix intero in millisecondi e firma la richiesta corretta. |
| 401 | invalid_signature | La firma della richiesta HTTP non è valida. Firma metodo, percorso e byte del corpo esatti, senza modificarli dopo. |
| 401 | missing_signature | La richiesta richiede una firma del dispositivo e le intestazioni mancano o non sono leggibili. Invia |
| 401 | stale_timestamp | Il timestamp firmato è fuori dalla finestra temporale ammessa. Confronta l’intestazione Date del server con il tuo orologio, poi genera nuovi nonce, timestamp e firma. |
| 403 | key_banned | La chiave del dispositivo che firma è sospesa dallo staff di Veil. Usa una chiave attiva autorizzata o chiedi allo staff di riesaminare la restrizione. |
| 409 | replayed_nonce | La chiave di firma ha già usato questo nonce. Controlla se la richiesta precedente è riuscita prima di crearne una nuova firmata. |
| 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 |