call.completed webhook event to any URLs configured in your agent’s Webhook Settings. This delivers the full call record including transcripts, AI analysis, and metadata.
Configure webhook URLs in the agent builder’s Webhook Settings panel, or via the Agent API
webhook_urls field.Event Details
| Field | Value |
|---|---|
| Event name | call.completed |
| Method | POST |
| Content-Type | application/json |
| Trigger | Automatically dispatched when a call session ends |
Payload Structure
Event type identifier. Always
"call.completed" for this webhook.UUID of the organization that owns this call.
Full call session data.
Example Payload
Handling Webhooks
Respond with 200
Respond with 200
Your endpoint must return a
200 HTTP status code to acknowledge receipt. If Agni doesn’t receive a 200, it will retry the webhook.Verify the org_id
Verify the org_id
Always check that the
org_id in the payload matches your organization to prevent processing webhooks from other sources.Process asynchronously
Process asynchronously
Return 200 immediately and process the data in a background job. Don’t make the webhook wait for your database writes or API calls.
Store the call_session_id
Store the call_session_id
Use
call_session_id as a unique key to deduplicate webhook deliveries in case of retries.
