API¶
L’API Gem Logic vous permet d’intégrer des systèmes externes et d’automatiser les flux de travail. Vous pouvez l’utiliser pour gérer les produits, les ventes, les contacts, les réparations, les inventaires et les tâches d’impression de manière programmatique.
Accédez à pour créer et gérer vos clés API.
Authentification¶
Toutes les requêtes API doivent inclure une clé API dans l’en-tête HTTP x-api-key. Vous pouvez créer des clés depuis la page . Les clés peuvent être désactivées ou supprimées à tout moment.
Exemple de requête
curl -X GET https://your-instance.gem-logic.com/api/marketplaces/ \
-H "x-api-key: YOUR_API_KEY"
Danger
Gardez vos clés API secrètes. Ne les partagez jamais dans des dépôts publics ou du code côté client. Si une clé est compromise, désactivez-la immédiatement et créez-en une nouvelle.
URL de base¶
Tous les endpoints sont relatifs à l’URL de votre instance, sous le préfixe /api/
https://your-instance.gem-logic.com/api/
Format de réponse¶
Toutes les réponses sont retournées au format JSON. Les requêtes réussies retournent un code de statut 200 (pour GET) ou 201 (pour POST). Les erreurs retournent le code de statut approprié avec un message :
200 OK — requête GET réussie
201 Created — requête POST réussie
400 Bad Request — données invalides ou manquantes
401 Unauthorized — clé API invalide ou manquante
404 Not Found — la ressource n’existe pas
Points de terminaison¶
Places de marché¶
Méthode |
|
|---|---|
URL |
|
Description |
Renvoie la liste de tous les canaux de vente. |
Champs de réponse :
Champ |
Type |
Description |
|---|---|---|
|
integer |
Identifiant unique |
|
string |
Nom de la place de marché |
Produits¶
Lister les produits
Méthode |
|
|---|---|
URL |
|
Description |
Renvoie les produits filtrés par place de marché. Utilisez l’ID de place de marché provenant du point de terminaison marketplaces. |
Champs de réponse :
Champ |
Type |
Description |
|---|---|---|
|
integer |
Identifiant unique |
|
string |
USG du produit |
|
datetime |
Date de création |
|
string |
Statut du produit |
|
array |
Liste des images du produit ( |
|
decimal |
Poids |
|
decimal |
Hauteur |
|
decimal |
Longueur |
|
decimal |
Largeur |
Créer une image de produit
Méthode |
|
|---|---|
URL |
|
Description |
Télécharge une image de produit en utilisant l’encodage base64. Si l’USG du produit n’existe pas encore, un nouveau produit est créé automatiquement. |
Champs de la requête :
Champ |
Type |
Requis |
Description |
|---|---|---|---|
|
string |
Oui |
USG du produit auquel attacher l’image |
|
string (base64) |
Oui |
Données d’image encodées en base64 |
Ventes¶
Lister les ventes
Méthode |
|
|---|---|
URL |
|
Description |
Retourne une liste de toutes les commandes de vente. |
Champs de réponse :
Champ |
Type |
Description |
|---|---|---|
|
string |
Identifiant unique de la commande |
Créer une vente
Méthode |
|
|---|---|
URL |
|
Description |
Crée un nouveau bon de vente. |
Contacts¶
Méthode |
|
|---|---|
URL |
|
Description |
Renvoie une liste de tous les contacts. |
Champs de réponse :
Champ |
Type |
Description |
|---|---|---|
|
integer |
Identifiant unique |
|
string |
Nom complet |
|
string |
Type de contact |
|
string |
Adresse email |
|
string |
Numéro de téléphone |
|
string |
Langue préférée |
Réparations¶
Créer une réparation
Méthode |
|
|---|---|
URL |
|
Description |
Crée un nouveau bon de réparation avec un article de réparation associé. Si le point de vente ou la division n’est pas fourni, le premier disponible est utilisé. |
Champs de la requête :
Champ |
Type |
Requis |
Description |
|---|---|---|---|
|
integer |
Non |
ID du client/contact |
|
chaîne / entier |
Non |
ID ou nom du point de vente |
|
integer |
Non |
ID de la division commerciale |
|
string |
Non |
Titre ou description de l’article de réparation |
|
string |
Non |
Commentaire de réparation supplémentaire |
|
string |
Non |
Commentaire de réparation supplémentaire |
|
string |
Non |
Commentaire de réparation supplémentaire |
|
decimal |
Non |
Quantité (défaut : 1) |
|
decimal |
Non |
Poids de l’article |
|
string |
Non |
Unité de mesure du poids |
|
string |
Non |
Taille de l’article |
|
string |
Non |
Couleur de l’article |
|
string |
Non |
Texte de gravure |
|
Non |
Numéro de référence du client |
|
Exemple de réponse
{"message": "Repair created successfully.", "order_id": "R-0001"}
Ajouter un article à une réparation
Méthode |
|
|---|---|
URL |
|
Description |
Ajoute un nouvel article à une fiche de réparation existante. |
Champs de la requête :
Champ |
Type |
Requis |
Description |
|---|---|---|---|
|
string |
Oui |
ID de la fiche de réparation à laquelle ajouter l’article |
|
string |
Non |
USG du produit à lier à l’article |
|
string |
Non |
Titre ou description |
|
string |
Non |
Commentaire de réparation supplémentaire |
|
string |
Non |
Commentaire de réparation supplémentaire |
|
string |
Non |
Commentaire de réparation supplémentaire |
|
decimal |
Non |
Quantité (défaut : 1) |
|
decimal |
Non |
Poids de l’article |
|
string |
Non |
Unité de mesure du poids |
|
string |
Non |
Taille de l’article |
|
string |
Non |
Couleur de l’article |
|
string |
Non |
Texte de gravure |
|
Non |
Numéro de référence du client |
|
|
decimal |
Non |
Coût de l’article |
Comptages d’inventaire¶
Créer un comptage d’inventaire
Méthode |
|
|---|---|
URL |
|
Description |
Crée une nouvelle session de comptage d’inventaire. |
Champs de réponse :
Champ |
Type |
Description |
|---|---|---|
|
string |
Identifiant du comptage d’inventaire |
|
datetime |
Horodatage de création |
|
string |
Toujours |
|
integer |
Nombre de produits comptés |
Lister les produits du comptage d’inventaire
Méthode |
|
|---|---|
URL |
|
Description |
Renvoie tous les produits comptés dans un comptage d’inventaire spécifique. |
Champs de réponse :
Champ |
Type |
Description |
|---|---|---|
|
string |
Identifiant unique |
|
datetime |
Moment où le produit a été compté |
|
string |
USG du produit |
|
string |
Nom du produit |
|
integer |
Quantité comptée |
Travaux d’impression¶
Méthode |
|
|---|---|
URL |
|
Description |
Téléverser un fichier PDF vers la file d’attente d’impression pour une imprimante spécifique. Le fichier est validé pour le format et la sécurité. Taille maximale de fichier : 20 Mo. Utiliser le type de contenu |
Champs de la requête :
Champ |
Type |
Requis |
Description |
|---|---|---|---|
|
fichier |
Oui |
Fichier PDF à imprimer (max 20 Mo) |
|
UUID |
Oui |
UUID de l’imprimante cible |
|
booléen |
Non |
Imprimer en mode paysage (par défaut : false) |
Exemple de requête
curl -X POST https://your-instance.gem-logic.com/api/print-pdf/ \
-H "x-api-key: YOUR_API_KEY" \
-F "pdf=@document.pdf" \
-F "printer_uuid=YOUR_PRINTER_UUID"
Exemple de réponse
{"status": "queued", "print_job_id": 42}
Explorateur d’API interactif¶
Gem Logic inclut un explorateur d’API interactif intégré propulsé par Swagger UI. Vous pouvez y accéder via le lien Documentation de l’API sur la page . L’explorateur vous permet de tester chaque point de terminaison directement depuis votre navigateur.
Voir aussi