Skip to content
WeZend

Kärn-API:er

Webhooks

Så fungerar leveranswebhooks per meddelande i praktiken: webhook_url-fältet, de riktiga headers och det riktiga omförsöksschemat.

WeZends webhook-modell är per meddelande, inte en global händelseprenumeration. Det finns ingen vy i dashboarden där du registrerar "meddela mig om varje framtida leverans" — i stället skickar du med webhook_url direkt i sändningsanropet (eller per meddelande inuti en bulk-request), och statusuppdateringar för det meddelandet POST:as dit allteftersom de sker.

{
  "to": "+4512345678",
  "channel": "sms",
  "message": "Din order har skickats.",
  "webhook_url": "https://dinapp.se/hooks/wezend"
}

Payload och headers

Varje leverans innehåller:

  • X-ZafeConnect-Event — händelsens namn
  • X-ZafeConnect-Timestamp — Unix ms-tidsstämpel som används i signaturen
  • X-ZafeConnect-Signature — HMAC-SHA256 av ${timestamp}.${JSON.stringify(payload)}, med webhook-signeringshemligheten från Inställningar → Webhook-hemlighet

Dessa headers bär för närvarande plattformens ursprungliga namn "ZafeConnect" i stället för "WeZend" — en varumärkesdetalj i backend som ännu inte döpts om, inget du behöver kringgå. Verifiera signaturen på samma sätt oavsett header-prefix.

Verifiera signaturen

const crypto = require("crypto");

function verify(rawBody, timestamp, signature, secret) {
  const expected = crypto
    .createHmac("sha256", secret)
    .update(`${timestamp}.${rawBody}`)
    .digest("hex");
  return crypto.timingSafeEqual(Buffer.from(expected), Buffer.from(signature));
}

Omförsök

Om din endpoint inte svarar 2xx görs 3 nya leveransförsök — efter 30 sekunder, 5 minuter och slutligen 30 minuter — och omförsöken överlever en omstart eller driftsättning (de är beständiga och lagras i databasen, inte i en kö i minnet). Svara snabbt och behandla asynkront i stället för att göra långsamt arbete i själva request-hanteraren.

Inkommande leveranskvitton från leverantörer

Endpointerna /v1/webhooks/messente, /v1/webhooks/twilio, /v1/webhooks/vonage och /v1/webhooks/whatsapp är hur uppströms operatörer rapporterar leverans tillbaka till plattformen — de är plattformsinterna och inget du konfigurerar; de finns för att WeZend själv ska kunna fylla i de statusar du ser via webhook_url och meddelandehistorik-API:et.

En plattform. Varje kundinteraktion.

Ersätt ditt lapptäcke av meddelande-API:er, CDP och automationsverktyg med en engagemangsplattform byggd för skala.

Inget kreditkort · EU-datalagring · 99,99 % drifttids-SLA