Carte des routes
Chaque chemin ci-dessous est sous http://127.0.0.1:19821 et provient du
document OpenAPI propre au démon. Seul /api/v1/token dans le premier groupe
est accessible sans jeton porteur.
Là où le document ne porte pas de description pour une route, aucune n’est
inventée ici. Récupère /api/v1/openapi.json, ou ouvre /api/v1/docs, pour les
schémas de requête et de réponse.
Le démon est-il actif, est-il connecté, et quand a-t-il parlé au serveur pour la
dernière fois. GET /api/v1/sync répond à ce qu’a fait la dernière
synchronisation sans en refaire une ; POST en lance une.
| Chemin | Méthodes |
|---|---|
/api/v1/status | GET |
/api/v1/sync | GET, POST |
/api/v1/token | POST |
/health et /api/v1/health existent aussi, en dehors de l’ensemble documenté.
Identité
Section intitulée « Identité »Les deux routes qu’une intégration veut habituellement.
POST /api/v1/verify vérifie trois mots par rapport aux connexions pour
lesquelles cet appareil détient un secret. C’est purement local. Lis le champ
conclusive avant d’afficher quoi que ce soit : il est faux dès qu’une
connexion n’a pas pu être vérifiée, y compris le cas courant où rien n’est en
cache. Un appelant ne doit pas dire « non vérifié » à moins que conclusive
soit vrai.
Une correspondance porte window — current, ou previous pour un code
antérieur que l’opérateur accepte encore (un par défaut), windowsBack
indiquant de combien il remonte — et validUntil, l’instant où ce code cesse ou
a cessé d’être valable. Affiche une correspondance précédente avec cette heure
en heure locale, et propose un sceau pour un message lu plus tard. Sur une
connexion où chaque membre a son propre code, memberName indique à qui il
appartenait. Le propre code du lecteur ne correspond jamais. Cette route et les
codes précédents ci-dessous n’ont besoin que d’un jeton en lecture.
POST /api/v1/stamp scelle un contenu sur l’appareil et répond avec trois mots,
l’heure de la signature, un niveau d’assurance et l’URL qu’un destinataire ouvre
pour vérifier la signature.
| Chemin | Méthodes |
|---|---|
/api/v1/stamp | POST |
/api/v1/verify | POST |
Confiance
Section intitulée « Confiance »Suivre des personnes, et l’historique des vérifications.
POST /api/v1/verify/public est l’autre moitié de /api/v1/verify : elle
demande au serveur si trois mots appartiennent à quelqu’un, plutôt que de
vérifier localement.
Les routes /api/v1/trust-cards listent et modifient les personnes que ce
compte suit. Le chemin garde un nom plus ancien. Le {id} sur ces routes est
l’identifiant de la personne suivie, pas celui de la ligne de suivi.
| Chemin | Méthodes |
|---|---|
/api/v1/trust-cards | GET, POST |
/api/v1/trust-cards/{id} | PATCH, DELETE |
/api/v1/trust-cards/{id}/history | GET |
/api/v1/trust/metrics | GET |
/api/v1/verification-log | GET |
/api/v1/verify/public | POST |
Connexions
Section intitulée « Connexions »Créer, lire, renommer et supprimer des connexions ; lire le code actuel de l’une d’elles ; en marquer une comme favorite ; ajouter et retirer des membres.
GET /api/v1/connections/:id/members/:mid/previous-codes liste les codes
précédents d’un membre, du plus récent au plus ancien, chacun avec words,
validFrom et validUntil ; :mid est l’id de la ligne d’appartenance.
previousWindows est le nombre que l’opérateur accepte. available est faux
quand cet appareil ne détient aucun secret pour les dériver — affiche «
impossible à montrer », pas une liste vide. C’est local et rien n’est
enregistré. Une ligne qui n’est pas membre de cette connexion répond 404.
| Chemin | Méthodes |
|---|---|
/api/v1/connections | GET, POST |
/api/v1/connections/:id | GET, PATCH, DELETE |
/api/v1/connections/:id/code | GET |
/api/v1/connections/:id/favorite | POST |
/api/v1/connections/:id/members | POST |
/api/v1/connections/:id/members/:mid | DELETE |
/api/v1/connections/:id/members/:mid/previous-codes | GET |
Invitations
Section intitulée « Invitations »GET /api/v1/invitations liste les deux sens. Le reste agit sur une invitation
: approuver, refuser, ou retirer une que tu as envoyée.
| Chemin | Méthodes |
|---|---|
/api/v1/invitations | GET |
/api/v1/invitations/pending | GET |
/api/v1/invitations/:id/approve | POST |
/api/v1/invitations/:id/decline | POST |
/api/v1/invitations/:id/withdraw | POST |
Codes invités
Section intitulée « Codes invités »Créer et révoquer des codes pour des personnes qui n’utilisent pas l’application, en récupérer un sous forme d’image QR, ou le faire envoyer.
| Chemin | Méthodes |
|---|---|
/api/v1/guest-codes | GET, POST |
/api/v1/guest-codes/:id | DELETE |
/api/v1/guest-codes/:id/qr | GET |
/api/v1/guest-codes/:id/send | POST |
Membres externes
Section intitulée « Membres externes »Les pages de vérification pour invités.
| Chemin | Méthodes |
|---|---|
/api/v1/external-members | GET, POST |
/api/v1/external-members/:id | DELETE |
Les tags organisent les connexions. Le chemin d’attribution prend les deux identifiants : le tag, puis la connexion.
| Chemin | Méthodes |
|---|---|
/api/v1/tags | GET, POST |
/api/v1/tags/:id | PATCH, DELETE |
/api/v1/tags/:id/assign/:cid | POST, DELETE |
Préréglages
Section intitulée « Préréglages »Les préréglages de connexion, et lequel est celui par défaut.
| Chemin | Méthodes |
|---|---|
/api/v1/presets | GET, POST |
/api/v1/presets/{id} | PATCH, DELETE |
/api/v1/presets/{id}/default | POST |
/api/v1/presets/default | DELETE |
Liens ouverts
Section intitulée « Liens ouverts »Les liens ouverts et les demandes d’approbation qu’ils produisent. Un lien peut
être mis en pause, repris ou recevoir un nouveau slug ; une demande peut être
approuvée ou refusée. suggest propose un slug.
| Chemin | Méthodes |
|---|---|
/api/v1/open-links | GET, POST |
/api/v1/open-links/suggest | GET |
/api/v1/open-links/{id} | DELETE |
/api/v1/open-links/{id}/pause | PATCH |
/api/v1/open-links/{id}/resume | PATCH |
/api/v1/open-links/{id}/slug | PATCH |
/api/v1/open-links/requests | GET |
/api/v1/open-links/requests/{id}/approve | POST |
/api/v1/open-links/requests/{id}/decline | POST |
Profil et contexte
Section intitulée « Profil et contexte »GET /api/v1/context répond à l’identité du compte et au contexte
d’organisation en un seul appel — l’organisation active n’est présente que quand
il y en a une.
POST /api/v1/context/active-org bascule l’organisation active, ou l’efface
pour revenir au contexte personnel. C’est limité à la session : cela écrit le
choix de cette session, pas la valeur par défaut persistante de l’utilisateur,
donc un choix fait sur le bureau ne redirige pas les autres appareils.
/api/v1/profiles/{id} est un profil public minimal de quelqu’un d’autre, et
/keys ses clés publiques actives.
| Chemin | Méthodes |
|---|---|
/api/v1/context | GET |
/api/v1/context/active-org | POST |
/api/v1/profile | GET, PATCH |
/api/v1/profiles/{id} | GET |
/api/v1/profiles/{id}/keys | GET |
/api/v1/preferences | GET, PATCH |
/api/v1/notifications | GET, DELETE |
/api/v1/notifications/read | POST |
Appareils, sessions, adresses e-mail, exports de données et suppression de compte.
Un export est demandé et construit par le serveur : POST /api/v1/exports
répond avec un identifiant, pas un fichier, et /api/v1/exports/{id}/download
répond avec un lien signé et expirant vers un export terminé.
DELETE /api/v1/account supprime le compte et tout ce qu’il contient, et ne
peut pas être annulé. Cela nécessite un corps portant confirmEmail, l’adresse
propre au compte, que le démon compare sur la machine avant d’appeler quoi que
ce soit. Un appel sans corps, ou avec la mauvaise adresse, est refusé.
| Chemin | Méthodes |
|---|---|
/api/v1/devices | GET |
/api/v1/devices/{id} | DELETE |
/api/v1/sessions | GET |
/api/v1/sessions/{id} | DELETE |
/api/v1/emails | GET, POST |
/api/v1/exports | GET, POST, DELETE |
/api/v1/exports/{id}/download | GET |
/api/v1/account | DELETE |
Gestion d’organisation
Section intitulée « Gestion d’organisation »Membres, groupes, alertes et analyses.
Les routes de membres, groupes et alertes nécessitent un jeton full, sur
chaque méthode. Les lectures d’activité et d’analyse sont des GET ordinaires
et un jeton read suffit.
| Chemin | Méthodes |
|---|---|
/api/v1/org/members | GET |
/api/v1/org/members/{id} | GET |
/api/v1/org/members/{id}/activate | POST |
/api/v1/org/members/{id}/suspend | POST |
/api/v1/org/members/bulk-invite | POST |
/api/v1/org/groups | GET, POST |
/api/v1/org/groups/{id} | PATCH, DELETE |
/api/v1/org/groups/{id}/members | POST, DELETE |
/api/v1/org/alerts | GET, POST |
/api/v1/org/alerts/{id} | PATCH, DELETE |
/api/v1/org/activity | GET |
/api/v1/org/activity/summary | GET |
/api/v1/org/analytics/dashboard | GET |
/api/v1/org/analytics/trends | GET |
Jetons d’API
Section intitulée « Jetons d’API »Lister, créer et révoquer des jetons. Également full uniquement.
| Chemin | Méthodes |
|---|---|
/api/v1/api-tokens | GET, POST |
/api/v1/api-tokens/{id} | DELETE |
Assistant et retours
Section intitulée « Assistant et retours »Un tour de conversation avec l’assistant, une note pour une réponse, et un retour à l’équipe. La réponse du chat est transmise telle quelle depuis le serveur, le démon ne corrige donc pas sa forme.
| Chemin | Méthodes |
|---|---|
/api/v1/chat | POST |
/api/v1/chat/rate | POST |
/api/v1/feedback | POST |