Documentation de l'API
Connectez votre ERP ou logiciel métier : lisez les ventes, clients et factures d'une organisation, créez des ventes, et recevez des notifications en temps réel. Testez chaque requête directement depuis cette page.
Authentification
Chaque requête porte la clé dans l'en-tête x-api-key. Obtenez une clé depuis votre espace : Mon compte → API (réservé aux administrateurs). La clé complète (egk_…) n'est affichée qu'une seule fois à la création.
curl https://api.egicore.fr/api/v1/external/orders \
-H "x-api-key: egk_votre_cle"Scopes
| Scope | Autorise |
|---|---|
orders:read | Lire les ventes |
orders:write | Créer des ventes |
clients:read | Lire les clients |
invoices:read | Lire les factures |
Réponses & pagination
Les collections sont enveloppées dans data + meta ; une ressource unique renvoie { "data": { … } }. Paramètres page (défaut 1) et limit (défaut 20).
{ "data": [ … ], "meta": { "page": 1, "limit": 20, "total": 42 } }Erreur : { "error": { "code": "…", "message": "…" } }
Limites de débit
120 requêtes / 60 s par clé. Au-delà : 429 (RATE_LIMIT_EXCEEDED). Chaque appel est journalisé pour audit.
Ventes
Clients
Factures
Webhooks sortants
Enregistrez un endpoint HTTPS dans Mon compte → API → Webhooks pour être notifié en temps réel. Événements : order.created, order.status_changed.
Chaque requête est signée : en-tête X-Egicore-Signature = HMAC-SHA256 du corps brut avec le secret de l'endpoint. Vérifiez la signature avant traitement :
import crypto from 'node:crypto'
function verify(rawBody, signature, secret) {
const expected = crypto.createHmac('sha256', secret)
.update(rawBody).digest('hex')
return crypto.timingSafeEqual(
Buffer.from(signature), Buffer.from(expected),
)
}Versioning & support
Le préfixe /api/v1/ identifie la version ; les ajouts rétrocompatibles n'en changent pas. La spécification OpenAPI est la source de vérité machine. Support : support@egicore.fr.