Introduction
Voici une liste de toutes les requêtes qui sont à votre disposition pour pouvoir manipuler vos listes et tables de dépendance.
Celles-ci permettent de faire des opérations d’ajout, sélection, mise à jour, et suppression.
Manipuler les listes
[GET] /list/lists
Retourne une liste de toutes vos listes existantes sans leurs éléments
Résultat obtenu :
[
{
"name": "Liste des clients",
"description": "Répertorie nos clients",
"id": 1,
"elements": []
},
{
"name": "Liste des produits en vente",
"description": "Répertorie les produits que l'on vend",
"id": 2,
"elements": []
}
]
[GET] /list/list/{listId}
Retourne la liste (nom, description, id et élements) dont l’Id a été transmis par le path.
Résultat obtenu :
{
"name": "Liste des clients",
"description": "Répertorie nos clients",
"id": 1,
"elements": [
"Amélie",
"Bernard"
]
}
[POST] /list/list
Créer une nouvelle liste (nom et description) sans les éléments contenus.
Corps de la requête :
{
"name": "Liste des catégories des produits",
"description": "Répertorie les catégories des produits mis en vente"
}
Résultat obtenu :
Une nouvelle liste VIDE nommée « Liste des catégories des produits » avec pour description « Répertorie les catégories des produits mis en vente » qui aura un Id généré de manière auto-incrémentale.
[POST] /list/list/{listId}
Modifie les éléments de la liste dont l’Id a été transmis par le path.
Les éléments qui étaient déjà présents resteront inchangés. Les éléments qui sont existant, mais non présents dans le corps de la requête seront supprimés.
Corps de la requête :
{
"elements": [
"Amélie", "Manon", "Marie-Lou", "Laure"
]
}
Résultat obtenu :
La liste avec l’Id renseigné dans le path aura pour éléments : Amélie / Manon / Marie-Lou / Laure.
- « Amélie » était déjà présente dans la liste, aucune modification n’est faite sur cet élément.
- « Manon », « Marie-Lou » et « Laure » n’étaient pas présentes, elles sont alors créées.
- En revanche, « Bernard » était auparavant présent dans la liste, il est donc supprimé.
[PUT] /list/list/{listId}/items
Insert des éléments dans la liste dont l’Id a été transmis par le path.
Corps de la requête :
[
"Olivier",
"Thomas",
"Alex"
]
Résultat obtenu :
La liste avec l’Id renseigné dans le path (1 dans ce cas) aura trois nouveaux éléments : Olivier / Thomas / Alex.
[PUT] /list/list/{listId}/items/delete
Supprime des éléments dans la liste dont l’Id a été transmis par le path.
Corps de la requête :
[
"Marie-Lou",
"Laure"
]
Résultat obtenu :
Les deux éléments « Marie-Lou » et « Laure » seront supprimés de la liste avec l’Id renseigné dans le path.
[DELETE] /list/list/{listId}
Supprime la liste dont l’Id a été transmis par le path.
Résultat obtenu :
La liste ayant pour Id celui indiqué dans le path n’existe plus.
Les tables de dépendances
[GET] /list/dependencies
Retourne les détails de toutes les tables de dépendance sans mentionner les éléments liés.
Résultat obtenu :
[
{
"name": "Client > Articles achetés",
"description": "La liste des articles achetés pour chaque client",
"id": 1,
"sourceType": "LIST",
"sourceId": 1,
"targetType": "LIST",
"targetId": 2,
"linkedElements": []
}
]
[GET] /list/dependency/{dependencyTableId}
Retourne les détails de la table de dépendance qui possède l’Id indiqué dans le path en mentionnant ses éléments liés.
Résultat obtenu :
{
"name": "Client > Articles achetés",
"description": "La liste des articles achetés pour chaque client",
"id": 1,
"sourceType": "LIST",
"sourceId": 1,
"targetType": "LIST",
"targetId": 52,
"linkedElements": [
{
"source": "Amélie",
"target": "Téléphone portable"
},
{
"source": "Manon",
"target": "Télévision"
},
{
"source": "Marie-Lou",
"target": "Ordinateur portable"
},
{
"source": "Laure",
"target": "Tablette tactile"
}
]
}
[POST] /list/dependency
Créer une table de dépendance (nom, description et listes liées) sans les dépendances.
Corps de la requête :
{
"name": "Articles > Catégories",
"description": "Les articles et leurs catégories associées",
"sourceType": "LIST",
"sourceId": 2,
"targetType": "LIST",
"targetId": 3
}
Résultat obtenu :
Une nouvelle table de dépendance nommée « Articles > Catégories » avec pour description « Les articles et leurs catégories associées » qui aura un Id généré de manière auto-incrémentale et qui n’aura aucune dépendance de renseignée est créée.
[POST] /list/dependency/{dependencyTableId}
Modifie les liaisons de la table de dépendance dont l’Id a été transmis par le path.
Les liaisons déjà présentent resteront inchangées. Celles déjà existantes, mais non présentes dans le corps de la requête seront supprimées.
Corps de la requête :
{
"linkedElements": [
{
"source": "Téléphone portable",
"target": "Téléphonie"
},
{
"source": "Télévision",
"target": "Image & Son"
},
{
"source": "Ordinateur portable",
"target": "Informatique"
},
{
"source": "Tablette tactile",
"target": "Informatique"
}
]
}
Partons du principe que seules les associations « Ordinateur portable »-« Informatique », « Téléphone portable »-« Téléphonie » et « Barre de son »-« Image & Son » existent.
Résultat obtenu :
La table de dépendance avec l’Id renseigné dans le path aura les 4 associations indiquées dans le corps de la requête.
- Les associations « Téléphone portable »-« Téléphonie » et « Ordinateur portable »-« Informatique » existent déjà, aucune modification n’est donc apportée.
- L’association « Tablette tactile » et « Informatique » n’existait pas, elle est alors créée.
- En revanche, l’association auparavant existante « Barre de son » et « Image & Son » est supprimée.
[PUT] /list/dependency/{dependencyTableId}/links
Insert de nouvelles liaisons dans la table de dépendance dont l’Id a été transmis par le path.
Corps de la requête :
[
{
"source": "Souris sans fil",
"target": "Informatique"
},
{
"source": "Casque audio sans fil",
"target": "Image & Son"
}
]
Résultat obtenu :
La table de dépendance avec l’Id renseigné dans le path aura deux nouvelles associations : « Souris sans fil »-« Informatique » et « Casque audio sans fil »-« Image & Son ».
[PUT] /list/dependency/{dependencyTableId}/links/delete
Supprime des liaisons dans la table de dépendance dont l’Id a été transmis par le path.
Corps de la requête :
[
{
"source": "Imprimante",
"target": "Téléphonie"
}
]
Résultat obtenu :
L’association « Imprimante »-« Téléphonie » de la table de dépendance avec l’Id renseigné dans le path n’existera plus.
[DELETE] /list/dependency/{dependencyTableId}
Supprime la table de dépendance dont l’Id a été transmis par le path.
Résultat obtenu :
La table de dépendance ayant pour Id celui indiqué dans le path n’existe plus.
Les référentiels métiers
Se référer à la page qui explique comment manipuler les référentiels métiers par le biais de l’API.