Intégrez Axios à vos outils : créez et consultez clients, fournisseurs, produits, commandes et factures via une API REST JSON.
L'API Axios est une API REST qui échange des données au format JSON. Toutes les requêtes se font sur l'URL de base suivante :
https://www.axios.ma/api/v1
Les données sont isolées par entreprise : chaque clé API ne donne accès qu'aux données de l'entreprise à laquelle elle appartient. Les corps de requête (POST) doivent être envoyés avec l'en-tête Content-Type: application/json.
Chaque requête doit inclure votre clé API. Générez-la depuis Paramètres → Clé API dans votre espace Axios. Transmettez-la via l'en-tête Authorization :
Authorization: Bearer axk_votre_cle_api
L'en-tête alternatif X-API-Key: axk_votre_cle_api est également accepté.
L'API utilise les codes de statut HTTP standard. Les erreurs renvoient un objet JSON avec un champ error.
| Code | Signification |
|---|---|
| 200 | Requête réussie |
| 201 | Ressource créée |
| 400 | Requête invalide (champ requis manquant, référence invalide) |
| 401 | Clé API manquante ou invalide |
| 404 | Ressource introuvable |
| 500 | Erreur serveur |
{ "error": "Clé API invalide." }
Liste tous les clients actifs de l'entreprise.
Récupère un client par son identifiant.
Crée un client. Le code est généré automatiquement s'il est omis.
| Champ | Type | Requis |
|---|---|---|
| nom | string | Oui |
| code | string | Non |
| string | Non | |
| telephone | string | Non |
| adresse | string | Non |
| ville | string | Non |
| ice | string | Non |
| plafond_credit | number | Non |
curl -X POST https://www.axios.ma/api/v1/clients \
-H "Authorization: Bearer axk_votre_cle_api" \
-H "Content-Type: application/json" \
-d '{"nom":"Société ABC","telephone":"0600000000","ice":"001234567000089"}'
Liste tous les fournisseurs actifs.
Récupère un fournisseur par son identifiant.
Crée un fournisseur. Le code est généré automatiquement s'il est omis.
| Champ | Type | Requis |
|---|---|---|
| nom | string | Oui |
| code | string | Non |
| string | Non | |
| telephone | string | Non |
| adresse | string | Non |
| ville | string | Non |
| ice | string | Non |
curl -X POST https://www.axios.ma/api/v1/fournisseurs \
-H "Authorization: Bearer axk_votre_cle_api" \
-H "Content-Type: application/json" \
-d '{"nom":"Grossiste XYZ","ville":"Casablanca"}'
Liste toutes les catégories de produits.
Récupère une catégorie par son identifiant.
Crée une catégorie. Son id peut ensuite être utilisé comme categorie_id lors de la création d'un produit.
| Champ | Type | Requis | Défaut |
|---|---|---|---|
| nom | string | Oui | — |
| description | string | Non | null |
curl -X POST https://www.axios.ma/api/v1/categories \
-H "Authorization: Bearer axk_votre_cle_api" \
-H "Content-Type: application/json" \
-d '{"nom":"Mobilier","description":"Chaises, bureaux, rangements"}'
Liste tous les produits actifs.
Récupère un produit par son identifiant.
Crée un produit. Le code est généré automatiquement s'il est omis.
| Champ | Type | Requis | Défaut |
|---|---|---|---|
| nom | string | Oui | — |
| code | string | Non | auto |
| code_barre | string | Non | null |
| reference | string | Non | — |
| description | string | Non | — |
| categorie_id | number | Non | null |
| prix_achat | number | Non | 0 |
| prix_vente | number | Non | 0 |
| tva | number | Non | 20 |
| stock_actuel | number | Non | 0 |
| stock_min | number | Non | 5 |
| stock_max | number | Non | 1000 |
| unite | string | Non | PCS |
curl -X POST https://www.axios.ma/api/v1/produits \
-H "Authorization: Bearer axk_votre_cle_api" \
-H "Content-Type: application/json" \
-d '{"nom":"Chaise de bureau","prix_vente":450,"tva":20,"stock_actuel":30}'
Une commande contient un tableau lignes. Les totaux (HT, TVA, TTC) sont calculés automatiquement par le serveur à partir des lignes et de la remise globale.
Liste toutes les commandes clients.
Récupère une commande avec ses lignes.
| Champ | Type | Requis |
|---|---|---|
| client_id | number | Oui |
| lignes | array | Oui (non vide) |
| date | string (YYYY-MM-DD) | Non (aujourd'hui) |
| livraison_prevue | string (YYYY-MM-DD) | Non |
| remise_globale | number (%) | Non |
| statut | string | Non (brouillon) |
| notes | string | Non |
Chaque objet de lignes accepte : designation (requis), quantite, prix_unitaire, remise (%), tva (%), produit_id (optionnel).
curl -X POST https://www.axios.ma/api/v1/commandes \
-H "Authorization: Bearer axk_votre_cle_api" \
-H "Content-Type: application/json" \
-d '{
"client_id": 1,
"remise_globale": 5,
"lignes": [
{"designation": "Chaise de bureau", "quantite": 4, "prix_unitaire": 450, "tva": 20},
{"designation": "Bureau", "quantite": 1, "prix_unitaire": 1200, "remise": 10}
]
}'
Comme les commandes, une facture contient un tableau lignes et ses totaux sont calculés côté serveur.
Liste toutes les factures.
Récupère une facture avec ses lignes.
| Champ | Type | Requis |
|---|---|---|
| client_id | number | Oui |
| lignes | array | Oui (non vide) |
| date | string (YYYY-MM-DD) | Non (aujourd'hui) |
| echeance | string (YYYY-MM-DD) | Non |
| remise_globale | number (%) | Non |
| statut | string | Non (brouillon) |
| notes | string | Non |
curl -X POST https://www.axios.ma/api/v1/factures \
-H "Authorization: Bearer axk_votre_cle_api" \
-H "Content-Type: application/json" \
-d '{
"client_id": 1,
"echeance": "2026-09-30",
"lignes": [
{"designation": "Prestation de conseil", "quantite": 2, "prix_unitaire": 1500, "tva": 20}
]
}'
Réponse (201 Created) : l'objet facture créé, incluant total_ht, total_tva, total_ttc et le tableau lignes.