Mens vores offentlige REST API lader dig hente data, når det passer dig, er Webhooks designet til at sende notifikationer, når bestemte begivenheder sker i Herodesk.
Eksempler på sådanne begivenheder er, når en ny samtale oprettes, når den opdateres, eller når en ny besked enten sendes fra eller modtages af Herodesk.
Ved at opsætte Webhooks kan du bygge brugerdefinerede integrationer, der reagerer, når noget sker inde i Herodesk.
Dette er et godt alternativ til at oprette en cronjob, der trækker API'en for ændringer med et givent interval.
Opsætning af Webhooks
For at opsætte en ny Webhook, gå til din Herodesk -> Indstillinger -> API & Webhooks og vælg knappen "Tilføj Webhook".
Du vil nu se denne skærm:

Navn: Et internt navn, du giver denne webhook, så du kan genkende den i fremtiden.
Aktiv: Kun aktive webhooks vil sende.
URL: Den URL-adresse, som vi sender webhooks til. Dette bør være et endpoint, du definerer og opsætter til at modtage webhooks.
Hemmelighed: Alle webhooks er signeret med en hemmelighed. Dette lader dig validere ægtheden af webhooken og bekræfte, at den faktisk er sendt fra Herodesk.
Begivenhedsabonnementer: Vælg alle de begivenheder, du ønsker at sende til dette endpoint.
Headers & Signatur
Hver webhook sendes med følgende headers:
- X-Herodesk-Event: Den begivenhed, der udløste denne webhook.
- X-Herodesk-Signature: Signaturen, du kan bruge til at verificere dens ægthed.
Signaturen er en unik signatur, der lader dig verificere dens ægthed.
Signaturen kan læses fra X-Herodesk-Signature headeren og er formateret således:
$signature = hash_hmac('sha256', $payload, $secret)
Med $payload som de data, vi sender, og $secret som din hemmelighed.
Payload
Hver webhook sender en JSON Payload i sin krop. Payloaden varierer afhængigt af, hvilken type webhook-begivenhed der sendes.
Payloaden vil dog altid inkludere id'et på det berørte objekt + anden metadata.
Mens nogle webhook-systemer kun sender id'et og kræver, at du laver et API-opslag for at hente relevante data, sender vi hele objektet i webhook-payloaden, så det er klar til, at du kan arbejde med det med det samme.
Filtrering af webhooks
Herodesk vil sende en webhook til hvert af dine endpoints, der abonnerer på de relevante begivenheder.
Dette vil ske hver gang begivenheden opstår i Herodesk. Du kan ikke filtrere disse fra Herodesk.
Hvis du kun ønsker at håndtere nogle begivenheder, fx kun ændringer til samtaler med specifikke tags, skal du foretage denne filtrering på dit endpoint og kassere de webhooks, der ikke matcher dine ønsker.
Begrænsninger
Webhooks er ikke tilgængelige for Herodesk Free & Herodesk Basic.
Herodesk Plus-kunder kan oprette ubegrænsede webhooks.
Fejlede begivenheder & genforsøg
Hvis vi af en eller anden grund ikke kan levere webhooken til dit angivne endpoint, vil den seneste fejlmeddelelse blive gemt og være tilgængelig i Webhook-indstillingerne.
Vi vil forsøge at levere hver webhook op til fire gange:
- Med det samme
- Efter 1 minuts forsinkelse
- Efter 5 minutters forsinkelse
- Efter 25 minutters forsinkelse
Hvis alle fire leveringsforsøg fejler, vil webhooken blive fjernet.
Vi garanterer ikke levering af webhooks.