Organisations & multi-tenant
Tout, dans EncryptInvoice, appartient à une organisation. Chaque requête API agit dans exactement une organisation, sélectionnée par l'en-tête X-Organization-Id :
X-Organization-Id: 42
Comment les jetons se lient aux organisations
| Type de jeton | Liaison | Comportement de X-Organization-Id |
|---|---|---|
| Jeton API d'organisation | Fixé à une organisation à la création | Optionnel ; s'il est envoyé, il doit correspondre à l'organisation du jeton |
| Jeton OAuth (connexion utilisateur) | Suit l'utilisateur connecté | Sélectionne n'importe quelle organisation dont l'utilisateur est membre ; sans en-tête, l'organisation principale de l'utilisateur est utilisée |
Pointer un jeton vers une organisation à laquelle il n'a pas accès renvoie 404 — l'API ne révèle jamais si une organisation existe.
Lister les organisations
GET /api/v1/organizations est le point d'entrée de la sélection d'organisation :
- Avec un jeton OAuth utilisateur, il liste toutes les organisations de l'utilisateur.
- Avec un jeton API d'organisation, il ne renvoie que l'organisation de ce jeton.
Changer d'organisation
Il n'y a pas de point de terminaison « switch » — changez simplement l'en-tête X-Organization-Id sur la requête suivante. Avec les jetons OAuth utilisateur, cela permet les flux multi-organisations (p. ex. un comptable au service de plusieurs sociétés) avec un seul jeton.
Organisations archivées
Les organisations archivées sont en lecture seule via l'API : les lectures fonctionnent, les écritures sont rejetées. Restaurez l'organisation dans l'application pour écrire à nouveau.