Naar de inhoud

Gebeurtenissen

De vijf gebeurtenissen en de data die bij elke gebeurtenis meekomt.

Per webhook-adres kies je welke gebeurtenissen je wilt ontvangen. Hieronder staat per gebeurtenis wanneer hij afgaat en welke gegevens er in data meekomen.

GebeurtenisOp het schermGaat af als
lead.createdNieuwe leadEr komt een prospect met een LinkedIn-profiel bij.
conversation.new_messageNieuw berichtEen prospect stuurt je een bericht op LinkedIn.
conversation.reply_sentAntwoord verstuurdEr gaat een antwoord uit, door jou, de AI of de API.
conversation.label_changedLabel gewijzigdEen gesprek krijgt een ander label.
meeting.bookedAfspraak geboektEen gesprek is op Afspraak gezet.

Goed om te weten

Op het scherm staat ook Lead-status gewijzigd (lead.status_changed) met de tekst Volgt nog. Die is nog niet te kiezen, want LeadForge verstuurt hem nog niet.

Omhulsel

Elke aflevering is een POST met een JSON-body in dezelfde vorm:

JSON
{
	"id": "<aflever-id>",
	"event": "lead.created",
	"createdAt": "2026-11-09T10:15:00.000Z",
	"data": { ... }
}

Velden

NaamTypeBeschrijving
idtekst (uuid)Het id van deze aflevering. Hetzelfde id staat in de header X-LeadForge-Delivery.
eventtekstDe naam van de gebeurtenis. Dezelfde naam staat in de header X-LeadForge-Event.
createdAtdatum (ISO)Wanneer de aflevering is gemaakt.
dataobjectDe gegevens van de gebeurtenis. Zie hieronder.

De headers en de handtekening staan in Handtekening controleren. Bij een testaflevering heeft data ook test: true; zie Testaflevering.

lead.created

Gaat af als er een nieuwe lead met een LinkedIn-profiel bij komt: geplakt op Prospects of vastgelegd door het userscript. Een profiel dat al als lead bestond, geeft geen nieuwe gebeurtenis.

Velden

NaamTypeBeschrijving
leadIdtekst (uuid)Het id van de lead. Haal de hele lead op met GET /api/v1/leads/{id}.
firstNametekst of nullVoornaam.
lastNametekst of nullAchternaam.
companytekst of nullBedrijf. Altijd null bij een profiel dat op Prospects is geplakt.
titletekst of nullFunctie. Altijd null bij een profiel dat op Prospects is geplakt.
linkedIntekstAdres van het LinkedIn-profiel.
sourcetekstWaar de lead vandaan komt: linkedin_url_geplakt (Prospects) of linkedin_engagement_userscript (het userscript).
JSON Voorbeeld
{
	"id": "<aflever-id>",
	"event": "lead.created",
	"createdAt": "2026-11-09T10:15:00.000Z",
	"data": {
		"leadId": "<lead-id>",
		"firstName": "Sam",
		"lastName": null,
		"company": null,
		"title": "CEO",
		"linkedIn": "https://www.linkedin.com/in/sam",
		"source": "linkedin_engagement_userscript"
	}
}

conversation.new_message

Gaat af als LeadForge bij het lezen van je LinkedIn-inbox in een gesprek een nieuw bericht van de prospect vindt en het laatste bericht van de prospect komt. Per gesprek gaat er één aflevering uit, ook als er meer berichten tegelijk binnenkomen.

Velden

NaamTypeBeschrijving
conversationIdtekst (uuid)Het id van het gesprek. Haal het hele gesprek op met GET /api/v1/conversations/{id}.
profileUrltekstAdres van het LinkedIn-profiel van de prospect.
nametekst of nullNaam van de prospect.
leadIdtekst (uuid) of nullDe lead bij dit gesprek, als die er is.
messagetekst of nullHet begin van het laatste bericht, hoogstens 300 tekens.
newMessagesgeheel getalHoeveel nieuwe berichten LeadForge deze keer in het gesprek vond, van beide kanten samen.
JSON Voorbeeld
{
	"id": "<aflever-id>",
	"event": "conversation.new_message",
	"createdAt": "2026-11-09T10:15:00.000Z",
	"data": {
		"conversationId": "<gesprek-id>",
		"profileUrl": "https://www.linkedin.com/in/voorbeeld",
		"name": "Anna Jansen",
		"leadId": "<lead-id>",
		"message": "Klinkt goed, kun je volgende week bellen?",
		"newMessages": 1
	}
}

conversation.reply_sent

Gaat af als er een antwoord in een LinkedIn-gesprek klaargezet wordt: door jou in de Inbox, door de AI of via de API.

Let op

De gebeurtenis gaat af zodra het antwoord in de wachtrij staat. LeadForge verstuurt het daarna via LinkedIn. Een aflevering betekent dus niet dat de prospect het bericht al heeft.

Velden

NaamTypeBeschrijving
conversationIdtekst (uuid)Het id van het gesprek.
jobIdtekst (uuid)Het id van de verzendtaak, hetzelfde als jobId in het antwoord van de API.
messagetekstDe tekst van het antwoord.
viatekstapp (door iemand in LeadForge), ai (door de AI) of api (via de REST API).
JSON Voorbeeld
{
	"id": "<aflever-id>",
	"event": "conversation.reply_sent",
	"createdAt": "2026-11-09T10:15:00.000Z",
	"data": {
		"conversationId": "<gesprek-id>",
		"jobId": "<taak-id>",
		"message": "Dank je, ik bel je dinsdag om 10 uur.",
		"via": "api"
	}
}

conversation.label_changed

Gaat af als een LinkedIn-gesprek in de Inbox een ander label krijgt. Kies je opnieuw hetzelfde label, dan gaat er niets uit.

Velden

NaamTypeBeschrijving
conversationIdtekst (uuid)Het id van het gesprek.
fromtekstHet vorige label. Een gesprek zonder label telt als new.
totekstHet nieuwe label.
leadIdtekst (uuid) of nullDe lead bij dit gesprek, als die er is.
nametekst of nullNaam van de prospect.

De labels zijn new, interested, meeting, not_now, not_interested en done. Wat ze betekenen staat bij Labelwaarden.

JSON Voorbeeld
{
	"id": "<aflever-id>",
	"event": "conversation.label_changed",
	"createdAt": "2026-11-09T10:15:00.000Z",
	"data": {
		"conversationId": "<gesprek-id>",
		"from": "interested",
		"to": "meeting",
		"leadId": "<lead-id>",
		"name": "Anna Jansen"
	}
}

meeting.booked

Gaat af als een gesprek het label meeting (Afspraak) krijgt. Volgt je adres ook conversation.label_changed, dan krijg je bij die wijziging beide gebeurtenissen. Staat het gesprek al op Afspraak en kies je dat label opnieuw, dan gaat er niets uit.

Velden

NaamTypeBeschrijving
conversationIdtekst (uuid)Het id van het gesprek.
leadIdtekst (uuid) of nullDe lead bij dit gesprek, als die er is.
nametekst of nullNaam van de prospect.
profileUrltekstAdres van het LinkedIn-profiel van de prospect.
JSON Voorbeeld
{
	"id": "<aflever-id>",
	"event": "meeting.booked",
	"createdAt": "2026-11-09T10:15:00.000Z",
	"data": {
		"conversationId": "<gesprek-id>",
		"leadId": "<lead-id>",
		"name": "Anna Jansen",
		"profileUrl": "https://www.linkedin.com/in/voorbeeld"
	}
}

Verder lezen