veil

Risolvi o controlla un alias

Controlla la disponibilità e trova la scheda permanente dietro un alias assegnato.

GET/v1/aliases/{kind}/{alias}
Accesso
Pubblico; chiave API facoltativa
Client
Fetch dal browser supportato

Parametri#

NomePosizioneSignificato
kindObbligatorioPercorsou per persone, o per organizzazioni.
aliasObbligatorioPercorsoDa 3 a 32 lettere ASCII, cifre, trattini o trattini bassi. Inizia con una lettera e termina con lettera o cifra.

Esempi di richiesta#

cURL
curl -fsS 'https://veil.rip/v1/aliases/o/veil'
javascript
const response = await fetch("https://veil.rip/v1/aliases/o/veil");
const result = await response.json();

Prova la richiesta#

Risposta#

HTTP 200application/json

available e status descrivono l’alias. Un alias assegnato contiene identity. quarantineDays e reusableAt descrivono un nome rilasciato. reservedFor può indicare un’organizzazione riservata.

CampoTipoSignificato
kindstringu per una persona, o per un’organizzazione.
aliasstringAlias normalizzato.
availablebooleanIndica se può iniziare una nuova richiesta.
statusstringavailable, claimed, reserved_name, publishing o quarantined.
urlstringIndirizzo dell’alias controllato.
identityobject | nulln e url permanente del titolare corrente.
reusableAtstring | nullData e ora di fine della quarantena.
quarantineDaysintegerDurata della quarantena, attualmente 30 giorni.
previousIdentityobject | nullTitolare precedente quando indicato durante la quarantena.
reservedForobject | nullScheda autorizzata a riprendere un alias riservato, se applicabile.

Esempio di risposta

Valori illustrativi. Leggi la risposta corrente della tua richiesta.

json
{
  "kind": "u",
  "alias": "sample-person",
  "available": true,
  "status": "available",
  "url": "https://veil.rip/u/sample-person",
  "identity": null,
  "reusableAt": null,
  "quarantineDays": 30,
  "previousIdentity": null,
  "reservedFor": null
}

Intestazioni della risposta#

IntestazioneValoreSignificato
Content-Typeapplication/jsonUsa il tipo dichiarato per scegliere come leggere il corpo.
DateHTTP dateOra del server. Confrontala con il tuo orologio per firmare le richieste.
Retry-Afterinteger seconds, on rate_limited or busyAttendi almeno questo intervallo prima di riprovare. Altri codici 429/503 non lo includono necessariamente.

Note d’uso#

  • La disponibilità non prenota il nome. Per scegliere un alias serve una versione firmata. Conserva il numero permanente perché un nome può essere rilasciato e riassegnato.

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
400invalid_alias

L’alias non rispetta le regole ASCII del nome.

Usa da 3 a 32 lettere ASCII minuscole, cifre, trattini o trattini bassi; inizia con una lettera e termina con una lettera o cifra.

400invalid_parameter

Un campo del percorso, della query o del corpo manca, è malformato o fuori intervallo.

Correggi il campo indicato in error.message prima di inviare di nuovo.

Quando usi una chiave API facoltativa
HTTPCodiceSignificato e cosa fare
401invalid_api_key

La credenziale Bearer è malformata, sconosciuta, scaduta o revocata.

Usa una chiave attiva. Per l’accesso pubblico anonimo, rimuovi del tutto Authorization. Credenziali non valide non attivano automaticamente l’accesso anonimo.

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

403api_key_suspended

Questa chiave API è sospesa.

Chiedi allo staff di ripristinarla; un’altra chiave non rimuove la sospensione dell’account.

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