Network Northwest

Integrazione · API

Noiosa di proposito.

REST su HTTPS, JSON in entrata e in uscita, versioni datate, scritture idempotenti ed errori che vi dicono quale campo era sbagliato. Oltre alle risorse qui non c'è nulla da imparare — ed è voluto.

  • RESTsu HTTPS
  • 24 hfinestra di idempotenza
  • 90 giornipreavviso di dismissione

Contratto

Le parti su cui farete affidamento

Versioni
Datate, fissate per chiave

Una chiave è legata a una versione. Le versioni nuove non vi raggiungono finché non vi spostate, e una versione resta supportata per almeno 90 giorni dall'annuncio della successiva.

Idempotenza
Idempotency-Key, 24 ore

Ripetere una creazione restituisce la verifica originale. Una tempesta di ritentativi durante un incidente non può aprire cinque verifiche su un giocatore.

Errori
Per campo, leggibili dalla macchina

Un 422 nomina il campo e la regola violata. Nulla restituisce un 400 nudo con della prosa nel corpo.

Limiti di frequenza
Per chiave, intestazioni in ogni risposta

Residuo e reimpostazione sono sempre presenti: un client può rallentare prima che gli si dica di fermarsi.

Autenticazione
Chiave Bearer, solo lato server

Le chiavi non raggiungono mai un browser o un telefono; il client riceve invece token di passaggio a vita breve.

Orologio
UTC, RFC 3339

Ogni momento in ogni payload e in ogni fascicolo di prova, senza varianti in ora locale.

Risorse

La superficie, per intero

Metodo e percorsoFaIdempotente
POST /v1/checksApre una verifica per una persona in un mercatoSì, 24 h
GET /v1/checks/{id}Stato corrente, esito e motivi—
POST /v1/checks/{id}/cancelAbbandona una verifica ancora in raccoltaSì
GET /v1/evidence/{id}Il fascicolo sigillato dietro un esito—
GET /v1/eventsIl giornale, per tutto ciò che un webhook non ha potuto consegnare—
POST /v1/policiesPubblica una versione di policy per un mercatoSì
POST /v1/exclusionsPubblica il vostro archivio di autoesclusione, dove siete voi a fare fedeSì

Sette risorse. Un'API di verifica che ne richiede di più di solito espone la propria struttura interna anziché il vostro problema.

Decisioni

Perché ha questa forma

Perché la risposta non è in streaming?

Perché la parte lenta è il giocatore, non noi. Una verifica aspetta che una persona trovi il passaporto; tenere aperta una connessione per questo è un costo per voi e una fragilità per entrambi. Il webhook esiste esattamente per questo.

Perché l'esito non contiene un punteggio?

Contiene i punteggi dei singoli segnali, nel fascicolo di prova. Ciò che non fa è ridurli a un numero unico, perché il numero unico è proprio ciò che poi non si riesce a spiegare a un'autorità.

Possiamo legare retroattivamente una policy a una verifica?

No. Una verifica registra la versione di policy che l'ha decisa, e quel dato è immutabile. Ridecidere sotto una policy nuova apre una verifica nuova che richiama la vecchia.