Pour les développeurs qui créent des intégrations WooCommerce personnalisées, l'API REST WooCommerce Wishlist est souvent la pièce manquante. La plupart des plugins de liste de souhaits ignorent complètement l'API. Ceux qui en fournissent une vous laissent généralement avec quelques points de terminaison non documentés à deviner.
Cet écart est plus important qu'il n'y paraît. La synchronisation de l'activité de la liste de souhaits avec un CRM nécessite un accès par programme. Il en va de même pour la création d'un tableau de bord analytique personnalisé, l'alimentation d'un site front-end headless ou l'alimentation de données d'intention dans une plateforme d'e-mail.
Ce guide explique comment utiliser l'API REST de la liste de souhaits WooCommerce exposée par SaveTo Wishlist. Nous aborderons l'authentification, les opérations CRUD de base, les modèles d'intégration pratiques et les webhooks. Lorsque les chemins des points d'accès sous-jacents ne sont pas entièrement documentés publiquement, nous renverrons à la documentation du développeur du plugin.
- Pourquoi une API REST est importante pour les listes de souhaits WooCommerce
- Prérequis et authentification
- Opérations API de base : CRUD pour les listes de souhaits
- Travail avec les données de liste de souhaits : modèles pratiques
- Création d'intégrations personnalisées : 3 exemples concrets
- Webhooks : événements de liste de souhaits en temps réel
- Gestion des erreurs et meilleures pratiques
- Questions fréquemment posées
- Commencez à créer avec l'API REST de la liste de souhaits WooCommerce
Pourquoi une API REST est importante pour les listes de souhaits WooCommerce
Une API REST transforme les données de liste de souhaits d'une fonctionnalité de plugin verrouillée en une couche de données accessible. L'ensemble de votre pile technologique peut lire et écrire à partir de celle-ci. Cela change ce qui est possible en aval.
Sans API, vos options sont limitées. Les requêtes directes à la base de données sont fragiles, étroitement liées au schéma du plugin et susceptibles de planter lors des mises à jour. Le scraping du frontend n'est pas fiable et lent. Aucune de ces solutions n'est une véritable solution pour les intégrations en production.
Avec une API REST appropriée, vous obtenez des points d'accès HTTP standard qui renvoient des données structurées. Cela ouvre des cas d'utilisation tels que :
- Synchronisation CRM et plateformes d'e-mails : Envoyez des événements de liste de souhaits à Klaviyo, Drip, Mailchimp ou toute plateforme acceptant les webhooks ou les appels API.
- Tableaux de bord d'administration personnalisés : Créez des rapports internes montrant les produits les plus souhaités, les taux de conversion des listes de souhaits et les modèles d'intention des clients.
- Intégration d'applications mobiles : Permettez aux clients de gérer leurs listes de souhaits depuis des applications mobiles natives via des appels API authentifiés.
- Magasins headless : Dissociez l'interface utilisateur de la liste de souhaits de WordPress et affichez les données de la liste de souhaits dans un frontend React, Vue ou Next.js.
- Pipelines d'analyse : Intégrez les données de liste de souhaits dans des entrepôts de données ou des outils de BI pour une analyse inter-canaux.

En bref, si vous créez quoi que ce soit au-delà de l'expérience de liste de souhaits par défaut, une API n'est pas un plus, c'est une exigence.
Prérequis et authentification
Ce dont vous avez besoin avant de commencer
La bonne nouvelle d'abord : l'accès programmatique à l'API est disponible dans les versions gratuite et Pro de SaveTo Wishlist. Vous aurez besoin de :
- SaveTo Wishlist installé et activé (vous pouvez utiliser la version Lite ou Pro de ce plugin de liste de souhaits, car l'API REST est incluse dans les deux).
- WooCommerce installé et activé, car SaveTo Wishlist étend l'infrastructure de l'API REST de WooCommerce.
- WordPress avec les permaliens personnalisés activés. Les permaliens par défaut ne fonctionneront pas pour l'API REST.
- Connaissance des concepts d'API REST : méthodes HTTP, JSON et en-têtes d'authentification.
Si vous êtes nouveau sur l'API REST WooCommerce en général, la documentation de l'API REST WooCommerce est le bon point de départ. Elle couvre le modèle d'authentification et les modèles de requête sur lesquels SaveTo Wishlist s'appuie.
Modèles d'authentification
L'API REST de SaveTo Wishlist suit le modèle d'authentification standard de WooCommerce. Vous vous authentifiez à l'aide de clés d'API WooCommerce, qui sont une paire de clé consommateur et de secret consommateur. Générez-les à partir de votre tableau de bord WordPress sous WooCommerce, Paramètres, Avancé, REST API.
Pour les requêtes HTTPS, que vous devriez toujours utiliser en production, transmettez vos informations d'identification soit en tant que paramètres de requête, soit via l'authentification de base HTTP :
# Basic Auth approach (recommended)
curl https://yourstore.com/wp-json/wc/v3/wishlist-endpoint \
-u consumer_key:consumer_secret
# Query parameter approach
curl "https://yourstore.com/wp-json/wc/v3/wishlist-endpoint?consumer_key=ck_xxx&consumer_secret=cs_xxx"
Une note sur l'espace de noms. L'espace de noms exact de l'API et le chemin de base du point d'accès peuvent se trouver sous wc/v3, un espace de noms personnalisé comme saveto/v1, ou un autre modèle. Consultez les notes du développeur de SaveTo Wishlist pour les chemins canoniques. Les exemples de ce guide utilisent des chemins d'accès de substitution pour illustrer les concepts.
Pour le développement local sur HTTP plutôt que HTTPS, WooCommerce revient à l'authentification OAuth 1.0a à un pied. La plupart des développeurs trouvent plus simple de configurer un certificat SSL local et d'utiliser l'authentification de base à la place. Cela dit, OAuth 1.0a est le recours documenté si vous en avez besoin.
Ce que nous avons constaté : les développeurs rencontrent souvent des erreurs 404 sur les routes de l'API de la liste de souhaits et supposent que les points d'accès ne fonctionnent pas. Dans la plupart des cas, le problème est l'une des trois choses suivantes. Les permaliens personnalisés peuvent ne pas être activés. Les clés de l'API REST WooCommerce peuvent manquer de la bonne portée de lecture ou d'écriture. Ou l'espace de noms de l'API est différent de ce qu'ils attendaient. Vérifiez ces trois points avant de déboguer davantage.
Opérations API de base : CRUD pour les listes de souhaits
L'API REST de la liste de souhaits WooCommerce suit les conventions REST standard. Si vous avez travaillé avec l'API des commandes ou des produits WooCommerce, les modèles vous sembleront familiers. C'est un choix de conception délibéré.
Récupération des listes de souhaits (GET)
La récupération de données via l'API REST de la liste de souhaits WooCommerce suit la même structure que n'importe quelle ressource REST WooCommerce standard. Une requête GET typique pour lister les listes de souhaits ressemble à ceci :
# List all wishlists (may require admin-level API keys)
GET /wp-json/{namespace}/wishlists
# List wishlists for a specific customer
GET /wp-json/{namespace}/wishlists?customer_id=123
# Retrieve a specific wishlist by ID
GET /wp-json/{namespace}/wishlists/{wishlist_id}
Confirmez les chemins exacts des points d'accès, les noms des paramètres de requête et le format de réponse dans les notes du développeur de SaveTo Wishlist avant de passer en production. La structure ci-dessous est conceptuelle plutôt qu'un contrat.
{
"id": 42,
"customer_id": 123,
"title": "My Birthday List",
"items": [
{
"product_id": 456,
"variation_id": 0,
"date_added": "2026-03-15T10:30:00"
}
],
"date_created": "2026-03-01T09:00:00"
}
Considérez les noms de champs comme illustratifs. Le schéma réel peut différer de manière subtile mais importante, en particulier en ce qui concerne la gestion des variations et les sessions d'invités.
Création et mise à jour des listes de souhaits (POST/PUT)
Pour ajouter des articles à une liste de souhaits par programme, vous enverriez généralement une requête POST avec les détails du produit :
# Add an item to an existing wishlist
POST /wp-json/{namespace}/wishlists/{wishlist_id}/items
Content-Type: application/json
{
"product_id": 789,
"variation_id": 0
}
La mise à jour des métadonnées de la liste de souhaits, telles qu'un titre, la visibilité ou les paramètres de partage, suit un modèle PUT ou PATCH standard :
# Update wishlist title
PUT /wp-json/{namespace}/wishlists/{wishlist_id}
Content-Type: application/json
{
"title": "Holiday Gift Ideas"
}
Confirmez les champs exacts acceptés, et si POST ou PUT gère les mises à jour, dans les notes du développeur du plugin. Le format de transmission suit le JSON standard sur HTTP dans les deux cas.
Suppression d'articles de liste de souhaits (DELETE)
La suppression d'articles individuels, ou la suppression d'une liste de souhaits entière, suit le modèle REST DELETE standard :
# Remove a specific item from a wishlist
DELETE /wp-json/{namespace}/wishlists/{wishlist_id}/items/{item_id}
# Delete an entire wishlist
DELETE /wp-json/{namespace}/wishlists/{wishlist_id}
Vérifiez si le plugin traite la suppression comme immédiate ou comme une suppression logique avec une fenêtre de récupération. Ce détail est important pour toute interface utilisateur permettant aux clients d'annuler une suppression. Dans tous les cas, attendez-vous à des codes d'état HTTP standard : 200 pour les opérations réussies, 201 pour la création de ressources, 404 pour les ressources manquantes et 401 ou 403 pour les échecs d'authentification.
Travailler avec les données de la liste de souhaits : modèles pratiques
Une fois que les opérations CRUD de base fonctionnent, quelques modèles reviennent sans cesse dans les intégrations réelles. Les connaître à l'avance permet d'éviter des nettoyages ultérieurs.
Récupérer les produits de la liste de souhaits avec les détails du produit
Lorsque vous effectuez une requête à l'aide de l'API REST WooCommerce Wishlist, les réponses renvoient généralement des ID de produits plutôt que des objets de produits complets. Pour afficher les noms, images et prix des produits aux côtés des données de la liste de souhaits, vous effectuerez généralement une requête de suivi à l'API WooCommerce Products :
// Conceptual example: enrich wishlist items with product data
async function getWishlistWithProducts(wishlistId) {
const wishlist = await fetchAPI(`/wishlists/${wishlistId}`);
const enrichedItems = await Promise.all(
wishlist.items.map(async (item) => {
const product = await fetchAPI(`/wc/v3/products/${item.product_id}`);
return {
...item,
product_name: product.name,
product_price: product.price,
product_image: product.images[0]?.src
};
})
);
return { ...wishlist, items: enrichedItems };
}
Pour les listes de souhaits plus volumineuses ou les applications à fort trafic, regroupez les recherches de produits ou mettez en cache les données des produits localement. Cela vous évite de surcharger l'API Products à chaque chargement de page.
Filtrage et pagination
L'API REST WooCommerce utilise des paramètres de pagination standard (page, per_page) et renvoie des en-têtes de pagination (X-WP-Total, X-WP-TotalPages). L'API de SaveTo Wishlist doit suivre la même convention :
# Get page 2 of wishlists, 20 per page
GET /wp-json/{namespace}/wishlists?page=2&per_page=20
Pour les paramètres de filtre, attendez-vous à un modèle similaire à celui du point de terminaison des commandes WooCommerce. Les filtres courants incluent généralement les plages de dates, les ID de clients et les ID de produits. Consultez la documentation du plugin pour connaître les paramètres de requête exacts pris en charge dans votre version.
Interrogation par client ou par produit
Deux des modèles de requête les plus courants sont « montrez-moi toutes les listes de souhaits de ce client » et « montrez-moi tous les clients qui ont mis ce produit dans leur liste de souhaits ».
La requête par client est simple si l'API prend en charge un filtre customer_id. La requête par produit, c'est-à-dire quels clients ont mis le produit X dans leur liste de souhaits, est plus précieuse pour les décisions de merchandising. Elle peut nécessiter un point de terminaison ou une approche différente :
# All wishlists containing a specific product
GET /wp-json/{namespace}/wishlists?product_id=456
Si l'interrogation basée sur les produits n'est pas directement prise en charge, vous avez deux options. Récupérez toutes les listes de souhaits et filtrez côté client, ou utilisez les fonctionnalités d'analyse de SaveTo Wishlist Pro. Le tableau de bord d'analyse avancée agrège déjà cette vue, ce qui permet souvent d'éviter un travail personnalisé.
Création d'intégrations personnalisées : 3 exemples concrets
Les modèles ci-dessus sont utiles isolément, mais leur véritable valeur apparaît lorsque vous les combinez. Voici trois intégrations que nous rencontrons souvent et comment l'API en prend en charge chacune.
Synchronisation des données de la liste de souhaits avec une plateforme d'e-mailing
L'intégration la plus courante consiste à alimenter votre plateforme d'e-mailing avec les événements de la liste de souhaits. Cela permet de gérer des campagnes telles que les alertes de baisse de prix et les rappels de liste de souhaits sans exportations manuelles.
L'approche en temps réel utilise des webhooks de liste de souhaits. Lorsqu'un client ajoute un article, un webhook est envoyé à l'API de votre plateforme d'e-mails avec les données du client et du produit. À partir de là, vous pouvez créer des segments tels que « clients qui ont ajouté des articles à leur liste de souhaits au cours des 7 derniers jours » ou déclencher des automatisations immédiatement.
Si votre plateforme d'e-mails ne prend pas en charge les webhooks entrants, le polling fonctionne comme solution de repli. Une tâche planifiée, qu'il s'agisse d'un cron ou d'un planificateur externe, interroge l'API de la liste de souhaits à intervalles réguliers. Elle compare avec le dernier état connu, puis envoie les nouveaux événements à la plateforme d'e-mails.
Pour un aperçu plus large de la manière dont les données de la liste de souhaits s'intègrent dans une stratégie d'e-mails, consultez notre guide sur le marketing par e-mail e-commerce et les campagnes basées sur les listes de souhaits.
Création d'un tableau de bord des produits les plus ajoutés à la liste de souhaits
Un tableau de bord personnalisé affichant les produits les plus ajoutés à la liste de souhaits aide les équipes de merchandising et de tarification à prendre des décisions plus éclairées. Le flux conceptuel ressemble à ceci :
- Interroger l'API de la liste de souhaits pour toutes les listes de souhaits, ou utiliser un point d'accès basé sur le produit si disponible.
- Agréger les décomptes de la liste de souhaits par ID de produit.
- Joindre avec les données produit WooCommerce pour les noms, catégories et prix.
- Afficher le résultat dans une page d'administration WordPress personnalisée, un outil de BI externe ou un simple tableau de bord HTML.
// Conceptual: aggregate wishlist counts by product
async function getMostWishlisted() {
const allWishlists = await fetchAllPages('/wishlists');
const productCounts = {};
allWishlists.forEach(wishlist => {
wishlist.items.forEach(item => {
productCounts[item.product_id] =
(productCounts[item.product_id] || 0) + 1;
});
});
return Object.entries(productCounts)
.sort(([, a], [, b]) => b - a)
.slice(0, 20);
}
Cela dit, SaveTo Wishlist Pro inclut déjà des analyses et rapports intégrés pour ce cas d'utilisation précis. Si la vue intégrée est suffisante, vous évitez complètement le code personnalisé.
Synchronisation de la liste de souhaits de l'application mobile
Pour les boutiques avec des applications mobiles natives construites en React Native, Flutter ou similaire, l'API REST permet aux clients de gérer leurs listes de souhaits depuis l'application. Les mêmes appels authentifiés gèrent le travail :
- Authentifier l'utilisateur via le flux d'authentification standard de WooCommerce.
- Récupérer les listes de souhaits de l'utilisateur au chargement de l'application.
- Permettre à l'utilisateur d'ajouter ou de supprimer des articles via des appels POST et DELETE.
- Synchroniser en arrière-plan pour que les listes de souhaits restent cohérentes entre le web et le mobile.
La considération clé est la gestion hors ligne. Si un client ajoute un article hors ligne, mettez en file d'attente l'appel API localement et synchronisez lorsque la connectivité revient.
Webhooks : Événements de liste de souhaits en temps réel
Alors que l'API REST vous permet de récupérer des données à la demande, les webhooks de liste de souhaits poussent les données vers vos systèmes en temps réel. C'est la meilleure approche lorsque vous avez besoin de réactions instantanées aux événements de liste de souhaits.
Les webhooks sont alimentés par le moteur d'automatisation SaveTo Wishlist Pro, donc cette partie de la boîte à outils est réservée aux versions Pro. Les déclencheurs courants incluent des événements tels que l'ajout d'un article à une liste de souhaits ou la création d'une nouvelle liste de souhaits. Configurez chacun d'eux dans le tableau de bord d'automatisation de la liste de souhaits, choisissez l'action « Appeler un webhook », puis collez l'URL de destination.
Quand utiliser les webhooks par rapport à l'API REST :
- Les webhooks sont idéaux pour les réactions en temps réel : déclencheurs d'e-mails, tableaux de bord en direct, mises à jour instantanées du CRM.
- L'API REST est idéale pour les données à la demande : rapports, exportations en masse, actions initiées par l'utilisateur dans des interfaces utilisateur personnalisées.
La plupart des intégrations de production utilisent les deux. Les webhooks gèrent les événements en temps réel et l'API REST couvre la récupération de données et les opérations par lots.
Gestion des erreurs et meilleures pratiques
Lors de la création d'intégrations de production contre l'API REST WooCommerce Wishlist, quelques habitudes séparent le code fragile du code fiable et sans souci.

- Gérez les erreurs avec élégance. Les réponses d'erreur courantes incluent 401 pour des identifiants invalides, 403 pour des permissions insuffisantes, 404 pour une liste de souhaits ou un article manquant, et 429 en cas de limitation du débit. Intégrez une logique de nouvelle tentative pour les échecs transitoires et affichez des messages clairs pour les échecs permanents.
- Mettez en cache agressivement pour les intégrations à forte lecture. Si votre tableau de bord accède aux données de la liste de souhaits à chaque chargement de page, mettez en cache les réponses pour une durée de vie raisonnable de 5 à 15 minutes. Invalidez ces caches lorsqu'un événement webhook signale que les données ont changé.
- Respectez les limites de débit. WooCommerce n'applique pas de limites de débit strictes par défaut, mais votre environnement d'hébergement pourrait le faire. Sur un hébergement mutualisé, maintenez les requêtes API en dessous d'un seuil raisonnable pour éviter les erreurs 503.
- Utilisez toujours HTTPS en production. Les identifiants de l'API voyagent avec chaque requête. Via HTTP simple, ils sont transmis en texte brut. Il n'y a aucune excuse pour le trafic API non chiffré en production.
- Stockez les identifiants en toute sécurité. Conservez les clés et secrets du consommateur dans des variables d'environnement ou un gestionnaire de secrets. Ne les codez pas en dur dans le code source de votre application et ne les committez pas dans le contrôle de version.
FAQ : API REST WooCommerce Wishlist
L'API REST WooCommerce Wishlist est-elle disponible dans la version gratuite ?
Oui. SaveTo Wishlist Lite, la version gratuite, est fournie avec un accès complet à l'API REST dès le départ. Vous pouvez lire et écrire des données de liste de souhaits par programme sans mise à niveau Pro. SaveTo Wishlist Pro ajoute des couches supplémentaires, telles que des webhooks automatisés, des analyses avancées et des alertes de baisse de prix. Les tarifs pour Pro commencent à 49,50 $ par an pour un seul site.
Puis-je accéder aux données de liste de souhaits des invités via l'API ?
Les listes de souhaits d'invités sont une fonctionnalité de base de SaveTo Wishlist. La manière dont l'API les expose dépend de la gestion de session dans votre version du plugin. En général, les données d'invités sont liées à un jeton de session plutôt qu'à un identifiant client. Consultez les notes du développeur de SaveTo Wishlist pour le modèle d'authentification actuel par jeton de session invité.
Comment puis-je tester les requêtes API pendant le développement ?
Utilisez Postman, Insomnia ou curl pour envoyer des requêtes de test pendant le développement. Configurez un environnement WordPress local ou de staging avec SaveTo Wishlist installé, afin de ne pas tester contre des données de production. L'API REST de WooCommerce prend également en charge un paramètre ?context=edit qui renvoie des champs supplémentaires utiles pour le débogage.
Puis-je utiliser l'API pour déclencher des alertes de baisse de prix par programme ?
L'API REST WooCommerce Wishlist vous donne accès aux données de la liste de souhaits. Mais les déclencheurs d'alerte de baisse de prix sont généralement gérés par le moteur d'automatisation intégré de SaveTo Wishlist, et non directement par l'API. Vous pourriez créer une solution personnalisée : surveiller les changements de prix des produits via l'API WooCommerce Products, recouper avec les données de la liste de souhaits, puis déclencher vos propres notifications. Cela dit, vérifiez si le système d'alerte de baisse de prix intégré couvre déjà votre cas d'utilisation avant de construire à partir de zéro.
Quelle est la différence entre utiliser l'API REST et les webhooks ?
L'API REST est basée sur la demande (pull). Votre application envoie une requête et reçoit des données en retour. Les webhooks sont basés sur la notification (push). SaveTo Wishlist envoie des données à votre application lorsqu'un événement se produit. Utilisez l'API pour les données à la demande, comme la récupération des listes de souhaits d'un client pour affichage ou l'exécution d'un rapport par lots. Utilisez les webhooks pour des réactions en temps réel, comme le déclenchement d'un e-mail ou la mise à jour d'un tableau de bord en direct. La plupart des intégrations de production utilisent les deux.
Commencez à créer avec l'API REST de la liste de souhaits WooCommerce
L'accès programmatique aux données de la liste de souhaits débloque des intégrations qui ne sont pas possibles uniquement via l'interface d'administration d'un plugin. Que vous synchronisiez des données d'intention vers une plateforme d'e-mails, que vous construisiez des analyses personnalisées ou que vous alimentiez un front-end headless, une API REST appropriée fait des données de la liste de souhaits une partie de première classe de la couche de données de votre boutique.
Voici sur quoi se concentrer en premier :
- Pourquoi une API REST est importante pour les intégrations basées sur la liste de souhaits.
- Authentification et prérequis, afin que vous puissiez passer rapidement de la documentation aux appels fonctionnels.
- Opérations CRUD principales pour lire, écrire et supprimer des données de liste de souhaits.
- Schémas d'intégration pratiques pour la synchronisation par e-mail, les tableaux de bord et les applications mobiles.
- Webhooks vs API, et quand utiliser chaque approche.
Prêt à construire ? Consultez la liste complète des fonctionnalités de SaveTo Wishlist, et la page de l'API REST de la liste de souhaits WooCommerce pour les dernières notes sur les points d'accès. SaveTo Wishlist Pro commence à 49,50 $ pour la première année et se renouvelle à 99 $ par an avec une garantie de remboursement de 14 jours.

