Salta ai contenuti

Mappa delle rotte

Ogni percorso sotto è sotto http://127.0.0.1:19821 e viene dal documento OpenAPI proprio del daemon. Solo /api/v1/token nel primo gruppo è raggiungibile senza un bearer token.

Dove il documento non porta nessuna descrizione per una rotta, qui non ne viene inventata nessuna. Recupera /api/v1/openapi.json, oppure apri /api/v1/docs, per gli schemi di richiesta e risposta.

Il daemon è attivo, ha effettuato l’accesso, e quando ha parlato l’ultima volta con il server. GET /api/v1/sync risponde che cosa ha fatto l’ultima sincronizzazione senza farne un’altra; POST ne esegue una.

PercorsoMetodi
/api/v1/statusGET
/api/v1/syncGET, POST
/api/v1/tokenPOST

Esistono anche /health e /api/v1/health, fuori dall’insieme documentato.

Le due rotte che un’integrazione di solito vuole.

POST /api/v1/verify controlla tre parole contro le connessioni per cui questo dispositivo detiene un segreto. È puramente locale. Leggi il campo conclusive prima di mostrare qualsiasi cosa: è falso ogni volta che una connessione non ha potuto essere controllata, incluso il caso comune in cui non c’è nulla in cache. Chi chiama non deve dire “non verificato” a meno che conclusive non sia vero.

Una corrispondenza porta window — current, oppure previous per un codice precedente che l’operatore accetta ancora (uno per impostazione predefinita), con windowsBack che dice quanto indietro — e validUntil, l’istante in cui quel codice smette o ha smesso di essere valido. Mostra una corrispondenza precedente con quell’ora in ora locale e suggerisci un sigillo per un messaggio letto più tardi. Su una connessione in cui ogni membro ha il proprio codice, memberName dice di chi era. Il codice di chi legge non corrisponde mai. Questa route e i codici precedenti qui sotto richiedono solo un token in lettura.

POST /api/v1/stamp firma un contenuto sul dispositivo e risponde con tre parole, l’orario in cui è stato firmato, un livello di affidabilità e l’URL che un destinatario apre per controllare la firma.

PercorsoMetodi
/api/v1/stampPOST
/api/v1/verifyPOST

Seguire persone, e il registro delle verifiche.

POST /api/v1/verify/public è l’altra metà di /api/v1/verify: chiede al server se tre parole appartengono a qualcuno, invece di controllare localmente.

Le rotte /api/v1/trust-cards elencano e modificano le persone che questo account segue. Il percorso conserva un nome precedente. L’{id} su queste rotte è l’id della persona seguita, non quello della riga.

PercorsoMetodi
/api/v1/trust-cardsGET, POST
/api/v1/trust-cards/{id}PATCH, DELETE
/api/v1/trust-cards/{id}/historyGET
/api/v1/trust/metricsGET
/api/v1/verification-logGET
/api/v1/verify/publicPOST

Creare, leggere, rinominare ed eliminare connessioni; leggere il codice attuale di una; segnarne una come preferita; aggiungere e rimuovere membri.

GET /api/v1/connections/:id/members/:mid/previous-codes elenca i codici precedenti di un membro, il più recente per primo, ciascuno con words, validFrom e validUntil; :mid è l’id della riga di appartenenza. previousWindows è quanti ne accetta l’operatore. available è falso quando questo dispositivo non custodisce alcun segreto da cui derivarli — mostralo come “non è possibile mostrarli”, non come un elenco vuoto. È locale e non registra nulla. Una riga che non è membro di quella connessione risponde 404.

PercorsoMetodi
/api/v1/connectionsGET, POST
/api/v1/connections/:idGET, PATCH, DELETE
/api/v1/connections/:id/codeGET
/api/v1/connections/:id/favoritePOST
/api/v1/connections/:id/membersPOST
/api/v1/connections/:id/members/:midDELETE
/api/v1/connections/:id/members/:mid/previous-codesGET

GET /api/v1/invitations elenca entrambe le direzioni. Il resto agisce su un singolo invito: approvarlo, rifiutarlo, o ritirarne uno che hai inviato.

PercorsoMetodi
/api/v1/invitationsGET
/api/v1/invitations/pendingGET
/api/v1/invitations/:id/approvePOST
/api/v1/invitations/:id/declinePOST
/api/v1/invitations/:id/withdrawPOST

Creare e revocare codici per persone che non usano l’app, recuperarne uno come immagine QR, o farlo inviare.

PercorsoMetodi
/api/v1/guest-codesGET, POST
/api/v1/guest-codes/:idDELETE
/api/v1/guest-codes/:id/qrGET
/api/v1/guest-codes/:id/sendPOST

Le pagine di verifica per gli ospiti.

PercorsoMetodi
/api/v1/external-membersGET, POST
/api/v1/external-members/:idDELETE

I tag organizzano le connessioni. Il percorso di assegnazione prende entrambi gli id: prima il tag, poi la connessione.

PercorsoMetodi
/api/v1/tagsGET, POST
/api/v1/tags/:idPATCH, DELETE
/api/v1/tags/:id/assign/:cidPOST, DELETE

I preset delle connessioni, e quale sia quello predefinito.

PercorsoMetodi
/api/v1/presetsGET, POST
/api/v1/presets/{id}PATCH, DELETE
/api/v1/presets/{id}/defaultPOST
/api/v1/presets/defaultDELETE

Gli open link e le richieste di approvazione che producono. Un link può essere messo in pausa, ripreso o rinominato con un nuovo slug; una richiesta può essere approvata o rifiutata. suggest propone uno slug.

PercorsoMetodi
/api/v1/open-linksGET, POST
/api/v1/open-links/suggestGET
/api/v1/open-links/{id}DELETE
/api/v1/open-links/{id}/pausePATCH
/api/v1/open-links/{id}/resumePATCH
/api/v1/open-links/{id}/slugPATCH
/api/v1/open-links/requestsGET
/api/v1/open-links/requests/{id}/approvePOST
/api/v1/open-links/requests/{id}/declinePOST

GET /api/v1/context risponde identità dell’account e contesto dell’organizzazione in una sola chiamata — l’organizzazione attiva è presente solo quando ce n’è una.

POST /api/v1/context/active-org cambia l’organizzazione attiva, o la azzera per il contesto personale. È limitato alla sessione: scrive la scelta di questa sessione, non il valore predefinito persistente dell’utente, quindi una scelta sul desktop non ridirige altri dispositivi.

/api/v1/profiles/{id} è un profilo pubblico minimo di qualcun altro, e /keys le sue chiavi pubbliche attive.

PercorsoMetodi
/api/v1/contextGET
/api/v1/context/active-orgPOST
/api/v1/profileGET, PATCH
/api/v1/profiles/{id}GET
/api/v1/profiles/{id}/keysGET
/api/v1/preferencesGET, PATCH
/api/v1/notificationsGET, DELETE
/api/v1/notifications/readPOST

Dispositivi, sessioni, indirizzi email, esportazioni dati ed eliminazione dell’account.

Un’esportazione viene richiesta e costruita dal server: POST /api/v1/exports risponde con un id, non un file, e /api/v1/exports/{id}/download risponde con un link firmato e a scadenza per uno completato.

DELETE /api/v1/account elimina l’account e tutto ciò che contiene, e non può essere annullato. Richiede un corpo che porta confirmEmail, l’indirizzo proprio dell’account, che il daemon confronta sulla macchina prima di chiamare qualsiasi cosa. Una chiamata senza corpo, o con l’indirizzo sbagliato, viene rifiutata.

PercorsoMetodi
/api/v1/devicesGET
/api/v1/devices/{id}DELETE
/api/v1/sessionsGET
/api/v1/sessions/{id}DELETE
/api/v1/emailsGET, POST
/api/v1/exportsGET, POST, DELETE
/api/v1/exports/{id}/downloadGET
/api/v1/accountDELETE

Membri, gruppi, avvisi e analytics.

Le rotte di membri, gruppi e avvisi richiedono un token full, su ogni metodo. Le letture di attività e analytics sono GET ordinari e basta un token read.

PercorsoMetodi
/api/v1/org/membersGET
/api/v1/org/members/{id}GET
/api/v1/org/members/{id}/activatePOST
/api/v1/org/members/{id}/suspendPOST
/api/v1/org/members/bulk-invitePOST
/api/v1/org/groupsGET, POST
/api/v1/org/groups/{id}PATCH, DELETE
/api/v1/org/groups/{id}/membersPOST, DELETE
/api/v1/org/alertsGET, POST
/api/v1/org/alerts/{id}PATCH, DELETE
/api/v1/org/activityGET
/api/v1/org/activity/summaryGET
/api/v1/org/analytics/dashboardGET
/api/v1/org/analytics/trendsGET

Elencare, generare e revocare token. Anche questo solo full.

PercorsoMetodi
/api/v1/api-tokensGET, POST
/api/v1/api-tokens/{id}DELETE

Un turno della conversazione con l’assistente, una valutazione per una risposta, e un feedback al team. La risposta della chat viene passata direttamente dal server, quindi il daemon non ne corregge la forma.

PercorsoMetodi
/api/v1/chatPOST
/api/v1/chat/ratePOST
/api/v1/feedbackPOST