Swagger

Endpoints

Méthode

Chemin

Description

POST

/login

Récupère le token d’authentification

GET

/catalogs

Liste des catalogues fabricants/fournisseurs

GET

/products

Liste des articles (pagination)

GET

/product_infos

Met à jour le prix d’achat fournisseur

GET

/suppliers

Récupérer la liste des fournisseurs
qui permettront initialiser l’ERP

GET

/agencies

Récupérer la liste des agences
qui permettront initialiser l’ERP.

GET

/quotation_price

Récupérer le prix de chiffrage

GET

/orders

Liste des commandes validées

GET

/order

Détail d’une commande validée

POST

/order  

Création d’une commande

PUT

/order

Modification d’une commande

URLs

Prépod : https://api-protarifeo-preprod.sydev.com

Prod : https://api-protarifeo.sydev.com

Exemples par API

Pour les exemples, remplacez {{TARIFEO_API_URL}}
par l’URL choisi Prod ou Préprod.

Cette API permet de récupérer le token, requis pour l’utilisation de toutes les autres API.

Paramètres d’entrée :

  • login
  • mot de passe

Retour :

  • token

Le token est valable pendant 2 heures.

curl -X POST {{TARIFEO_API_URL}}/API/login -H "Content-Type: application/json" -d '{"username": "user", "password": "pass"}'
fetch('{{TARIFEO_API_URL}}/API/login', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ username: 'user', password: 'pass' }) })
import requests
requests.post('{{TARIFEO_API_URL}}/API/login', json={'username': 'user', 'password': 'pass'})

Réponse JSON

{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6..."
  "dateTimeExpiration": "2025-08-20T13:25:47.2783
}

Liste des catalogues fabricants/fournisseurs

Cette API permet de récupérer la liste des catalogues des fabricants/fournisseurs disponibles dans Tarifeo, ainsi que leurs dates d’application.

L’ID Tarif Tarifeo du catalogue est requis pour utiliser d’autres API.
Elle permet également de comparer les dates de mise à jour avec celles des catalogues déjà extraits, afin de proposer une mise à jour si nécessaire.

Paramètre d’entrée :

  • token

Retour :

  •  ID
  • Trigramme Tarifeo
  • Nom du fabricant
  • Date de mise à jour publique
  • Date de prochaine mise à jour (si disponible)
  • Date de traitement du tarif par Tarifeo
curl -X GET {{TARIFEO_API_URL}}/API/catalogs -H "Authorization: YOUR_TOKEN_HERE"
fetch('{{TARIFEO_API_URL}}/API/catalogs', { headers: { 'Authorization': 'YOUR_TOKEN_HERE' } })
import requests
requests.get('{{TARIFEO_API_URL}}/API/catalogs', headers={'Authorization': 'YOUR_TOKEN_HERE'})

Réponse JSON

{
    "@context": "/contexts/Catalog",
    "@id": "/catalogs",
    "@type": "hydra:Collection",
    "hydra:totalItems": 651,
    "hydra:member": [
        {
            "@id": "/catalogs/3FF",
            "@type": "Catalog",
            "name": "3F FILIPPI",
            "codeCtm": "3FF",
            "productNumber": 2927,
            "nextApplicationDate": "",
            "type": "public",
            "applicationDate": "20230701",
            "diffusionDate": ""
        },
        {
            "@id": "/catalogs/3ME",
            "@type": "Catalog",
            "name": "3M ELECTRIQUES",
            "codeCtm": "3ME",
            "productNumber": 1088,
            "nextApplicationDate": "",
            "type": "public",
            "applicationDate": "20250401",
            "diffusionDate": ""
        }, 
        ...
     ]
}

Liste des articles (pagination)

Cette API permet de récupérer la liste des articles avec leurs données générales.

Paramètres d’entrée :

  • token
  • Trigramme
  • Page (mettre 1 pour la première interrogation)

Retour (par pages de 500 articles) :

  • Numéro de page / Nombre total de pages
  • Code article (max. 40 caractères, généralement ≤15)
  • Désignation courte
  • Désignation longue
  • Prix unitaire (5 décimales)
  • Unité
  • Unité de prix
  • Code famille produit
  • Code EAN
  • Taxe DEEE (2 décimales)
curl -X GET "{{TARIFEO_API_URL}}/API/products?catalog.codeCtm=XXX&pageNumber=1" -H 'Authorization': 'YOUR_TOKEN_HERE'
fetch('{{TARIFEO_API_URL}}/API/products?catalog.codeCtm=XXX&pageNumber=1', { headers: { 'Authorization': 'YOUR_TOKEN_HERE'  } })
import requests
requests.get('{{TARIFEO_API_URL}}/API/products?catalog.codeCtm=XXX&pageNumber=1', headers={'Authorization': 'YOUR_TOKEN_HERE' })

Réponse JSON

{
    "@context": "/contexts/Product",
    "@id": "/products",
    "@type": "hydra:Collection",
    "hydra:totalItems": 17700,
    "hydra:member": [
        {
            "@id": "",
            "@type": "Product",
            "optimaPrimaryKey": "",
            "label": "Conduit Isolant, Cintrable, Transversalement élastique, Annelé ICTA 3522 Rai'Gliss Ø40mm noir à bandes grises livré avec manchon IP68 IK10 (IP30 avec manchon) - préconisé Enedis, répond à la NF C 14-100, conforme à la norme EN 61386-22",
            "shortLabel": "Conduit cintrable ICTA 3522 Rai'Gliss Ø40mm - noir à bandes grises",
            "europeanArticleNumberCode": "3414971487154",
            "manufacturerReference": "00040",
            "supplierReference": "",
            "coefficient": 1,
            "family": {
                "@id": "/families/1J1",
                "@type": "Family",
                "id": "1J1",
                "label": "",
                "idBo": ""
            },
            "prices": [
                {
                    "@id": "",
                    "@type": "Price",
                    "id": "",
                    "value": 7.662,
                    "notCommunicated": false,
                    "label": "Prix Unitaire",
                    "unit": "u"
                }
            ]
        },
        ...
        ]
}

Cette API permet de récupérer les informations tarifaires des produits provenant de Tarifeo.

Elle est utilisée :

  • dans les devis et ouvrages, sans le paramètre SIRET agence
  • dans les commandes, avec le paramètre SIRET agence

Selon la présence du paramètre SIRET agence, l’API retourne soit le prix de chiffrage, soit le prix d’achat fournisseur.

Paramètres d’entrée :

  • token
  • Nom dossier Tarifeo
  • Trigramme
  • Code article
  • SIRET agence
  • Derog_affaire (optionnel et que’avec SIRET agence)

Si le code de dérogation est erroné, l’API retourne 0.

Retour :

  • Désignation longue
  • Désignation courte
  • Prix public
  • Code famille de produits
  • Désignation famille de produits
  • Prix d’achat fournisseur (avec SIRET agence / Prix de chiffrage (sans SIRET agence)
  • Coefficient de remise fournisseur (avec SIRET agence)
  • Commentaire sur le prix d’achat (max. 100 caractères)
  • Code douane
  • Multiple de commande fournisseur (avec SIRET agence)
  • Date de début du contrat cadre (avec SIRET agence)
  • Date de fin du contrat cadre (avec SIRET agence)
curl -X GET "{{TARIFEO_API_URL}}/API/product_infos?codeCtm=XXX&manufacturerReference=XXXXXX&supplierRegistrationNumber=XXXXXXXXXXXXXX&folderName=NomduFolder&exceptionCode=derogation1A" -H 'Authorization': 'YOUR_TOKEN_HERE'
fetch('{{TARIFEO_API_URL}}/API/product_infos?codeCtm=XXX&manufacturerReference=XXXXXX&supplierRegistrationNumber=XXXXXXXXXXXXXX&folderName=NomduFolder&exceptionCode=derogation1A', { headers: { 'Authorization': 'YOUR_TOKEN_HERE'  } })
import requests
requests.get('{{TARIFEO_API_URL}}/API/product_infos?codeCtm=XXX&manufacturerReference=XXXXXX&supplierRegistrationNumber=XXXXXXXXXXXXXX&folderName=NomduFolder&exceptionCode=derogation1A', headers={'Authorization': 'YOUR_TOKEN_HERE' })

Réponse JSON

{
    "@context": "/contexts/ProductInfo",
    "@id": "/product_infos",
    "@type": "hydra:Collection",
    "hydra:totalItems": 1,
    "hydra:member": [
        {
            "@id": "/product/infos",
            "@type": "ProductInfo",
            "optimaPrimaryKey": "",
            "catalog": {
                "@id": "/internal/catalogs/XXX",
                "@type": "Catalog",
                "id": 42,
                "name": "NomduFabricant",
                "codeCtm": "XXX"
            },
            "label": "BAES d'évacuation saillie à LEDs 45 lumens 1 heure IP43 IK07 SATI Connecté avec fonctionnalité Visibilité Augmenté et balisage lumineux d'évacuation pour ERP et ERT - visualisation de l'état sur l'application Legrand ERPconnecté",
            "shortLabel": "BAES d'évacuation saillie à LEDs 45lm 1h plastique IP43 IK07 SATI Connecté",
            "europeanArticleNumberCode": "3414971404793",
            "manufacturerReference": "062525",
            "supplierReference": "",
            "prices": [
                {
                    "@id": "",
                    "@type": "Price",
                    "id": "",
                    "value": 155.3,
                    "notCommunicated": false,
                    "label": "Prix Unitaire",
                    "unit": "u"
                }
            ],
            "attributes": [
                {
                    "@type": "Attribute",
                    "@id": "",
                    "value": "9405612090",
                    "label": "Code douanier"
                }
            ],
            "family": {
                "@id": "/families/207",
                "@type": "Family",
                "id": "207",
                "label": "BAES ECO 1 20/80",
                "idBo": ""
            },
            "coefficient": "",
            "type": "public",
            "quotationPrice": 155.3,
            "companyFamily": null
        }
],
    "hydra:view": {
        "@id": "/product/infos?codeCtm=XXX&manufacturerReference=XXXXXX",
        "@type": "hydra:PartialCollectionView"
    }
}

Cette API permet de récupérer la liste des fournisseurs qui permettront initialiser l’ERP.

Paramètres d’entrée :

  • token

Tarifeo retourne la liste des fournisseurs

Retour : la collection des fournisseurs

  • SIRET
  • Raison sociale
curl -X GET {{TARIFEO_API_URL}}/API/suppliers -H "Authorization: Bearer <token>"
fetch('{{TARIFEO_API_URL}}/API/suppliers', { headers: { 'Authorization': 'YOUR_TOKEN_HERE' } })
import requests
requests.get('{{TARIFEO_API_URL}}/API/suppliers', headers={'Authorization': 'YOUR_TOKEN_HERE'})

Réponse JSON

{
    "@context": "/contexts/Supplier",
    "@id": "/suppliers",
    "@type": "hydra:Collection",
    "hydra:totalItems": 63,
    "hydra:member": [
        {
            "@id": "/suppliers/0",
            "@type": "Supplier",
            "code": "2ED",
            "socialReason": "2ED",
            "registrationNumber": "512913518",
            "fullRegistrationNumber": "51291351800027"
        },
        {
            "@id": "/suppliers/0",
            "@type": "Supplier",
            "code": "3CCLIM",
            "socialReason": "3C CLIM",
            "registrationNumber": "421677089",
            "fullRegistrationNumber": "42167708900219"
        },
        ...
      ]
}

Cette API permet de récupérer la liste des agences qui permettront initialiser l’ERP.

  • Token
  • SIRET ou SIREN fournisseur

Tarifeo retourne la liste des agences

Retour : la collection des agences

  • SIRET
  • Ville
  • Raison sociale
  • Agence
  • Adresse
  • Code postal
curl -X GET {{TARIFEO_API_URL}}/API/agencies?supplier.fullRegistrationNumber=xxxxxxxxx -H "Authorization: Bearer <token>"
fetch('{{TARIFEO_API_URL}}/API/agencies?supplier.fullRegistrationNumber=xxxxxxxxx', { headers: { 'Authorization': 'YOUR_TOKEN_HERE' } })
import requests
requests.get('{{TARIFEO_API_URL}}/API/agencies?supplier.fullRegistrationNumber=xxxxxxxxx', headers={'Authorization': 'YOUR_TOKEN_HERE'})

Réponse JSON

{
    "@context": "/contexts/Agency",
    "@id": "/agencies",
    "@type": "hydra:Collection",
    "hydra:totalItems": 672,
    "hydra:member": [
        {
            "@id": "/agencies/3591",
            "@type": "Agency",
            "id": 3591,
            "denomination": "MANPOWER - BOURG EN BRESSE",
            "socialReason": "MANPOWER FRANCE",
            "registrationNumber": "42995529713787",
            "address": {
                "@type": "Address",
                "@id": "",
                "address": "293 AVENUE DES GRANGES BARDES",
                "zipcode": "01000",
                "city": "BOURG-EN-BRESSE",
                "latitude": 46.220441,
                "longitude": 5.247577
            }
        },
        {
            "@id": "/agencies/3592",
            "@type": "Agency",
            "id": 3592,
            "denomination": "MANPOWER - BOURG EN BRESSE BTP",
            "socialReason": "MANPOWER FRANCE",
            "registrationNumber": "42995529713803",
            "address": {
                "@type": "Address",
                "@id": "",
                "address": "293 AVENUE DES GRANGES BARDES",
                "zipcode": "01000",
                "city": "BOURG-EN-BRESSE",
                "latitude": 46.220441,
                "longitude": 5.247577
            }
        },
        ...
     ]
}

Cette API permet de récupérer le prix de chiffrage. Elle est à intégrer dans les devis/ouvrages. Pagination par 200 références. 

Paramètres d’entrée :

  • token
  • Nom dossier Tarifeo
  • Trigramme
  • Numéro de page

Collection de :

  • Trigramme
  • Code article

Retour :

  • Collection des prix de chiffrage
curl -X GET {{TARIFEO_API_URL}}/API/quotation_price?foldername=NomDuFolder&catalog.codeCtm=XXX&pageNumber=X -H "Authorization: Bearer <token>"
fetch('{{TARIFEO_API_URL}}/API/quotation_price?foldername=NomDuFolder&catalog.codeCtm=XXX&pageNumber=X', { headers: { 'Authorization': 'YOUR_TOKEN_HERE' } })
import requests
requests.get('{{TARIFEO_API_URL}}/API/quotation_price?foldername=NomDuFolder&catalog.codeCtm=XXX&pageNumber=X', headers={'Authorization': 'YOUR_TOKEN_HERE'})

Réponse JSON

{
    "@context": "/contexts/Product",
    "@id": "/products/quotation_prices",
    "@type": "hydra:Collection",
    "hydra:totalItems": 17700,
    "hydra:member": [
        {
            "@id": "",
            "@type": "Product",
            "optimaPrimaryKey": "",
            "label": "Dispositif de cadenassage pour volets isolants et cadenassage de sécurité en position débrochée pour DMX³6300 , DMX³4000 et DMX³2500 - peut recevoir 2 cadenas d'un diamètre compris entre 5mm et 8mm",
            "shortLabel": "Dispositif de cadenassage pour volets isolants - DMX³6300, DMX³4000 et DMX³2500",
            "europeanArticleNumberCode": "3245060288266",
            "manufacturerReference": "028826",
            "supplierReference": "",
            "coefficient": 1,
            "quotationPrice": 260.3,
            "quotationPriceUpdatedAt": "",
            "family": {
                "@id": "/families/332",
                "@type": "Family",
                "id": "332",
                "label": "",
                "idBo": ""
            },
            "prices": [
                {
                    "@id": "",
                    "@type": "Price",
                    "id": "",
                    "value": 260.3,
                    "notCommunicated": false,
                    "label": "Prix Unitaire",
                    "unit": "u"
                }
            ]
        },
        ...
        ]
}

Liste des commandes validées

Cette API permet de récupérer la liste des commandes crées dans Tarifeo pour une agence.

Paramètres d’entrée :

  • token
  • Nom dossier
  • SIRET
  • Date de début (format AAAAMMJJ)
  • Date de fin

Retour :

  • ID commande Tarifeo
  • Date de commande
  • Numéro de commande
  • Statut
  • Total
curl -X GET {{TARIFEO_API_URL}}/API/orders -H "Authorization: Bearer <token>"
fetch('{{TARIFEO_API_URL}}/API/orders', { headers: { 'Authorization': 'YOUR_TOKEN_HERE' } })
import requests
requests.get('{{TARIFEO_API_URL}}/API/orders', headers={'Authorization': 'YOUR_TOKEN_HERE'})

Réponse JSON

[
  ()
]

Détail d’une commande validée

Cette API permet de récupérer les détails d’une commande crée sur Tarifeo.

Paramètres d’entrée :

  • token
  • Dossier
  • Numéro de commande

Retour :

  • Numéro unique de la commande
  • Numéro de commande fournisseur si existe
  • Type de commande (220, 230 ou 231)
  • Date de commande
  • Devise utilisée

Informations sur le demandeur :

  • Nom de la société-acheteuse
  • SIRET de la société-acheteuse
  • Adresse de la société-acheteuse

 Contact du demandeur :

  • Prénom NOM du créateur de la commande
  • Mail du créateur de la commande

Informations sur le fournisseur

  • Nom de l’agence fournisseur
  • Siret de l’agence fournisseur
  • Adresse complète de l’agence
  • Prénom NOM du contact fournisseur
  • Adresse mail du contact fournisseur

Lignes de commandes :

  • Line ID
  • Désignation du produit
  • Code article du produit
  • Quantité commandée
  • Unité
  • Prix Bet
  • Taux de TVA de la ligne. 
  • Montant total HT de la ligne

 Totaux de commande :

  • Total HT (déjà existant)
  • TVA Totale
  • Total TTC

Informations logistiques / Livraison :

  • Adresse de livraison
  • Date de livraison souhaité
  • Conditions de livraison

Informations de paiement :

  • Mode de paiement (Virement / prélèvement)
  • Conditions de paiement (A réception de facture / 30 jours fin de mois / 45 jours fin de mois)
  • IBAN / BIC : coordonnées bancaires du vendeur.
curl -X GET {{TARIFEO_API_URL}}/API/order?folderName=xxx&orderNumber=1 -H "Authorization: <token>"
fetch('{{TARIFEO_API_URL}}/API/order?folderName=xxx&orderNumber=1', { headers: { 'Authorization': 'YOUR_TOKEN_HERE' } })
import requests
requests.get('{{TARIFEO_API_URL}}/API/order?folderName=xxx&orderNumber=1', headers={'Authorization': 'YOUR_TOKEN_HERE'})

Cette API permet de créer une pre-commande depuis l’ERP.

Paramètres d’entrée :

  • token
  • Dossier
  • Numéro de commande dans l’ERP

 Informations sur le demandeur :

  • Nom de la société-acheteuse
  • SIRET de la société-acheteuse
  • Adresse de la société-acheteuse
  • Téléphone

Contact du demandeur :

  • Prénom NOM du créateur de la commande
  • Mail du créateur de la commande

Informations sur le fournisseur

  • Siret de l’agence fournisseur
  • Prénom NOM du contact fournisseur
  • Adresse mail du contact fournisseur

Lignes de commandes :

  • Désignation du produit
  • Code article du produit
  • Quantité commandée
  • Unité
  • Prix Net
  • Taux de TVA de la ligne.

Informations logistiques / Livraison :

  • Nom de la société
  • Adresse de livraison
  • Code postale
  • Pays
  • Téléphone
  • Date de livraison souhaité
  • Infos transporteur
  • Conditions de livraison (0=NC, 1=J+1 agence, 2 = JO agence, 3= livrer à l’adresse de livraison)

Informations facturation: :

  • Nom de la société
  • Adresse de livraison
  • Code postale
  • Pays
  • Téléphone

Informations de paiement :

  • Mode de paiement (0 = NC, 1 =Virement, 2 = Prélèvement)
  • Conditions de paiement (0 = NC, 1= A réception de facture , 2=30 jours fin de mois, 3 =45 jours fin de mois)
  • IBAN / BIC : coordonnées bancaires du vendeur

Retour :

  • Statut commande (precommande, transmise aux fournisseurs, reçue par le fournisseur, validée)
curl -X GET {{TARIFEO_API_URL}}/API/orders?folderName=NomDuFolder&ordersUserEmail=EmailUtilisateur -H "Authorization: Bearer <token>"
curl -X POST {{TARIFEO_API_URL}}/API/orders?folderName=NomDuFolder&ordersUserEmail=EmailUtilisateur -H "Content-Type: application/json" -d '{"username": "user", "password": "pass"}'
import requests
requests.get('{{TARIFEO_API_URL}}/API/orders?folderName=NomDuFolder&ordersUserEmail=EmailUtilisateur', headers={'Authorization': 'YOUR_TOKEN_HERE'})

Cette API permet de modifier une commande existante depuis l’ERP

Paramètres d’entrée :

  • token
  • Dossier
  • Numéro de commande dans l’ERP
  • Type de commande (220, 230 ou 231)
  • Date de commande
  • Devise utilisée

Informations sur le demandeur :

  • Nom de la société-acheteuse
  • SIRET de la société-acheteuse
  • Adresse de la société-acheteuse

Contact du demandeur :

  • Prénom NOM du créateur de la commande
  • Mail du créateur de la commande

Informations sur le fournisseur

  • Nom de l’agence fournisseur
  • Siret de l’agence fournisseur
  • Adresse complète de l’agence
  • Prénom NOM du contact fournisseur
  • Adresse mail du contact fournisseur

Lignes de commandes :

  • Line ID
  • Désignation du produit
  • Code article du produit
  • Quantité commandée
  • Unité
  • Prix Bet
  • Taux de TVA de la ligne. 
  • Montant total HT de la ligne

Totaux de commande :

  • Total HT (déjà existant)
  • TVA Totale
  • Total TTC

 Informations logistiques / Livraison :

  • Adresse de livraison
  • Date de livraison souhaité
  • Conditions de livraison

 Informations de paiement :

  • Mode de paiement (Virement / prélèvement)
  • Conditions de paiement (A réception de facture / 30 jours fin de mois / 45 jours fin de mois)
  • IBAN / BIC : coordonnées bancaires du vendeur.

Retour :

Statut commande (precommande, transmise aux fournisseurs, reçue par le fournisseur, validée

Retour en haut