veil

Leggi una richiesta di accesso

I dati della pagina di consenso: l'app, se una scheda la garantisce, gli scope e i campi che il testo del consenso firma.

GET/oidc/requests/{id}
Accesso
Serve un codice privato
Client
Client locale o server

Parametri#

NomePosizioneSignificato
idObbligatorioPercorsoL'id della richiesta: 43 caratteri dall'indirizzo della pagina di consenso (`?req=`) o dal suo elemento meta.

Esempi di richiesta#

cURL
curl -fsS 'https://veil.rip/oidc/requests/{id}'

Risposta#

HTTP 200application/json

La richiesta come il server l'ha controllata.

CampoTipoSignificato
idstringL'id della richiesta.
issuerstringhttps://veil.rip.
clientobject{id, name, site, logo, verified, owner, dynamic, type}.
redirectUristringDove va il codice.
redirectHoststring | nullIl suo host, per la pagina.
scopesarray<string>Nell'ordine in cui il consenso li firma.
promptstring | nullIl prompt dell'app.
uiLocalesstring | nullGli ui_locales dell'app.
askEveryTimebooleanIl redirect URI è sull'interfaccia di loopback (un'app nativa): la pagina chiede il clic ogni volta, anche per un'app che la scheda ha approvato.
consentobject{prefix, iss, client, redirect, scopes, nonce, state (SHA-256 hex o null), challenge, request}: i campi firmati.
createdAtstringISO 8601 UTC.
expiresAtstring30 minuti dopo.

Intestazioni della risposta#

IntestazioneValoreSignificato
Content-Typeapplication/jsonJSON, anche per gli errori.
Cache-Controlno-storePrivata: mai in una cache.

Note d’uso#

  • Chi ha l'id lo legge, come chi ha l'indirizzo apre la pagina. Niente CORS.

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

HTTPCodiceSignificato e cosa fare
404not_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.

410request_expired

La richiesta di accesso è già stata usata o ha più di 30 minuti.

Torna all'app e ricomincia.

Errori comuni delle richieste
HTTPCodiceSignificato e cosa fare
429rate_limited

È stato superato un limite anonimo, delle richieste firmate o della chiave API.

Attendi almeno i secondi indicati da Retry-After. Condividi coda e budget dei tentativi tra i tuoi processi.

500internal_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.

503busy

L’applicazione ha raggiunto un limite temporaneo di concorrenza o del database.

Attendi i secondi indicati da Retry-After e riprova con attese crescenti e un limite.