veil

Elenca le app di una scheda

Le app registrate da una scheda per Accedi con Veil, senza i segreti.

GET/v1/developer/accounts/{n}/oidc-clients
Accesso
Richiesta firmata
Client
Client locale o server

Parametri#

NomePosizioneSignificato
nObbligatorioPercorsoLa scheda che possiede le app: una persona, o un'organizzazione attraverso un proprietario accettato.

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
curl -fsS \
  -H "X-Public-Key: $PUBLIC_KEY" -H "X-Signature: $REQUEST_SIGNATURE" -H "X-Nonce: $NONCE" -H "X-Timestamp: $TIMESTAMP" \
  "https://veil.rip/v1/developer/accounts/1/oidc-clients"

Risposta#

HTTP 200application/json

{owner, clients, limit: 20}.

CampoTipoSignificato
ownerintegerLa scheda.
clientsarray<OidcClient>Le sue app.
limitinteger20.

Apri un oggetto annidato per leggerne i campi. I tipi con null ammettono un valore null; i campi optional possono essere assenti. Gli altri campi sono presenti nell’oggetto.

App OidcClient
CampoTipoSignificato
idstringclient_id.
namestringIl nome che la pagina di consenso mostra.
sitestring | nullIl sito https dell'app.
redirectUrisarray<string>Redirect URI esatti.
postLogoutRedirectUrisarray<string>Dove /oidc/logout può mandare il browser.
typestringpublic o confidential.
authMethodstringnone, client_secret_basic o private_key_jwt.
idTokenAlgstringEdDSA o ES256.
refreshbooleanSe l'app riceve i refresh token.
logostring | nullL'indirizzo del logo, con ?v= il suo hash.
verifiedobject | null{domain}: la scheda titolare prova il dominio del sito e di ogni redirect URI https.
ownerobject | null{n, name, type, url} della scheda titolare; null per un'app registrata senza scheda.
dynamicbooleanRegistrata con POST /oidc/register.
createdAtstringISO 8601 UTC.
expiresAtstring | nullLa fine di un'app dinamica, 30 giorni dopo la registrazione.
lastUsedAtstring | nullUltimo accesso o token.
jwksobject | nullLe chiavi pubbliche di un'app private_key_jwt.

Intestazioni della risposta#

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

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
403identity_banned

La scheda che agisce è sospesa dallo staff di Veil.

Attendi la fine della restrizione o chiedi allo staff di riesaminarla.

403key_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.

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.

Errori comuni delle richieste
HTTPCodiceSignificato e cosa fare
400invalid_nonce

Il nonce della richiesta firmata ha un formato errato.

Genera un nuovo nonce da 16 a 128 caratteri usando lettere, cifre, _ o -.

400invalid_signature_alg

X-Signature-Alg non è supportato.

Usa un algoritmo di firma supportato e la codifica corretta per chiave e firma.

400invalid_timestamp

Il timestamp della richiesta firmata non è espresso in millisecondi Unix.

Usa un timestamp Unix intero in millisecondi e firma la richiesta corretta.

401invalid_signature

La firma della richiesta HTTP non è valida.

Firma metodo, percorso e byte del corpo esatti, senza modificarli dopo.

401missing_signature

La richiesta richiede una firma del dispositivo e le intestazioni mancano o non sono leggibili.

Invia X-Public-Key, X-Signature e i metadati della richiesta firmata. Una chiave API non sostituisce la firma del dispositivo.

401stale_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.

403key_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.

409replayed_nonce

La chiave di firma ha già usato questo nonce.

Controlla se la richiesta precedente è riuscita prima di crearne una nuova firmata.

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.