Cet article présente une compréhension générale de la fonctionnalité de Liste de Contenu et de sa gestion via l'API. Si vous n'êtes pas encore familier avec les Listes de Contenu, veuillez d'abord lire cet article.
Pour des intégrations plus sophistiquées et ambitieuses, veuillez contacter l'équipe de support en ayant lu la documentation de l'API au préalable.
Listes de Contenu via l'API
Les Listes de Contenu et les éléments de Liste de Contenu peuvent être gérés via l'API. Plusieurs "endpoints" dédiés existent pour les listes de contenu et chacun des types d'élément.
Endpoints
Il existe différents "endpoints", qui peuvent être utilisés à des fins distinctes.
Listes de Contenu
Les Listes de Contenu regroupent des éléments de contenu. Vous pouvez utiliser l'API pour créer, gérer et supprimer des Listes de Contenu.
.../api/content-lists
- interprète les appels GET, POST
- utilisé pour récupérer toutes les Listes de Contenu ou créer une Liste de Contenu
.../api/content-lists/$id
- interprète les appels GET, PATCH, DELETE
- Répertorie un ou plusieurs éléments de la Liste de Contenu d'un même type
- Utilisé pour gérer et supprimer des Listes de Contenu
Articles personnalisés
.../api/custom-items
- interprète les appels GET, POST
- utilisé pour récupérer tous les éléments de contenu de type «CUSTOM» ou pour créer des éléments de contenu de type «CUSTOM»
.../api/custom-items/$id
- interprète les appels GET, PATCH, DELETE
- Objet d'élément de Liste de Contenu
- Utilisé pour gérer et supprimer des éléments personnalisés
Événements
.../api/events
- interprète les appels GET, POST
- utilisé pour récupérer tous les éléments de contenu de type «EVENTS» ou créer des éléments de contenu de type «EVENTS»
.../api/events/$id
- interprète les appels GET, PATCH, DELETE
- Objet d'élément de Liste de Contenu
- Utilisé pour gérer et supprimer des événements
Éléments du menu
.../api/menu-items
- interprète les appels GET, POST
- utilisé pour récupérer tous les éléments de contenu de type «MENU» ou créer des éléments de contenu de type «MENU»
.../api/menu-items
- interprète les appels GET, PATCH, DELETE
- Objet d'élément de Liste de Contenu
- Utilisé pour gérer et supprimer des éléments de menu
Personnes
.../api/persons
- interprète les appels GET, POST
- utilisé pour récupérer tous les éléments de contenu de type "PEOPLE" ou créer des éléments de contenu de type "PEOPLE"
.../api/persons/$id
- interprète les appels GET, PATCH, DELETE
- Objet d'élément de Liste de Contenu
- Utilisé pour gérer et supprimer des personnes
Des produits
.../api/products
- interprète les appels GET, POST
- utilisé pour récupérer tous les éléments de contenu de type "PRODUCTS" ou créer des éléments de contenu de type "PRODUCTS"
.../api/products/$id
- interprète les appels GET, PATCH, DELETE
- Objet d'élément de Liste de Contenu
- créer, gérer et supprimer des produits
Des services
.../api/service-items
- interprète les appels GET, POST
- utilisé pour récupérer tous les éléments de contenu de type "SERVICES" ou créer des éléments de contenu de type "SERVICES"
.../api/service-items/$id
- interprète les appels GET, PATCH, DELETE
- Objet d'élément de Liste de Contenu
- créer, gérer et supprimer des services
Comment commencer?
Les étapes ci-dessous décrivent, de manière générale, ce qu'il faut faire pour intégrer l'API pour les Listes de Contenu:
- Créer une Liste de Contenu
- Se souvenir de l'ID de Liste de Contenu récupéré de la réponse de l'API
- Créer au moins un élément de Liste de Contenu
- Se souvenir de l'ID d'élément de Liste de Contenu récupéré de la réponse de l'API
- Utilisez la méthode PATCH pour mettre à jour la Liste de Contenu que vous venez de créer avec l'ID d'élément de contenu
Dans les sections suivantes, vous trouverez des informations plus détaillées sur les étapes ci-dessus.
Comment gérer une Liste de Contenu?
Créer
Pour créer une Liste de Contenu, appelez cet "endpoint" avec la méthode POST:
.../api/content-lists
Fournissez les champs suivants dans le payload (exemple de type «CUSTOM»):
payload
{ "contentList": { "title": "THIS IS A TITLE", "type": "CUSTOM", "items": [] } }
Notez que le tableau des "items" est vide. Cela signifie que la Liste de Contenu sera créée sans aucun élément encore attribué. Si vous souhaitez attribuer des éléments existants à la Liste de Contenu lors de sa création, répertoriez les ID d'élément de contenu séparés par une virgule dans le tableau d'éléments.
"items": [CONTENT_ITEM_ID1, CONTENT_ITEM_ID2, CONTENT_ITEM_ID3]
En réponse à votre appel POST, vous récupérerez l'ID de la Liste de Contenu que vous venez de créer.
Modifier
Pour modifier les données d'une Liste de Contenu, appelez cet "endpoint" avec la méthode PATCH:
Remplacez "$ id" par le même ID de Liste de Contenu de la liste que vous souhaitez modifier.
.../api/content-lists/$id
Le payload de l'appel API doit contenir les champs que vous souhaitez modifier:
payload
{ "contentList": { "title": "THIS IS A NEW TITLE", "type": "CUSTOM", "items": [CONTENT_ITEM_ID41, CONTENT_ITEM_ID442, CONTENT_ITEM_ID34] } }
En réponse à votre appel PATCH, vous récupérerez les champs de données mis à jour.
Supprimer
Pour supprimer une liste de contenu, appelez cet "endpoint" avec la méthode DELETE:
.../api/content-lists/$id
Dans la réponse à votre appel DELETE, vous récupérerez le message "SUCCESS", lorsque la Liste de Contenu est supprimée avec succès. Vous ne pourrez plus appeler la Liste de Contenu supprimée.
Comment gérer les éléments de la Liste de Contenu?
Créer
Pour créer un élément de Liste de Contenu, appelez cet "endpoint" avec la méthode POST ( exemple de type «MENU»):
.../api/menu-items
Fournissez les champs suivants dans le payload (Exemple de type "MENU"):
payload
{ "identifier": "THIS IS MY IDENTIFIER", "title": "BREAKFAST", "description": "BREAKFAST IS THE MOST IMPORTANT MEAL OF THE DAY", "category": null, "image": null, "url": "https://www.mymenu.com/", "price": null, "priceMax": null, "currency": null, "listName": "MY MENU" }
L'ID d'élément de Liste de Contenu sera renvoyé dans la réponse à l'appel POST.
Modifier
Pour modifier les données d'un élément de Liste de Contenu, appelez cet "endpoint" avec la méthode PATCH:
Remplacez "$ id" par l'ID d'élément de Liste de Contenu de l'élément que vous souhaitez modifier.
.../api/menu-items/$id
Le payload de l'appel API doit contenir les champs que vous souhaitez modifier:
payload
{ "identifier": "THIS IS MY NEW IDENTIFIER", "title": "BREAKFAST 2.0", "description": "BREAKFAST IS THE VERY MOST IMPORTANT MEAL OF THE DAY", "category": null, "image": null, "url": "https://www.mynewmenu.com/", "price": null, "priceMax": null, "currency": null, "listName": "MY NEW MENU" }
Les champs de données modifiés seront renvoyés dans la réponse de l'appel PATCH.
Supprimer
Pour supprimer un élément de Liste de Contenu, appelez cet "endpoint" avec la méthode DELETE:
.../api/menu-items/$id
Dans la réponse à votre appel DELETE, vous récupérerez le message "SUCCESS", lorsque l'élément a été supprimé avec succès. Vous ne pourrez plus appeler l'élément de Liste de Contenu supprimé.
Comment attribuer un élément de contenu à une Liste de Contenu?
Pour associer un élément de Liste de Contenu à une Liste de Contenu, vous devez appeler la Liste de Contenu via PATCH auquel vous souhaitez attribuer des éléments:
Remplacez "$ id" par l'identifiant de la liste de contenu.
.../api/content-lists/$id
Le corps de l'appel API doit contenir le champ "items" suivi d'un tableau contenant les ID d'élément que vous souhaitez attribuer:
corps
{ "contentList": { "itemIds": [CONTENT_ITEM_ID1, CONTENT_ITEM_ID2, CONTENT_ITEM_ID3] } }
Les données mises à jour seront renvoyées dans la réponse de l'appel PATCH.
Comment supprimer un élément de Liste de Contenu d'une Liste de Contenu?
Pour supprimer un élément de Liste de Contenu d'une Liste de Contenu, vous devrez appeler la Liste de Contenu avec la méthode PATCH dont vous souhaitez supprimer des éléments:
Remplacez "$ id" par l'identifiant de la Liste de Contenu.
.../api/content-lists/$id
Le payload de l'appel API doit contenir le champ "items" suivi d'un tableau contenant les ID d'élément que vous souhaitez conserver. Videz le tableau au cas où vous souhaiteriez supprimer tous les éléments:
payload
{ "contentList": { "itemIds": [CONTENT_ITEM_ID1] } }
Les données mises à jour seront renvoyées dans la réponse de l'appel PATCH.