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 à Paramètres ‣ API 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 Paramètres ‣ API. 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

GET

URL

/api/marketplaces/

Description

Renvoie la liste de tous les canaux de vente.

Champs de réponse :

Champ

Type

Description

id

integer

Identifiant unique

marketplace

string

Nom de la place de marché

Produits

Lister les produits

Méthode

GET

URL

/api/products/{marketplace_id}

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

id

integer

Identifiant unique

item_sku

string

USG du produit

created

datetime

Date de création

status

string

Statut du produit

images

array

Liste des images du produit (id, image)

item_weight

decimal

Poids

item_height

decimal

Hauteur

item_length

decimal

Longueur

item_width

decimal

Largeur

Créer une image de produit

Méthode

POST

URL

/api/products/create/image/

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

item_sku

string

Oui

USG du produit auquel attacher l’image

image

string (base64)

Oui

Données d’image encodées en base64

Ventes

Lister les ventes

Méthode

GET

URL

/api/sales/

Description

Retourne une liste de toutes les commandes de vente.

Champs de réponse :

Champ

Type

Description

order_id

string

Identifiant unique de la commande

Créer une vente

Méthode

POST

URL

/api/sales/create/

Description

Crée un nouveau bon de vente.

Contacts

Méthode

GET

URL

/api/contacts/

Description

Renvoie une liste de tous les contacts.

Champs de réponse :

Champ

Type

Description

id

integer

Identifiant unique

complete_name

string

Nom complet

contact_type

string

Type de contact

email

string

Adresse email

phone

string

Numéro de téléphone

language

string

Langue préférée

Réparations

Créer une réparation

Méthode

POST

URL

/api/repairs/create/

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

client_id

integer

Non

ID du client/contact

marketplace

chaîne / entier

Non

ID ou nom du point de vente

division_id

integer

Non

ID de la division commerciale

title

string

Non

Titre ou description de l’article de réparation

repair_info_1

string

Non

Commentaire de réparation supplémentaire

repair_info_2

string

Non

Commentaire de réparation supplémentaire

repair_info_3

string

Non

Commentaire de réparation supplémentaire

quantity

decimal

Non

Quantité (défaut : 1)

weight

decimal

Non

Poids de l’article

weight_unit

string

Non

Unité de mesure du poids

size

string

Non

Taille de l’article

color

string

Non

Couleur de l’article

engravement

string

Non

Texte de gravure

client_reference | string

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

POST

URL

/api/repairs/add-item/

Description

Ajoute un nouvel article à une fiche de réparation existante.

Champs de la requête :

Champ

Type

Requis

Description

order_id

string

Oui

ID de la fiche de réparation à laquelle ajouter l’article

item_sku

string

Non

USG du produit à lier à l’article

title

string

Non

Titre ou description

repair_info_1

string

Non

Commentaire de réparation supplémentaire

repair_info_2

string

Non

Commentaire de réparation supplémentaire

repair_info_3

string

Non

Commentaire de réparation supplémentaire

quantity

decimal

Non

Quantité (défaut : 1)

weight

decimal

Non

Poids de l’article

weight_unit

string

Non

Unité de mesure du poids

size

string

Non

Taille de l’article

color

string

Non

Couleur de l’article

engravement

string

Non

Texte de gravure

client_reference | string

Non

Numéro de référence du client

cost

decimal

Non

Coût de l’article

Comptages d’inventaire

Créer un comptage d’inventaire

Méthode

POST

URL

/api/inventory-counts/

Description

Crée une nouvelle session de comptage d’inventaire.

Champs de réponse :

Champ

Type

Description

id

string

Identifiant du comptage d’inventaire

created_at

datetime

Horodatage de création

status

string

Toujours active

tag_count

integer

Nombre de produits comptés

Lister les produits du comptage d’inventaire

Méthode

GET

URL

/api/inventory-counts/{inventory_count_id}/products/

Description

Renvoie tous les produits comptés dans un comptage d’inventaire spécifique.

Champs de réponse :

Champ

Type

Description

id

string

Identifiant unique

created_at

datetime

Moment où le produit a été compté

product_sku

string

USG du produit

product_name

string

Nom du produit

quantity

integer

Quantité comptée

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 Paramètres ‣ API. L’explorateur vous permet de tester chaque point de terminaison directement depuis votre navigateur.

Voir aussi