Skip to main content

Overview

Webhooks allow you to receive real-time notifications when events occur in your Aktify campaigns. When you register a webhook, Aktify sends HTTP POST requests to your URL whenever specific events happen.

You configure webhooks yourself in the Aktify Portal. When you create a webhook you set a secret that Aktify uses to sign each request, so you can verify that incoming events genuinely came from Aktify. See Setting Up a Webhook for step-by-step instructions.

Supported Events​

v1 Events (Legacy)​

These events are currently live in production.

EventDescription
dnc.createdA phone number was added to the Do Not Contact list
webchat.lead.createdA new lead was captured via WebChat

v2 Events​

EventCategoryDescription
dnc.createdLead LifecycleA phone number was added to the Do Not Contact list
campaign.lead_createdLead LifecycleA new lead was posted to a campaign
lead.message_sentMessagingAn outbound SMS was sent to a lead
lead.message_receivedMessagingAn inbound SMS was received from a lead
lead.message_deliveredMessagingAn outbound SMS was confirmed delivered
lead.conversation_startedMessagingThe first outbound message to a lead was confirmed delivered
lead.carrier_optout_receivedMessagingA lead sent a carrier opt-out keyword (STOP)
lead.carrier_optin_receivedMessagingA lead sent a carrier opt-in keyword (START)
lead.carrier_help_receivedMessagingA lead sent a carrier help keyword (HELP)
lead.call_initiatedVoiceAn outbound call to a lead was initiated
lead.call_receivedVoiceAn inbound call from a lead was received
lead.call_scheduledVoiceA call requested by a lead was scheduled
lead.call_endedVoiceA call with a lead ended
lead.call_transferredVoiceA call was transferred to an agent
lead.call_key_pressedVoiceA lead pressed a key during an IVR call
lead.link_sentLinksAn outbound SMS containing a URL was sent
lead.link_deliveredLinksAn outbound SMS containing a campaign link was confirmed delivered
lead.link_clickedLinksA lead clicked a tracked link

v1 Request Format (Legacy Events)​

When an event occurs, Aktify sends a POST request to your registered webhook URL.

Headers​

aktify-signature: t=1638470400000,v1=5d41402abc4b2a76b9719d911017c592

Body​

{
"apiVersion": "2021-08-23",
"type": "dnc.created",
"data": {
// Event-specific fields
}
}
FieldTypeDescription
apiVersionstringAPI version (currently 2021-08-23)
typestringThe event type
dataobjectEvent-specific payload (see event pages for details)
customDataobject?Optional custom key-value pairs (WebChat only)

v2 Request Format​

Headers​

aktify-signature: t=1706443200000,v2=a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2
Signature Change

v2 events use a v2 signature where the timestamp is included in the HMAC input. See Verifying Requests for details.

Body​

{
"metadata": {
"apiVersion": "2026-02-09",
"eventType": "lead.message_sent",
"campaignId": "abc456xyz",
"eventTime": "2024-01-28T12:00:00.000Z"
},
"data": {
// Event-specific fields
}
}
FieldTypeDescription
metadata.apiVersionstringAPI version (currently 2026-02-09)
metadata.eventTypestringThe event type
metadata.campaignIdstringThe campaign ID associated with this event
metadata.eventTimestringISO 8601 timestamp of when the event occurred
dataobjectEvent-specific payload (see event pages for details)