Telnyx credentials and optional overrides.
Verify an incoming Telnyx webhook using Ed25519 signature verification.
valid: true).
This supports development environments without cryptographic setup.X-Telnyx-Timestamp and X-Telnyx-Signature-Ed25519 headers."{timestamp}|{rawBody}".crypto.verify(null, payload, { key, format: 'der', type: 'spki' }, signature).Raw webhook request context.
Verification result. Returns { valid: true } when no public key
is configured (development mode).
Parse a Telnyx webhook JSON body into normalized NormalizedCallEvents.
Telnyx sends all webhook payloads as JSON with a data.event_type
discriminant field. The data.payload object contains call-specific
fields like call_control_id, hangup_cause, digit, and result.
Telnyx's call.hangup event includes a hangup_cause field that must
be inspected to determine whether the user or the system terminated
the call:
normal_clearing / user_busy / originator_cancel -> call-hangup-usercall_rejected, unallocated_number) -> call-completedRaw webhook request context.
Parsed result containing zero or more normalized events.
Initiate an outbound call via the Telnyx Call Control v2 API.
POSTs to /v2/calls with a JSON body containing the connection_id,
phone numbers, and webhook URL. The mediaStreamUrl (if provided) is
stored internally for use after the call is answered -- it is NOT sent
in the initial call creation request because Telnyx requires
streaming_start to be issued as a separate action after call.answered.
Call initiation parameters (from/to numbers, webhook URL).
Result containing the Telnyx call_control_id on success.
Never throws; returns { success: false, error: '...' } on failure.
Hang up an active call via the Telnyx Call Control hangup action.
POSTs an empty JSON body to /v2/calls/{call_control_id}/actions/hangup.
Telnyx will terminate the call and fire a call.hangup webhook.
Contains the Telnyx call_control_id to hang up.
Speak text into a live call using Telnyx's text-to-speech speak action.
POSTs a JSON body to /v2/calls/{id}/actions/speak with the text
payload, voice (default 'female'), and language (default 'en-US').
TTS parameters (text, optional voice, call ID).
Readonly nameProvider identifier, always 'telnyx'.
Telnyx voice call provider.
Uses the Telnyx Call Control v2 API for outbound call initiation and in-call actions (hangup, speak). Webhook verification uses Ed25519 public key signing.
Example