Webhooks

Abonniere Ereignisse mit POST /v1/webhook-subscriptions. SmartChat schickt dann zu jedem Ereignis einen signierten POST an deine Adresse. Jede 2xx-Antwort bestätigt die Zustellung.

Die technische Referenz unten ist auf Englisch, genau so, wie Namen und Felder in der API und in Claude erscheinen.

curl -X POST https://api.smartchat.marketing/v1/webhook-subscriptions \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com/hook", "events": ["contact.created"]}'

contact.created

A contact was created

FeldTypPflichtBeschreibung
idstringneinUnique event id, e.g. "message.received:<uuid>". Equals X-SmartChat-Delivery.
eventstring ("contact.created", "message.received", "conversation.created")nein
created_atstringnein
format date-time
dataobjectnein
data.idstringnein
format uuid
data.namestringnein
data.emailstringneinEmpty string "" if none.
data.phonestringneinE.164; empty string "" if none.
data.optin_whatsappstring ("none", "pending", "confirmed", "opted_out")nein
data.optin_emailstring ("none", "pending", "confirmed", "opted_out")nein
data.tagsarray of stringnein
data.languagestringnein
data.sourcestringnein
data.created_atstringneinThere is no updated_at on contacts.
format date-time

message.received

An inbound message was received

FeldTypPflichtBeschreibung
idstringneinUnique event id, e.g. "message.received:<uuid>". Equals X-SmartChat-Delivery.
eventstring ("contact.created", "message.received", "conversation.created")nein
created_atstringnein
format date-time
dataobjectneinItem of GET /messages; also the data of the message.received webhook event.
data.idstringnein
format uuid
data.conversation_idstringnein
format uuid
data.contact_idstringnein
format uuid
data.channelstringneinwhatsapp, email, ...
data.directionstring ("inbound", "outbound")nein
data.typestringneintext, or a media type: image, video, audio, document, sticker, ...
data.textstringnein
data.media_urlstringnein
data.media_mimestringnein
data.created_atstringnein
format date-time

conversation.created

A conversation was created

FeldTypPflichtBeschreibung
idstringneinUnique event id, e.g. "message.received:<uuid>". Equals X-SmartChat-Delivery.
eventstring ("contact.created", "message.received", "conversation.created")nein
created_atstringnein
format date-time
dataobjectnein
data.idstringnein
format uuid
data.contact_idstringnein
format uuid
data.channelstringnein
data.created_atstringnein
format date-time

Fragen?

Schreib uns an support@smartchat.marketing