Call conversation created
Emitted when a conversation is created for a call, including when an AI assistant starts automatically after an answer command with assistant.id, or through ai_assistant_start or gather_using_ai. Read data.payload.conversation_id and correlate it with data.payload.call_control_id.
For the answer-with-assistant flow, the answer response does not include the conversation ID. This webhook supplies it during assistant startup without waiting for call.conversation.ended or polling the Conversations API. It is delivered to the configured Call Control webhook URL and does not require send_message_history_updates.
The event indicates that the conversation was created; it does not confirm that the assistant is ready to speak or that greeting audio has started.
This webhook uses Telnyx headers (telnyx-timestamp, telnyx-signature-ed25519) that are compatible with Standard Webhooks specification for SDK generation. Custom validation logic can map these to standard webhook-timestamp and webhook-signature equivalents. See https://github.com/standard-webhooks/standard-webhooks for details.
{
"data": {
"record_type": "event",
"event_type": "call.conversation.created",
"id": "eb8775a6-634f-48b0-b177-d5465a8a8e9f",
"occurred_at": "2025-05-29T13:35:38.817785Z",
"created_at": "2025-05-29T13:35:38.927621Z",
"payload": {
"call_control_id": "v3:HDR1vQHx697hpP9xZ0bhlbUOWPFPDtPcxw-nuSMuC6mGVpb0euoklQ",
"call_leg_id": "cc29cce6-3c91-11f0-a8e5-02420aef3d20",
"call_session_id": "cc29c8d6-3c91-11f0-aa7c-02420aef3d20",
"client_state": "g3QAAAACbQAAAAtkYXRhX2NlbnRlcm0AAAADY2gxbQAAAApkZXBsb3ltZW50bQAAAARiYXNl",
"connection_id": "2694492062593582591",
"conversation_id": "0424805b-adc1-4ff8-9f95-e1de6883ecbe",
"from": "+13124287921",
"to": "+13125550100"
}
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
Unix timestamp (seconds since epoch) of when the webhook was sent - compatible with webhook-timestamp Unix timestamp for replay attack prevention
Base64 encoded Ed25519 signature for webhook verification - compatible with webhook-signature Ed25519 signature of timestamp|payload for verification
Body
A conversation has been created for the call. Use the conversation ID to correlate subsequent conversation events.
Show child attributes
Show child attributes
{
"record_type": "event",
"event_type": "call.conversation.created",
"id": "eb8775a6-634f-48b0-b177-d5465a8a8e9f",
"occurred_at": "2025-05-29T13:35:38.817785Z",
"created_at": "2025-05-29T13:35:38.927621Z",
"payload": {
"call_control_id": "v3:HDR1vQHx697hpP9xZ0bhlbUOWPFPDtPcxw-nuSMuC6mGVpb0euoklQ",
"call_leg_id": "cc29cce6-3c91-11f0-a8e5-02420aef3d20",
"call_session_id": "cc29c8d6-3c91-11f0-aa7c-02420aef3d20",
"client_state": "g3QAAAACbQAAAAtkYXRhX2NlbnRlcm0AAAADY2gxbQAAAApkZXBsb3ltZW50bQAAAARiYXNl",
"connection_id": "2694492062593582591",
"conversation_id": "0424805b-adc1-4ff8-9f95-e1de6883ecbe",
"from": "+13124287921",
"to": "+13125550100"
}
}
Response
The server must return an HTTP 200, otherwise we will reattempt delivery at the failover webhook URL.
Was this page helpful?
{
"data": {
"record_type": "event",
"event_type": "call.conversation.created",
"id": "eb8775a6-634f-48b0-b177-d5465a8a8e9f",
"occurred_at": "2025-05-29T13:35:38.817785Z",
"created_at": "2025-05-29T13:35:38.927621Z",
"payload": {
"call_control_id": "v3:HDR1vQHx697hpP9xZ0bhlbUOWPFPDtPcxw-nuSMuC6mGVpb0euoklQ",
"call_leg_id": "cc29cce6-3c91-11f0-a8e5-02420aef3d20",
"call_session_id": "cc29c8d6-3c91-11f0-aa7c-02420aef3d20",
"client_state": "g3QAAAACbQAAAAtkYXRhX2NlbnRlcm0AAAADY2gxbQAAAApkZXBsb3ltZW50bQAAAARiYXNl",
"connection_id": "2694492062593582591",
"conversation_id": "0424805b-adc1-4ff8-9f95-e1de6883ecbe",
"from": "+13124287921",
"to": "+13125550100"
}
}
}