Webhooks
Configure webhooks in Dashboard → Developer Hub → Configuration to receive analytics and Voice Agent results at your backend. Anthropod sends an HTTP POST with JSON to your callback URL and includes the custom headers you configure.
Webhooks deliver results after processing.
Choose a callback
Each callback uses the payload format documented below.
Set up in the dashboard
Open Configuration
Sign in with an account that can manage Developer Hub configuration, then open the callback section for calls, chats, or Voice Agents.Enter your receiver URL
Set the URL to an HTTPS endpoint on your backend, such ashttps://api.example.com/webhooks/anthropod.Use a dedicated webhook secret, separate from the private API key used to call Anthropod. Validate it on every incoming request and keep it in your backend’s secret store. Callbacks use your configured headers for authentication; HMAC signatures are not provided.
HTTP input and output
Example request headers:
Example acknowledgement from your server, with no response body:
No particular JSON response fields are required from your receiver. Authenticate, durably accept the payload, and then acknowledge.
What your receiver gets
Conversation Analytics
Call and chat batch callbacks use the following top-level fields:
Per-record fields
The result shape depends on the stage reached. A failure can contain only identifiers and an error. On completed analysis, module-specific values are included when available.
Responses can include additional custom fields. Treat unknown fields as extensions and tolerate documented absent or null values.
The following examples show the core integration fields for a service with the summary module enabled. Additional request context, usage, timeline, and configured analytics fields can be present. In the legacy chat result, summary field names still use the call_summary prefix.
Example: successful call analytics callback
Example: successful chat analytics callback
Example: completed batch containing a failed record
The same envelope is used for chat batches. The batch is complete even though this example’s one record failed. Successful records carry the applicable transcript and enabled analysis fields from the table above; those nested module schemas follow the service configuration.
Inspect each result for success or failure and use its source record and customer identifiers for correlation. A successful batch submission is an acknowledgement, not the final analysis result. See batch analytics.
Voice Agents
The Voice Agent callback sends the post-call result object directly. Available fields depend on the agent configuration and outcome, including conversation and customer identifiers, call outcome, analytics, and recording information when available. It does not use the Conversation Analytics batch wrapper above. See outbound call results.
Core Voice Agent fields
The normal post-call result uses the fields below. Minimal or failed-call results can omit enrichment fields; accept null where marked and do not infer that a call was answered from status: completed alone.
Conversation text is returned in transcript. There is no shared event_id, event_type, or data wrapper in the documented legacy body.
Example: Voice Agent post-call result
Example response. Additional fields depend on your agent configuration.
Receive reliably
Contact support for callback routing, example payloads, and delivery troubleshooting. Never share your API key or webhook secret in a support request.