Syllable Channels.twilio.numbers API
Operations related to setting up phone numbers in Twilio for use in channels.
Operations related to setting up phone numbers in Twilio for use in channels.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/syllable-channels-twilio-numbers-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
title: SyllableSDK Channels.twilio.numbers API
description: "\n# Syllable Platform SDK\n\nSyllable SDK gives you the power of awesome AI agentry. \U0001F680\n\n## Overview\n\nThe Syllable SDK provides a comprehensive set of tools and APIs to integrate powerful AI\ncapabilities into your communication applications. Whether you're building phone agents, chatbots,\nvirtual assistants, or any other AI-driven solutions, Syllable SDK has got you covered.\n\n## Features\n\n- **Agent Configuration**: Create and manage agents that can interact with users across various \nchannels.\n- **Channel Management**: Configure channels like SMS, web chat, and more to connect agents with \nusers.\n- **Custom Messages**: Set up custom messages that agents can deliver as greetings or responses.\n- **Conversations**: Track and manage conversations between users and agents, including session \nmanagement.\n- **Tools and Workflows**: Leverage tools and workflows to enhance agent capabilities, such as data \nprocessing and API calls.\n- **Data Sources**: Integrate data sources to provide agents with additional context and \ninformation.\n- **Insights and Analytics**: Analyze conversations and sessions to gain insights into user \ninteractions.\n- **Permissions and Security**: Manage permissions to control access to various features and \nfunctionalities.\n- **Language Support**: Define language groups to enable multilingual support for agents.\n- **Outbound Campaigns**: Create and manage outbound communication campaigns to reach users \neffectively.\n- **Session Labels**: Label sessions with evaluations of quality and descriptions of issues \nencountered.\n- **Incident Management**: Track and manage incidents related to agent interactions.\n"
version: 0.0.3
servers:
- url: https://api.syllable.cloud
description: API server
tags:
- name: channels.twilio.numbers
description: Operations related to setting up phone numbers in Twilio for use in channels.
paths:
/api/v1/channels/twilio/{channel_id}/numbers/verify-a2p-compliance:
post:
tags:
- channels.twilio.numbers
summary: Verify Twilio Us A2P Compliance
description: Return whether Twilio shows this number on a US A2P messaging path with an approved brand.
operationId: channels_twilio_numbers_a2p_compliance_check
security:
- APIKeyHeader: []
parameters:
- name: channel_id
in: path
required: true
schema:
type: integer
title: Channel Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/A2pMessagingPathCheckRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/A2pMessagingPathCheckResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
x-codeSamples:
- lang: python
label: Python (SDK)
source: "import os\nfrom syllable_sdk import SyllableSDK\n\n\nwith SyllableSDK(\n api_key_header=os.getenv(\"SYLLABLESDK_API_KEY_HEADER\", \"\"),\n) as ss_client:\n\n res = ss_client.channels.twilio.numbers.channels_twilio_numbers_a2p_compliance_check(channel_id=661482, a2p_messaging_path_check_request={\n \"phone\": \"+18042221111\",\n })\n\n # Handle response\n print(res)"
- lang: typescript
label: Typescript (SDK)
source: "import { SyllableSDK } from \"syllable-sdk\";\n\nconst syllableSDK = new SyllableSDK({\n apiKeyHeader: process.env[\"SYLLABLESDK_API_KEY_HEADER\"] ?? \"\",\n});\n\nasync function run() {\n const result = await syllableSDK.channels.twilio.numbers.channelsTwilioNumbersA2pComplianceCheck({\n channelId: 661482,\n a2pMessagingPathCheckRequest: {\n phone: \"+18042221111\",\n },\n });\n\n console.log(result);\n}\n\nrun();"
/api/v1/channels/twilio/{channel_id}/numbers:
post:
tags:
- channels.twilio.numbers
summary: Add Twilio Number
description: Purchase a Twilio number and associate it with a channel.
operationId: channels_twilio_numbers_add
security:
- APIKeyHeader: []
parameters:
- name: channel_id
in: path
required: true
schema:
type: integer
title: Channel Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/TwilioNumberAddRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/TwilioNumberAddResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
x-codeSamples:
- lang: python
label: Python (SDK)
source: "import os\nfrom syllable_sdk import SyllableSDK\n\n\nwith SyllableSDK(\n api_key_header=os.getenv(\"SYLLABLESDK_API_KEY_HEADER\", \"\"),\n) as ss_client:\n\n res = ss_client.channels.twilio.numbers.add(channel_id=314558, twilio_number_add_request={\n \"friendly_name\": \"Support Line\",\n \"area_code\": \"804\",\n })\n\n # Handle response\n print(res)"
- lang: typescript
label: Typescript (SDK)
source: "import { SyllableSDK } from \"syllable-sdk\";\n\nconst syllableSDK = new SyllableSDK({\n apiKeyHeader: process.env[\"SYLLABLESDK_API_KEY_HEADER\"] ?? \"\",\n});\n\nasync function run() {\n const result = await syllableSDK.channels.twilio.numbers.add({\n channelId: 314558,\n twilioNumberAddRequest: {\n friendlyName: \"Support Line\",\n areaCode: \"804\",\n },\n });\n\n console.log(result);\n}\n\nrun();"
put:
tags:
- channels.twilio.numbers
summary: Update Twilio Number
description: Update a Twilio number and associate it with a channel.
operationId: channels_twilio_numbers_update
security:
- APIKeyHeader: []
parameters:
- name: channel_id
in: path
required: true
schema:
type: integer
title: Channel Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/TwilioNumberUpdateRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/TwilioNumberUpdateResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
x-codeSamples:
- lang: python
label: Python (SDK)
source: "import os\nfrom syllable_sdk import SyllableSDK\n\n\nwith SyllableSDK(\n api_key_header=os.getenv(\"SYLLABLESDK_API_KEY_HEADER\", \"\"),\n) as ss_client:\n\n res = ss_client.channels.twilio.numbers.update(channel_id=815949, twilio_number_update_request={\n \"friendly_name\": \"Support Line\",\n \"phone_sid\": \"PN123\",\n })\n\n # Handle response\n print(res)"
- lang: typescript
label: Typescript (SDK)
source: "import { SyllableSDK } from \"syllable-sdk\";\n\nconst syllableSDK = new SyllableSDK({\n apiKeyHeader: process.env[\"SYLLABLESDK_API_KEY_HEADER\"] ?? \"\",\n});\n\nasync function run() {\n const result = await syllableSDK.channels.twilio.numbers.update({\n channelId: 815949,\n twilioNumberUpdateRequest: {\n friendlyName: \"Support Line\",\n phoneSid: \"PN123\",\n },\n });\n\n console.log(result);\n}\n\nrun();"
get:
tags:
- channels.twilio.numbers
summary: List Twilio Phone Numbers
description: List Twilio phone numbers.
operationId: channels_twilio_numbers_list
security:
- APIKeyHeader: []
parameters:
- name: channel_id
in: path
required: true
schema:
type: integer
title: Channel Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/TwilioListNumbersResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
x-codeSamples:
- lang: python
label: Python (SDK)
source: "import os\nfrom syllable_sdk import SyllableSDK\n\n\nwith SyllableSDK(\n api_key_header=os.getenv(\"SYLLABLESDK_API_KEY_HEADER\", \"\"),\n) as ss_client:\n\n res = ss_client.channels.twilio.numbers.list(channel_id=739627)\n\n # Handle response\n print(res)"
- lang: typescript
label: Typescript (SDK)
source: "import { SyllableSDK } from \"syllable-sdk\";\n\nconst syllableSDK = new SyllableSDK({\n apiKeyHeader: process.env[\"SYLLABLESDK_API_KEY_HEADER\"] ?? \"\",\n});\n\nasync function run() {\n const result = await syllableSDK.channels.twilio.numbers.list({\n channelId: 739627,\n });\n\n console.log(result);\n}\n\nrun();"
components:
schemas:
TwilioNumberUpdateResponse:
properties:
phone_number:
type: string
title: Phone Number
description: The updated Twilio phone number
examples:
- '+18042221111'
type: object
required:
- phone_number
title: TwilioNumberUpdateResponse
description: Response model for updating a Twilio number and associating it with a channel.
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
TwilioNumberUpdateRequest:
properties:
friendly_name:
type: string
title: Friendly Name
description: Friendly name for the Twilio number
examples:
- Support Line
phone_sid:
type: string
title: Phone Sid
description: Twilio number SID
examples:
- PN123
type: object
required:
- friendly_name
- phone_sid
title: TwilioNumberUpdateRequest
description: Request model for updating a Twilio number and associating it with a channel.
A2pMessagingPathCheckResponse:
properties:
a2p_approved:
type: boolean
title: A2P Approved
description: True when the number is on a Messaging Service with a US A2P registration whose brand is approved and campaign is verified on the same registration.
type: object
required:
- a2p_approved
title: A2pMessagingPathCheckResponse
description: 'Twilio-side A2P setup state for the number.
Reflects Twilio configuration (Messaging Service + Brand + Campaign records); it is not
carrier per-number REGISTERED state or legal/content compliance.'
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
type: object
required:
- loc
- msg
- type
title: ValidationError
TwilioNumberAddRequest:
properties:
friendly_name:
type: string
title: Friendly Name
description: Friendly name for the Twilio number
examples:
- Support Line
area_code:
type: string
title: Area Code
description: Area code for the Twilio number
examples:
- '804'
type: object
required:
- friendly_name
- area_code
title: TwilioNumberAddRequest
description: Request model for purchasing a Twilio number and associating it with a channel.
TwilioPhoneNumber:
properties:
sid:
type: string
title: Sid
description: The unique identifier for the phone number.
phone_number:
type: string
title: Phone Number
description: The phone number.
friendly_name:
type: string
title: Friendly Name
description: A user-friendly name for the number.
trunk_sid:
type: string
title: Trunk Sid
description: Associated trunk SID, if any.
type: object
required:
- sid
- phone_number
- friendly_name
- trunk_sid
title: TwilioPhoneNumber
TwilioListNumbersResponse:
properties:
phone_numbers:
items:
$ref: '#/components/schemas/TwilioPhoneNumber'
type: array
title: Phone Numbers
description: List of phone numbers.
examples:
- - friendly_name: Test number
phone_number: '+19876543210'
sid: PN123
trunk_sid: TK123
type: object
required:
- phone_numbers
title: TwilioListNumbersResponse
description: Response model for a list of Twilio phone numbers
TwilioNumberAddResponse:
properties:
phone_number:
type: string
title: Phone Number
description: The purchased Twilio phone number
examples:
- '+18042221111'
type: object
required:
- phone_number
title: TwilioNumberAddResponse
description: Response model for purchasing a Twilio number and associating it with a channel.
A2pMessagingPathCheckRequest:
properties:
phone:
type: string
title: Phone
description: E.164 phone number exactly as Twilio stores it for this incoming number.
examples:
- '+18042221111'
type: object
required:
- phone
title: A2pMessagingPathCheckRequest
description: Body to check US A2P / Messaging Service setup for one number on the Twilio channel.
securitySchemes:
APIKeyHeader:
type: apiKey
in: header
name: Syllable-API-Key
x-speakeasy-name-override:
- operationId: .*_list$
methodNameOverride: list
- operationId: .*_create$
methodNameOverride: create
- operationId: .*_update$
methodNameOverride: update
- operationId: .*_upload$
methodNameOverride: upload
- operationId: .*_delete$
methodNameOverride: delete
- operationId: .*_get_by_id$
methodNameOverride: get_by_id
- operationId: .*_get_by_name$
methodNameOverride: get_by_name
- operationId: .*_add$
methodNameOverride: add
- operationId: .*_remove$
methodNameOverride: remove
- operationId: .*_results$
methodNameOverride: results
- operationId: .*_queue_work$
methodNameOverride: queue_work
- operationId: .*_activate$
methodNameOverride: activate
- operationId: .*_inactivate$
methodNameOverride: inactivate
- operationId: .*_list_files$
methodNameOverride: list_files
- operationId: .*_move_files$
methodNameOverride: move_files
- operationId: .*_upload_file$
methodNameOverride: upload_file