Download OpenAPI specification:Download
Outbound voice + AMD service with a Twilio-compatible REST API
VoiceML exposes a Twilio-compatible Programmable Voice Calls REST API so
existing Twilio SDKs (twilio-node, twilio-python, twilio-go, ...)
can integrate with minimal migration effort. Authentication, error codes,
and pagination follow Twilio's documented conventions where supported.
URL format: Twilio's canonical URL form ends with .json (e.g.
/Calls/{Sid}.json). VoiceML accepts BOTH the .json-suffixed and
the unsuffixed form — the server strips a trailing .json/.xml/.wav
suffix before routing (see WrapWithFormatSuffix). The spec documents the
.json form so SDKs generated against this spec produce
Twilio-compatible URLs out of the box; existing clients that omit .json
continue to work unchanged.
Authentication is per-tenant HTTP Basic:
:AccountSid (the URL path parameter, Twilio-format
AC + 32 hex chars). Same value the Twilio SDK validates in its
constructor — migration-compatible.X-Twilio-Signature on outbound webhooks.Account management (create / rotate / disable / delete) is NOT exposed on this public listener — it lives on a private observability listener documented separately.
Paginated list of call records for the given account. Filters
match Twilio: To, From, Status, ParentCallSid,
StartTime (bare = full UTC day), StartTime< (strict upper),
StartTime> (strict lower), and the same triple for EndTime.
For backwards compatibility the legacy StartTime>= / EndTime<=
SQL-style operators are also accepted at the handler. Pagination
via Page and PageSize (max 1000). EndTime filters
restrict the result set to terminal-status rows (an in-progress
call has no end time and cannot match an EndTime window).
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| To | string |
| From | string |
| Status | string |
| ParentCallSid | string |
| StartTime | string <date-time> Calls started on this UTC date (YYYY-MM-DD). |
| StartTime< | string <date-time> Calls started strictly before this UTC date/time. |
| StartTime> | string <date-time> Calls started strictly after this UTC date/time. |
| EndTime | string <date-time> Calls ended on this UTC date (YYYY-MM-DD). |
| EndTime< | string <date-time> Calls ended strictly before this UTC date/time. |
| EndTime> | string <date-time> Calls ended strictly after this UTC date/time. |
| Page | integer >= 0 Default: 0 Zero-based page index. |
| PageSize | integer [ 1 .. 1000 ] Default: 50 Page size. Max 1000; default 50. |
| PageToken | string The page token. This is provided by the API. |
{- "calls": [
- {
- "sid": "CAxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "api_version": "2010-04-01",
- "to": "+18005551234",
- "to_formatted": "string",
- "from": "+18005550000",
- "from_formatted": "string",
- "parent_call_sid": "string",
- "caller_name": "string",
- "forwarded_from": "string",
- "status": "queued",
- "direction": "inbound",
- "answered_by": "human",
- "start_time": "string",
- "end_time": "string",
- "duration": "string",
- "price": "string",
- "price_unit": "string",
- "phone_number_sid": "string",
- "annotation": "string",
- "group_sid": "string",
- "queue_time": "string",
- "trunk_sid": "string",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string",
- "subresource_uris": {
- "property1": "string",
- "property2": "string"
}
}
], - "page": 0,
- "page_size": 0,
- "num_pages": 0,
- "total": 0,
- "first_page_uri": "string",
- "next_page_uri": "string",
- "previous_page_uri": "string",
- "uri": "string"
}Originates an outbound call via FreeSWITCH. The To and From
numbers are validated and normalised to E.164 against the
authenticated tenant's phone_regions list — set per-account in
the admin API. Empty list disables validation; multi-region
tenants accept numbers valid in any listed region.
MachineDetection is optional; omitting it skips AMD entirely.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| To required | string |
| From required | string |
| Url | string HTTP(S) endpoint that returns voice markup when the call answers.
Mutually exclusive with |
| Method | string Default: "POST" Enum: "GET" "POST" HTTP method used to fetch |
| Twiml | string Inline voice markup body — alternative to |
| ApplicationSid | string References a stored Application resource. Its |
| FallbackUrl | string URL to fetch voice markup from if the primary |
| FallbackMethod | string Default: "POST" Enum: "GET" "POST" |
| StatusCallback | string |
| StatusCallbackMethod | string Default: "POST" |
| StatusCallbackEvent | Array of strings Items Enum: "initiated" "ringing" "answered" "completed" |
| MachineDetection | string Enum: "Enable" "DetectMessageEnd" |
| MachineDetectionTimeout | integer |
| MachineDetectionSpeechThreshold | integer |
| MachineDetectionSpeechEndThreshold | integer |
| MachineDetectionSilenceTimeout | integer |
| AsyncAmdStatusCallback | string |
| AsyncAmdStatusCallbackMethod | string Default: "POST" |
| Record | boolean Default: false |
| RecordingStatusCallback | string |
| RecordingStatusCallbackMethod | string Default: "POST" |
| RecordingStatusCallbackEvent | string Comma-separated subset of |
| RecordingChannels | string Enum: "mono" "dual" Recording channel layout. Accepted-and-mono-only in v0.19.x — |
| RecordingTrack | string Enum: "inbound" "outbound" "both" Accepted-and-ignored in v0.19.x — recording captures the bridged audio regardless. |
| Trim | string Enum: "trim-silence" "do-not-trim" Accepted-and-ignored in v0.19.x — recording is fixed at |
| Timeout | integer >= 1 Default: 60 Originate timeout (seconds). Drives the FreeSWITCH |
| SendDigits | string DTMF burst played after answer — charset |
| CallerId | string Alternate to |
| CallReason | string Stored as a custom channel variable on the originating call leg, accessible to customer dialplans for reporting and routing decisions. |
| SipAuthUsername | string SIP digest auth username for BYOC trunks; channel var |
| SipAuthPassword | string SIP digest auth password (paired with SipAuthUsername). |
| Byoc | string Twilio BYOC Trunk SID. Accepted-and-ignored — VoiceML routes via FreeSWITCH gateways configured at deploy time. |
| AsyncAmd | boolean Twilio compatibility — AMD on VoiceML is always async; this flag is accepted but redundant. |
| CallToken | string Twilio CallToken for verified-caller-id flows. Accepted-and-ignored. |
{- "sid": "CAxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "api_version": "2010-04-01",
- "to": "+18005551234",
- "to_formatted": "string",
- "from": "+18005550000",
- "from_formatted": "string",
- "parent_call_sid": "string",
- "caller_name": "string",
- "forwarded_from": "string",
- "status": "queued",
- "direction": "inbound",
- "answered_by": "human",
- "start_time": "string",
- "end_time": "string",
- "duration": "string",
- "price": "string",
- "price_unit": "string",
- "phone_number_sid": "string",
- "annotation": "string",
- "group_sid": "string",
- "queue_time": "string",
- "trunk_sid": "string",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string",
- "subresource_uris": {
- "property1": "string",
- "property2": "string"
}
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
{- "sid": "CAxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "api_version": "2010-04-01",
- "to": "+18005551234",
- "to_formatted": "string",
- "from": "+18005550000",
- "from_formatted": "string",
- "parent_call_sid": "string",
- "caller_name": "string",
- "forwarded_from": "string",
- "status": "queued",
- "direction": "inbound",
- "answered_by": "human",
- "start_time": "string",
- "end_time": "string",
- "duration": "string",
- "price": "string",
- "price_unit": "string",
- "phone_number_sid": "string",
- "annotation": "string",
- "group_sid": "string",
- "queue_time": "string",
- "trunk_sid": "string",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string",
- "subresource_uris": {
- "property1": "string",
- "property2": "string"
}
}Three flows on the same endpoint (mirrors Twilio):
Status=completed|canceled — terminate the call.Twiml=<inline> — execute inline voice markup on the live call
(wins over Url when both are present).Url=… — fetch new voice markup and execute it on the live call
(live redirect / hot swap).
If Status is present alongside any voice markup source, Status
wins. The success response is the full Call resource — same
shape GET returns — so SDK deserialisers round-trip.| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
| Status | string Enum: "completed" "canceled" |
| Twiml | string Inline voice markup body. Wins over |
| Url | string |
| Method | string Default: "POST" Enum: "GET" "POST" |
| FallbackUrl | string |
| FallbackMethod | string Default: "POST" Enum: "GET" "POST" |
| StatusCallback | string Swaps the live call's StatusCallback URL. |
| StatusCallbackMethod | string Swaps the live call's StatusCallback HTTP method. |
| StatusCallbackEvent | Array of strings Items Enum: "initiated" "ringing" "answered" "completed" Replaces the event-mask. Repeatable form param; empty list defaults to |
{- "sid": "CAxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "api_version": "2010-04-01",
- "to": "+18005551234",
- "to_formatted": "string",
- "from": "+18005550000",
- "from_formatted": "string",
- "parent_call_sid": "string",
- "caller_name": "string",
- "forwarded_from": "string",
- "status": "queued",
- "direction": "inbound",
- "answered_by": "human",
- "start_time": "string",
- "end_time": "string",
- "duration": "string",
- "price": "string",
- "price_unit": "string",
- "phone_number_sid": "string",
- "annotation": "string",
- "group_sid": "string",
- "queue_time": "string",
- "trunk_sid": "string",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string",
- "subresource_uris": {
- "property1": "string",
- "property2": "string"
}
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
{- "code": 0,
- "message": "string",
- "more_info": "string",
- "status": 0
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| DateCreated | string <date-time> Filter to recordings created on this UTC date (YYYY-MM-DD). |
| DateCreated< | string <date-time> Filter to recordings created strictly before this UTC date. |
| DateCreated> | string <date-time> Filter to recordings created strictly after this UTC date. |
| Page | integer >= 0 Default: 0 Zero-based page index. |
| PageSize | integer [ 1 .. 1000 ] Default: 50 Page size. Max 1000; default 50. |
| PageToken | string The page token. This is provided by the API. |
{- "recordings": [
- {
- "sid": "RExxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "conference_sid": "string",
- "status": "in-progress",
- "source": "OutboundAPI",
- "channels": 1,
- "duration": "string",
- "api_version": "string",
- "uri": "string",
- "date_created": "string",
- "date_updated": "string",
- "start_time": "string",
- "price": "string",
- "price_unit": "string",
- "encryption_details": { },
- "subresource_uris": { },
- "media_url": "string",
- "error_code": 0
}
], - "page": 0,
- "page_size": 0,
- "num_pages": 0,
- "total": 0,
- "start": 0,
- "end": 0,
- "first_page_uri": "string",
- "next_page_uri": "string",
- "previous_page_uri": "string",
- "uri": "string"
}Begins a fresh recording on the live call leg via FreeSWITCH's
uuid_record. The new Recording resource is returned in the
201 response. Distinct from Record=true on POST /Calls,
which captures from the start of the call.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| RecordingMaxDuration | integer Cap recording length in seconds. 0 = no limit. |
| RecordingChannels | string Enum: "mono" "dual" |
| PlayBeep | boolean Default: true |
| RecordingStatusCallback | string |
| RecordingStatusCallbackMethod | string Default: "POST" |
| RecordingStatusCallbackEvent | string Comma-separated: in-progress,completed,absent |
{- "sid": "RExxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "conference_sid": "string",
- "status": "in-progress",
- "source": "OutboundAPI",
- "channels": 1,
- "duration": "string",
- "api_version": "string",
- "uri": "string",
- "date_created": "string",
- "date_updated": "string",
- "start_time": "string",
- "price": "string",
- "price_unit": "string",
- "encryption_details": { },
- "subresource_uris": { },
- "media_url": "string",
- "error_code": 0
}Same JSON resource as /Recordings/{RecordingSid} but enforces
the call-scope from the URL path. 404 if the recording exists
but is attached to a different call.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
{- "sid": "RExxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "conference_sid": "string",
- "status": "in-progress",
- "source": "OutboundAPI",
- "channels": 1,
- "duration": "string",
- "api_version": "string",
- "uri": "string",
- "date_created": "string",
- "date_updated": "string",
- "start_time": "string",
- "price": "string",
- "price_unit": "string",
- "encryption_details": { },
- "subresource_uris": { },
- "media_url": "string",
- "error_code": 0
}Wires uuid_record stop|pause|resume on the live call leg.
All three transitions return 200 + the post-mutation
Recording resource. Tenant-scoped: a RecordingSid that
belongs to a different account returns 404 without leaking
existence.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
| Status required | string Enum: "stopped" "paused" "in-progress" |
{- "sid": "RExxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "conference_sid": "string",
- "status": "in-progress",
- "source": "OutboundAPI",
- "channels": 1,
- "duration": "string",
- "api_version": "string",
- "uri": "string",
- "date_created": "string",
- "date_updated": "string",
- "start_time": "string",
- "price": "string",
- "price_unit": "string",
- "encryption_details": { },
- "subresource_uris": { },
- "media_url": "string",
- "error_code": 0
}Removes the memdb row, unlinks the on-disk WAV, and (when
RECORDING_S3_BUCKET is configured) issues an S3 DeleteObject
on the archived copy. S3 deletion is best-effort: failure logs
but does not fail the API call (the bucket lifecycle policy is
the long-stop cleanup). Tenant-scoped — cross-tenant DELETE
returns 404 without affecting the row.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
{- "code": 0,
- "message": "string",
- "more_info": "string",
- "status": 0
}Returns 0 or 1 entries — mod_audio_fork supports a single active fork per call uuid, matching the slot model on the VoiceML tracker. Pagination envelope is the canonical Twilio shape so SDK auto-paginators round-trip cleanly.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
{- "streams": [
- {
- "sid": "MZxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "name": "string",
- "status": "in-progress",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}
], - "page": 0,
- "page_size": 0,
- "num_pages": 0,
- "total": 0,
- "first_page_uri": "string",
- "next_page_uri": "string",
- "previous_page_uri": "string",
- "uri": "string"
}Issues uuid_audio_fork start on the call leg via the same
executor primitive the voice markup verbs use. Returns the new Stream
resource with an MZ-prefixed sid.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| Url required | string wss:// endpoint for the customer's WebSocket server. Required. |
| Track | string Enum: "inbound_track" "outbound_track" "both_tracks" |
| Name | string |
| StatusCallback | string |
| StatusCallbackMethod | string Default: "POST" |
{- "sid": "MZxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "name": "string",
- "status": "in-progress",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| Sid required | string^(MZ|SR|RT)[a-f0-9]{32}$ Twilio-compatible subresource SID — used by Streams ( |
{- "sid": "MZxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "name": "string",
- "status": "in-progress",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| Sid required | string^(MZ|SR|RT)[a-f0-9]{32}$ Twilio-compatible subresource SID — used by Streams ( |
| Status required | string Value: "stopped" |
{- "sid": "MZxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "name": "string",
- "status": "in-progress",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}Returns 0 or 1 entries — mod_siprec supports one mirror per call uuid. Pagination envelope is the canonical Twilio shape.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
{- "siprec": [
- {
- "sid": "SRxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "name": "string",
- "connector_name": "string",
- "status": "in-progress",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}
], - "page": 0,
- "page_size": 0,
- "num_pages": 0,
- "total": 0,
- "first_page_uri": "string",
- "next_page_uri": "string",
- "previous_page_uri": "string",
- "uri": "string"
}Invokes the siprec dialplan app via uuid_broadcast against
the configured connector profile. Returns the new Siprec
resource with an SR-prefixed sid.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| Name | string |
| ConnectorName | string mod_siprec profile name. Empty falls back to SIPREC_DEFAULT_PROFILE then |
| Track | string Enum: "inbound_track" "outbound_track" "both_tracks" |
| StatusCallback | string |
| StatusCallbackMethod | string Default: "POST" |
{- "sid": "SRxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "name": "string",
- "connector_name": "string",
- "status": "in-progress",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| Sid required | string^(MZ|SR|RT)[a-f0-9]{32}$ Twilio-compatible subresource SID — used by Streams ( |
{- "sid": "SRxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "name": "string",
- "connector_name": "string",
- "status": "in-progress",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}StefanYohansson/mod_siprec doesn't expose a stop verb; the SRS recording session continues until the call hangs up. This endpoint clears VoiceML's session-tracking entry only. Documented mod_siprec limitation.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| Sid required | string^(MZ|SR|RT)[a-f0-9]{32}$ Twilio-compatible subresource SID — used by Streams ( |
| Status required | string Value: "stopped" |
{- "sid": "SRxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "name": "string",
- "connector_name": "string",
- "status": "in-progress",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}Returns 0 or 1 entries. Pagination envelope is the canonical Twilio shape.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
{- "transcriptions": [
- {
- "sid": "RTxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "name": "string",
- "language_code": "en-US",
- "transcription_engine": "deepgram",
- "status": "in-progress",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}
], - "page": 0,
- "page_size": 0,
- "num_pages": 0,
- "total": 0,
- "first_page_uri": "string",
- "next_page_uri": "string",
- "previous_page_uri": "string",
- "uri": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| Name | string |
| Track | string Enum: "inbound_track" "outbound_track" "both_tracks" |
| LanguageCode | string Default: "en-US" |
| TranscriptionEngine | string Enum: "deepgram" "google" "aws" "azure" |
| ProfanityFilter | boolean |
| PartialResults | boolean |
| Hints | string |
| StatusCallback | string |
| StatusCallbackMethod | string Default: "POST" |
| StatusCallbackEvents | string Comma-separated event filter. |
{- "sid": "RTxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "name": "string",
- "language_code": "en-US",
- "transcription_engine": "deepgram",
- "status": "in-progress",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| Sid required | string^(MZ|SR|RT)[a-f0-9]{32}$ Twilio-compatible subresource SID — used by Streams ( |
{- "sid": "RTxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "name": "string",
- "language_code": "en-US",
- "transcription_engine": "deepgram",
- "status": "in-progress",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| Sid required | string^(MZ|SR|RT)[a-f0-9]{32}$ Twilio-compatible subresource SID — used by Streams ( |
| Status required | string Value: "stopped" |
{- "sid": "RTxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "name": "string",
- "language_code": "en-US",
- "transcription_engine": "deepgram",
- "status": "in-progress",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}Twilio's fine-grained per-call event stream. VoiceML
delivers equivalent data via StatusCallback (initiated /
ringing / answered / completed); this endpoint is mounted
as a stub returning an empty list so SDK helpers iterate
cleanly. The canonical event source is the customer's
StatusCallback URL. Page/PageSize are accepted for SDK
ergonomics but have no effect on an empty list.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| Page | integer >= 0 Default: 0 Zero-based page index. |
| PageSize | integer [ 1 .. 1000 ] Default: 50 Page size. Max 1000; default 50. |
| PageToken | string The page token. This is provided by the API. |
{- "events": [
- null
], - "page": 0,
- "page_size": 0,
- "total": 0,
- "uri": "string"
}Twilio's per-call alert log. VoiceML doesn't track notifications as a separate stream — relevant operator-side events flow through Prometheus + structured logs. This endpoint is mounted as a stub so SDK helpers don't 404; the response is always an empty list. Page/PageSize and Log are accepted for SDK ergonomics but have no effect on an empty list.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| Page | integer >= 0 Default: 0 Zero-based page index. |
| PageSize | integer [ 1 .. 1000 ] Default: 50 Page size. Max 1000; default 50. |
| PageToken | string The page token. This is provided by the API. |
| Log | integer Enum: 0 1 Twilio-compatible parameter — 0 = error-level only, 1 = warning-level + above. Accepted for SDK migration compatibility; has no effect since VoiceML's per-call notification stream is unimplemented (this endpoint is a stub returning an empty list). |
| MessageDate | string <date-time> Twilio-compatible date filter — accept-but-no-op on empty notification stub. |
| MessageDate< | string <date-time> Twilio-compatible date filter — accept-but-no-op on empty notification stub. |
| MessageDate> | string <date-time> Twilio-compatible date filter — accept-but-no-op on empty notification stub. |
{- "notifications": [
- null
], - "page": 0,
- "page_size": 0,
- "total": 0,
- "uri": "string"
}Per-call notification fetch. VoiceML does not persist a notification stream — the list endpoint is always empty and individual fetches return 404.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
{ }Twilio's chat-style messages on a live call. Real message-passing infrastructure (a websocket on the customer-facing leg) that's out of scope for VoiceML. Returns 501 with Twilio code 20501. The empty request body schema is declared so codegen tooling emits a method signature consistent with Twilio's SDK.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
{- "code": 0,
- "message": "string",
- "more_info": "string",
- "status": 0
}Returns conferences currently active in mod_conference for
this tenant. Live query — no caching, always reflects the
FreeSWITCH state of the moment. Conferences appear once a
first participant joins (typically via voice markup
<Dial><Conference>) and disappear as soon as the last
participant leaves.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| FriendlyName | string Filter to conferences with this exact FriendlyName. |
| Status | string Enum: "init" "in-progress" "completed" Filter to conferences in this lifecycle state. |
| DateCreated | string <date-time> Twilio-compatible parameter. VoiceML's conference list is a live FreeSWITCH query with no historical store — accepted but does not narrow the result set. |
| DateCreated< | string <date-time> Twilio-compatible date filter — accept-but-no-op on live conference list. |
| DateCreated> | string <date-time> Twilio-compatible date filter — accept-but-no-op on live conference list. |
| DateUpdated | string <date-time> Twilio-compatible date filter — accept-but-no-op on live conference list. |
| DateUpdated< | string <date-time> Twilio-compatible date filter — accept-but-no-op on live conference list. |
| DateUpdated> | string <date-time> Twilio-compatible date filter — accept-but-no-op on live conference list. |
| Page | integer >= 0 Default: 0 Zero-based page index. |
| PageSize | integer [ 1 .. 1000 ] Default: 50 Page size. Max 1000; default 50. |
| PageToken | string The page token. This is provided by the API. |
{- "conferences": [
- {
- "sid": "CFxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "friendly_name": "incident-42",
- "status": "init",
- "region": "string",
- "api_version": "string",
- "uri": "string",
- "date_created": "string",
- "date_updated": "string",
- "reason_conference_ended": "conference-ended-via-api",
- "call_sid_ending_conference": "string",
- "subresource_uris": {
- "property1": "string",
- "property2": "string"
}, - "member_count": 0
}
], - "page": 0,
- "page_size": 0,
- "num_pages": 0,
- "total": 0,
- "first_page_uri": "string",
- "next_page_uri": "string",
- "previous_page_uri": "string",
- "uri": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
{- "sid": "CFxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "friendly_name": "incident-42",
- "status": "init",
- "region": "string",
- "api_version": "string",
- "uri": "string",
- "date_created": "string",
- "date_updated": "string",
- "reason_conference_ended": "conference-ended-via-api",
- "call_sid_ending_conference": "string",
- "subresource_uris": {
- "property1": "string",
- "property2": "string"
}, - "member_count": 0
}v1 supports only Status=completed — kicks every participant
and tears down the room. Twilio's other update fields
(Announce*) are not yet implemented.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
| Status required | string Value: "completed" |
{- "sid": "CFxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "friendly_name": "incident-42",
- "status": "init",
- "region": "string",
- "api_version": "string",
- "uri": "string",
- "date_created": "string",
- "date_updated": "string",
- "reason_conference_ended": "conference-ended-via-api",
- "call_sid_ending_conference": "string",
- "subresource_uris": {
- "property1": "string",
- "property2": "string"
}, - "member_count": 0
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| ConferenceSid required | string^CF[a-f0-9]{32}$|^[A-Z]{2}[0-9a-f]+__.+$ Twilio-compatible Conference SID — literal |
| Muted | boolean Filter to participants with this Muted state. |
| Hold | boolean Filter to participants with this Hold state. |
| Coaching | boolean Filter to participants with this Coaching state. |
| Page | integer >= 0 Default: 0 Zero-based page index. |
| PageSize | integer [ 1 .. 1000 ] Default: 50 Page size. Max 1000; default 50. |
| PageToken | string The page token. This is provided by the API. |
{- "participants": [
- {
- "call_sid": "CAxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "conference_sid": "string",
- "account_sid": "string",
- "muted": true,
- "hold": true,
- "call_sid_to_coach": "string",
- "coaching": true,
- "queue_time": "string",
- "start_conference_on_enter": true,
- "end_conference_on_exit": true,
- "status": "queued",
- "label": "string",
- "api_version": "string",
- "uri": "string",
- "date_created": "string",
- "date_updated": "string"
}
], - "page": 0,
- "page_size": 0,
- "total": 0,
- "first_page_uri": "string",
- "next_page_uri": "string",
- "previous_page_uri": "string",
- "uri": "string"
}Places an outbound call from From to To that joins the named
conference on answer via inline voice markup. Returns immediately with
status=queued while the leg is ringing.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| ConferenceSid required | string^CF[a-f0-9]{32}$|^[A-Z]{2}[0-9a-f]+__.+$ Twilio-compatible Conference SID — literal |
| From required | string Caller ID / originating endpoint (E.164 or Twilio client:/sip:/app: form). |
| To required | string Destination endpoint to dial into the conference. |
| Label | string |
| Muted | boolean |
| StartConferenceOnEnter | boolean Default: true |
| EndConferenceOnExit | boolean Default: false |
| Timeout | integer Ring timeout in seconds (default 60). |
| StatusCallback | string <uri> |
| StatusCallbackMethod | string Enum: "GET" "POST" |
| StatusCallbackEvent | string |
{- "call_sid": "CAxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "conference_sid": "string",
- "account_sid": "string",
- "muted": true,
- "hold": true,
- "call_sid_to_coach": "string",
- "coaching": true,
- "queue_time": "string",
- "start_conference_on_enter": true,
- "end_conference_on_exit": true,
- "status": "queued",
- "label": "string",
- "api_version": "string",
- "uri": "string",
- "date_created": "string",
- "date_updated": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| ConferenceSid required | string^CF[a-f0-9]{32}$|^[A-Z]{2}[0-9a-f]+__.+$ Twilio-compatible Conference SID — literal |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
{- "call_sid": "CAxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "conference_sid": "string",
- "account_sid": "string",
- "muted": true,
- "hold": true,
- "call_sid_to_coach": "string",
- "coaching": true,
- "queue_time": "string",
- "start_conference_on_enter": true,
- "end_conference_on_exit": true,
- "status": "queued",
- "label": "string",
- "api_version": "string",
- "uri": "string",
- "date_created": "string",
- "date_updated": "string"
}At least one of Muted or Hold must be set. Twilio's
HoldUrl (custom hold-music URL) and AnnounceUrl are
not yet implemented.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| ConferenceSid required | string^CF[a-f0-9]{32}$|^[A-Z]{2}[0-9a-f]+__.+$ Twilio-compatible Conference SID — literal |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| Muted | boolean Mute / unmute the participant. |
| Hold | boolean Place the participant on hold (default hold-music profile) or remove from hold. |
{- "call_sid": "CAxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "conference_sid": "string",
- "account_sid": "string",
- "muted": true,
- "hold": true,
- "call_sid_to_coach": "string",
- "coaching": true,
- "queue_time": "string",
- "start_conference_on_enter": true,
- "end_conference_on_exit": true,
- "status": "queued",
- "label": "string",
- "api_version": "string",
- "uri": "string",
- "date_created": "string",
- "date_updated": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| ConferenceSid required | string^CF[a-f0-9]{32}$|^[A-Z]{2}[0-9a-f]+__.+$ Twilio-compatible Conference SID — literal |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
{- "code": 0,
- "message": "string",
- "more_info": "string",
- "status": 0
}Returns recordings created by <Dial><Conference record="record-from-start">
verbs that ran in this conference. Pagination envelope same as
/Recordings.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| ConferenceSid required | string^CF[a-f0-9]{32}$|^[A-Z]{2}[0-9a-f]+__.+$ Twilio-compatible Conference SID — literal |
| DateCreated | string <date-time> Filter to recordings created on this UTC date (YYYY-MM-DD). |
| DateCreated< | string <date-time> Filter to recordings created strictly before this UTC date. |
| DateCreated> | string <date-time> Filter to recordings created strictly after this UTC date. |
| Page | integer >= 0 Default: 0 Zero-based page index. |
| PageSize | integer [ 1 .. 1000 ] Default: 50 Page size. Max 1000; default 50. |
| PageToken | string The page token. This is provided by the API. |
{- "recordings": [
- {
- "sid": "RExxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "conference_sid": "string",
- "status": "in-progress",
- "source": "OutboundAPI",
- "channels": 1,
- "duration": "string",
- "api_version": "string",
- "uri": "string",
- "date_created": "string",
- "date_updated": "string",
- "start_time": "string",
- "price": "string",
- "price_unit": "string",
- "encryption_details": { },
- "subresource_uris": { },
- "media_url": "string",
- "error_code": 0
}
], - "page": 0,
- "page_size": 0,
- "num_pages": 0,
- "total": 0,
- "start": 0,
- "end": 0,
- "first_page_uri": "string",
- "next_page_uri": "string",
- "previous_page_uri": "string",
- "uri": "string"
}Same JSON resource as /Recordings/{RecordingSid} but enforces
the conference scope from the URL path. 404 if the recording exists
but is attached to a different conference.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| ConferenceSid required | string^CF[a-f0-9]{32}$|^[A-Z]{2}[0-9a-f]+__.+$ Twilio-compatible Conference SID — literal |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
{- "sid": "RExxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "conference_sid": "string",
- "status": "in-progress",
- "source": "OutboundAPI",
- "channels": 1,
- "duration": "string",
- "api_version": "string",
- "uri": "string",
- "date_created": "string",
- "date_updated": "string",
- "start_time": "string",
- "price": "string",
- "price_unit": "string",
- "encryption_details": { },
- "subresource_uris": { },
- "media_url": "string",
- "error_code": 0
}Same semantics as /Calls/{CallSid}/Recordings/{Sid} but enforces
conference scope from the URL path.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| ConferenceSid required | string^CF[a-f0-9]{32}$|^[A-Z]{2}[0-9a-f]+__.+$ Twilio-compatible Conference SID — literal |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
| Status required | string Enum: "stopped" "paused" "in-progress" |
{- "sid": "RExxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "conference_sid": "string",
- "status": "in-progress",
- "source": "OutboundAPI",
- "channels": 1,
- "duration": "string",
- "api_version": "string",
- "uri": "string",
- "date_created": "string",
- "date_updated": "string",
- "start_time": "string",
- "price": "string",
- "price_unit": "string",
- "encryption_details": { },
- "subresource_uris": { },
- "media_url": "string",
- "error_code": 0
}Same semantics as /Recordings/{Sid} but enforces conference
scope from the URL path.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| ConferenceSid required | string^CF[a-f0-9]{32}$|^[A-Z]{2}[0-9a-f]+__.+$ Twilio-compatible Conference SID — literal |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
{- "code": 0,
- "message": "string",
- "more_info": "string",
- "status": 0
}Create a named queue. Idempotent — POSTing the same FriendlyName a second time returns the existing queue rather than erroring (matches Twilio).
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| FriendlyName required | string <= 64 characters |
| MaxSize | integer >= 0 Default: 0 |
{- "sid": "QU0123456789abcdef0123456789abcdef",
- "account_sid": "string",
- "friendly_name": "support",
- "current_size": 0,
- "max_size": 0,
- "average_wait_time": 0,
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Page | integer >= 0 Default: 0 Zero-based page index. |
| PageSize | integer [ 1 .. 1000 ] Default: 50 Page size. Max 1000; default 50. |
| PageToken | string The page token. This is provided by the API. |
{- "queues": [
- {
- "sid": "QU0123456789abcdef0123456789abcdef",
- "account_sid": "string",
- "friendly_name": "support",
- "current_size": 0,
- "max_size": 0,
- "average_wait_time": 0,
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}
], - "page": 0,
- "page_size": 0,
- "num_pages": 0,
- "total": 0,
- "start": 0,
- "end": 0,
- "first_page_uri": "string",
- "next_page_uri": "string",
- "previous_page_uri": "string",
- "uri": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
{- "sid": "QU0123456789abcdef0123456789abcdef",
- "account_sid": "string",
- "friendly_name": "support",
- "current_size": 0,
- "max_size": 0,
- "average_wait_time": 0,
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
| FriendlyName | string <= 64 characters |
| MaxSize | integer >= 0 |
{- "sid": "QU0123456789abcdef0123456789abcdef",
- "account_sid": "string",
- "friendly_name": "support",
- "current_size": 0,
- "max_size": 0,
- "average_wait_time": 0,
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}Refused with 409 if any members are still waiting — caller must drain the queue first (matches Twilio's behaviour).
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
{- "code": 0,
- "message": "string",
- "more_info": "string",
- "status": 0
}Returned ordered by position; position 1 = longest waiting (front of queue).
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| QueueSid required | string^QU[0-9a-f]{32}$ Twilio-compatible Queue SID — literal "QU" + 32 hex chars (34
total). Server-generated on |
| Page | integer >= 0 Default: 0 Zero-based page index. |
| PageSize | integer [ 1 .. 1000 ] Default: 50 Page size. Max 1000; default 50. |
| PageToken | string The page token. This is provided by the API. |
{- "queue_members": [
- {
- "call_sid": "CAxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "queue_sid": "string",
- "account_sid": "string",
- "date_enqueued": "string",
- "wait_time": 0,
- "position": 0,
- "uri": "string"
}
], - "page": 0,
- "page_size": 0,
- "num_pages": 0,
- "total": 0,
- "start": 0,
- "end": 0,
- "first_page_uri": "string",
- "next_page_uri": "string",
- "previous_page_uri": "string",
- "uri": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| QueueSid required | string^QU[0-9a-f]{32}$ Twilio-compatible Queue SID — literal "QU" + 32 hex chars (34
total). Server-generated on |
{- "call_sid": "CAxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "queue_sid": "string",
- "account_sid": "string",
- "date_enqueued": "string",
- "wait_time": 0,
- "position": 0,
- "uri": "string"
}Pops the longest-waiting member and redirects their call to the
URL in the body. The member's
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| QueueSid required | string^QU[0-9a-f]{32}$ Twilio-compatible Queue SID — literal "QU" + 32 hex chars (34
total). Server-generated on |
| Url required | string <uri> HTTPS-only. |
| Method | string Default: "POST" Enum: "GET" "POST" |
{- "call_sid": "CAxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "queue_sid": "string",
- "account_sid": "string",
- "date_enqueued": "string",
- "wait_time": 0,
- "position": 0,
- "uri": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| QueueSid required | string^QU[0-9a-f]{32}$ Twilio-compatible Queue SID — literal "QU" + 32 hex chars (34
total). Server-generated on |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
{- "call_sid": "CAxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "queue_sid": "string",
- "account_sid": "string",
- "date_enqueued": "string",
- "wait_time": 0,
- "position": 0,
- "uri": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| QueueSid required | string^QU[0-9a-f]{32}$ Twilio-compatible Queue SID — literal "QU" + 32 hex chars (34
total). Server-generated on |
| CallSid required | string^CA[a-f0-9]{32}$ Twilio-format Call SID ( |
| Url required | string <uri> |
| Method | string Default: "POST" Enum: "GET" "POST" |
{- "call_sid": "CAxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "queue_sid": "string",
- "account_sid": "string",
- "date_enqueued": "string",
- "wait_time": 0,
- "position": 0,
- "uri": "string"
}Persistent named voice markup+callback bundle — referenced by
<Dial><Application>AP…</Application></Dial>. The agent's
Dial verb resolves the SID, fetches voice_url, and runs the
returned voice markup on the call leg.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| FriendlyName | string |
| VoiceUrl | string <uri> |
| VoiceMethod | string Enum: "GET" "POST" |
| VoiceFallbackUrl | string <uri> |
| VoiceFallbackMethod | string Enum: "GET" "POST" |
| VoiceCallerIdLookup | boolean |
| StatusCallback | string <uri> |
| StatusCallbackMethod | string Enum: "GET" "POST" |
| StatusCallbackEvent | string Comma-separated. |
{- "sid": "AP0123456789abcdef0123456789abcdef",
- "account_sid": "string",
- "friendly_name": "ivr-main",
- "api_version": "string",
- "voice_url": "string",
- "voice_method": "GET",
- "voice_fallback_url": "string",
- "voice_fallback_method": "GET",
- "voice_caller_id_lookup": true,
- "status_callback": "string",
- "status_callback_method": "GET",
- "status_callback_event": "string",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| FriendlyName | string Filter to Applications with this exact FriendlyName. |
| Page | integer >= 0 Default: 0 Zero-based page index. |
| PageSize | integer [ 1 .. 1000 ] Default: 50 Page size. Max 1000; default 50. |
| PageToken | string The page token. This is provided by the API. |
{- "applications": [
- {
- "sid": "AP0123456789abcdef0123456789abcdef",
- "account_sid": "string",
- "friendly_name": "ivr-main",
- "api_version": "string",
- "voice_url": "string",
- "voice_method": "GET",
- "voice_fallback_url": "string",
- "voice_fallback_method": "GET",
- "voice_caller_id_lookup": true,
- "status_callback": "string",
- "status_callback_method": "GET",
- "status_callback_event": "string",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}
], - "page": 0,
- "page_size": 0,
- "num_pages": 0,
- "total": 0,
- "start": 0,
- "end": 0,
- "first_page_uri": "string",
- "next_page_uri": "string",
- "previous_page_uri": "string",
- "uri": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
{- "sid": "AP0123456789abcdef0123456789abcdef",
- "account_sid": "string",
- "friendly_name": "ivr-main",
- "api_version": "string",
- "voice_url": "string",
- "voice_method": "GET",
- "voice_fallback_url": "string",
- "voice_fallback_method": "GET",
- "voice_caller_id_lookup": true,
- "status_callback": "string",
- "status_callback_method": "GET",
- "status_callback_event": "string",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
| FriendlyName | string |
| VoiceUrl | string <uri> |
| VoiceMethod | string Enum: "GET" "POST" |
| VoiceFallbackUrl | string <uri> |
| VoiceFallbackMethod | string Enum: "GET" "POST" |
| VoiceCallerIdLookup | boolean |
| StatusCallback | string <uri> |
| StatusCallbackMethod | string Enum: "GET" "POST" |
| StatusCallbackEvent | string |
{- "sid": "AP0123456789abcdef0123456789abcdef",
- "account_sid": "string",
- "friendly_name": "ivr-main",
- "api_version": "string",
- "voice_url": "string",
- "voice_method": "GET",
- "voice_fallback_url": "string",
- "voice_fallback_method": "GET",
- "voice_caller_id_lookup": true,
- "status_callback": "string",
- "status_callback_method": "GET",
- "status_callback_event": "string",
- "date_created": "string",
- "date_updated": "string",
- "uri": "string"
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
{- "code": 0,
- "message": "string",
- "more_info": "string",
- "status": 0
}Returns every DID currently bound to the authenticated account. Tenant-scoped — only the caller's own rows are returned; the global admin list endpoint is on the private listener and not described here.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Page | integer >= 0 Default: 0 Zero-based page index. |
| PageSize | integer [ 1 .. 1000 ] Default: 50 Page size. Max 1000; default 50. |
| PageToken | string The page token. This is provided by the API. |
| PhoneNumber | string^\+[1-9]\d{1,14}$ Exact-match filter on the E.164 phone number. Twilio's
canonical lookup pattern is
|
| FriendlyName | string Twilio-compatible parameter. VoiceML doesn't model per-DID FriendlyName on phone_numbers (the field is empty in every view), so this parameter is accepted but does not narrow or widen the result set. Declared for SDK migration compatibility. |
| Beta | boolean Twilio-compatible parameter. VoiceML does not model the carrier-supplied "beta" flag (no upstream beta-status distinction), so this parameter is accepted but does not narrow or widen the result set. Declared for SDK migration compatibility. |
| Origin | string Enum: "twilio" "hosted" Twilio-compatible parameter. VoiceML treats every assigned DID as locally provisioned (no twilio/hosted origin distinction), so this parameter is accepted but does not narrow or widen the result set. Declared for SDK migration compatibility. |
{- "incoming_phone_numbers": [
- {
- "sid": "PNxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "phone_number": "+18005551234",
- "friendly_name": "string",
- "api_version": "2010-04-01",
- "uri": "string",
- "origin": "twilio",
- "beta": true,
- "capabilities": {
- "voice": true,
- "sms": true,
- "mms": true,
- "fax": true
}, - "voice_url": "string",
- "voice_method": "GET",
- "voice_fallback_url": "string",
- "voice_fallback_method": "GET",
- "voice_application_sid": "string",
- "voice_caller_id_lookup": true,
- "voice_receive_mode": "voice",
- "sms_url": "string",
- "sms_method": "GET",
- "sms_fallback_url": "string",
- "sms_fallback_method": "GET",
- "sms_application_sid": "string",
- "status_callback": "string",
- "status_callback_method": "GET",
- "trunk_sid": "string",
- "address_sid": "string",
- "address_requirements": "none",
- "identity_sid": "string",
- "bundle_sid": "string",
- "emergency_status": "Active",
- "emergency_address_sid": "string",
- "emergency_address_status": "registered",
- "status": "string",
- "type": "local",
- "date_created": "string",
- "date_updated": "string"
}
], - "page": 0,
- "page_size": 0,
- "num_pages": 0,
- "total": 0,
- "start": 0,
- "end": 0,
- "first_page_uri": "string",
- "next_page_uri": "string",
- "previous_page_uri": "string",
- "uri": "string"
}Tenant self-serve assignment of an E.164 DID. Idempotent on
the same tenant — re-POSTing the same PhoneNumber rebinds
its voice routing without erroring (matches Twilio's update
semantics). Returns 409 when the number is already claimed
by a different account.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| PhoneNumber required | string E.164 — leading |
| VoiceUrl | string <uri> |
| VoiceMethod | string Enum: "GET" "POST" |
| VoiceFallbackUrl | string <uri> |
| VoiceFallbackMethod | string Enum: "GET" "POST" |
{- "sid": "PNxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "phone_number": "+18005551234",
- "friendly_name": "string",
- "api_version": "2010-04-01",
- "uri": "string",
- "origin": "twilio",
- "beta": true,
- "capabilities": {
- "voice": true,
- "sms": true,
- "mms": true,
- "fax": true
}, - "voice_url": "string",
- "voice_method": "GET",
- "voice_fallback_url": "string",
- "voice_fallback_method": "GET",
- "voice_application_sid": "string",
- "voice_caller_id_lookup": true,
- "voice_receive_mode": "voice",
- "sms_url": "string",
- "sms_method": "GET",
- "sms_fallback_url": "string",
- "sms_fallback_method": "GET",
- "sms_application_sid": "string",
- "status_callback": "string",
- "status_callback_method": "GET",
- "trunk_sid": "string",
- "address_sid": "string",
- "address_requirements": "none",
- "identity_sid": "string",
- "bundle_sid": "string",
- "emergency_status": "Active",
- "emergency_address_sid": "string",
- "emergency_address_status": "registered",
- "status": "string",
- "type": "local",
- "date_created": "string",
- "date_updated": "string"
}Twilio type-specific list alias. Returns DIDs inferred as
local (non-toll-free US numbers and all non-US numbers).
Same pagination envelope as /IncomingPhoneNumbers.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Page | integer >= 0 Default: 0 Zero-based page index. |
| PageSize | integer [ 1 .. 1000 ] Default: 50 Page size. Max 1000; default 50. |
| PageToken | string The page token. This is provided by the API. |
| PhoneNumber | string^\+[1-9]\d{1,14}$ |
| FriendlyName | string |
| Beta | boolean |
| Origin | string Enum: "twilio" "hosted" |
{- "incoming_phone_numbers": [
- {
- "sid": "PNxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "phone_number": "+18005551234",
- "friendly_name": "string",
- "api_version": "2010-04-01",
- "uri": "string",
- "origin": "twilio",
- "beta": true,
- "capabilities": {
- "voice": true,
- "sms": true,
- "mms": true,
- "fax": true
}, - "voice_url": "string",
- "voice_method": "GET",
- "voice_fallback_url": "string",
- "voice_fallback_method": "GET",
- "voice_application_sid": "string",
- "voice_caller_id_lookup": true,
- "voice_receive_mode": "voice",
- "sms_url": "string",
- "sms_method": "GET",
- "sms_fallback_url": "string",
- "sms_fallback_method": "GET",
- "sms_application_sid": "string",
- "status_callback": "string",
- "status_callback_method": "GET",
- "trunk_sid": "string",
- "address_sid": "string",
- "address_requirements": "none",
- "identity_sid": "string",
- "bundle_sid": "string",
- "emergency_status": "Active",
- "emergency_address_sid": "string",
- "emergency_address_status": "registered",
- "status": "string",
- "type": "local",
- "date_created": "string",
- "date_updated": "string"
}
], - "page": 0,
- "page_size": 0,
- "num_pages": 0,
- "total": 0,
- "start": 0,
- "end": 0,
- "first_page_uri": "string",
- "next_page_uri": "string",
- "previous_page_uri": "string",
- "uri": "string"
}Twilio type-specific create alias — same semantics as
POST /IncomingPhoneNumbers.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| PhoneNumber required | string |
| VoiceUrl | string <uri> |
| VoiceMethod | string Enum: "GET" "POST" |
{- "sid": "PNxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "phone_number": "+18005551234",
- "friendly_name": "string",
- "api_version": "2010-04-01",
- "uri": "string",
- "origin": "twilio",
- "beta": true,
- "capabilities": {
- "voice": true,
- "sms": true,
- "mms": true,
- "fax": true
}, - "voice_url": "string",
- "voice_method": "GET",
- "voice_fallback_url": "string",
- "voice_fallback_method": "GET",
- "voice_application_sid": "string",
- "voice_caller_id_lookup": true,
- "voice_receive_mode": "voice",
- "sms_url": "string",
- "sms_method": "GET",
- "sms_fallback_url": "string",
- "sms_fallback_method": "GET",
- "sms_application_sid": "string",
- "status_callback": "string",
- "status_callback_method": "GET",
- "trunk_sid": "string",
- "address_sid": "string",
- "address_requirements": "none",
- "identity_sid": "string",
- "bundle_sid": "string",
- "emergency_status": "Active",
- "emergency_address_sid": "string",
- "emergency_address_status": "registered",
- "status": "string",
- "type": "local",
- "date_created": "string",
- "date_updated": "string"
}Twilio type-specific list alias. VoiceML does not track carrier mobile classification on BYO DIDs — this endpoint returns an empty page unless future metadata is added.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Page | integer >= 0 Default: 0 Zero-based page index. |
| PageSize | integer [ 1 .. 1000 ] Default: 50 Page size. Max 1000; default 50. |
| PageToken | string The page token. This is provided by the API. |
| PhoneNumber | string^\+[1-9]\d{1,14}$ |
| FriendlyName | string |
| Beta | boolean |
| Origin | string Enum: "twilio" "hosted" |
{- "incoming_phone_numbers": [
- {
- "sid": "PNxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "phone_number": "+18005551234",
- "friendly_name": "string",
- "api_version": "2010-04-01",
- "uri": "string",
- "origin": "twilio",
- "beta": true,
- "capabilities": {
- "voice": true,
- "sms": true,
- "mms": true,
- "fax": true
}, - "voice_url": "string",
- "voice_method": "GET",
- "voice_fallback_url": "string",
- "voice_fallback_method": "GET",
- "voice_application_sid": "string",
- "voice_caller_id_lookup": true,
- "voice_receive_mode": "voice",
- "sms_url": "string",
- "sms_method": "GET",
- "sms_fallback_url": "string",
- "sms_fallback_method": "GET",
- "sms_application_sid": "string",
- "status_callback": "string",
- "status_callback_method": "GET",
- "trunk_sid": "string",
- "address_sid": "string",
- "address_requirements": "none",
- "identity_sid": "string",
- "bundle_sid": "string",
- "emergency_status": "Active",
- "emergency_address_sid": "string",
- "emergency_address_status": "registered",
- "status": "string",
- "type": "local",
- "date_created": "string",
- "date_updated": "string"
}
], - "page": 0,
- "page_size": 0,
- "num_pages": 0,
- "total": 0,
- "start": 0,
- "end": 0,
- "first_page_uri": "string",
- "next_page_uri": "string",
- "previous_page_uri": "string",
- "uri": "string"
}Twilio type-specific create alias — same semantics as
POST /IncomingPhoneNumbers.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| PhoneNumber required | string |
| VoiceUrl | string <uri> |
| VoiceMethod | string Enum: "GET" "POST" |
{- "sid": "PNxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "phone_number": "+18005551234",
- "friendly_name": "string",
- "api_version": "2010-04-01",
- "uri": "string",
- "origin": "twilio",
- "beta": true,
- "capabilities": {
- "voice": true,
- "sms": true,
- "mms": true,
- "fax": true
}, - "voice_url": "string",
- "voice_method": "GET",
- "voice_fallback_url": "string",
- "voice_fallback_method": "GET",
- "voice_application_sid": "string",
- "voice_caller_id_lookup": true,
- "voice_receive_mode": "voice",
- "sms_url": "string",
- "sms_method": "GET",
- "sms_fallback_url": "string",
- "sms_fallback_method": "GET",
- "sms_application_sid": "string",
- "status_callback": "string",
- "status_callback_method": "GET",
- "trunk_sid": "string",
- "address_sid": "string",
- "address_requirements": "none",
- "identity_sid": "string",
- "bundle_sid": "string",
- "emergency_status": "Active",
- "emergency_address_sid": "string",
- "emergency_address_status": "registered",
- "status": "string",
- "type": "local",
- "date_created": "string",
- "date_updated": "string"
}Twilio type-specific list alias. Returns US toll-free NPAs
(800/833/844/855/866/877/888). Same pagination envelope as
/IncomingPhoneNumbers.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Page | integer >= 0 Default: 0 Zero-based page index. |
| PageSize | integer [ 1 .. 1000 ] Default: 50 Page size. Max 1000; default 50. |
| PageToken | string The page token. This is provided by the API. |
| PhoneNumber | string^\+[1-9]\d{1,14}$ |
| FriendlyName | string |
| Beta | boolean |
| Origin | string Enum: "twilio" "hosted" |
{- "incoming_phone_numbers": [
- {
- "sid": "PNxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "phone_number": "+18005551234",
- "friendly_name": "string",
- "api_version": "2010-04-01",
- "uri": "string",
- "origin": "twilio",
- "beta": true,
- "capabilities": {
- "voice": true,
- "sms": true,
- "mms": true,
- "fax": true
}, - "voice_url": "string",
- "voice_method": "GET",
- "voice_fallback_url": "string",
- "voice_fallback_method": "GET",
- "voice_application_sid": "string",
- "voice_caller_id_lookup": true,
- "voice_receive_mode": "voice",
- "sms_url": "string",
- "sms_method": "GET",
- "sms_fallback_url": "string",
- "sms_fallback_method": "GET",
- "sms_application_sid": "string",
- "status_callback": "string",
- "status_callback_method": "GET",
- "trunk_sid": "string",
- "address_sid": "string",
- "address_requirements": "none",
- "identity_sid": "string",
- "bundle_sid": "string",
- "emergency_status": "Active",
- "emergency_address_sid": "string",
- "emergency_address_status": "registered",
- "status": "string",
- "type": "local",
- "date_created": "string",
- "date_updated": "string"
}
], - "page": 0,
- "page_size": 0,
- "num_pages": 0,
- "total": 0,
- "start": 0,
- "end": 0,
- "first_page_uri": "string",
- "next_page_uri": "string",
- "previous_page_uri": "string",
- "uri": "string"
}Twilio type-specific create alias — same semantics as
POST /IncomingPhoneNumbers.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| PhoneNumber required | string |
| VoiceUrl | string <uri> |
| VoiceMethod | string Enum: "GET" "POST" |
{- "sid": "PNxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "phone_number": "+18005551234",
- "friendly_name": "string",
- "api_version": "2010-04-01",
- "uri": "string",
- "origin": "twilio",
- "beta": true,
- "capabilities": {
- "voice": true,
- "sms": true,
- "mms": true,
- "fax": true
}, - "voice_url": "string",
- "voice_method": "GET",
- "voice_fallback_url": "string",
- "voice_fallback_method": "GET",
- "voice_application_sid": "string",
- "voice_caller_id_lookup": true,
- "voice_receive_mode": "voice",
- "sms_url": "string",
- "sms_method": "GET",
- "sms_fallback_url": "string",
- "sms_fallback_method": "GET",
- "sms_application_sid": "string",
- "status_callback": "string",
- "status_callback_method": "GET",
- "trunk_sid": "string",
- "address_sid": "string",
- "address_requirements": "none",
- "identity_sid": "string",
- "bundle_sid": "string",
- "emergency_status": "Active",
- "emergency_address_sid": "string",
- "emergency_address_status": "registered",
- "status": "string",
- "type": "local",
- "date_created": "string",
- "date_updated": "string"
}Tenant-scoped — a phone number that exists but belongs to a different account 404s with the same shape as a nonexistent number (no enumeration leak).
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
{- "sid": "PNxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "phone_number": "+18005551234",
- "friendly_name": "string",
- "api_version": "2010-04-01",
- "uri": "string",
- "origin": "twilio",
- "beta": true,
- "capabilities": {
- "voice": true,
- "sms": true,
- "mms": true,
- "fax": true
}, - "voice_url": "string",
- "voice_method": "GET",
- "voice_fallback_url": "string",
- "voice_fallback_method": "GET",
- "voice_application_sid": "string",
- "voice_caller_id_lookup": true,
- "voice_receive_mode": "voice",
- "sms_url": "string",
- "sms_method": "GET",
- "sms_fallback_url": "string",
- "sms_fallback_method": "GET",
- "sms_application_sid": "string",
- "status_callback": "string",
- "status_callback_method": "GET",
- "trunk_sid": "string",
- "address_sid": "string",
- "address_requirements": "none",
- "identity_sid": "string",
- "bundle_sid": "string",
- "emergency_status": "Active",
- "emergency_address_sid": "string",
- "emergency_address_status": "registered",
- "status": "string",
- "type": "local",
- "date_created": "string",
- "date_updated": "string"
}Only-set-fields-touched semantics. Tenant-scoped — a number assigned to a different account 404s.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
| VoiceUrl | string <uri> |
| VoiceMethod | string Enum: "GET" "POST" |
| VoiceFallbackUrl | string <uri> |
| VoiceFallbackMethod | string Enum: "GET" "POST" |
{- "sid": "PNxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "phone_number": "+18005551234",
- "friendly_name": "string",
- "api_version": "2010-04-01",
- "uri": "string",
- "origin": "twilio",
- "beta": true,
- "capabilities": {
- "voice": true,
- "sms": true,
- "mms": true,
- "fax": true
}, - "voice_url": "string",
- "voice_method": "GET",
- "voice_fallback_url": "string",
- "voice_fallback_method": "GET",
- "voice_application_sid": "string",
- "voice_caller_id_lookup": true,
- "voice_receive_mode": "voice",
- "sms_url": "string",
- "sms_method": "GET",
- "sms_fallback_url": "string",
- "sms_fallback_method": "GET",
- "sms_application_sid": "string",
- "status_callback": "string",
- "status_callback_method": "GET",
- "trunk_sid": "string",
- "address_sid": "string",
- "address_requirements": "none",
- "identity_sid": "string",
- "bundle_sid": "string",
- "emergency_status": "Active",
- "emergency_address_sid": "string",
- "emergency_address_status": "registered",
- "status": "string",
- "type": "local",
- "date_created": "string",
- "date_updated": "string"
}Tenant-scoped — a number assigned to a different account 404s without affecting the row. Idempotent: 204 on success OR if the number was already gone.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
{- "code": 0,
- "message": "string",
- "more_info": "string",
- "status": 0
}| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| DateCreated | string <date-time> Filter to recordings created on this UTC date (YYYY-MM-DD). |
| DateCreated< | string <date-time> Filter to recordings created strictly before this UTC date. |
| DateCreated> | string <date-time> Filter to recordings created strictly after this UTC date. |
| CallSid | string^CA[0-9a-fA-F]{32}$ Filter to recordings whose CallSid equals this value. |
| ConferenceSid | string^CF[0-9a-fA-F]{32}$ Filter to recordings whose ConferenceSid equals this value. |
| IncludeSoftDeleted | boolean Twilio-compatible parameter. VoiceML hard-deletes recordings — there is no soft-delete store — so this parameter is accepted but does not change the result set. |
| Page | integer >= 0 Default: 0 Zero-based page index. |
| PageSize | integer [ 1 .. 1000 ] Default: 50 Page size. Max 1000; default 50. |
| PageToken | string The page token. This is provided by the API. |
{- "recordings": [
- {
- "sid": "RExxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "conference_sid": "string",
- "status": "in-progress",
- "source": "OutboundAPI",
- "channels": 1,
- "duration": "string",
- "api_version": "string",
- "uri": "string",
- "date_created": "string",
- "date_updated": "string",
- "start_time": "string",
- "price": "string",
- "price_unit": "string",
- "encryption_details": { },
- "subresource_uris": { },
- "media_url": "string",
- "error_code": 0
}
], - "page": 0,
- "page_size": 0,
- "num_pages": 0,
- "total": 0,
- "start": 0,
- "end": 0,
- "first_page_uri": "string",
- "next_page_uri": "string",
- "previous_page_uri": "string",
- "uri": "string"
}Returns JSON metadata for the recording. The companion
.wav path returns the audio bytes (or a 302/410 redirect
depending on archival state); see recordings.fetchAudio.
Tenant-scoped: a RecordingSid that belongs to a different
account returns 404 with the same shape as a nonexistent
sid — no enumeration leak.
See docs/aws-recordings.md for the archival pipeline.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
| IncludeSoftDeleted | boolean Twilio-compatible parameter. VoiceML hard-deletes recordings — accepted but does not change fetch behaviour. |
{- "sid": "RExxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
- "account_sid": "string",
- "call_sid": "string",
- "conference_sid": "string",
- "status": "in-progress",
- "source": "OutboundAPI",
- "channels": 1,
- "duration": "string",
- "api_version": "string",
- "uri": "string",
- "date_created": "string",
- "date_updated": "string",
- "start_time": "string",
- "price": "string",
- "price_unit": "string",
- "encryption_details": { },
- "subresource_uris": { },
- "media_url": "string",
- "error_code": 0
}Removes the memdb row, unlinks the on-disk WAV, and (when
RECORDING_S3_BUCKET is configured) issues an S3 DeleteObject
on the archived copy. S3 deletion is best-effort: failure logs
but does not fail the API call (the bucket lifecycle policy is
the long-stop cleanup). Tenant-scoped — cross-tenant DELETE
returns 404 without affecting the row.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
{- "code": 0,
- "message": "string",
- "more_info": "string",
- "status": 0
}Returns the captured audio as audio/wav with one of three
delivery shapes:
200 OK — local file present (typical for the first
RECORDING_LOCAL_GRACE window after the call ends).302 Found — local file cleaned up but archived to S3;
Location header points at a presigned URL with TTL
RECORDING_PRESIGN_TTL.410 Gone — local file gone AND no s3_key set
(typically: archival not configured + cleanup ran, or
archival failed and the WAV was lost).Tenant-scoped: a RecordingSid that belongs to a different
account returns 404 with the same shape as a nonexistent
sid — no enumeration leak.
See docs/aws-recordings.md for the archival pipeline.
| AccountSid required | string^AC[0-9a-f]{32}$ Twilio-format AccountSid: literal "AC" + 32 hex chars (34 total). Server-generated at account creation; the same value the customer's Twilio SDK validates in its constructor. |
| Sid required | string^(CA(?:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[... Twilio generic resource identifier on fetch-by-id endpoints
( |
{- "code": 0,
- "message": "string",
- "more_info": "string",
- "status": 0
}Composite probe with two-tier severity. Hard checks (memdb,
disk free space, FreeSWITCH process + required modules +
Sofia profile RUNNING) flip the LB-facing ok boolean.
Soft checks (host CPU loadavg, memory pressure, FS workload
percents, Raft cluster) surface in warnings only — the LB
stays in rotation. Result cached 5 s on full success.
{- "ok": true,
- "warnings": [
- {
- "check": "memdb",
- "detail": "memdb ping: connection refused"
}
]
}