How it works
Sales Ask sends aPOST request to every active webhook URL registered for your organization when a subscribed event occurs. No polling required.
Events
Organizations with no explicit event subscription default to
recording.processed only. To receive recording.integration_updated events, explicitly subscribe via the Events dropdown in webhook settings.
Webhook envelope
Every webhook delivery wraps the payload in an envelope with the event name:Payload fields (inside data)
Custom fields from the recording are merged at the top level of
data.
recording.processed
Fired after AI analysis completes. Only delivered to webhooks whose trigger matches the recording source (or trigger is set toall).
recording.integration_updated
Fired after a recording is synced to a CRM. Thedata payload is the same shape as recording.processed.
Responding to events
Your endpoint must return a 2xx status to acknowledge receipt. Sales Ask does not retry failed deliveries, so if your endpoint is down you will miss the event.Requests time out after 10 seconds. Respond quickly and offload heavy work to a background job.
List webhooks
Returns all webhook URLs registered for your organization (configured in Sales Ask).id, url, active, trigger, and events for each webhook.
Send a test webhook
POST a test payload to a URL using a recording you provide. The recording must havestatus: "processed" (e.g. from GET /v1/recordings or GET /v1/recordings/:id).
url is the same shape as the outbound webhook payload above (integration format). Use this to verify your endpoint without waiting for a real processing event.
