Passer au contenu principal

Documentation API et Swagger ProgressionLIVE

Découvrez comment utiliser la documentation Swagger, authentifier votre API et synchroniser vos données entre ProgressionLIVE et un système externe.

Mis à jour il y a plus de 5 mois

🔍 Accéder à votre documentation Swagger

Pour accéder à la documentation Swagger de votre compte :

Remplacez api dans l’URL générique par votre identifiant d’entreprise :

Exemple :

Cette page vous permet de :

  • Visualiser la documentation de l’API REST

  • Tester vos requêtes directement dans votre environnement

  • Explorer toutes les routes disponibles


Cas d’usage : Intégration avec un système ERP

Lors d’une intégration avec un ERP (ex. SAP Business One), l’objectif principal est souvent de transférer une facture ProgressionLIVE vers l’ERP afin de :

  • mettre à jour l’inventaire

  • finaliser la facturation

  • synchroniser les données des tâches

Dans ce scénario :

  • Les données maîtres sont gérées par l’ERP.

  • L’intégration doit synchroniser trois entités clés :

    1. Client

    2. Emplacement

    3. Produit

Une fois ces entités synchronisées, vous pourrez transférer la facture vers l’ERP qui retournera ensuite une confirmation à ProgressionLIVE.


Bonnes pratiques (génériques)

🔄 1. Utilisez les webhooks

Évitez la scrutation (polling).

Les webhooks garantissent que votre système reçoit les données dès qu’elles changent.

🔍 2. Si vous devez scruter, utilisez des filtres

Cela limite la taille de la réponse et améliore les performances.

🆔 3. Stockez l’ID externe dans Progression

Utilisez le champ externalId pour enregistrer la référence externe de votre ERP.

Attention : ⚠️ Une seule valeur externalId est disponible par entité dans ProgressionLIVE.

🔁 4. Stockez aussi l’ID Progression dans votre système externe

Cela permet :

  • d’éviter la création en double

  • de réduire le nombre d’appels API

  • d’identifier facilement les entités déjà synchronisées

🔒 5. N’envoyez jamais un champ vide

Envoyer une valeur Null supprime la donnée dans la base de ProgressionLIVE.


S’authentifier à l’API

⚠️ Important

L’accès à l’API requiert un abonnement payant.

Pour l’activer :

📞 1-866-670-0516


Où trouver votre clé API ?

Actuellement, la clé API n’est pas accessible aux utilisateurs.

Demandez-la à un employé Progression via :

📞 1-866-670-0516


Exemples d’authentification

🔐 Connexion par Query (apiKey)

curl -X POST "https://VOTRECOMPAGNIE/server/rest/task/create?apiKey=VotreCleAPI" \ -H "accept: application/json" \ -H "Content-Type: application/json" \ -d "{\"type\":{\"label\":\"Appel de service\"},\"summary\":\"Sommaire de la tâche\"}"

🔐 Connexion par Bearer Token

curl -X POST "https://VOTRECOMPAGNIE/server/rest/task/create" \ -H "accept: application/json" \ -H "Authorization: Bearer VotreCleAPI" \ -H "Content-Type: application/json" \ -d "{\"type\":{\"label\":\"Appel de service\"},\"summary\":\"Sommaire de la tâche\"}"


Synchronisation des entités

1. Synchronisation des clients

  1. Vérifiez si le client existe :

    GET /client

  2. Cherchez par nom ou externalId.

  3. S’il n’existe pas :

    POST /client/create

  4. S’il existe :

    POST /client/identifier/update

Important :

  • Définissez externalId pour stocker l’ID ERP du client.

  • Stockez l’ID Progression dans votre ERP pour éviter les appels inutiles.


2. Synchronisation des emplacements

  1. Vérifiez l’existence :

    GET /location/

  2. Créez si nécessaire :

    POST /location/create

  3. Mettez à jour si existant :

    POST /client/identifier/update

Astuce : Utilisez des webhooks pour remonter les modifications d’emplacements vers l’ERP.


3. Synchronisation des produits

  1. Vérifiez l’existence :

    GET /product/list

  2. Créez si nécessaire :

    POST /product/create

  3. Mettez à jour si existant :

    POST /product/identifier/update

Webhooks recommandés si un produit est mis à jour.


4. Synchronisation des tâches

  • Créer une tâche :

    POST /task/create

  • Envoyer la rétroaction à votre système via un changement d’état :

    POST /task/identifier/state

Configurez un état pour le succès et un autre pour l’échec.


Webhooks les plus utilisés

🔔 Tâche progresse à l’état 700

{   "url": "monURL",   "name": "Tâche progresse à 700",   "entityName": "TaskState",   "eventType": "CREATE",   "targetUrl": "monURL",   "enabled": true,   "expand": "",   "filters": [     { "property": "currentState.logicId", "type": "NumberEquals", "value": "700" },     { "property": "type.id", "type": "TextExactlyMatches", "value": "2" }   ],   "headers": {} }

🔔 Produit mis à jour

{   "url": "monURL",   "name": "Produit mis à jour",   "entityName": "Product",   "eventType": "UPDATE",   "targetUrl": "monURL",   "enabled": true,   "expand": "",   "filters": [],   "headers": {} }

🔔 Client mis à jour

{   "url": "monURL",   "name": "Client mis à jour",   "entityName": "Client",   "eventType": "UPDATE",   "targetUrl": "monURL",   "enabled": true,   "expand": "",   "filters": [],   "headers": {} }

🔔 Emplacement mis à jour

{   "url": "monURL",   "name": "Emplacement mis à jour",   "entityName": "Location",   "eventType": "UPDATE",   "targetUrl": "monURL",   "enabled": true,   "expand": "",   "filters": [],   "headers": {} }


Foire aux questions (FAQ)

Puis-je tester mes requêtes directement dans Swagger ?

Oui. En remplaçant le domaine api par celui de votre compte, la documentation devient interactive.

Ai-je besoin d’une licence ou permission spéciale pour l’API ?

Oui. L’API requiert un abonnement payant au forfait Premium.

Dois-je stocker les IDs dans les deux systèmes ?

Oui.

  • externalId dans ProgressionLIVE

  • ID Progression dans votre ERP

Les webhooks sont-ils obligatoires ?

Non, mais très fortement recommandés pour une intégration fiable.

Avez-vous trouvé la réponse à votre question ?