Access the Twilio API with managed OAuth authentication. Send SMS messages, make voice calls, manage phone numbers, and work with Twilio resources.
Reference
List Accounts
GET /twilio/2010-04-01/Accounts.jsonResponse:
{
"accounts": [
{
"sid": "ACf5d980cd4b3f7604a464afaec191fc60",
"friendly_name": "My first Twilio account",
"status": "active",
"date_created": "Mon, 09 Feb 2026 20:19:55 +0000",
"date_updated": "Mon, 09 Feb 2026 20:20:05 +0000"
}
]
}Get Account
GET /twilio/2010-04-01/Accounts/{AccountSid}.jsonList Messages
GET /twilio/2010-04-01/Accounts/{AccountSid}/Messages.jsonQuery Parameters:
PageSize- Number of results per page (default: 50)To- Filter by recipient phone numberFrom- Filter by sender phone numberDateSent- Filter by date sent
Response:
{
"messages": [
{
"sid": "SMxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"body": "Hello!",
"from": "+15551234567",
"to": "+15559876543",
"status": "delivered",
"date_sent": "Mon, 09 Feb 2026 21:00:00 +0000"
}
],
"page": 0,
"page_size": 50
}Get Message
GET /twilio/2010-04-01/Accounts/{AccountSid}/Messages/{MessageSid}.jsonSend Message
POST /twilio/2010-04-01/Accounts/{AccountSid}/Messages.json
Content-Type: application/x-www-form-urlencoded
To=+15559876543&From=+15551234567&Body=Hello%20from%20Twilio!Required Parameters:
To- Recipient phone number (E.164 format)From- Twilio phone number or messaging service SIDBody- Message text (max 1600 characters)
Optional Parameters:
MessagingServiceSid- Use instead of From for message routingMediaUrl- URL of media to send (MMS)StatusCallback- Webhook URL for status updates
Response:
{
"sid": "SMxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"body": "Hello from Twilio!",
"from": "+15551234567",
"to": "+15559876543",
"status": "queued",
"date_created": "Mon, 09 Feb 2026 21:00:00 +0000"
}Update Message (Redact)
POST /twilio/2010-04-01/Accounts/{AccountSid}/Messages/{MessageSid}.json
Content-Type: application/x-www-form-urlencoded
Body=Setting Body to empty string redacts the message content.
Delete Message
DELETE /twilio/2010-04-01/Accounts/{AccountSid}/Messages/{MessageSid}.jsonReturns 204 No Content on success.
List Calls
GET /twilio/2010-04-01/Accounts/{AccountSid}/Calls.jsonQuery Parameters:
PageSize- Results per pageStatus- Filter by status (queued, ringing, in-progress, completed, etc.)To- Filter by recipientFrom- Filter by caller
Response:
{
"calls": [
{
"sid": "CAxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"from": "+15551234567",
"to": "+15559876543",
"status": "completed",
"duration": "60",
"direction": "outbound-api"
}
],
"page": 0,
"page_size": 50
}Get Call
GET /twilio/2010-04-01/Accounts/{AccountSid}/Calls/{CallSid}.jsonMake Call
POST /twilio/2010-04-01/Accounts/{AccountSid}/Calls.json
Content-Type: application/x-www-form-urlencoded
To=+15559876543&From=+15551234567&Url=https://example.com/twimlRequired Parameters:
To- Recipient phone numberFrom- Twilio phone numberUrl- TwiML application URL
Optional Parameters:
StatusCallback- Webhook URL for call status updatesStatusCallbackEvent- Events to receive (initiated, ringing, answered, completed)Timeout- Seconds to wait for answer (default: 60)Record- Set to true to record the call
Update Call
POST /twilio/2010-04-01/Accounts/{AccountSid}/Calls/{CallSid}.json
Content-Type: application/x-www-form-urlencoded
Status=completedUse Status=completed to end an in-progress call.
Delete Call
DELETE /twilio/2010-04-01/Accounts/{AccountSid}/Calls/{CallSid}.jsonList Incoming Phone Numbers
GET /twilio/2010-04-01/Accounts/{AccountSid}/IncomingPhoneNumbers.jsonResponse:
{
"incoming_phone_numbers": [
{
"sid": "PNxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"phone_number": "+15551234567",
"friendly_name": "My Number",
"capabilities": {
"voice": true,
"sms": true,
"mms": true
}
}
]
}Get Phone Number
GET /twilio/2010-04-01/Accounts/{AccountSid}/IncomingPhoneNumbers/{PhoneNumberSid}.jsonUpdate Phone Number
POST /twilio/2010-04-01/Accounts/{AccountSid}/IncomingPhoneNumbers/{PhoneNumberSid}.json
Content-Type: application/x-www-form-urlencoded
FriendlyName=Updated%20Name&VoiceUrl=https://example.com/voiceDelete Phone Number
DELETE /twilio/2010-04-01/Accounts/{AccountSid}/IncomingPhoneNumbers/{PhoneNumberSid}.jsonList Applications
GET /twilio/2010-04-01/Accounts/{AccountSid}/Applications.jsonResponse:
{
"applications": [
{
"sid": "APxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"friendly_name": "My App",
"voice_url": "https://example.com/voice",
"sms_url": "https://example.com/sms"
}
]
}Get Application
GET /twilio/2010-04-01/Accounts/{AccountSid}/Applications/{ApplicationSid}.jsonCreate Application
POST /twilio/2010-04-01/Accounts/{AccountSid}/Applications.json
Content-Type: application/x-www-form-urlencoded
FriendlyName=My%20App&VoiceUrl=https://example.com/voiceResponse:
{
"sid": "APxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"friendly_name": "My App",
"voice_url": "https://example.com/voice",
"date_created": "Tue, 10 Feb 2026 00:20:15 +0000"
}Update Application
POST /twilio/2010-04-01/Accounts/{AccountSid}/Applications/{ApplicationSid}.json
Content-Type: application/x-www-form-urlencoded
FriendlyName=Updated%20App%20NameDelete Application
DELETE /twilio/2010-04-01/Accounts/{AccountSid}/Applications/{ApplicationSid}.jsonReturns 204 No Content on success.
List Queues
GET /twilio/2010-04-01/Accounts/{AccountSid}/Queues.jsonResponse:
{
"queues": [
{
"sid": "QUxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"friendly_name": "Support Queue",
"current_size": 0,
"max_size": 1000,
"average_wait_time": 0
}
]
}Create Queue
POST /twilio/2010-04-01/Accounts/{AccountSid}/Queues.json
Content-Type: application/x-www-form-urlencoded
FriendlyName=Support%20Queue&MaxSize=100Update Queue
POST /twilio/2010-04-01/Accounts/{AccountSid}/Queues/{QueueSid}.json
Content-Type: application/x-www-form-urlencoded
FriendlyName=Updated%20Queue%20NameDelete Queue
DELETE /twilio/2010-04-01/Accounts/{AccountSid}/Queues/{QueueSid}.jsonList Addresses
GET /twilio/2010-04-01/Accounts/{AccountSid}/Addresses.jsonCreate Address
POST /twilio/2010-04-01/Accounts/{AccountSid}/Addresses.json
Content-Type: application/x-www-form-urlencoded
FriendlyName=Office&Street=123%20Main%20St&City=San%20Francisco&Region=CA&PostalCode=94105&IsoCountry=US&CustomerName=Acme%20IncList Usage Records
GET /twilio/2010-04-01/Accounts/{AccountSid}/Usage/Records.jsonQuery Parameters:
Category- Filter by usage category (calls, sms, etc.)StartDate- Start date (YYYY-MM-DD)EndDate- End date (YYYY-MM-DD)
Response:
{
"usage_records": [
{
"category": "sms",
"description": "SMS Messages",
"count": "100",
"price": "0.75",
"start_date": "2026-02-01",
"end_date": "2026-02-28"
}
]
}