Ga naar hoofdinhoud

Leads & app-integraties

Je leads hoeven niet alleen binnen het beheerportaal te leven. Wanneer je een app op je site hebt geïnstalleerd — bijvoorbeeld een CRM-koppeling, een e-mailmarketingintegratie of een intern meldingstool — kan SitePack die app automatisch informeren zodra er iets met een lead gebeurt. Zo synchroniseer je nieuwe aanvragen naar een ander systeem, start je een geautomatiseerde opvolging of plaats je een bericht in je team zodra een lead binnenkomt, zonder dat iemand gegevens handmatig hoeft over te typen.

Dit gebeurt via webhooks. De rest van deze pagina legt uit hoe ze werken. Dit is technischer dan de gids Leadbeheer — je hebt er niets van nodig om het onderdeel Leads dagelijks te gebruiken, maar het is handig als jij (of een ontwikkelaar die met je meewerkt) leads aan een andere tool wilt koppelen.

Wat is een webhook?

Een webhook is een automatisch bericht dat SitePack naar een ander systeem stuurt wanneer er een gebeurtenis plaatsvindt. In plaats van dat het andere systeem voortdurend vraagt "zijn er al nieuwe leads?", pingt SitePack het proactief op het moment dat een lead wordt aangemaakt of wijzigt. Het bericht is een standaard HTTP POST-verzoek met een kleine JSON-body, afgeleverd op een webadres (endpoint) dat de app definieert.

Je stelt deze adressen nooit zelf in binnen het onderdeel Leads — een app geeft bij het bouwen en installeren aan naar welke leadgebeurtenissen die wil luisteren. Als site-eigenaar installeer je simpelweg de app, en de relevante leadgebeurtenissen beginnen ernaartoe te stromen.

Webhooks bevatten geen persoonsgegevens

Voor de privacy bevat een lead-webhook alleen de identifier van de lead (uuid) — nooit een naam, e-mailadres of enig ander persoonlijk gegeven. Het is een melding die zegt "deze lead is gewijzigd", geen kopie van de lead. Wanneer een app de daadwerkelijke gegevens nodig heeft, gebruikt die de uuid om de actuele lead via de API op te halen. Zo blijven persoonsgegevens buiten het webhookverkeer en leest de app altijd de meest recente stand in plaats van een verouderde momentopname.

De leadgebeurtenissen

SitePack verstuurt drie leadgerelateerde gebeurtenissen. Een app ontvangt alleen de gebeurtenissen waarop die zich heeft geabonneerd.

GebeurtenisWanneer die wordt verstuurd
lead.createdEr wordt een gloednieuwe lead vastgelegd (een nieuw ingevuld contactformulier, een nieuwsbriefinschrijving of een productaanvraag).
lead.updatedEen bestaande lead wijzigt — de status verandert, de beoordeling wordt overschreven, er wordt een notitie toegevoegd, of een herhaalaanvraag wordt erin samengevoegd.
lead.completedEen lead wordt afgesloten, als Afgerond (deal) of Afgerond (geen deal). Deze wordt verstuurd naast een lead.updated-gebeurtenis voor dezelfde wijziging.
Volgorde van gebeurtenissen bij afsluiten

Het afsluiten van een lead levert twee meldingen op: eerst een lead.updated, daarna een lead.completed. Een integratie die alleen om gewonnen of verloren deals geeft, kan uitsluitend op lead.completed luisteren en de algemene lead.updated-stroom negeren.

Hoe een webhookbericht eruitziet

Elke webhook wordt afgeleverd als een HTTP POST met een kleine JSON-body in de volgende vorm:

{
"uuid": "0192f0c3-1a2b-7c3d-8e4f-5a6b7c8d9e0f",
"test_mode": false,
"topic": "lead.created",
"site": "a1b2c3d4-....-site-uuid",
"created_at": "2026-07-13T10:15:42Z",
"arguments": {
"uuid": "f9e8d7c6-....-lead-uuid"
}
}

De velden op het hoogste niveau beschrijven de aflevering zelf:

  • uuid — een unieke id voor deze individuele webhookaflevering (niet de lead — zie arguments hieronder).
  • test_modetrue wanneer het bericht als test is verstuurd (bijvoorbeeld terwijl een ontwikkelaar de app bouwt), false voor echte, live gebeurtenissen.
  • topic — welke gebeurtenis dit is: lead.created, lead.updated of lead.completed.
  • site — de unieke identifier van de site waartoe de lead behoort.
  • created_at — wanneer de gebeurtenis plaatsvond, in UTC (ISO 8601).
  • arguments — de gebeurtenisgegevens (zie hieronder).

De lead-payload (arguments)

Het arguments-object is bewust minimaal — het bevat alleen de identifier van de lead:

VeldBetekenis
uuidDe unieke identifier van de lead. Gebruik deze om de volledige, actuele lead via de API op te halen en om herhaalde gebeurtenissen over dezelfde lead te herkennen.

Er worden nooit persoonsgegevens (naam, e-mailadres, telefoonnummer, bericht, dealwaarde enzovoort) in de webhook zelf meegestuurd. Om op een gebeurtenis te reageren, neemt de app deze uuid en vraagt de actuele gegevens van de lead op bij de API — zo werkt die altijd met de meest recente stand in plaats van met wat waar was op het moment dat de webhook werd verstuurd.

Hoe de aflevering werkt

  • Alleen naar apps die op de site zijn geïnstalleerd. Een webhook voor een lead wordt verstuurd naar de apps die op de site van die lead zijn geactiveerd, en alleen naar de apps die zich op de betreffende gebeurtenis hebben geabonneerd. Luistert er geen geïnstalleerde app naar leadgebeurtenissen, dan wordt er niets verstuurd.
  • Op de achtergrond verwerkt. Webhooks worden asynchroon verstuurd, zodat het vastleggen of bijwerken van een lead nooit wordt vertraagd of geblokkeerd door een traag of onbereikbaar endpoint. Een bezoeker die je contactformulier verstuurt, wacht nooit op een systeem van een derde partij.
  • Best-effort. Het vastleggen van leads is zo ontworpen dat het nooit mislukt door een integratie — als het informeren van een app problemen geeft, wordt de lead alsnog opgeslagen en is die zichtbaar in je beheerportaal.

Voor ontwikkelaars

Bouw je een app die deze gebeurtenissen verwerkt, dan vind je de volledige technische referentie — hoe je webhookabonnementen declareert in je app-manifest, de eisen aan endpoints en het testen met test_mode — in de ontwikkelaarsdocumentatie:

SitePack App-documentatie

Zie ook Apps ontwikkelen voor hoe apps worden gebouwd en gedistribueerd als SitePack-partner.

Veelgestelde vragen

Moet ik webhooks instellen om leads te gebruiken?

Nee. Webhooks zijn volledig optioneel en alleen relevant als je leads via een app aan een ander systeem wilt koppelen. Het onderdeel Leads werkt volledig op zichzelf — zie Leadbeheer.

Welke leadgebeurtenissen kan een app ontvangen?

Drie: lead.created wanneer een lead wordt vastgelegd, lead.updated wanneer die wijzigt, en lead.completed wanneer die wordt afgesloten als deal of geen deal. Een app ontvangt alleen de gebeurtenissen waarop die zich heeft geabonneerd.

Hoe koppel ik mijn leads aan mijn CRM of mailtool?

Installeer een app die met die tool integreert. Eenmaal geïnstalleerd stuurt SitePack de relevante leadgebeurtenissen er automatisch naartoe. Bestaat er nog geen app voor jouw tool, dan kan een ontwikkelaar er een bouwen met de App-documentatie.

Waarom bevat de webhook niet de naam of het e-mailadres van de lead?

Dat is met opzet. Webhooks bevatten alleen de uuid van de lead, nooit persoonsgegevens — zo blijft gevoelige informatie buiten het webhookverkeer. De app gebruikt de uuid om de actuele leadgegevens bij de API op te halen wanneer die ze daadwerkelijk nodig heeft, wat ook garandeert dat die altijd de meest recente stand ziet.

Vertraagt een trage integratie mijn website?

Nee. Lead-webhooks worden op de achtergrond verstuurd, los van de actie van de bezoeker, zodat het vastleggen van een lead nooit wordt opgehouden door een extern systeem.