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.
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
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
Show child attributes
Identifies the type of the resource.
event "event"
The type of event being delivered.
call.recording.saved "call.recording.saved"
Identifies the type of resource.
"0ccc7b54-4df3-4bca-a65a-3da1ecc777f0"
ISO 8601 datetime of when the event occurred.
"2018-02-02T22:25:27.521992Z"
Show child attributes
ID that is unique to the call and can be used to correlate webhook events.
"428c31b6-7af4-4bcb-b7f5-5013ef9657c1"
ID that is unique to the call session and can be used to correlate webhook events. Call session is a group of related call legs that logically belong to the same phone call, e.g. an inbound and outbound leg of a transferred call.
"428c31b6-abf3-3bc1-b7f4-5013ef9657c1"
Call Control App ID (formerly Telnyx connection ID) used in the call.
"7267xxxxxxxxxxxxxx"
State received from a command.
"aGF2ZSBhIG5pY2UgZGF5ID1d"
ISO 8601 datetime of when recording started.
"2018-02-02T22:20:27.521992Z"
ISO 8601 datetime of when recording ended.
"2018-02-02T22:25:27.521992Z"
Whether recording was recorded in single or dual channel.
single, dual "single"
Recording URLs in requested format. These URLs are valid for 10 minutes. After 10 minutes, you may retrieve recordings via API using Reports -> Call Recordings documentation, or via Mission Control under Reporting -> Recordings.
Recording URLs in requested format. The URL is valid for as long as the file exists. For security purposes, this feature is activated on a per request basis. Please contact customer support with your Account ID to request activation.
{
"record_type": "event",
"event_type": "call.recording.saved",
"id": "0ccc7b54-4df3-4bca-a65a-3da1ecc777f0",
"occurred_at": "2018-02-02T22:25:27.521992Z",
"payload": {
"call_control_id": "v3:MdI91X4lWFEs7IgbBEOT9M4AigoY08M0WWZFISt1Yw2axZ_IiE4pqg",
"connection_id": "7267xxxxxxxxxxxxxx",
"call_leg_id": "428c31b6-7af4-4bcb-b7f5-5013ef9657c1",
"call_session_id": "428c31b6-7af4-4bcb-b7f5-5013ef9657c1",
"client_state": "aGF2ZSBhIG5pY2UgZGF5ID1d",
"recording_started_at": "2018-02-02T22:20:27.521992Z",
"recording_ended_at": "2018-02-02T22:20:27.521992Z",
"channels": "single",
"recording_urls": {
"mp3": "http://example.com/recording.mp3",
"wav": "http://example.com/recording.wav"
},
"public_recording_urls": {
"mp3": "http://example.com/recording.mp3",
"wav": "http://example.com/recording.wav"
}
}
}The server must return an HTTP 200, otherwise we will reattempt delivery at the failover webhook URL.
Was this page helpful?