Authentification et scopes
Organisation API utilise le grant OAuth2 Client Credentials (RFC 6749 §4.4), exactement comme Partner API — sauf qu'il n'y a aucun org_id à transmettre : votre clé identifie déjà votre organisation.
Obtenir un token
POST /oauth/token
Content-Type: application/x-www-form-urlencoded
grant_type = client_credentials
client_id = <votre client_id>
client_secret = <votre client_secret>
Réponse, valable 1 heure, sans refresh token (rappelez simplement /oauth/token) :
{
"access_token": "eyJhbGciOiJIUzI1NiJ9....",
"token_type": "Bearer",
"expires_in": 3600,
"scope": "invoice:write invoice:read ttn:submit"
}
Envoyez-le ensuite sur chaque appel :
Authorization: Bearer <access_token>
Erreurs fréquentes
401 invalid_client—client_id/client_secretincorrect.401 Invalid or expired token— token manquant, malformé ou expiré ; redemandez-en un.429 TOO_MANY_REQUESTS— limite de débit dépassée (voir la page Référence).
Scopes
Choisis par clé, au moment de sa création dans /app/api-keys (dans la limite de ce que votre plan autorise) :
| Scope | Autorise |
|---|---|
invoice:write | Créer, soumettre, signer-et-envoyer, supprimer des factures |
invoice:read | Lister et récupérer factures, statistiques, jobs, webhooks |
ttn:submit | (Re)soumettre manuellement une facture déjà signée à TTN, ou resynchroniser son statut |
seal:sign | Déclencher une signature SEAL — plan SEAL Max uniquement |
digigo:sign | Déclencher une signature DigiGO — plans DigiGO uniquement |
Contrairement à Partner API
Votre propre clé peut appeler POST /invoices/:id/submit-ttn directement — cette restriction ne s'applique qu'aux tokens partenaires agissant au nom d'un tiers.
Étape suivante
Passez à Factures pour soumettre votre première facture.