SaveTo Wishlist voor WooCommerce

Inzichten & Updates

SaveTo Wishlist Blog

WordPress-handleidingen en bronnen om de verkoop te stimuleren met SaveTo Wishlist

WooCommerce Wishlist REST API: De gids voor ontwikkelaars voor aangepaste integraties

WooCommerce Wishlist REST API: De gids voor ontwikkelaars voor aangepaste integraties

Voor ontwikkelaars die aangepaste WooCommerce-integraties bouwen, is de WooCommerce wishlist REST API vaak het ontbrekende stuk. De meeste wishlist-plugins slaan de API volledig over. Degenen die er een leveren, laten u meestal achter met een paar ongedocumenteerde eindpunten om te raden.

Die kloof is belangrijker dan hij lijkt. Het synchroniseren van wishlist-activiteit met een CRM vereist programmatische toegang. Dat geldt ook voor het bouwen van een aangepast analyse-dashboard, het aansturen van een headless winkelomgeving, of het invoeren van intentiedata in een e-mailplatform.

Deze handleiding beschrijft hoe je werkt met de WooCommerce wishlist REST API die wordt blootgesteld door SaveTo Wishlist. We doorlopen authenticatie, kern CRUD-bewerkingen, praktische integratiepatronen en webhooks. Waar de onderliggende endpoint-paden niet volledig publiekelijk gedocumenteerd zijn, verwijzen we naar de ontwikkelaarsdocumentatie van de plugin.


Waarom een REST API belangrijk is voor WooCommerce Wishlists

Een REST API verandert wishlist-gegevens van een afgesloten plugin-functie in een toegankelijke data-laag. Je gehele tech-stack kan eruit lezen en erin schrijven. Dat verandert wat er downstream mogelijk is.

Zonder API zijn je opties beperkt. Directe databasequeries zijn fragiel, sterk gekoppeld aan het schema van de plugin, en zullen waarschijnlijk breken bij updates. Het scrapen van de frontend is onbetrouwbaar en traag. Geen van beide is een echte oplossing voor productie-integraties.

Met een goede REST API krijg je standaard HTTP-endpoints die gestructureerde gegevens retourneren. Dat opent use cases zoals:

  • CRM- en e-mailplatform-synchronisatie: Push wishlist-gebeurtenissen naar Klaviyo, Drip, Mailchimp, of elk platform dat webhooks of API-aanroepen accepteert.
  • Aangepaste admin-dashboards: Bouw interne rapporten met de meest-gewenste producten, wishlist-conversieratio's en klantintentiepatronen.
  • Mobiele app-integratie: Laat klanten wishlists beheren vanuit native mobiele apps via geauthenticeerde API-aanroepen.
  • Headless winkelomgevingen: Koppel de wishlist-UI los van WordPress en render wishlist-gegevens in een React-, Vue- of Next.js-frontend.
  • Analyse-pipelines: Voer wishlist-gegevens in datawarehouses of BI-tools voor cross-channel analyse.
Pixel-art infographic van een geïntegreerd systeem: centrale WishList API die CRM/e-mail, dashboards, mobiele app-integratie, analysepijplijnen en headless frontends koppelt.
Het is eenvoudig om de gegevens van je winkel te verbinden met mobiele apps en e-mailplatforms wanneer je de WooCommerce wishlist REST API gebruikt (klik om te vergroten).

Kortom, als je iets bouwt dat verder gaat dan de standaard wishlist-ervaring, is een API geen 'nice-to-have'. Het is een vereiste.


Vereisten en Authenticatie

Wat je nodig hebt voordat je begint

Eerst het goede nieuws: programmatische API-toegang is beschikbaar in zowel de gratis als de Pro-versies van SaveTo Wishlist. Je hebt nodig:

  • SaveTo Wishlist geïnstalleerd en geactiveerd (je kunt zowel de Lite- als de Pro-versie van deze wishlist-plugin gebruiken, aangezien de REST API in beide is inbegrepen).
  • WooCommerce geïnstalleerd en geactiveerd, aangezien SaveTo Wishlist de infrastructuur van de WooCommerce REST API uitbreidt.
  • WordPress met 'pretty permalinks' ingeschakeld. Standaard permalinks werken niet voor de REST API.
  • Bekendheid met REST API-concepten: HTTP-methoden, JSON en authenticatieheaders.

Als u nieuw bent met de WooCommerce REST API in het algemeen, is de documentatie van de WooCommerce REST API het juiste startpunt. Het behandelt het authenticatiemodel en de aanroep patronen waarop SaveTo Wishlist is gebouwd.

Authentisatiepatronen

De REST API van SaveTo Wishlist volgt het standaard WooCommerce authenticatiemodel. U authentiseert met WooCommerce API-sleutels, wat een consumentensleutel en consumentengeheim paar is. Genereer ze vanuit uw WordPress-dashboard onder WooCommerce, Instellingen, Geavanceerd, REST API.

Voor HTTPS-verzoeken, die u altijd in productie moet gebruiken, geeft u uw gegevens door als queryparameters of via HTTP Basic Auth:

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

Een opmerking over namespacing. De exacte API-namespace en de basispad van het endpoint kunnen zich bevinden onder wc/v3, een aangepaste namespace zoals saveto/v1, of een ander patroon. Controleer de ontwikkelaarsnotities van SaveTo Wishlist voor de canonieke paden. De voorbeelden in deze handleiding gebruiken placeholder-paden om de concepten te illustreren.

Voor lokale ontwikkeling via HTTP in plaats van HTTPS, valt WooCommerce terug op OAuth 1.0a one-legged authenticatie. De meeste ontwikkelaars vinden het eenvoudiger om een lokaal SSL-certificaat in te stellen en in plaats daarvan Basic Auth te gebruiken. Dat gezegd hebbende, OAuth 1.0a is de gedocumenteerde fallback als u het nodig heeft.

Wat we hebben gezien: ontwikkelaars krijgen vaak 404-fouten op wishlist API-routes en gaan ervan uit dat de endpoints niet werken. In de meeste gevallen is het probleem een van de drie dingen. Pretty permalinks zijn mogelijk niet ingeschakeld. De WooCommerce REST API-sleutels hebben mogelijk niet de juiste lees- of schrijfrechten. Of de API-namespace is anders dan verwacht. Controleer die drie voordat u verder gaat met debuggen.


Core API-bewerkingen: CRUD voor wishlists

De WooCommerce wishlist REST API volgt de standaard REST-conventies. Als u met de WooCommerce orders of producten API hebt gewerkt, zullen de patronen bekend voorkomen. Dat is een bewuste ontwerpkeuze.

Wishlists ophalen (GET)

Het ophalen van gegevens via de WooCommerce wishlist REST API volgt dezelfde structuur als elke standaard WooCommerce REST-resource. Een typisch GET-verzoek om wishlists weer te geven ziet er als volgt uit:

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

Bevestig de exacte endpoint-paden, queryparameter-namen en response-indeling in de ontwikkelaarsnotities van SaveTo Wishlist voordat u live gaat. De onderstaande structuur is conceptueel in plaats van een contract.

{
  "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"
}

Behandel de veldnamen als illustratief. Het echte schema kan op kleine maar belangrijke manieren verschillen, vooral rond variatieafhandeling en gastsessies.

Wishlists maken en bijwerken (POST/PUT)

Om programmatisch items aan een wishlist toe te voegen, zou u doorgaans een POST-verzoek sturen met de productdetails:

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

Het bijwerken van wishlist-metadata, zoals een titel, zichtbaarheid of deelinstellingen, volgt een standaard PUT- of PATCH-patroon:

# Update wishlist title
PUT /wp-json/{namespace}/wishlists/{wishlist_id}
Content-Type: application/json

{
  "title": "Holiday Gift Ideas"
}

Bevestig de exact geaccepteerde velden en of POST of PUT updates afhandelt in de ontwikkelaarsnotities van de plugin. Het wire-formaat volgt hoe dan ook de standaard JSON over HTTP.

Verwijderen van wishlist-items (DELETE)

Het verwijderen van individuele items, of het verwijderen van een volledige wishlist, volgt het standaard REST DELETE-patroon:

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

Controleer of de plugin verwijdering behandelt als onmiddellijk of als een soft-delete met een herstelperiode. Dat detail is belangrijk voor elke UI waarmee klanten een verwijdering ongedaan kunnen maken. In alle gevallen kunt u standaard HTTP-statuscodes verwachten: 200 voor succesvolle bewerkingen, 201 voor het aanmaken van resources, 404 voor ontbrekende resources en 401 of 403 voor authenticatiefouten.


Werken met Wishlist-gegevens: Praktische patronen

Zodra basis CRUD werkt, zijn er een paar patronen die steeds weer opduiken in echte integraties. Ze van tevoren kennen bespaart later opruimwerk.

Wishlisted producten ophalen met productdetails

Wanneer u een verzoek doet met de WooCommerce wishlist REST API, retourneren antwoorden doorgaans product-ID's in plaats van volledige productobjecten. Om productnamen, afbeeldingen en prijzen naast wishlist-gegevens weer te geven, doet u meestal een vervolgverzoek aan de WooCommerce Products API:

// 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 };
}

Voor grotere wishlists of applicaties met veel verkeer, bundelt u de productzoekopdrachten of cachet u de productgegevens lokaal. Dat voorkomt dat u de Products API bij elke paginaload platlegt.

Filteren en paginering

De WooCommerce REST API gebruikt standaard pagineringsparameters (page, per_page) en retourneert pagineringsheaders (X-WP-Total, X-WP-TotalPages). SaveTo Wishlist’s API zou dezelfde conventie moeten volgen:

# Get page 2 of wishlists, 20 per page
GET /wp-json/{namespace}/wishlists?page=2&per_page=20

Voor filterparameters kunt u een vergelijkbaar patroon verwachten als bij de WooCommerce Orders-endpoint. Veelvoorkomende filters omvatten doorgaans datumbereiken, klant-ID's en product-ID's. Raadpleeg de plugin-documentatie voor de exacte queryparameters die in uw versie worden ondersteund.

Queryen op klant of product

Twee van de meest voorkomende querypatronen zijn 'toon me alle wishlists voor deze klant' en 'toon me alle klanten die dit product op hun wishlist hebben'.

De klantquery is eenvoudig als de API een customer_id-filter ondersteunt. De productquery, wat betekent welke klanten product X op hun wishlist hebben, is waardevoller voor merchandisingbeslissingen. Het kan een andere endpoint of aanpak vereisen:

# All wishlists containing a specific product
GET /wp-json/{namespace}/wishlists?product_id=456

Als productgebaseerd queryen niet direct wordt ondersteund, heeft u twee opties. Haal alle wishlists op en filter aan de clientzijde, of maak gebruik van de analysefuncties in SaveTo Wishlist Pro. Het geavanceerde analyse dashboard aggregeert deze weergave al, wat vaak de aangepaste werkzaamheden bespaart.


Aangepaste integraties bouwen: 3 voorbeelden uit de praktijk

De bovenstaande patronen zijn op zichzelf nuttig, maar de werkelijke waarde komt naar voren wanneer u ze aan elkaar koppelt. Hier zijn drie integraties die we vaak zien, en hoe de API elk ervan ondersteunt.

Wishlist-gegevens synchroniseren met een e-mailmarketingplatform

De meest voorkomende integratie is het voeden van verlanglijstgebeurtenissen naar uw e-mailplatform. Dit drijft campagnes aan zoals prijsdaler-meldingen en herinneringen voor verlanglijsten zonder handmatige exports.

De realtime aanpak maakt gebruik van verlanglijst webhooks. Wanneer een klant een item toevoegt, vuurt een webhook naar de API van uw e-mailplatform met de klant- en productgegevens. Van daaruit kunt u segmenten bouwen zoals "klanten die items op de verlanglijst hebben gezet in de afgelopen 7 dagen" of direct automations triggeren.

Als uw e-mailplatform geen inkomende webhooks ondersteunt, werkt polling als een fallback. Een geplande taak, of het nu cron of een externe scheduler is, bevraagt de verlanglijst API met tussenpozen. Het vergelijkt met de laatst bekende status en stuurt vervolgens nieuwe gebeurtenissen naar het e-mailplatform.

Voor een breder overzicht van hoe verlanglijstgegevens passen in een e-mailstrategie, zie onze gids over ecommerce e-mailmarketing en campagnes aangedreven door verlanglijsten.

Een dashboard bouwen met de meest-gewenste producten

Een aangepast dashboard dat de meest-gewenste producten toont, helpt merchandising- en pricingteams scherpere beslissingen te nemen. De conceptuele stroom ziet er als volgt uit:

  1. Vraag de verlanglijst API op voor alle verlanglijsten, of gebruik een product-gebaseerd eindpunt indien beschikbaar.
  2. Aggregeer verlanglijsttellingen per product-ID.
  3. Voeg samen met WooCommerce productgegevens voor namen, categorieën en prijzen.
  4. Toon het resultaat in een aangepaste WordPress admin-pagina, een externe BI-tool, of een eenvoudig HTML-dashboard.
// 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);
}

Dat gezegd hebbende, SaveTo Wishlist Pro bevat al ingebouwde analyses en rapporten voor dit specifieke gebruiksscenario. Als het ingebouwde overzicht voldoende is, slaat u de aangepaste code volledig over.

Synchronisatie van verlanglijsten met mobiele apps

Voor winkels met native mobiele apps gebouwd in React Native, Flutter, of vergelijkbaar, laat de REST API klanten verlanglijsten beheren vanuit de app. Dezelfde geauthenticeerde aanroepen voeren het werk uit:

  1. Authenticeer de gebruiker via de standaard authenticatiestroom van WooCommerce.
  2. Haal de verlanglijsten van de gebruiker op bij het laden van de app.
  3. Laat de gebruiker items toevoegen of verwijderen via POST- en DELETE-aanroepen.
  4. Synchroniseer op de achtergrond zodat verlanglijsten consistent blijven tussen web en mobiel.

De belangrijkste overweging is offline-afhandeling. Als een klant een item toevoegt terwijl deze offline is, wacht dan met de API-aanroep lokaal en synchroniseer wanneer de verbinding terugkeert.


Webhooks: Real-time Verlanglijstgebeurtenissen

Hoewel de REST API u in staat stelt gegevens op aanvraag op te halen, pushen verlanglijst webhooks gegevens in realtime naar uw systemen. Dat is de betere aanpak wanneer u directe reacties op verlanglijstgebeurtenissen nodig heeft.

Webhooks worden aangedreven door de SaveTo Wishlist Pro automatiseringsengine, dus dit deel van de toolkit is alleen voor Pro. Veelvoorkomende triggers zijn gebeurtenissen zoals het toevoegen van een item aan een verlanglijst of het aanmaken van een nieuwe verlanglijst. Configureer elk ervan in het Wishlist Automation dashboard, kies de actie "Call a Webhook" en plak vervolgens de bestemmings-URL.

Wanneer u webhooks versus de REST API moet gebruiken:

  • Webhooks zijn het beste voor realtime reacties: e-mail triggers, live dashboards, directe CRM-updates.
  • De REST API is het beste voor gegevens op aanvraag: rapportage, bulk exports, door de gebruiker geïnitieerde acties in aangepaste UI's.

De meeste productie-integraties gebruiken beide. Webhooks verwerken realtime gebeurtenissen en de REST API dekt gegevens ophalen en batchbewerkingen.


Foutafhandeling en Best Practices

Bij het bouwen van productie-integraties tegen de WooCommerce wishlist REST API, scheiden een paar gewoonten broze code van saaie, betrouwbare code.

Pixel-art infographic die lessen over veilige codering toont: 'Fouten gracieus afhandelen', data vaulting, flow control en HTTPS best practices.
U bouwt betere integraties met de WooCommerce wishlist REST API als u eenvoudige regels volgt, zoals het cachen van gegevens en het afhandelen van fouten (klik om te vergroten).
  • Verwerk fouten gracieus. Veelvoorkomende foutreacties zijn 401 voor ongeldige referenties, 403 voor onvoldoende machtigingen, 404 voor een ontbrekende wishlist of item, en 429 bij het bereiken van de limiet. Bouw opnieuw te proberen logica voor tijdelijke storingen en geef duidelijke berichten weer voor permanente.
  • Cache agressief voor leesintensieve integraties. Als uw dashboard bij elke paginalading wishlistgegevens raakt, cache reacties voor een redelijke TTL van 5 tot 15 minuten. Maak die caches ongeldig wanneer een webhook-gebeurtenis aangeeft dat gegevens zijn gewijzigd.
  • Respecteer limieten. WooCommerce handhaaft standaard geen strikte limieten, maar uw hostingomgeving kan dat wel. Op gedeelde hosting, houd API-verzoeken onder een redelijke drempel om 503-fouten te voorkomen.
  • Gebruik altijd HTTPS in productie. API-referenties reizen mee met elk verzoek. Via platte HTTP worden ze in platte tekst verzonden. Er is geen excuus voor onversleuteld API-verkeer in productie.
  • Bewaar referenties veilig. Bewaar consumentensleutels en geheimen in omgevingsvariabelen of een geheimenbeheerder. Hardcode ze niet in uw applicatiebroncode en commit ze niet naar versiebeheer.

Veelgestelde vragen: WooCommerce Wishlist REST API

Is de WooCommerce wishlist REST API beschikbaar in de gratis versie?

Ja. SaveTo Wishlist Lite, de gratis versie, wordt direct geleverd met volledige REST API-toegang. U kunt wishlistgegevens programmatisch lezen en schrijven zonder een Pro-upgrade. SaveTo Wishlist Pro voegt lagen toe, zoals geautomatiseerde webhooks, geavanceerde analyses en prijsdalerwaarschuwingen. Prijzen voor Pro beginnen bij $49,50 per jaar voor één site.

Kan ik gast wishlist-gegevens via de API benaderen?

Gast-wishlists zijn een kernfunctie van SaveTo Wishlist. Hoe de API ze blootstelt, hangt af van de sessiebehandeling in uw versie van de plugin. Over het algemeen zijn gastgegevens gekoppeld aan een sessietoken in plaats van een klant-ID. Raadpleeg de ontwikkelaarsnotities van SaveTo Wishlist voor het huidige gast-sessie-authenticatiepatroon.

Hoe test ik API-verzoeken tijdens de ontwikkeling?

Gebruik Postman, Insomnia of curl om testverzoeken te verzenden tijdens de ontwikkeling. Stel een lokale of staging WordPress-omgeving in met SaveTo Wishlist geïnstalleerd, zodat u niet tegen productiegegevens test. De REST API van WooCommerce ondersteunt ook een ?context=edit parameter die extra velden retourneert die nuttig zijn voor debugging.

Kan ik de API gebruiken om prijsdalerwaarschuwingen programmatisch te activeren?

De WooCommerce-verlanglijst REST API geeft je toegang tot gegevens van de verlanglijst. Maar prijsdalerwaarschuwing-triggers worden doorgaans afgehandeld door de ingebouwde automatiseringsengine van SaveTo Wishlist, niet direct door de API. Je zou een aangepaste oplossing kunnen bouwen: bewaak productprijsveranderingen via de WooCommerce Products API, kruisverwijs met gegevens van de verlanglijst en activeer vervolgens je eigen meldingen. Dat gezegd hebbende, controleer of het ingebouwde prijsdalerwaarschuwingssysteem al in je use case voorziet voordat je vanaf nul begint.

Wat is het verschil tussen het gebruik van de REST API en webhooks?

De REST API is pull-gebaseerd. Uw applicatie stuurt een verzoek en krijgt gegevens terug. Webhooks zijn push-gebaseerd. SaveTo Wishlist stuurt gegevens naar uw applicatie wanneer er een gebeurtenis plaatsvindt. Gebruik de API voor gegevens op aanvraag, zoals het ophalen van de wishlists van een klant voor weergave of het uitvoeren van een batchrapport. Gebruik webhooks voor realtime reacties, zoals het activeren van een e-mail of het bijwerken van een live dashboard. De meeste productie-integraties gebruiken beide.


Beginnen met de WooCommerce wishlist REST API

Programmatische toegang tot gegevens van de verlanglijst ontgrendelt integraties die niet alleen mogelijk zijn via de admin UI van een plugin. Of je nu intentiegegevens synchroniseert met een e-mailplatform, aangepaste analyses bouwt of een headless winkel aanstuurt, een goede REST API maakt van de gegevens van de verlanglijst een eersteklas onderdeel van de datalaag van je winkel.

Hier is waar je je eerst op moet richten:

Klaar om te bouwen? Bekijk de volledige functielijst voor SaveTo Wishlist, en de WooCommerce wishlist REST API-pagina voor de nieuwste endpointnotities. SaveTo Wishlist Pro begint bij €49,50 voor het eerste jaar en wordt verlengd voor €99 per jaar met een 14-dagen niet-goed-geld-teruggarantie.

Download de Beste WooCommerce Wishlist Plugin

Creëer wishlist-functionaliteit en laat uw winkel snel en eenvoudig groeien.
Download SaveTo Wishlist Nu

Artikel delen

Voltooi Uw Aankoop