Webhooks

Webhooks stellen je in staat real-time meldingen te ontvangen over je links — zowel wanneer ze worden aangeklikt als wanneer ze worden aangemaakt, bijgewerkt of verwijderd. Linkly stuurt een POST-aanvraag naar je opgegeven URL('s) met gedetailleerde informatie over elke gebeurtenis.

Gebruiksgevallen

  • Automatiseringsplatforms: Trigger workflows in Make of Zapier wanneer links worden aangeklikt
  • Aangepaste Analytics: Stuur klikgegevens naar je eigen analyticssysteem
  • CRM-updates: Werk klantrecords bij wanneer ze links aanklikken
  • Slack-meldingen: Ontvang meldingen in Slack wanneer belangrijke links worden aangeklikt
  • Lead Tracking: Track wanneer prospects interactie hebben met je links

Tip: Voor de meeste automatiseringsusecases zijn onze Make-integratie of Zapier-integratie gemakkelijker in te stellen dan aangepaste webhooks. Ze bevatten instant click-triggers powered by webhooks, zonder code nodig.

Hoe je webhooks op linkniveau instelt

1
2

Scroll naar beneden naar de Webhooks-sectie.

3

Voer je webhook-URL('s) in, één per regel.

Je kunt meerdere webhook-URL's toevoegen. Alle URL's ontvangen dezelfde payload wanneer de link wordt aangeklikt.

Voer je webhook-URL('s) in, één per regel.
Voer je webhook-URL('s) in, één per regel.
4

Webhooks op linkniveau worden alleen geactiveerd wanneer die specifieke link wordt aangeklikt.

Hoe je webhooks op werkruimteniveau instelt

1

Ga naar Instellingen (tandwiel pictogram in de zijbalk).

2

Klik Werkruimte-instellingen

3

Voer je webhook-URL('s) in, één per regel.

Je kunt meerdere webhook-URL's toevoegen. Alle URL's ontvangen dezelfde payload wanneer een link in je werkruimte wordt aangeklikt.

Voer je webhook-URL('s) in, één per regel.
Voer je webhook-URL('s) in, één per regel.
4

Klik Instellingen opslaan.

Webhooks op werkruimteniveau worden geactiveerd voor elke klik op een willekeurige link in je werkruimte.

Opmerking: Als je webhooks op beide niveaus configureert, zullen beide worden geactiveerd voor kliks op die link.

Gebeurtenissen

Elke webhook ontvangt alle gebeurtenistypen voor zijn bereik — een webhook op linkniveau ontvangt gebeurtenissen voor die link, een webhook op werkruimteniveau ontvangt gebeurtenissen voor elke link in de werkruimte. Controleer het event-veld op het hoogste niveau om ze uit elkaar te houden:

eventVerzonden wanneer
clickEr wordt op een verkorte link geklikt. Bevat een click-object met de gegevens van het verzoek van de bezoeker.
link.createdEen nieuwe link wordt aangemaakt in de werkruimte.
link.updatedDe instellingen van een link veranderen. Wordt geactiveerd bij elke update, inclusief automatisch opgeslagen bewerkingen, dus je kunt er meerdere per bewerkingssessie ontvangen.
link.deletedEen link wordt verwijderd. Het link-object behoudt de slug en het domein dat het had vóór verwijdering.

Webhook-payload

Click-payload

Wanneer een klik plaatsvindt, stuurt Linkly een POST-aanvraag met de volgende JSON-payload:

{
  "event": "click",
  "timestamp": "2025-01-15T10:30:00Z",
  "link": {
    "id": 12345,
    "name": "My Campaign Link",
    "url": "https://example.com/landing-page",
    "full_url": "https://yourdomain.com/abc123",
    "domain": "yourdomain.com",
    "slug": "/abc123",
    "destination": "https://example.com/landing-page",
    "workspace_id": 1,
    "enabled": true,
    "cloaking": false,
    "forward_params": true,
    "block_bots": true,
    "public_analytics": false,
    "utm_source": "newsletter",
    "utm_medium": "email",
    "utm_campaign": "spring-sale",
    "og_title": "Special Offer",
    "og_description": "Check out our spring sale!",
    "rules": [
      {
        "what": "country",
        "matches": "US",
        "url": "https://example.com/us-landing"
      }
    ]
  },
  "click": {
    "id": "01KYPGEEPJSPR3S564QRBDGA1W",
    "country": "US",
    "is_eu_country": false,
    "platform": "desktop",
    "browser_name": "Chrome",
    "referer": "https://twitter.com/",
    "isp": "Comcast",
    "bot_name": null,
    "destination": "https://example.com/landing-page",
    "params": {
      "utm_source": "twitter"
    }
  }
}

Payload-velden

Gebeurtenisinformatie

VeldBeschrijving
eventclick, link.created, link.updated, of link.deleted
timestampISO 8601 timestamp van de klik
VeldBeschrijving
idUnieke linkidentificator
nameLinknaam
urlOriginele bestemmings-URL
full_urlDe verkorte link-URL
domainAangepast domein (indien geconfigureerd)
slugURL-pad/slug
destinationWerkelijke bestemming voor deze klik (kan verschillen van url als regels van toepassing zijn)
workspace_idWerkruimte-identificator
enabledOf de link actief is
rulesArray met omleidingsregels (geo, device, rotator)
utm_*UTM-parameters indien geconfigureerd
og_*Open Graph-instellingen indien geconfigureerd

Click-object

VeldBeschrijving
idUnieke identificator voor deze klik, een 26-tekenige ULID. De voorloopkarakters coderen de kliktime, dus ID's sorteren chronologisch als normale strings
countryLandcode van twee letters (bijv. "US", "GB")
is_eu_countryOf de klik afkomstig is uit de EU
platformApparaatplatform (desktop, ios, android, enz.)
browser_nameBrowsernaam (Chrome, Safari, Firefox, enz.)
refererVerwijzende URL (indien beschikbaar)
ispInternet Service Provider
bot_nameBot-identificator (null voor menselijke kliks)
destinationUiteindelijke bestemmings-URL voor deze klik
paramsQuery-parameters doorgegeven aan de link

Privacyopmerking: IP-adressen zijn nooit opgenomen in webhook-payloads.

De link.created, link.updated en link.deleted-gebeurtenissen hebben dezelfde vorm. Er is geen click-object — je krijgt de event, een timestamp en de volledige link:

{
  "event": "link.created",
  "timestamp": "2026-06-20T10:30:00Z",
  "link": {
    "id": 12345,
    "name": "My Campaign Link",
    "url": "https://example.com/landing-page",
    "full_url": "https://yourdomain.com/abc123",
    "domain": "yourdomain.com",
    "slug": "/abc123",
    "workspace_id": 1,
    "enabled": true,
    "rules": []
  }
}

Integraties met automatiseringsplatforms

Voor gemakkelijkere instelling zonder aangepast coderen, gebruik je onze native integraties:

Beide integraties gebruiken webhooks onder de motorkap, maar behandelen alle configuratie automatisch.

Best practices

Meerdere webhooks

Je kunt meerdere webhook-URL's toevoegen (één per regel). Alle URL's ontvangen dezelfde payload wanneer een klik plaatsvindt.

Foutafhandeling

  • Webhooks zijn fire-and-forget - Linkly probeert mislukte afleveringen niet opnieuw
  • Webhookfouten hebben nooit invloed op de omleiding - gebruikers bereiken altijd hun bestemming
  • Zorg ervoor dat je webhook-endpoint snel reageert (< 5 seconden aanbevolen)

Beveiliging

  • Gebruik HTTPS-eindpunten voor webhook-URL's
  • Valideer inkomende aanvragen in je webhook-handler
  • Overweeg een geheim parameter toe te voegen aan je webhook-URL voor verificatie

Testen

  1. 1
    Stel een webhook-URL in met behulp van een service zoals webhook.site of RequestBin
  2. 2
    Klik op je link
  3. 3
    Inspecteer de ontvangen payload
  4. 4
    Schakel over naar je productie webhook-URL zodra dit is geverifieerd

API-toegang

Je kunt webhooks ook programmatisch beheren via de API:

POST   /api/v1/link/:link_id/webhooks
DELETE /api/v1/link/:link_id/webhooks/:hook_id
GET    /api/v1/link/:link_id/webhooks

POST   /api/v1/workspace/:workspace_id/webhooks
DELETE /api/v1/workspace/:workspace_id/webhooks/:hook_id
GET    /api/v1/workspace/:workspace_id/webhooks

Zie de API-documentatie voor details.

Webhooks veelgestelde vragen

Welke gebeurtenissen kunnen webhooks verzenden?

Webhooks worden geactiveerd op vier gebeurtenissen, geïdentificeerd door het event-veld in de payload. Je krijgt click wanneer een link wordt aangeklikt, plus link.created, link.updated en link.deleted wanneer links veranderen. Elke webhook ontvangt alle gebeurtenistypen voor zijn bereik, dus vertakt op het event-veld om elk event af te handelen.

Waarom worden mijn webhooks niet geactiveerd?

Controleer of je webhook-URL geldig en toegankelijk is, en of webhooks op de link of werkruimte zijn opgeslagen. Voor click-gebeurtenissen, merk op dat webhooks alleen worden geactiveerd wanneer een klik werkelijk wordt opgenomen - uitgesloten IP's of overgeslagen crawlers activeren ze niet.

Waarom zijn sommige velden null in de webhook-payload?

Sommige velden kunnen null zijn als de informatie niet beschikbaar was (bijv. geen referer), privacyinstellingen hebben de verzameling verhinderd, of de klik afkomstig was van een bot (in welk geval bot_name zal worden ingevuld).

Probeert Linkly mislukte webhook-afleveringen opnieuw?

Nee. Webhooks zijn fire-and-forget. Mislukte afleveringen worden niet opnieuw geprobeerd, en Linkly houdt geen track van de webhook-afleveringsstatus. Webhook-aanvragen krijgen na 5 seconden time-out.

Ondersteunt Linkly postbacks voor conversietracking?

Nee. Linkly-webhooks zijn alleen uitgaand en worden geactiveerd wanneer kliks plaatsvinden. We kunnen geen postback-gegevens van affiliate-netwerken of advertentieplatforms ontvangen. Voor conversietracking, gebruik je het native tracking van het doelplatform, geef je een klik-ID door via query-parameterforward, of gebruik je onze BigQuery-integratie om klikgegevens met je conversiegegevens samen te voegen.

Moet ik webhooks of Make/Zapier gebruiken?

Voor de meeste automatiseringsusecases zijn onze Make- of Zapier-integraties gemakkelijker in te stellen. Ze gebruiken webhooks onder de motorkap, maar behandelen alle configuratie automatisch. Gebruik aangepaste webhooks wanneer je gegevens naar je eigen systemen moet sturen of meer controle over de integratie nodig hebt.

Ja. Als je webhooks op beide niveaus configureert, worden beide geactiveerd wanneer die link wordt aangeklikt. Dit is handig als je workspace-wide logging plus specifieke acties voor bepaalde links wilt.

Beschikbaarheid per plan

Beschikbaar vanaf Business

Plannen vergelijken →

Track 500 maandelijkse klikken gratis.