Liste des produits
GET /firms/FIRM_ID/products.json
liste des produits, par groupe de 30 résultats.
Paramètres optionnels
- page : numéro de page
- ref : recherche partielle sur la référence produit
- title : recherche partielle sur le libellé du produit
- api_id : recherche exacte sur le champ api_id
- api_custom : recherche partielle sur le champ api_custom
Tri
Par défaut, les produits sont triés par ordre croissant de libellé.
Vous pouvez trier les résultats selon différentes méthodes en utilisant les paramètres suivants:
- sort:
- asc: tri croissant
- desc: tri décroissant
- order : type de tri
- ref: tri par référence
- created: tri par date de création d'un devis (ie date à laquelle l'enregistrement a été créé)
- updated: tri par date de dernière modification d'un devis (ie date à laquelle l'enregistrement a été modifié pour la dernière fois)
Requête
curl -i -S -u login:password -H 'User-Agent: MonApp (moi@exemple.com)' \
"https://www.facturation.pro/firms/FIRM_ID/products.json"
Réponse
[{
"api_custom": null,
"api_id": null,
"category_id": 4868,
"id": 46125,
"nature": 9,
"ref": "PRESTASHOP",
"title": "Developpement module Prestashop",
"unit_price": "100.0",
"vat": "0.200"
}, {
"api_custom": null,
"api_id": null,
"category_id": 4868,
"id": 46126,
"nature": 9,
"ref": "WORDPRESS",
"title": "Developpement module Wordpress",
"unit_price": "150.0",
"vat": "0.200"
}]
Détail d'un produit
GET /firms/FIRM_ID/products/ID.json
Affiche le détail du produit n° ID
Requête
curl -i -S -u login:password -H 'User-Agent: MonApp (moi@exemple.com)' \
"https://www.facturation.pro/firms/FIRM_ID/products/1.json"
Réponse
{
"api_custom": null,
"api_id": null,
"category_id": 4868,
"id": 1,
"nature": 9,
"ref": "PRESTASHOP",
"title": "Developpement module Prestashop",
"unit_price": "100.0",
"vat": "0.200"
}
Créer un produit
POST /firms/FIRM_ID/products.json
Création d'un nouveau produit. On obtient en retour le code JSON du produit créé, avec l'ID qui lui a été attribué
Requête
curl -i -S -u login:password -H 'User-Agent: MonApp (moi@exemple.com)' \
-H 'Content-Type: application/json; charset=utf-8' \
-X POST \
-d '{"ref":"PAIMENT","title":"Developpement passerelle de paiement","unit_price":200.0,"vat":0.200}' \
"https://www.facturation.pro/firms/FIRM_ID/products.json"
Réponse
Status: 201 Created
Location: /firms/FIRM_ID/products/46127.json
{
"id": 46127,
"ref": "PAIMENT",
"title": "Developpement passerelle de paiement",
"unit_price": "200.0",
"vat": "0.200"
}
Modifier un produit
PATCH /firms/FIRM_ID/products/ID.json
Mise à jour d'un produit existant.
Requête
curl -i -S -u login:password -H 'User-Agent: MonApp (moi@exemple.com)' \
-H 'Content-Type: application/json; charset=utf-8' \
-X PATCH \
-d '{"title":"Optimisation module Prestashop","api_custom":"CUSTOM_SHOP"}' \
"https://www.facturation.pro/firms/FIRM_ID/products/1.json"
Réponse
Status: 200 OK
Supprimer un produit
DELETE /firms/FIRM_ID/products/ID.json
Supprime le produit identifié par son ID. Cette opération ne supprime pas les lignes de facturation associées à ce produit.
Requête
curl -i -S -u login:password -H 'User-Agent: MonApp (moi@exemple.com)' \
-X DELETE \
"https://www.facturation.pro/firms/FIRM_ID/products/1.json"
Réponse
Status: 200 OK
Liste des champs
Champs | Libellé | Type | Accès |
---|---|---|---|
id | Identifiant | int(11) | lecture seule |
ref | Référence interne | string(255) | lecture/écriture |
title | Libellé | text | lecture/écriture |
unit_price | Prix unitaire HT | decimal(15,3) | lecture/écriture |
vat | Taux de TVA | decimal(8,3) | lecture/écriture |
nature | Type de facturation | int(11) | lecture/écriture |
category_id | Catégorie | int(11) | lecture/écriture |
notes | Notes internes | text | lecture/écriture |
created_at | Créé le | datetime(3) | lecture seule |
updated_at | Modifié le | datetime(3) | lecture seule |
field1 | Champ libre 1 | string(255) | lecture/écriture |
field2 | Champ libre 2 | string(255) | lecture/écriture |
field3 | Champ libre 3 | string(255) | lecture/écriture |
field4 | Champ libre 4 | string(255) | lecture/écriture |
field5 | Champ libre 5 | string(255) | lecture/écriture |
soft_deleted | Enregistrement marqué comme à supprimer | boolean | lecture seule |
hard_delete_on | Date définitive de la suppression | date | lecture seule |
api_id | API - Référence numérique libre | bigint(20) | lecture/écriture |
api_custom | API - Texte libre | string(255) | lecture/écriture |
Champs utilisant des valeurs spécifiques
nature
1 : Vente
2 : BIC - Prestations de service commerciales ou artisanales
3 : BNC - Prestation non commerciale
9 : Non applicable