# Web service API Notre API est basée sur l'architecture REST. Vous pouvez y accéder via le chemin `/api/` depuis l'URL du site module de vente. Par exemple : `https://{{URL}}/api/{{RESOURCE}}` -> `https://e.votredomaine.com/api/`. ### Méthodes HTTP disponibles La plupart des ressources sont accessibles avec les 4 méthodes principales de requêtes HTTP : GET, POST, PUT, DELETE ; sauf les ressources suivantes :
**Ressource** **GET** **POST** **PUT** **DELETE**
evenements **✅****✅**
stocks **✅****✅**
Chaque ressource dispose de deux schémas qui sont accessibles via un paramètre à spécifier dans l'URL : - `?schema=blank` : retourne une arborescence XML vierge de la ressource. - `?schema=synopsis` : retourne une arborescence XML vierge de la ressource avec le format attendu pour chaque valeur ainsi que des indicateurs spécifiques (typage, longueur maximale...) --- ### Ressources disponibles
**Ressource** **Description**
adresses Les adresses des clients
articles Les articles
categories Les catégories d'articles
clients Les clients
enseignes Les enseignes
evenements Les évènements liés aux utilisateurs
lots\_mercuriales Lots des offres de prix et marchés
marques Marques des articles
mercuriales Offre de prix ou marché
representants Commerciaux
stocks Stocks articles
--- ### Schéma "blank" d'une ressource En affichant le schéma "vierge" d'une ressource, l'API vous retournera uniquement la structure et le nom des données. En prenant la ressource "client" comme exemple : ```XML ``` ### Schéma "synopsis" d'une ressource En affichant le schéma "synopsis", l'API vous retournera le schéma "blank" de la ressource, tout en vous indiquant le format attendu pour les données. En prenant de nouveau la ressource "client" comme exemple : ```XML ``` #### Liste des attributs XML
**Nom** **Description** **Exemple d'utilisation**
format Précise le type de données. format="int", format="string"
maxLength Détermine la longueur maximale de la chaîne de caractère. format="string" maxLength="66"
pattern Décrit la manière dont les données doivent être agencées.pattern="yyyy-mm-dd" pour une date
readOnly Champ en lecture-seule uniquement. readOnly="true", readOnly="false"
#### Attribut "format"
**Format** **Description** **Format attendu**
bool Une valeur booléenne (true ou false). "0" ou "1"
double Une valeur pouvant être un nombre à virgule flottante.
int Une valeur intégrale (entre -2,147,483,648 et 2,147,483,647).
string Une chaîne de caractères. \[a-zA-Z0-9\]
####