EmetiaDocs
API v1Dashboard →

Authentification

L'API Emetia utilise des clés API au format Bearer token pour authentifier vos requêtes. Chaque clé appartient à un utilisateur et donne accès à toutes les entreprises de son groupe.

Prérequis

Les clés API sont réservées aux plans Professional et Business. Un plan Starter ne permet pas d'en créer.

Créer une clé API

  1. Connectez-vous à app.emetia.fr
  2. Accédez à Paramètres dans la barre latérale
  3. Ouvrez l'onglet Clés API
  4. Cliquez sur Créer une clé et donnez-lui un nom descriptif (ex. : "Intégration ERP", "Script Python")
  5. Copiez la clé générée — elle ne sera affichée qu'une seule fois

Sécurité : Traitez votre clé API comme un mot de passe. Ne la commitez jamais dans votre code source. Utilisez des variables d'environnement ou un gestionnaire de secrets.

Utiliser la clé API

Ajoutez l'en-tête Authorization à chaque requête :

Authorization: Bearer em_live_VOTRE_CLE_API

Cibler une entreprise spécifique

Une clé est valable pour toutes les entreprises du groupe de l'utilisateur qui l'a créée. Pour cibler une entreprise précise, ajoutez l'en-tête X-Company-Id :

Authorization: Bearer em_live_VOTRE_CLE_API X-Company-Id: <uuid-de-l-entreprise>

Si l'en-tête est absent, l'API utilise automatiquement la première entreprise du groupe (ordre de création). Si l'entreprise indiquée n'appartient pas au groupe, la requête retourne 403 Forbidden.

Exemple avec curl

# Sans ciblage : utilise l'entreprise par défaut du groupe curl https://api.emetia.fr/api/invoices \ -H "Authorization: Bearer em_live_VOTRE_CLE_API" # Avec ciblage d'une entreprise précise curl https://api.emetia.fr/api/invoices \ -H "Authorization: Bearer em_live_VOTRE_CLE_API" \ -H "X-Company-Id: 550e8400-e29b-41d4-a716-446655440000"

Exemple avec JavaScript (fetch)

const response = await fetch('https://api.emetia.fr/api/invoices', { headers: { 'Authorization': `Bearer ${process.env.EMETIA_API_KEY}`, 'X-Company-Id': process.env.EMETIA_COMPANY_ID, // optionnel 'Content-Type': 'application/json', }, }) const { data } = await response.json()

Exemple avec Python

import requests, os api_key = os.environ["EMETIA_API_KEY"] company_id = os.environ.get("EMETIA_COMPANY_ID") # optionnel base = "https://api.emetia.fr/api" headers = {"Authorization": f"Bearer {api_key}"} if company_id: headers["X-Company-Id"] = company_id resp = requests.get(f"{base}/invoices", headers=headers) resp.raise_for_status() invoices = resp.json()["data"]

Format des clés

Toutes les clés API Emetia commencent par em_live_ suivi de 32 octets aléatoires en base64url.

em_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Portée d'une clé

Une clé API appartient à l'utilisateur qui l'a créée. Elle donne accès à toutes les entreprises du groupe de cet utilisateur, sous réserve que l'entreprise soit précisée via l'en-tête X-Company-Id ou qu'une entreprise par défaut soit disponible dans le groupe.

Exemple : si un utilisateur appartient à un groupe avec 3 entreprises (A, B, C), sa clé API peut accéder aux ressources de A, B et C en changeant simplement le X-Company-Id. Sans cet en-tête, A (la première créée) est utilisée par défaut.

Gérer les clés (visibilité et révocation)

  • Owner du groupe — voit toutes les clés actives du groupe (avec le nom du créateur) et peut révoquer n'importe laquelle.
  • Membre du groupe — voit et révoque uniquement ses propres clés.

Rendez-vous dans Paramètres → Clés API et cliquez sur l'icône de suppression en regard de la clé à révoquer. La révocation est immédiate et irréversible — créez une nouvelle clé avant de révoquer l'ancienne si besoin.