Twilio Conversations API

The Conversations API from Twilio — 10 operation(s) for conversations.

Operations 22

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 /v1/Conversations Start a new conversation · Create conversation #
Ask an LLM
“How do I open a new multi-channel conversation thread?”
“Can a new conversation switch itself to inactive or closed after a set idle time?”
Tell an agent
Create a conversation called {friendly_name}.
Start a conversation with unique name {unique_name} that closes after {closed_timer}.
GET /v1/Conversations List conversations · List conversation #
Ask an LLM
“Which conversations in my default service are still active?”
“Can I filter conversations to ones started within a date range?”
Tell an agent
List my conversations in state {state}.
List conversations from {start_date} to {end_date}.
POST /v1/Conversations/{Sid} Update a conversation's name, state or timers · Update conversation #
Ask an LLM
“Can I rename an existing conversation or change its state to closed?”
“Is it possible to change the inactivity timer on a conversation that already exists?”
Tell an agent
Rename conversation {conversation} to {friendly_name}.
Set existing conversation {conversation} to state {state}.
DELETE /v1/Conversations/{Sid} Delete a conversation · Delete conversation #
Ask an LLM
“Can I remove an entire conversation thread from my service?”
“Will deleting a conversation fire webhooks unless I turn them off?”
Tell an agent destructive · confirm first
Delete conversation {conversation}.
Remove conversation {conversation} without triggering webhooks, setting the webhook header to {webhook_enabled}.
GET /v1/Conversations/{Sid} Look up a conversation · Fetch conversation #
Ask an LLM
“Can I look up a conversation by its unique name rather than its SID?”
“What state is a particular conversation in right now?”
Tell an agent
Fetch conversation {conversation}.
Show me the settings and state of conversation {conversation}.
POST /v1/Conversations/{ConversationSid}/Messages Post a message to a conversation · Create conversation message #
Ask an LLM
“How do I send a message into a conversation on behalf of a participant?”
“Can I attach media or a rich content template to a conversation message?”
Tell an agent
Post {body} to conversation {conversation}.
Send {body} to conversation {conversation} as author {author}.
GET /v1/Conversations/{ConversationSid}/Messages List messages in a conversation · List conversation message #
Ask an LLM
“Can I read a conversation's message history newest first?”
“What messages have been posted in a given conversation?”
Tell an agent
List the messages in conversation {conversation}.
List messages in conversation {conversation} in {order} order.
POST /v1/Conversations/{ConversationSid}/Messages/{Sid} Edit a message already in a conversation · Update conversation message #
Ask an LLM
“Can I edit the text of a message after it was posted to a conversation?”
“Is changing the subject of an existing conversation message supported?”
Tell an agent
Change the body of message {message_sid} in conversation {conversation} to {body}.
Update the attributes on existing message {message_sid} in conversation {conversation} to {attributes}.
DELETE /v1/Conversations/{ConversationSid}/Messages/{Sid} Delete a message from a conversation · Delete conversation message #
Ask an LLM
“Can I remove a single message someone posted in a conversation?”
“Is there a way to take back a message sent into a conversation thread?”
Tell an agent destructive · confirm first
Delete message {message_sid} from conversation {conversation}.
Remove message {message_sid} in conversation {conversation} from the thread.
GET /v1/Conversations/{ConversationSid}/Messages/{Sid} Fetch one message from a conversation · Fetch conversation message #
Ask an LLM
“Can I pull up a single message by its SID inside a conversation?”
“Who authored a particular conversation message and when?”
Tell an agent
Fetch message {message_sid} from conversation {conversation}.
Show the author and body of message {message_sid} in conversation {conversation}.
GET /v1/Conversations/{ConversationSid}/Messages/{MessageSid}/Receipts/{Sid} Fetch one delivery receipt for a message · Fetch conversation message receipt #
Ask an LLM
“Can I look up a single delivery or read receipt by its SID?”
“What does one receipt on a conversation message tell me?”
Tell an agent
Fetch receipt {receipt_sid} for message {message_sid} in conversation {conversation}.
Show delivery receipt {receipt_sid} on message {message_sid} of conversation {conversation}.
GET /v1/Conversations/{ConversationSid}/Messages/{MessageSid}/Receipts List delivery and read receipts for a message · List conversation message receipt #
Ask an LLM
“Was my conversation message delivered and read by everyone?”
“Which delivery and read receipts exist for a given message?”
Tell an agent
List all receipts for message {message_sid} in conversation {conversation}.
Check who has read message {message_sid} in conversation {conversation}.
POST /v1/Conversations/{ConversationSid}/Participants Add a participant to a conversation · Create conversation participant #
Ask an LLM
“How do I add an SMS or WhatsApp user to a conversation?”
“Can I add a chat user to a conversation by identity and give them a role?”
Tell an agent
Add chat user {identity} to conversation {conversation}.
Add phone number {address} to conversation {conversation} via our number {proxy_address}.
GET /v1/Conversations/{ConversationSid}/Participants List participants in a conversation · List conversation participant #
Ask an LLM
“Who is taking part in a given conversation?”
“Can I see every participant and their bindings for a conversation?”
Tell an agent
List the participants in conversation {conversation}.
Show everyone who belongs to conversation {conversation}.
POST /v1/Conversations/{ConversationSid}/Participants/{Sid} Update a participant in a conversation · Update conversation participant #
Ask an LLM
“Can I change a participant's role in a conversation they already belong to?”
“Is it possible to mark which message a participant last read?”
Tell an agent
Give participant {participant} in conversation {conversation} role {role_sid}.
Mark message index {index} as last read for participant {participant} in conversation {conversation}.
DELETE /v1/Conversations/{ConversationSid}/Participants/{Sid} Remove a participant from a conversation · Delete conversation participant #
Ask an LLM
“Can I take someone out of a conversation thread?”
“What happens when a participant is removed from a conversation?”
Tell an agent destructive · confirm first
Remove participant {participant} from conversation {conversation}.
Kick participant {participant} out of conversation {conversation}.
GET /v1/Conversations/{ConversationSid}/Participants/{Sid} Fetch one participant in a conversation · Fetch conversation participant #
Ask an LLM
“Can I look up a conversation participant by their phone number instead of a SID?”
“What role and last-read position does a particular participant have?”
Tell an agent
Fetch participant {participant} in conversation {conversation}.
Show the details of participant {participant} in conversation {conversation}.
GET /v1/Conversations/{ConversationSid}/Webhooks List webhooks on a conversation · List conversation scoped webhook #
Ask an LLM
“Which webhooks are attached to one specific conversation?”
“Can I see the conversation-scoped webhooks without the service-wide ones?”
Tell an agent
List the webhooks scoped to conversation {conversation}.
Show all webhook targets set up on conversation {conversation}.
POST /v1/Conversations/{ConversationSid}/Webhooks Add a webhook to one conversation · Create conversation scoped webhook #
Ask an LLM
“How do I get a callback for events happening in one conversation only?”
“Can a conversation webhook fire on certain keywords or route into a Studio flow?”
Tell an agent
Add a {target} webhook to conversation {conversation} that posts to {url}.
Send conversation {conversation} into Studio flow {flow_sid} with a {target} webhook.
GET /v1/Conversations/{ConversationSid}/Webhooks/{Sid} Fetch a conversation webhook's configuration · Fetch conversation scoped webhook #
Ask an LLM
“Where does a particular conversation webhook send its events?”
“Can I check which event filters a conversation webhook uses?”
Tell an agent
Fetch webhook {webhook_sid} on conversation {conversation}.
Show the URL and filters of webhook {webhook_sid} in conversation {conversation}.
POST /v1/Conversations/{ConversationSid}/Webhooks/{Sid} Change a conversation webhook · Update conversation scoped webhook #
Ask an LLM
“Can I point an existing conversation webhook at a new URL?”
“Is it possible to change which events an existing conversation webhook listens for?”
Tell an agent
Point webhook {webhook_sid} on conversation {conversation} at {url}.
Change existing webhook {webhook_sid} on conversation {conversation} to fire on {filters}.
DELETE /v1/Conversations/{ConversationSid}/Webhooks/{Sid} Remove a webhook from a conversation · Delete conversation scoped webhook #
Ask an LLM
“Can I stop a conversation from sending events to a webhook?”
“What removes a webhook I scoped to one conversation?”
Tell an agent destructive · confirm first
Delete webhook {webhook_sid} from conversation {conversation}.
Stop webhook {webhook_sid} on conversation {conversation} by removing it.

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-conversations-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-conversations-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Twilio Conversations API
  description: This is the public Twilio REST API.
  termsOfService: https://www.twilio.com/legal/tos
  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
  version: 1.52.0
servers:
- url: https://conversations.twilio.com
tags:


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