Skip to content

Webhooks & Enrichment

🔍 Data Enrichment

Automatically fill in extra contact info and data for your client records.

✨ Enrichment Features

FeatureDescription
Phone AppendFind extra phone numbers for a client
Email AppendDiscover email addresses
Address AppendFind or verify addresses using reverse phone/email lookup
DemographicsAdd demographic info

⚡ Enrichment Triggers

Choose when enrichment happens:

TriggerDescription
On CallEnrich when making a call
On SMSEnrich when sending a text
On ImportEnrich when importing records
ManualEnrich whenever you want

🛠️ Setting Up Enrichment

  1. Go to Settings → Integrations
  2. Select Data Enrichment
  3. Set up your enrichment provider
  4. Pick your automatic triggers
  5. Choose which data to add

📊 Enrichment History

See all enrichment attempts:

FieldDescription
DateWhen it happened
TypeWhat data was looked up
StatusDid it work or not
Data FoundWhat info was discovered
CostCredits or money used

🔔 Webhook Integrations

Send data to other systems whenever something happens in Kayse AI.

🤔 What Are Webhooks?

Webhooks are like automatic messages sent to other websites when things happen. They let you:

  • Get notified about events in real time
  • Build custom automations
  • Connect with any system that can receive webhooks

🛠️ Setting Up Webhooks

  1. Go to Settings → Webhooks
  2. Click Add Webhook
  3. Enter the destination URL (where to send the data)
  4. Pick which events should trigger the webhook
  5. (Optional) Filter by campaigns — only available for call events
  6. Set up security (optional)
  7. Save and test it

Note: Campaign filters only work with call events (call_started, call_ended, call_analyzed, transcript_updated, transfer_started, transfer_bridged, transfer_cancelled, transfer_ended). Message, task, form, and document events are always sent across all campaigns.

📋 Available Events

CategoryEvents
Callscall_started, call_ended, call_analyzed, transcript_updated, transfer_started, transfer_bridged, transfer_cancelled, transfer_ended
Messagesmessage_sent, message_delivered
Taskstask_completed
Formsform_submitted
Documentsdocument_uploaded

📞 Live Call Transfer Coverage

Your AI voice agents automatically send all four transfer events — you don't have to set anything up. ✨

EventWhat It Means
transfer_startedThe AI started to transfer the call (e.g., to a human).
transfer_bridgedThe transfer connected and the two people are now talking.
transfer_cancelledThe transfer didn't go through (hangup, busy, no answer, etc.).
transfer_endedThe transfer call leg is over.

Here's how it works:

  • Every new voice agent you build (from the Agent Builder, Wizard, or Campaign flow) gets these four events turned on from day one.
  • All existing agents were updated for you, so they also send the full transfer event set.
  • Your webhook will receive these events as long as it is subscribed to them (or listens to all events).

That means your CRM, Zapier flow, or other tool will always know when a live call gets transferred — and how it turned out. See the Webhooks API Reference for the full payload.

📦 Webhook Payload

Webhooks send data as JSON. Here's an example:

json
{
  "event": "case.updated",
  "timestamp": "2024-01-15T10:30:00Z",
  "data": {
    "id": "case_123",
    "name": "Smith Case",
    "status": "Active",
    "changes": {
      "status": {
        "old": "New",
        "new": "Active"
      }
    }
  }
}

🔐 Authentication Options

MethodDescription
NoneNo security added
API KeyAdds a key in the header
Basic AuthUses a username and password
Bearer TokenUses a JWT or OAuth token
HMAC SignatureSigns the data so the receiver can verify it

⚙️ Webhook Management

ActionDescription
Enable/DisableTurn a webhook on or off
TestSend a test message to check it works
View LogsSee the delivery history
Retry FailedResend messages that didn't go through

🔄 Retry Logic

If a webhook fails, Kayse AI tries again automatically:

AttemptWait Time
1Right away
25 minutes
330 minutes
42 hours
524 hours

Turn unreachable clients into paid cases.