Twilio Trunks API

The Trunks API from Twilio — 12 operation(s) for trunks.

Operations 26

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

POST /v2/Trunks/{SipTrunkDomain} Assign an inbound processing region to a SIP trunk · Update trunks #
Ask an LLM
“How do I move a SIP trunk domain's inbound voice processing to a different region?”
“Is it possible to pin inbound calls on a trunk domain URL to one processing region?”
Tell an agent
Assign inbound processing region {voice_region} to SIP trunk domain {trunk_domain}.
Set the voice region of trunk domain {trunk_domain} to {voice_region} and label it {name}.
GET /v2/Trunks/{SipTrunkDomain} See which inbound processing region a SIP trunk uses · Fetch trunks #
Ask an LLM
“Which inbound processing region is my SIP trunk domain assigned to?”
“Can I check where voice traffic for a trunk domain URL gets processed?”
Tell an agent
Show the inbound processing region for SIP trunk domain {trunk_domain}.
Look up the voice region currently assigned to trunk domain {trunk_domain}.
GET /v1/Trunks/{TrunkSid}/CredentialLists/{Sid} Get one credential list attached to a trunk · Fetch credential list #
Ask an LLM
“Can I see the details of a specific credential list attached to my SIP trunk?”
“Is a given credential list actually associated with this trunk?”
Tell an agent
Get credential list {credential_list} on trunk {trunk}.
Show the association between trunk {trunk} and credential list {credential_list}.
DELETE /v1/Trunks/{TrunkSid}/CredentialLists/{Sid} Detach a credential list from a trunk · Delete credential list #
Ask an LLM
“How do I stop a credential list from authenticating calls on my SIP trunk?”
“Can I remove a username/password credential list from a trunk without deleting the list itself?”
Tell an agent destructive · confirm first
Remove credential list {credential_list} from trunk {trunk}.
Detach credential list {credential_list} so trunk {trunk} no longer uses it for authentication.
POST /v1/Trunks/{TrunkSid}/CredentialLists Attach a credential list to a trunk · Create credential list #
Ask an LLM
“How do I require SIP credentials for calls coming into my trunk?”
“Can I reuse an existing credential list to authenticate a new trunk?”
Tell an agent
Attach credential list {credential_list} to trunk {trunk}.
Protect trunk {trunk} with the usernames and passwords in credential list {credential_list}.
GET /v1/Trunks/{TrunkSid}/CredentialLists List the credential lists on a trunk · List credential list #
Ask an LLM
“Which credential lists are protecting my SIP trunk right now?”
“What username/password lists does a trunk accept for authentication?”
Tell an agent
List every credential list attached to trunk {trunk}.
Show the credential lists on trunk {trunk}, {page_size} per page.
GET /v1/Trunks/{TrunkSid}/IpAccessControlLists/{Sid} Get one IP access control list on a trunk · Fetch ip access control list #
Ask an LLM
“Can I look up a single IP access control list associated with my trunk?”
“Is a particular IP allowlist attached to this SIP trunk?”
Tell an agent
Get IP access control list {ip_acl} on trunk {trunk}.
Show the details of IP allowlist {ip_acl} as associated with trunk {trunk}.
DELETE /v1/Trunks/{TrunkSid}/IpAccessControlLists/{Sid} Remove an IP access control list from a trunk · Delete ip access control list #
Ask an LLM
“How do I stop an IP allowlist from applying to my SIP trunk?”
“Can I disassociate an IP access control list from one trunk only?”
Tell an agent destructive · confirm first
Remove IP access control list {ip_acl} from trunk {trunk}.
Disassociate IP allowlist {ip_acl} from trunk {trunk}.
POST /v1/Trunks/{TrunkSid}/IpAccessControlLists Associate an IP access control list with a trunk · Create ip access control list #
Ask an LLM
“How do I restrict my SIP trunk to traffic from known IP addresses?”
“Can I apply an existing IP allowlist to a trunk?”
Tell an agent
Associate IP access control list {ip_acl} with trunk {trunk}.
Only accept SIP traffic on trunk {trunk} from the addresses in IP allowlist {ip_acl}.
GET /v1/Trunks/{TrunkSid}/IpAccessControlLists List the IP access control lists on a trunk · List ip access control list #
Ask an LLM
“Which IP addresses are allowed to send traffic to my SIP trunk?”
“What IP access control lists are associated with a trunk?”
Tell an agent
List all IP access control lists for trunk {trunk}.
Show the IP allowlists on trunk {trunk}, {page_size} at a time.
GET /v1/Trunks/{TrunkSid}/OriginationUrls/{Sid} Get one origination URL on a trunk · Fetch origination url #
Ask an LLM
“What SIP address, priority and weight does a given origination URL on my trunk have?”
“Can I check whether a specific origination URL is enabled?”
Tell an agent
Get origination URL {origination_url} on trunk {trunk}.
Show the SIP URL, priority and weight for origination entry {origination_url} of trunk {trunk}.
DELETE /v1/Trunks/{TrunkSid}/OriginationUrls/{Sid} Delete an origination URL from a trunk · Delete origination url #
Ask an LLM
“How do I stop sending calls from my trunk to an old SIP endpoint?”
“Can I permanently delete one origination URL from a trunk?”
Tell an agent destructive · confirm first
Delete origination URL {origination_url} from trunk {trunk}.
Remove the origination entry {origination_url} so trunk {trunk} stops routing calls to it.
POST /v1/Trunks/{TrunkSid}/OriginationUrls/{Sid} Change an origination URL on a trunk · Update origination url #
Ask an LLM
“How do I change the priority or weight of an existing origination URL?”
“Can I temporarily disable one origination URL without deleting it?”
Tell an agent
Set the priority of origination URL {origination_url} on trunk {trunk} to {priority}.
Disable origination URL {origination_url} on trunk {trunk} by setting enabled to {enabled}.
POST /v1/Trunks/{TrunkSid}/OriginationUrls Add an origination URL to a trunk · Create origination url #
Ask an LLM
“How do I tell my trunk where to deliver calls to my SIP infrastructure?”
“Can I add a backup SIP endpoint with a lower priority to a trunk?”
Tell an agent
Add origination URL {sip_url} named {name} to trunk {trunk} with priority {priority}, weight {weight}, enabled {enabled}.
Create a new origination entry on trunk {trunk} that sends calls to {sip_url}.
GET /v1/Trunks/{TrunkSid}/OriginationUrls List the origination URLs on a trunk · List origination url #
Ask an LLM
“Where does my SIP trunk send outbound-to-PBX calls?”
“Which origination URLs are configured on a trunk and in what priority order?”
Tell an agent
List the origination URLs on trunk {trunk}.
Show every SIP endpoint trunk {trunk} routes calls to, {page_size} per page.
GET /v1/Trunks/{TrunkSid}/PhoneNumbers/{Sid} Get one phone number associated with a trunk · Fetch phone number #
Ask an LLM
“Can I confirm a specific phone number is routed through my SIP trunk?”
“What are the details of a number attached to a trunk?”
Tell an agent
Get phone number {phone_number} on trunk {trunk}.
Show how number {phone_number} is associated with trunk {trunk}.
DELETE /v1/Trunks/{TrunkSid}/PhoneNumbers/{Sid} Remove a phone number from a trunk · Delete phone number #
Ask an LLM
“How do I take a phone number off my SIP trunk?”
“Can I disassociate a number from a trunk so it stops routing there?”
Tell an agent destructive · confirm first
Remove phone number {phone_number} from trunk {trunk}.
Stop routing number {phone_number} through trunk {trunk}.
POST /v1/Trunks/{TrunkSid}/PhoneNumbers Associate a phone number with a trunk · Create phone number #
Ask an LLM
“How do I route calls for one of my phone numbers through a SIP trunk?”
“Can I move a number I own onto a trunk?”
Tell an agent
Associate phone number {phone_number_sid} with trunk {trunk}.
Route incoming calls for number {phone_number_sid} through trunk {trunk}.
GET /v1/Trunks/{TrunkSid}/PhoneNumbers List the phone numbers on a trunk · List phone number #
Ask an LLM
“Which phone numbers are routed through my SIP trunk?”
“What numbers are currently attached to a trunk?”
Tell an agent
List the phone numbers on trunk {trunk}.
Show all numbers associated with trunk {trunk}, {page_size} per page.
GET /v1/Trunks/{TrunkSid}/Recording See a trunk's call recording settings · Fetch recording #
Ask an LLM
“Is call recording turned on for my SIP trunk?”
“What recording mode and trim setting does a trunk use?”
Tell an agent
Show the recording settings for trunk {trunk}.
Check whether calls on trunk {trunk} are being recorded.
POST /v1/Trunks/{TrunkSid}/Recording Change a trunk's call recording settings · Update recording #
Ask an LLM
“How do I turn on call recording for everything going through a trunk?”
“Can I have trunk recordings trimmed of silence?”
Tell an agent
Set the recording mode of trunk {trunk} to {mode}.
Change the recording trim setting on trunk {trunk} to {trim}.
GET /v1/Trunks/{Sid} Get a SIP trunk's configuration · Fetch trunk #
Ask an LLM
“What domain name, disaster recovery URL and security settings does my SIP trunk have?”
“Is secure trunking or CNAM lookup enabled on a given trunk?”
Tell an agent
Get SIP trunk {trunk}.
Show the full configuration of trunk {trunk}.
DELETE /v1/Trunks/{Sid} Delete a SIP trunk · Delete trunk #
Ask an LLM
“How do I permanently get rid of a SIP trunk I no longer use?”
“Can I delete a whole trunk rather than just its phone numbers?”
Tell an agent destructive · confirm first
Delete SIP trunk {trunk}.
Tear down trunk {trunk} entirely.
POST /v1/Trunks/{Sid} Update a SIP trunk's settings · Update trunk #
Ask an LLM
“How do I turn on Secure Trunking (TLS and SRTP) for an existing trunk?”
“Can I change the disaster recovery URL on a trunk I already set up?”
Tell an agent
Enable secure trunking on trunk {trunk} by setting secure to {secure}.
Change the disaster recovery URL of existing trunk {trunk} to {recovery_url}.
POST /v1/Trunks Create a new SIP trunk · Create trunk #
Ask an LLM
“How do I set up a new Elastic SIP Trunk?”
“Can I reserve a termination domain name when I create a trunk?”
Tell an agent
Create a new SIP trunk called {name}.
Create a trunk named {name} with termination domain {domain} and disaster recovery URL {recovery_url}.
GET /v1/Trunks List my SIP trunks · List trunk #
Ask an LLM
“Which SIP trunks exist on my account?”
“What Elastic SIP Trunks have I created so far?”
Tell an agent
List all my SIP trunks.
Show my trunks, {page_size} per page.

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/twilio-trunks-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

twilio-trunks-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Twilio Trunks API
  version: 1.52.0
  contact:
    name: Twilio Support
    url: https://support.twilio.com
    email: support@twilio.com
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  termsOfService: https://www.twilio.com/legal/tos
  description: 'Operations tagged Trunks across 2 of this provider''s published API definitions: routes-openapi-original.yml, trunking-openapi-original.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://routes.twilio.com
- url: https://trunking.twilio.com
tags:


# --- truncated at 32 KB (65 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/twilio/refs/heads/main/openapi/twilio-trunks-api-openapi.yml