# 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"
####