Callbacks

TeXML Recording In-Progress

Webhook sent when a recording starts during a TeXML call (triggered by recordingStatusCallbackEvent). 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.

postWebhookTexmlRecordingInProgressWebhook

Headers

telnyx-timestampinteger required

Unix timestamp for replay attack prevention

Unix timestamp (seconds since epoch) of when the webhook was sent - compatible with webhook-timestamp

telnyx-signature-ed25519string required

Ed25519 signature of timestamp|payload for verification

Base64 encoded Ed25519 signature for webhook verification - compatible with webhook-signature

Payload application/x-www-form-urlencoded

AccountSidstring required

The unique identifier of the account (user_id).

CallSidstring required

The unique identifier of the call (call_control_id).

CallSidLegacystring required

Legacy call identifier, same as CallSid.

ConnectionIdstring required

The unique identifier of the connection.

RecordingChannels1 | 2 required

The number of channels in the recording (1 for mono, 2 for dual-channel).

RecordingSidstring

A unique identifier for the recording, generated by Telnyx (conditional, only present if recording_id is available).

RecordingSourcestring required

The source of the recording.

RecordingStatus'in-progress' required

The status of the recording.

Example payload

{
  "AccountSid": "cb6cfbbc-eb00-41af-a3f3-0d7b32009e4b",
  "CallSid": "v2:qiaymU9Ij90xJRRkYGWHOIx_41EVJPrzlny2zC67hwL1wVIUnnMrqQ",
  "CallSidLegacy": "v2:qiaymU9Ij90xJRRkYGWHOIx_41EVJPrzlny2zC67hwL1wVIUnnMrqQ",
  "ConnectionId": "1234567890",
  "RecordingChannels": 1,
  "RecordingSid": "35094891-3290-4142-b2c2-b2eda57534cf",
  "RecordingSource": "DialVerb",
  "RecordingStatus": "in-progress"
}

Response

The server must return an HTTP 200, otherwise we will reattempt delivery at the failover webhook URL.

Changes

Webhooks have no change history: a webhook is keyed by its event name rather than a path and method, so no recorded change can name it.