Twilio Services API
The Services API from Twilio — 131 operation(s) for services.
Operations 265
Showing the first 250 of 265. The full set is in the contract, and via get_provider_operations.
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
Ask an LLM
“Can I create a separate conversation service to isolate one app's data?”
“What does it take to spin up a new v1 conversation service?”
Tell an agent
Create a v1 conversation service called {name}.
Set up a new Conversations service named {name} through /v1/Services.
Ask an LLM
“Which conversation services are set up on my account under the v1 Services endpoint?”
“Can I list every Conversations service I have created?”
Tell an agent
List my Conversations services via /v1/Services.
Show all conversation services on the account from the v1 endpoint.
Ask an LLM
“Can I delete a conversation service together with all its conversations and users?”
“Does removing a v1 conversation service wipe its nested resources?”
Tell an agent destructive · confirm first
Delete v1 conversation service {service} and everything nested in it.
Remove Conversations service {service} via /v1/Services.
Ask an LLM
“Can I look up one conversation service by its SID on the v1 endpoint?”
“What is the friendly name of a given v1 conversation service?”
Tell an agent
Fetch v1 conversation service {service}.
Show the details of Conversations service {service} from /v1/Services.
Ask an LLM
“Can I turn on Sticky Sender or Smart Encoding on a v1 service?”
“Is it possible to change the inbound request URL and status callback of a v1 service?”
Tell an agent
Enable sticky sender and smart encoding on v1 service {service}.
Send inbound messages for v1 service {service} to {inbound_url} and status updates to {status_callback}.
DELETE
/v1/Services/{ChatServiceSid}/Bindings/{Sid}
Remove a push binding from a Conversations service · Delete service binding
#
Ask an LLM
“How can I stop push notifications reaching a device that left my Conversations app?”
“Can I unregister one device from Conversations push notifications?”
Tell an agent destructive · confirm first
Delete Conversations push binding {binding} from service {service}.
Unregister device binding {binding} so Conversations service {service} stops pushing to it.
GET
/v1/Services/{ChatServiceSid}/Bindings/{Sid}
Get a push binding in a Conversations service · Fetch service binding
#
Ask an LLM
“Can I look up one device push registration in my Conversations service?”
“Which identity does a given Conversations push binding belong to?”
Tell an agent
Fetch push binding {binding} in Conversations service {service}.
Show the device token details of Conversations binding {binding} under {service}.
GET
/v1/Services/{ChatServiceSid}/Bindings
List push bindings in a Conversations service · List service binding
#
Ask an LLM
“Which devices are registered for push in my Conversations service?”
“Can I filter Conversations push bindings by user identity or by APN vs FCM?”
Tell an agent
List push bindings in Conversations service {service}.
List the Conversations push bindings for identity {identity} in service {service}.
GET
/v1/Services/{ChatServiceSid}/Configuration
Get a Conversations service's configuration · Fetch service configuration
#
Ask an LLM
“What default roles does my Conversations service assign to new users?”
“Is reachability turned on for a Conversations service?”
Tell an agent
Show the configuration of Conversations service {service}.
Fetch the default role settings for Conversations service {service}.
POST
/v1/Services/{ChatServiceSid}/Configuration
Update a Conversations service's configuration · Update service configuration
#
Ask an LLM
“Can I change which role a user gets when they create a conversation?”
“Is it possible to enable the reachability indicator for a Conversations service?”
Tell an agent
Enable reachability indicators on Conversations service {service}.
Set the default conversation creator role of service {service} to {role}.
POST
/v1/Services/{ChatServiceSid}/Conversations
Start a conversation in a Conversations service · Create service conversation
#
Ask an LLM
“Can I open a new conversation inside a specific Conversations service?”
“Is it possible to set a timer so a new conversation closes itself after inactivity?”
Tell an agent
Create a conversation called {name} in service {service}.
Start a conversation with unique name {unique_name} in service {service} that goes inactive after {inactive_timer}.
GET
/v1/Services/{ChatServiceSid}/Conversations
List conversations in a Conversations service · List service conversation
#
Ask an LLM
“Which conversations exist in one of my Conversations services?”
“Can I list only active or closed conversations between two dates?”
Tell an agent
List conversations in service {service}.
List {state} conversations in service {service} created since {start_date}.
POST
/v1/Services/{ChatServiceSid}/Conversations/{Sid}
Update a conversation in a Conversations service · Update service conversation
#
Ask an LLM
“Can I close a conversation or rename it after it has started?”
“Is there a way to change the messaging service a conversation uses?”
Tell an agent
Rename conversation {conversation} in service {service} to {name}.
Set conversation {conversation} in {service} to state {state}.
DELETE
/v1/Services/{ChatServiceSid}/Conversations/{Sid}
Delete a conversation from a Conversations service · Delete service conversation
#
Ask an LLM
“Can I permanently remove a conversation and its history from a service?”
“Is it possible to delete a conversation without firing webhooks?”
Tell an agent destructive · confirm first
Delete conversation {conversation} from service {service}.
Remove conversation {conversation} in {service} with webhooks set to {webhook_enabled}.
GET
/v1/Services/{ChatServiceSid}/Conversations/{Sid}
Get a conversation in a Conversations service · Fetch service conversation
#
Ask an LLM
“What state is a particular conversation in right now?”
“Can I see the attributes and timers stored on one conversation?”
Tell an agent
Fetch conversation {conversation} from service {service}.
Show me the details of conversation {conversation} in {service}.
POST
/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Messages
Send a message into a conversation · Create service conversation message
#
Ask an LLM
“Can I post a message into a conversation on behalf of a specific author?”
“Is it possible to send a rich content template into a conversation?”
Tell an agent
Send {body} to conversation {conversation} in service {service}.
Post a message as {author} saying {body} in conversation {conversation} of {service}.
GET
/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Messages
List messages in a conversation · List service conversation message
#
Ask an LLM
“Can I pull the message history of one conversation?”
“Is it possible to read a conversation's messages newest first?”
Tell an agent
List the messages in conversation {conversation} of service {service}.
Read conversation {conversation} in {service} in {order} order.
POST
/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Messages/{Sid}
Edit a message in a conversation · Update service conversation message
#
Ask an LLM
“Can I edit the text of a message that was already posted to a conversation?”
“Is it possible to change the attributes stored on a conversation message?”
Tell an agent
Change the body of message {message} in conversation {conversation} ({service}) to {body}.
Update the attributes of conversation message {message} in {conversation} under {service}.
DELETE
/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Messages/{Sid}
Delete a message from a conversation · Delete service conversation message
#
Ask an LLM
“Can I remove an inappropriate message from a conversation?”
“Does deleting a conversation message remove it for every participant?”
Tell an agent destructive · confirm first
Delete message {message} from conversation {conversation} in service {service}.
Remove the conversation message {message} posted in {conversation} ({service}).
GET
/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Messages/{Sid}
Get one message from a conversation · Fetch service conversation message
#
Ask an LLM
“Can I retrieve a single conversation message by its ID?”
“Who wrote a particular message in a conversation, and what media did it carry?”
Tell an agent
Fetch message {message} from conversation {conversation} in service {service}.
Show the author and body of conversation message {message} ({conversation}, {service}).
GET
/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Messages/{MessageSid}/Receipts/{Sid}
Get a delivery receipt for a conversation message · Fetch service conversation message receipt
#
Ask an LLM
“Was a specific conversation message delivered or read by one recipient?”
“Can I look up a single read receipt for a message?”
Tell an agent
Fetch receipt {receipt} for message {message} in conversation {conversation} ({service}).
Show delivery status of receipt {receipt} on message {message} ({conversation}, {service}).
GET
/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Messages/{MessageSid}/Receipts
List delivery receipts for a conversation message · List service conversation message receipt
#
Ask an LLM
“Who has received or read a message I sent in a conversation?”
“Can I see every delivery and read receipt for one conversation message?”
Tell an agent
List all receipts for message {message} in conversation {conversation} of service {service}.
Show who read message {message} in {conversation} ({service}).
POST
/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Participants
Add a participant to a conversation · Create service conversation participant
#
Ask an LLM
“Can I add an SMS user to a conversation by their phone number?”
“Is it possible to add a chat user by identity and give them a role?”
Tell an agent
Add chat user {identity} to conversation {conversation} in service {service}.
Add phone {address} to conversation {conversation} ({service}) via my number {proxy_address}.
GET
/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Participants
List participants in a conversation · List service conversation participant
#
Ask an LLM
“Who is taking part in a given conversation?”
“Can I list the SMS and chat participants of one conversation?”
Tell an agent
List participants of conversation {conversation} in service {service}.
Show everyone in conversation {conversation} under {service}.
POST
/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Participants/{Sid}
Update a participant in a conversation · Update service conversation participant
#
Ask an LLM
“Can I change a participant's role inside a conversation?”
“Is it possible to mark messages as read up to an index for one participant?”
Tell an agent
Give participant {participant} in conversation {conversation} ({service}) the role {role}.
Set the last read message index of participant {participant} in {conversation} ({service}) to {index}.
DELETE
/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Participants/{Sid}
Remove a participant from a conversation · Delete service conversation participant
#
Ask an LLM
“Can I kick someone out of a conversation?”
“What happens to a participant's access when I remove them from a conversation?”
Tell an agent destructive · confirm first
Remove participant {participant} from conversation {conversation} in service {service}.
Kick {participant} out of conversation {conversation} ({service}).
GET
/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Participants/{Sid}
Get a participant in a conversation · Fetch service conversation participant
#
Ask an LLM
“Can I look up one participant's details in a conversation?”
“What was the last message a given participant read?”
Tell an agent
Fetch participant {participant} of conversation {conversation} in service {service}.
Show the read horizon of participant {participant} in {conversation} ({service}).
POST
/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Webhooks
Attach a webhook to one conversation · Create service conversation scoped webhook
#
Ask an LLM
“Can I send events from just one conversation to my own URL?”
“Is it possible to trigger a webhook only when certain keywords appear in a conversation?”
Tell an agent
Add a {target} webhook to conversation {conversation} in service {service}.
Hook conversation {conversation} ({service}) to {url} with target {target}.
GET
/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Webhooks
List webhooks on one conversation · List service conversation scoped webhook
#
Ask an LLM
“Which webhooks are attached to a single conversation rather than the whole service?”
“Can I see whether a conversation is wired to a Studio flow?”
Tell an agent
List the webhooks scoped to conversation {conversation} in service {service}.
Show conversation-level webhook targets for {conversation} ({service}).
POST
/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Webhooks/{Sid}
Update a webhook attached to a conversation · Update service conversation scoped webhook
#
Ask an LLM
“Can I change the URL an existing conversation webhook posts to?”
“Is it possible to change which events fire a webhook on one conversation?”
Tell an agent
Point conversation webhook {webhook} on {conversation} ({service}) at {url}.
Change the event filters of webhook {webhook} in conversation {conversation} under {service} to {filters}.
DELETE
/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Webhooks/{Sid}
Remove a webhook from a conversation · Delete service conversation scoped webhook
#
Ask an LLM
“Can I stop one conversation from sending events to my webhook?”
“Is it possible to detach a Studio flow webhook from a conversation?”
Tell an agent destructive · confirm first
Delete webhook {webhook} from conversation {conversation} in service {service}.
Detach conversation webhook {webhook} ({conversation}, {service}).
GET
/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Webhooks/{Sid}
Get a webhook attached to a conversation · Fetch service conversation scoped webhook
#
Ask an LLM
“What URL and filters does a conversation-scoped webhook use?”
“Can I inspect one webhook configured on a conversation?”
Tell an agent
Fetch webhook {webhook} on conversation {conversation} in service {service}.
Show the triggers and filters of conversation webhook {webhook} ({conversation}, {service}).
POST
/v1/Services/{ChatServiceSid}/Configuration/Notifications
Change push notification settings of a Conversations service · Update service notification
#
Ask an LLM
“Can I send a push notification whenever someone is added to a conversation?”
“Is it possible to customize the push text shown for new messages?”
Tell an agent
Turn on new-message push notifications for Conversations service {service}.
Set the new-message push template for {service} to {template}.
GET
/v1/Services/{ChatServiceSid}/Configuration/Notifications
Get push notification settings of a Conversations service · Fetch service notification
#
Ask an LLM
“Are new-message push notifications turned on for my Conversations service?”
“What sound and template does a Conversations service use for push alerts?”
Tell an agent
Show the push notification settings of Conversations service {service}.
Fetch the notification templates configured for {service}.
GET
/v1/Services/{ChatServiceSid}/ParticipantConversations
Find the conversations a participant is in · List service participant conversation
#
Ask an LLM
“Which conversations is a given user or phone number part of?”
“Can I look up conversations by a participant's SMS address instead of identity?”
Tell an agent
List conversations that identity {identity} belongs to in service {service}.
Find every conversation in {service} that phone address {address} participates in.
POST
/v1/Services/{ChatServiceSid}/Roles
Create a role in a Conversations service · Create service role
#
Ask an LLM
“Can I create a custom role that only lets users send messages?”
“Is it possible to define a service-level versus conversation-level role?”
Tell an agent
Create a {type} role called {name} with permission {permission} in Conversations service {service}.
Add a Conversations role {name} to {service} granting {permission}, of type {type}.
Ask an LLM
“What user roles are defined in my Conversations service?”
“Can I see the permissions each Conversations role grants?”
Tell an agent
List roles in Conversations service {service}.
Show all Conversations roles and their permissions for {service}.
POST
/v1/Services/{ChatServiceSid}/Roles/{Sid}
Change a role's permissions in a Conversations service · Update service role
#
Ask an LLM
“Can I change the permissions of an existing Conversations role?”
“Is it possible to revoke a permission from a role everyone uses?”
Tell an agent
Set the permissions of Conversations role {role} in {service} to {permission}.
Update Conversations role {role} under service {service} so it grants {permission}.
DELETE
/v1/Services/{ChatServiceSid}/Roles/{Sid}
Delete a role from a Conversations service · Delete service role
#
Ask an LLM
“Can I remove a Conversations role I no longer need?”
“What happens to users assigned to a role that I delete?”
Tell an agent destructive · confirm first
Delete Conversations role {role} from service {service}.
Remove the unused Conversations role {role} in {service}.
GET
/v1/Services/{ChatServiceSid}/Roles/{Sid}
Get a role in a Conversations service · Fetch service role
#
Ask an LLM
“What permissions does a specific Conversations role have?”
“Can I look up one role by its SID in a Conversations service?”
Tell an agent
Fetch Conversations role {role} from service {service}.
Show what Conversations role {role} in {service} is allowed to do.
POST
/v1/Services/{ChatServiceSid}/Users
Add a user to a Conversations service · Create service user
#
Ask an LLM
“Can I register a new chat user with a display name in my Conversations service?”
“Is it possible to give a new Conversations user a specific role at creation?”
Tell an agent
Create Conversations user {identity} in service {service}.
Add user {identity} named {name} to Conversations service {service}.
Ask an LLM
“Which chat users exist in my Conversations service?”
“Can I page through every Conversations user in a service?”
Tell an agent
List users in Conversations service {service}.
Show all Conversations users registered in {service}.
POST
/v1/Services/{ChatServiceSid}/Users/{Sid}
Update a user in a Conversations service · Update service user
#
Ask an LLM
“Can I change a Conversations user's display name or role?”
“Is it possible to store custom attributes on an existing Conversations user?”
Tell an agent
Rename Conversations user {user} in service {service} to {name}.
Assign role {role} to Conversations user {user} in {service}.
DELETE
/v1/Services/{ChatServiceSid}/Users/{Sid}
Delete a user from a Conversations service · Delete service user
#
Ask an LLM
“Can I remove a Conversations user when someone closes their account?”
“Does deleting a Conversations user remove them from their conversations too?”
Tell an agent destructive · confirm first
Delete Conversations user {user} from service {service}.
Remove user {user} from Conversations service {service} for good.
GET
/v1/Services/{ChatServiceSid}/Users/{Sid}
Get a user in a Conversations service · Fetch service user
#
Ask an LLM
“Can I look up one Conversations user and see if they are online?”
“What role and attributes does a specific Conversations user have?”
Tell an agent
Fetch Conversations user {user} from service {service}.
Show the profile of Conversations user {user} in {service}.
POST
/v1/Services/{ChatServiceSid}/Users/{UserSid}/Conversations/{ConversationSid}
Update a user's settings for one conversation · Update service user conversation
#
Ask an LLM
“Can I mute notifications for one user in one conversation?”
“Is it possible to mark a conversation as read for a specific user?”
Tell an agent
Set notification level {level} for user {user} in conversation {conversation} ({service}).
Mark conversation {conversation} read up to index {index} for user {user} in {service}.
DELETE
/v1/Services/{ChatServiceSid}/Users/{UserSid}/Conversations/{ConversationSid}
Remove a user from one of their conversations · Delete service user conversation
#
Ask an LLM
“Can I take a user out of one conversation from the user's side?”
“Is there a way to drop a single conversation from a user's list?”
Tell an agent destructive · confirm first
Remove user {user} from conversation {conversation} in service {service}.
Delete the user-conversation link between {user} and {conversation} ({service}).
GET
/v1/Services/{ChatServiceSid}/Users/{UserSid}/Conversations/{ConversationSid}
Get a user's view of one conversation · Fetch service user conversation
#
Ask an LLM
“How many unread messages does a user have in one conversation?”
“Can I see a user's notification level for a single conversation?”
Tell an agent
Show user {user}'s membership in conversation {conversation} in service {service}.
Fetch the unread count for user {user} in conversation {conversation} ({service}).
GET
/v1/Services/{ChatServiceSid}/Users/{UserSid}/Conversations
List the conversations a user belongs to · List service user conversation
#
Ask an LLM
“Which conversations is a given Conversations user a member of?”
“Can I show a user their inbox of conversations with unread counts?”
Tell an agent
List conversations for user {user} in service {service}.
Show user {user}'s conversation inbox in {service}.
POST
/v1/Services/{ChatServiceSid}/Configuration/Webhooks
Change the webhook settings of a Conversations service · Update service webhook configuration
#
Ask an LLM
“Can I change the URL that receives post-event webhooks for my Conversations service?”
“Is it possible to limit which events fire service-wide webhooks?”
Tell an agent
Set the post-event webhook of Conversations service {service} to {post_url}.
Send pre-event webhooks for {service} to {pre_url} using {method}.
GET
/v1/Services/{ChatServiceSid}/Configuration/Webhooks
Get the webhook settings of a Conversations service · Fetch service webhook configuration
#
Ask an LLM
“Where does my Conversations service send its pre- and post-event webhooks?”
“Which events are configured to fire webhooks for a Conversations service?”
Tell an agent
Show where Conversations service {service} sends its webhooks.
Fetch the pre-event and post-event URLs for {service}.
Ask an LLM
“Can I set up a service that automatically transcribes all my call recordings?”
“Is it possible to redact PII from transcripts when I create an intelligence service?”
Tell an agent
Create a Voice Intelligence service named {unique_name}.
Create intelligence service {unique_name} with auto-transcribe on and language {language}.
Ask an LLM
“Which Voice Intelligence services exist on my Twilio account?”
“Can I see all my speech transcription services at once?”
Tell an agent
List all my Voice Intelligence services.
Show every transcription service configured on the account.
Ask an LLM
“Can I remove a Voice Intelligence service I no longer use?”
“What happens when I delete a transcription service from my account?”
Tell an agent destructive · confirm first
Delete Voice Intelligence service {service}.
Remove the intelligence service {service} from my account permanently.
Ask an LLM
“What settings does one of my Voice Intelligence services have?”
“Can I check whether auto-redaction is on for a given intelligence service?”
Tell an agent
Fetch Voice Intelligence service {service}.
Show the transcription and redaction settings of intelligence service {service}.
Ask an LLM
“Can I turn on automatic transcription for an existing intelligence service?”
“Is there a way to change the webhook URL an intelligence service calls?”
Tell an agent
Turn on auto-redaction for intelligence service {service}.
Point the webhook of intelligence service {service} at {webhook_url}.
GET
/v2/Services/{ServiceSid}/Bindings
List push bindings in a Programmable Chat service · List binding
#
Ask an LLM
“Which devices are registered for chat push notifications across a Chat service?”
“Can I filter Programmable Chat service bindings by identity or binding type?”
Tell an agent
List all push bindings in Programmable Chat service {service}.
List chat push bindings of type {binding_type} for identity {identity} in v2 Chat service {service}.
GET
/v2/Services/{ServiceSid}/Bindings/{Sid}
Get a push binding in a Programmable Chat service · Fetch binding
#
Ask an LLM
“Can I inspect one chat push binding at the service level?”
“What credential and endpoint does a v2 Chat service binding use?”
Tell an agent
Fetch push binding {binding} from v2 Chat service {service}.
Show the Programmable Chat service-level binding {binding} in {service}.
DELETE
/v2/Services/{ServiceSid}/Bindings/{Sid}
Delete a push binding from a Programmable Chat service · Delete binding
#
Ask an LLM
“Can I stop chat push notifications to one device at the Chat service level?”
“Is it possible to delete a v2 Chat binding without knowing which user owns it?”
Tell an agent destructive · confirm first
Delete push binding {binding} from v2 Chat service {service}.
Remove Programmable Chat service binding {binding} in {service}.
Ask an LLM
“Can I look up one chat channel and see how many members it has?”
“Is a given Programmable Chat channel public or private?”
Tell an agent
Fetch chat channel {channel} in Chat service {service}.
Show the member and message counts of Programmable Chat channel {channel} ({service}).
DELETE
/v2/Services/{ServiceSid}/Channels/{Sid}
Delete a Programmable Chat channel · Delete channel
#
Ask an LLM
“Can I delete a chat channel along with its messages?”
“Is there a way to remove a Programmable Chat channel without triggering webhooks?”
Tell an agent destructive · confirm first
Delete chat channel {channel} from Chat service {service}.
Remove Programmable Chat channel {channel} in {service} permanently.
Ask an LLM
“Can I rename a chat channel after it was created?”
“Is it possible to store custom attributes on a Programmable Chat channel?”
Tell an agent
Rename chat channel {channel} in Chat service {service} to {name}.
Give Programmable Chat channel {channel} ({service}) the unique name {unique_name}.
Ask an LLM
“Can I create a private chat channel for a small group?”
“Is it possible to give a new chat channel a unique name I can look it up by?”
Tell an agent
Create a chat channel called {name} in Chat service {service}.
Create a {type} Programmable Chat channel {unique_name} in {service}.
Ask an LLM
“Which chat channels exist in my Programmable Chat service?”
“Can I list only the public or only the private chat channels?”
Tell an agent
List chat channels in Chat service {service}.
List {type} channels in Programmable Chat service {service}.
GET
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Webhooks
List webhooks on a chat channel · List channel webhook
#
Ask an LLM
“Which webhooks are attached to one Programmable Chat channel?”
“Can I check if a chat channel is wired to a Studio flow?”
Tell an agent
List webhooks on chat channel {channel} in Chat service {service}.
Show every channel webhook configured on {channel} ({service}).
POST
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Webhooks
Add a webhook to a chat channel · Create channel webhook
#
Ask an LLM
“Can I get events from one chat channel posted to my own URL?”
“Is it possible to retry a chat channel webhook if my server fails?”
Tell an agent
Add a {type} webhook to chat channel {channel} in {service}.
Send events from chat channel {channel} ({service}) to {url} as a {type} webhook.
GET
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Webhooks/{Sid}
Get a webhook on a chat channel · Fetch channel webhook
#
Ask an LLM
“What URL and triggers does a chat channel webhook use?”
“Can I inspect a single webhook on a Programmable Chat channel?”
Tell an agent
Fetch webhook {webhook} on chat channel {channel} in {service}.
Show the retry count and filters of chat channel webhook {webhook} ({channel}, {service}).
POST
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Webhooks/{Sid}
Update a webhook on a chat channel · Update channel webhook
#
Ask an LLM
“Can I change where a chat channel webhook sends its events?”
“Is it possible to raise the retry count on a channel webhook?”
Tell an agent
Point chat channel webhook {webhook} on {channel} ({service}) at {url}.
Set retry count {retries} on webhook {webhook} of chat channel {channel} in {service}.
DELETE
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Webhooks/{Sid}
Remove a webhook from a chat channel · Delete channel webhook
#
Ask an LLM
“Can I stop a chat channel from calling my webhook?”
“Is it possible to delete one webhook while keeping the channel?”
Tell an agent destructive · confirm first
Delete webhook {webhook} from chat channel {channel} in {service}.
Detach chat channel webhook {webhook} ({channel}, {service}).
GET
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Invites/{Sid}
Get an invite to a chat channel · Fetch invite
#
Ask an LLM
“Can I check the status of an invitation to a chat channel?”
“Which role will an invited user get when they join a channel?”
Tell an agent
Fetch invite {invite} to chat channel {channel} in {service}.
Show who chat channel invite {invite} was sent to ({channel}, {service}).
DELETE
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Invites/{Sid}
Revoke an invite to a chat channel · Delete invite
#
Ask an LLM
“Can I cancel an invitation before the user accepts it?”
“Is there a way to withdraw a chat channel invite I sent by mistake?”
Tell an agent destructive · confirm first
Revoke invite {invite} to chat channel {channel} in {service}.
Delete the pending chat invite {invite} ({channel}, {service}).
POST
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Invites
Invite a user to a chat channel · Create invite
#
Ask an LLM
“Can I invite someone to a private chat channel instead of adding them directly?”
“Is it possible to choose the role an invited user gets in a channel?”
Tell an agent
Invite {identity} to chat channel {channel} in {service}.
Send a channel invite to {identity} for {channel} ({service}) with role {role}.
GET
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Invites
List invites to a chat channel · List invite
#
Ask an LLM
“Who has been invited to a chat channel but not joined yet?”
“Can I check whether a specific identity has a pending channel invite?”
Tell an agent
List invites to chat channel {channel} in {service}.
List pending channel invites for identity {identity} on {channel} ({service}).
GET
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Members/{Sid}
Get a member of a chat channel · Fetch member
#
Ask an LLM
“Can I see one member's last consumed message in a chat channel?”
“What role does a given member hold in a Programmable Chat channel?”
Tell an agent
Fetch member {member} of chat channel {channel} in {service}.
Show the read position of chat member {member} ({channel}, {service}).
DELETE
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Members/{Sid}
Remove a member from a chat channel · Delete member
#
Ask an LLM
“Can I remove someone from a Programmable Chat channel?”
“Is it possible to kick a member without firing channel webhooks?”
Tell an agent destructive · confirm first
Remove member {member} from chat channel {channel} in {service}.
Kick chat member {member} out of {channel} ({service}).
POST
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Members/{Sid}
Update a member of a chat channel · Update member
#
Ask an LLM
“Can I change a chat channel member's role?”
“Is it possible to set which message a member has consumed up to?”
Tell an agent
Give chat member {member} in channel {channel} ({service}) the role {role}.
Set last consumed message index {index} for member {member} of {channel} in {service}.
POST
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Members
Add a member to a chat channel · Create member
#
Ask an LLM
“Can I add a user straight into a chat channel without an invite?”
“Is it possible to set a new member's role when adding them to a channel?”
Tell an agent
Add {identity} as a member of chat channel {channel} in {service}.
Join {identity} to Programmable Chat channel {channel} ({service}) as role {role}.
GET
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Members
List members of a chat channel · List member
#
Ask an LLM
“Who belongs to a given Programmable Chat channel?”
“Can I check whether a specific identity is a member of a channel?”
Tell an agent
List members of chat channel {channel} in {service}.
Check whether {identity} is a member of chat channel {channel} ({service}).
GET
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Messages/{Sid}
Get a message in a chat channel · Fetch message
#
Ask an LLM
“Can I retrieve one message from a Programmable Chat channel?”
“Who sent a particular chat channel message and when?”
Tell an agent
Fetch message {message} from chat channel {channel} in {service}.
Show the sender and body of chat message {message} ({channel}, {service}).
DELETE
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Messages/{Sid}
Delete a message from a chat channel · Delete message
#
Ask an LLM
“Can I delete an offensive message from a chat channel?”
“Is it possible to remove a chat message silently without webhooks?”
Tell an agent destructive · confirm first
Delete message {message} from chat channel {channel} in {service}.
Remove Programmable Chat message {message} posted in {channel} ({service}).
POST
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Messages/{Sid}
Edit a message in a chat channel · Update message
#
Ask an LLM
“Can I edit the body of a message already posted in a chat channel?”
“Is it possible to change who a chat message appears to be from?”
Tell an agent
Change the body of chat message {message} in channel {channel} ({service}) to {body}.
Update chat message {message} in {channel} under {service} so it is from {from}.
POST
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Messages
Send a message to a chat channel · Create message
#
Ask an LLM
“Can I post a message to a chat channel from my backend?”
“Is it possible to attach media when sending a Programmable Chat message?”
Tell an agent
Send {body} to chat channel {channel} in {service}.
Post {body} as {from} in Programmable Chat channel {channel} ({service}).
GET
/v2/Services/{ServiceSid}/Channels/{ChannelSid}/Messages
List messages in a chat channel · List message
#
Ask an LLM
“Can I pull the full message history of a Programmable Chat channel?”
“Is it possible to read chat channel messages newest first?”
Tell an agent
List messages in chat channel {channel} of {service}.
Read chat channel {channel} ({service}) history in {order} order.
Ask an LLM
“What permissions does one Programmable Chat role grant?”
“Can I look up a chat role by its SID?”
Tell an agent
Fetch chat role {role} in Chat service {service}.
Show the permission list of Programmable Chat role {role} ({service}).
Ask an LLM
“Can I delete a chat role that nobody uses any more?”
“Is it safe to remove a custom Programmable Chat role?”
Tell an agent destructive · confirm first
Delete chat role {role} from Chat service {service}.
Remove the Programmable Chat role {role} in {service}.
POST
/v2/Services/{ServiceSid}/Roles/{Sid}
Change a Programmable Chat role's permissions · Update role
#
Ask an LLM
“Can I add or remove permissions on an existing chat role?”
“Is it possible to stop a Programmable Chat role from deleting messages?”
Tell an agent
Set the permissions of chat role {role} in {service} to {permission}.
Update Programmable Chat role {role} ({service}) to grant only {permission}.
Ask an LLM
“Can I create a moderator role for my chat channels?”
“Is it possible to create a deployment-wide chat role with custom permissions?”
Tell an agent
Create a {type} chat role {name} with permission {permission} in Chat service {service}.
Add Programmable Chat role {name} to {service} of type {type} granting {permission}.
Ask an LLM
“Which roles are defined in my Programmable Chat service?”
“Can I see both channel roles and deployment roles for chat?”
Tell an agent
List roles in Chat service {service}.
Show every Programmable Chat role defined in {service}.
Ask an LLM
“Is a particular Programmable Chat user online right now?”
“How many channels has a Programmable Chat user joined?”
Tell an agent
Fetch chat user {user} in Chat service {service}.
Show the online status and channel count of Programmable Chat user {user} ({service}).
Ask an LLM
“Can I delete a chat user when they leave my app?”
“Does removing a Programmable Chat user also remove their channel memberships?”
Tell an agent destructive · confirm first
Delete chat user {user} from Chat service {service}.
Remove Programmable Chat user {user} in {service} for good.
Ask an LLM
“Can I change a chat user's display name?”
“Is it possible to give a Programmable Chat user a different service role?”
Tell an agent
Rename chat user {user} in Chat service {service} to {name}.
Assign role {role} to Programmable Chat user {user} ({service}).
Ask an LLM
“Can I register a chat user for someone who just signed up?”
“Is it possible to set a chat user's role and display name when creating them?”
Tell an agent
Create chat user {identity} in Chat service {service}.
Add Programmable Chat user {identity} called {name} to {service}.
Ask an LLM
“Which users are registered in my Programmable Chat service?”
“Can I page through every chat user in a service?”
Tell an agent
List users in Chat service {service}.
Show all Programmable Chat users of {service}.
GET
/v2/Services/{ServiceSid}/Users/{UserSid}/Bindings
List a chat user's push bindings · List user binding
#
Ask an LLM
“Which devices is a particular chat user registered to receive pushes on?”
“Can I list only the APN or only the FCM bindings of one chat user?”
Tell an agent
List push bindings of chat user {user} in {service}.
List {binding_type} bindings for Programmable Chat user {user} ({service}).
GET
/v2/Services/{ServiceSid}/Users/{UserSid}/Bindings/{Sid}
Get one of a chat user's push bindings · Fetch user binding
#
Ask an LLM
“Can I inspect one device registration of a chat user?”
“What endpoint does a chat user's push binding point to?”
Tell an agent
Fetch binding {binding} of chat user {user} in {service}.
Show device details for chat user {user}'s binding {binding} ({service}).
DELETE
/v2/Services/{ServiceSid}/Users/{UserSid}/Bindings/{Sid}
Remove one of a chat user's push bindings · Delete user binding
#
Ask an LLM
“Can I stop pushes to one device of a chat user?”
“Is it possible to unregister a lost phone for a Programmable Chat user?”
Tell an agent destructive · confirm first
Delete binding {binding} of chat user {user} in {service}.
Unregister chat user {user}'s device binding {binding} ({service}).
GET
/v2/Services/{ServiceSid}/Users/{UserSid}/Channels
List the channels a chat user is in · List user channel
#
Ask an LLM
“Which chat channels has a given user joined or been invited to?”
“Can I show a chat user their channels with unread counts?”
Tell an agent
List channels for chat user {user} in {service}.
Show the Programmable Chat channels user {user} belongs to ({service}).
GET
/v2/Services/{ServiceSid}/Users/{UserSid}/Channels/{ChannelSid}
Get a chat user's status in one channel · Fetch user channel
#
Ask an LLM
“How many unread messages does a chat user have in one channel?”
“What notification level has a user set for a single chat channel?”
Tell an agent
Fetch chat user {user}'s membership of channel {channel} in {service}.
Show unread count for user {user} in chat channel {channel} ({service}).
DELETE
/v2/Services/{ServiceSid}/Users/{UserSid}/Channels/{ChannelSid}
Remove a chat user from one channel · Delete user channel
#
Ask an LLM
“Can I take a chat user out of one channel from the user's side?”
“Is there a way to drop a single channel from a chat user's list?”
Tell an agent destructive · confirm first
Remove chat user {user} from channel {channel} in {service}.
Delete the user-channel link between {user} and chat channel {channel} ({service}).
POST
/v2/Services/{ServiceSid}/Users/{UserSid}/Channels/{ChannelSid}
Update a chat user's settings for one channel · Update user channel
#
Ask an LLM
“Can I mute a single chat channel for one user?”
“Is it possible to mark a chat channel as read for a user?”
Tell an agent
Set notification level {level} for chat user {user} in channel {channel} ({service}).
Mark chat channel {channel} consumed up to index {index} for user {user} in {service}.
POST
/v1/Services/{ServiceSid}/AlphaSenders
Add an alphanumeric sender ID to a Messaging Service · Create alpha sender
#
Ask an LLM
“Can I send SMS that shows my brand name instead of a phone number?”
“How long can an alphanumeric sender ID be?”
Tell an agent
Add alpha sender {alpha_sender} to Messaging Service {service}.
Register {alpha_sender} as the alphanumeric sender ID for {service}.
GET
/v1/Services/{ServiceSid}/AlphaSenders
List alphanumeric sender IDs on a Messaging Service · List alpha sender
#
Ask an LLM
“Which alphanumeric sender IDs are attached to my Messaging Service?”
“Can I see the brand names my messages show as the sender?”
Tell an agent
List alpha sender IDs on Messaging Service {service}.
Show every alphanumeric sender attached to {service}.
GET
/v1/Services/{ServiceSid}/AlphaSenders/{Sid}
Get an alphanumeric sender ID on a Messaging Service · Fetch alpha sender
#
Ask an LLM
“Can I look up one alphanumeric sender attached to a Messaging Service?”
“What capabilities does a specific alpha sender ID have?”
Tell an agent
Fetch alpha sender {alpha_sender} on Messaging Service {service}.
Show details of alphanumeric sender {alpha_sender} in {service}.
DELETE
/v1/Services/{ServiceSid}/AlphaSenders/{Sid}
Remove an alphanumeric sender ID from a Messaging Service · Delete alpha sender
#
Ask an LLM
“Can I stop sending under a brand name I no longer use?”
“Is it possible to detach an alpha sender without deleting the Messaging Service?”
Tell an agent destructive · confirm first
Remove alpha sender {alpha_sender} from Messaging Service {service}.
Delete alphanumeric sender {alpha_sender} attached to {service}.
GET
/v1/Services/{MessagingServiceSid}/ChannelSenders
List channel senders on a Messaging Service · List channel sender
#
Ask an LLM
“Which WhatsApp or other channel senders are attached to my Messaging Service?”
“Can I list the non-SMS senders in a Messaging Service's sender pool?”
Tell an agent
List channel senders on Messaging Service {service}.
Show every channel sender in the pool of {service}.
GET
/v1/Services/{MessagingServiceSid}/ChannelSenders/{Sid}
Get a channel sender on a Messaging Service · Fetch channel sender
#
Ask an LLM
“Can I look up one channel sender attached to a Messaging Service?”
“Which country code and capabilities does a channel sender have?”
Tell an agent
Fetch channel sender {sender} from Messaging Service {service}.
Show the capabilities of channel sender {sender} in {service}.
POST
/v1/Services/PreregisteredUsa2p
Link a preregistered A2P campaign to a Messaging Service · Create external campaign
#
Ask an LLM
“Can I attach a 10DLC campaign I registered elsewhere to my Messaging Service?”
“Is it possible to use a preregistered US A2P campaign ID with a Messaging Service?”
Tell an agent
Link preregistered campaign {campaign_id} to Messaging Service {service}.
Attach external A2P campaign {campaign_id} to {service}.
POST
/v1/Services/{ServiceSid}/PhoneNumbers
Add a phone number to a service's number pool · Create phone number
#
Ask an LLM
“Can I add one of my Twilio numbers to a service's pool?”
“Is it possible to move an existing phone number into a service?”
Tell an agent
Add phone number {phone_number} to service {service}.
Put number {phone_number} into the sender pool of {service}.
GET
/v1/Services/{ServiceSid}/PhoneNumbers
List phone numbers in a service's number pool · List phone number
#
Ask an LLM
“Which phone numbers are in a service's sender pool?”
“Can I see every number attached to one service?”
Tell an agent
List phone numbers attached to service {service}.
Show the number pool of {service}.
DELETE
/v1/Services/{ServiceSid}/PhoneNumbers/{Sid}
Remove a phone number from a service's number pool · Delete phone number
#
Ask an LLM
“Can I take a phone number out of a service without releasing it?”
“What happens to sessions using a number I remove from the pool?”
Tell an agent destructive · confirm first
Remove phone number {phone_number} from service {service}.
Detach pooled number {phone_number} from {service}.
GET
/v1/Services/{ServiceSid}/PhoneNumbers/{Sid}
Get a phone number in a service's number pool · Fetch phone number
#
Ask an LLM
“Can I check the capabilities of one number in a service pool?”
“Is a given pooled phone number reserved or in use?”
Tell an agent
Fetch pooled phone number {phone_number} from service {service}.
Show details of number {phone_number} attached to {service}.
POST
/v1/Services/{ServiceSid}/PhoneNumbers/{Sid}
Reserve or release a Proxy phone number · Update phone number
#
Ask an LLM
“Can I reserve a Proxy number so the pool never assigns it automatically?”
“Is it possible to put a reserved proxy number back into the pool?”
Tell an agent
Reserve Proxy number {phone_number} in service {service}.
Set reserved to {is_reserved} for proxy phone number {phone_number} ({service}).
Ask an LLM
“Can I add a short code I own to a service?”
“Is it possible to send from a short code through a service pool?”
Tell an agent
Add short code {short_code} to service {service}.
Attach my short code {short_code} to the pool of {service}.
Ask an LLM
“Which short codes are attached to one of my services?”
“Can I see every short code in a service's pool?”
Tell an agent
List short codes in service {service}.
Show all short codes attached to {service}.
DELETE
/v1/Services/{ServiceSid}/ShortCodes/{Sid}
Remove a short code from a service · Delete short code
#
Ask an LLM
“Can I detach a short code from a service?”
“Does removing a short code from a service release it from my account?”
Tell an agent destructive · confirm first
Remove short code {short_code} from service {service}.
Detach pooled short code {short_code} from {service}.
Ask an LLM
“Can I look up one short code attached to a service?”
“What country and capabilities does a pooled short code have?”
Tell an agent
Fetch short code {short_code} from service {service}.
Show details of pooled short code {short_code} in {service}.
POST
/v1/Services/{ServiceSid}/ShortCodes/{Sid}
Reserve or release a Proxy short code · Update short code
#
Ask an LLM
“Can I reserve a short code so Proxy never assigns it to a participant?”
“Is it possible to return a reserved short code to the proxy pool?”
Tell an agent
Reserve short code {short_code} in Proxy service {service}.
Set reserved to {is_reserved} on proxy short code {short_code} ({service}).
POST
/v1/Services/{MessagingServiceSid}/Compliance/Usa2p
Register a US A2P campaign · Create us app to person
#
Ask an LLM
“What do I need to submit to register a 10DLC campaign for US texting?”
“Can I declare that my A2P campaign messages contain links or phone numbers?”
Tell an agent
Register a {usecase} A2P campaign for Messaging Service {service} under brand {brand}.
Submit A2P campaign for {service}: brand {brand}, use case {usecase}, description {description}, flow {message_flow}, samples {samples}.
GET
/v1/Services/{MessagingServiceSid}/Compliance/Usa2p
List US A2P campaigns on a Messaging Service · List us app to person
#
Ask an LLM
“Which US A2P 10DLC campaigns are registered to my Messaging Service?”
“Can I check the registration status of my A2P campaigns?”
Tell an agent
List US A2P campaigns on Messaging Service {service}.
Show the 10DLC campaign registrations for {service}.
DELETE
/v1/Services/{MessagingServiceSid}/Compliance/Usa2p/{Sid}
Delete a US A2P campaign · Delete us app to person
#
Ask an LLM
“Can I withdraw a 10DLC campaign registration?”
“What happens to US texting when I delete my A2P campaign?”
Tell an agent destructive · confirm first
Delete A2P campaign {campaign} from Messaging Service {service}.
Deregister US 10DLC campaign {campaign} on {service}.
GET
/v1/Services/{MessagingServiceSid}/Compliance/Usa2p/{Sid}
Get a US A2P campaign · Fetch us app to person
#
Ask an LLM
“Has my 10DLC campaign been approved yet?”
“Why was a US A2P campaign registration rejected?”
Tell an agent
Fetch A2P campaign {campaign} on Messaging Service {service}.
Show the approval status of US A2P campaign {campaign} ({service}).
GET
/v1/Services/{MessagingServiceSid}/Compliance/Usa2p/Usecases
List A2P use cases available to a brand · Fetch us app to person usecase
#
Ask an LLM
“Which A2P campaign use cases can my registered brand choose from?”
“Is the marketing use case available for my 10DLC brand?”
Tell an agent
List A2P use cases available to Messaging Service {service}.
Show campaign use cases open to brand {brand} on {service}.
Ask an LLM
“What use case values can I assign to a Messaging Service?”
“Which Messaging Service scenarios does Twilio recognise, like notifications or marketing?”
Tell an agent
List the possible Messaging Service use cases.
Show me the supported messaging use case types.
Ask an LLM
“Can I look up one device or phone registered with my Notify service?”
“Which tags and identity are on a given Notify binding?”
Tell an agent
Fetch Notify binding {binding} from service {service}.
Show the address and tags of Notify binding {binding} in {service}.
Ask an LLM
“Can I stop Notify sending to a device that uninstalled my app?”
“Is it possible to unsubscribe one address from a Notify service?”
Tell an agent destructive · confirm first
Delete Notify binding {binding} from service {service}.
Unsubscribe the address behind Notify binding {binding} in {service}.
Ask an LLM
“Can I register a phone number with Notify so it gets SMS notifications?”
“Is it possible to tag a device binding so I can notify groups later?”
Tell an agent
Register {address} as a {binding_type} Notify binding for {identity} in service {service}.
Subscribe identity {identity} at {address} via {binding_type} to Notify service {service} with tag {tag}.
Ask an LLM
“Which devices and addresses are subscribed to my Notify service?”
“Can I find Notify bindings by tag or created within a date range?”
Tell an agent
List Notify bindings in service {service}.
List Notify bindings tagged {tag} in {service}.
Ask an LLM
“Can I send one notification that fans out to push, SMS and other channels at once?”
“Is it possible to notify everyone with a certain tag through Notify?”
Tell an agent
Send the notification {body} to identity {identity} through Notify service {service}.
Notify all bindings tagged {tag} in service {service} with title {title} and body {body}.
GET
/v1/Services/{ServiceSid}/Sessions/{SessionSid}/Interactions/{Sid}
Get a Proxy interaction · Fetch interaction
#
Ask an LLM
“Can I see what happened in one masked call or text between participants?”
“What was the inbound and outbound status of a Proxy interaction?”
Tell an agent
Fetch interaction {interaction} in Proxy session {session} of service {service}.
Show the call or message details of Proxy interaction {interaction} ({session}, {service}).
DELETE
/v1/Services/{ServiceSid}/Sessions/{SessionSid}/Interactions/{Sid}
Delete a Proxy interaction · Delete interaction
#
Ask an LLM
“Can I delete the record of one masked call or text?”
“Is it possible to remove a single interaction log from a Proxy session?”
Tell an agent destructive · confirm first
Delete interaction {interaction} from Proxy session {session} in {service}.
Remove the Proxy interaction record {interaction} ({session}, {service}).
GET
/v1/Services/{ServiceSid}/Sessions/{SessionSid}/Interactions
List interactions in a Proxy session · List interaction
#
Ask an LLM
“What calls and texts have passed through one Proxy session?”
“Is there a cap on how many Proxy interactions come back per session?”
Tell an agent
List interactions in Proxy session {session} of service {service}.
Show the masked call and message history of session {session} ({service}).
POST
/v1/Services/{ServiceSid}/Sessions/{SessionSid}/Participants/{ParticipantSid}/MessageInteractions
Send a message to a Proxy participant · Create message interaction
#
Ask an LLM
“Can my backend text a Proxy participant directly through their masked number?”
“Is it possible to send a system message to only one person in a Proxy session?”
Tell an agent
Send {body} to participant {participant} in Proxy session {session} of {service}.
Text Proxy participant {participant} ({session}, {service}) the message {body}.
GET
/v1/Services/{ServiceSid}/Sessions/{SessionSid}/Participants/{ParticipantSid}/MessageInteractions
List messages sent to a Proxy participant · List message interaction
#
Ask an LLM
“Which messages did my system send directly to one Proxy participant?”
“Can I list message interactions for just one participant in a session?”
Tell an agent
List message interactions for participant {participant} in Proxy session {session} ({service}).
Show messages sent to Proxy participant {participant} in {session} under {service}.
GET
/v1/Services/{ServiceSid}/Sessions/{SessionSid}/Participants/{ParticipantSid}/MessageInteractions/{Sid}
Get a message sent to a Proxy participant · Fetch message interaction
#
Ask an LLM
“Was a message I sent to a Proxy participant delivered?”
“Can I look up one outbound message interaction by SID?”
Tell an agent
Fetch message interaction {interaction} for participant {participant} in session {session} ({service}).
Show delivery status of Proxy message {interaction} to {participant} ({session}, {service}).
GET
/v1/Services/{ServiceSid}/Sessions/{SessionSid}/Participants/{Sid}
Get a Proxy session participant · Fetch participant
#
Ask an LLM
“Which masked number was assigned to a participant in a Proxy session?”
“Can I look up one Proxy participant's real phone number?”
Tell an agent
Fetch participant {participant} in Proxy session {session} of {service}.
Show the proxy number assigned to participant {participant} ({session}, {service}).
DELETE
/v1/Services/{ServiceSid}/Sessions/{SessionSid}/Participants/{Sid}
Remove a participant from a Proxy session · Delete participant
#
Ask an LLM
“Can I drop someone from a masked conversation?”
“Can a Proxy participant be re-added after I remove them?”
Tell an agent destructive · confirm first
Remove participant {participant} from Proxy session {session} in {service}.
Soft-delete Proxy participant {participant} ({session}, {service}).
GET
/v1/Services/{ServiceSid}/Sessions/{SessionSid}/Participants
List participants in a Proxy session · List participant
#
Ask an LLM
“Who are the people connected through one Proxy session?”
“Can I see each Proxy participant's masked number?”
Tell an agent
List participants of Proxy session {session} in service {service}.
Show everyone in masked session {session} ({service}).
POST
/v1/Services/{ServiceSid}/Sessions/{SessionSid}/Participants
Add a participant to a Proxy session · Create participant
#
Ask an LLM
“Can I connect a customer and a driver without revealing their real numbers?”
“Is it possible to choose which proxy number a participant is given?”
Tell an agent
Add {phone} to Proxy session {session} in service {service}.
Add participant {phone} named {name} to session {session} ({service}) using proxy number {proxy_number}.
Ask an LLM
“Is a Proxy session still open, and when does it expire?”
“Can I look up one masked-number session by its SID?”
Tell an agent
Fetch Proxy session {session} from service {service}.
Show the status and expiry of Proxy session {session} ({service}).
Ask an LLM
“Can I delete a Proxy session and all its participants?”
“Does deleting a session permanently remove soft-deleted participants too?”
Tell an agent destructive · confirm first
Delete Proxy session {session} from service {service}.
Remove masked-number session {session} in {service} permanently.
Ask an LLM
“Can I close a Proxy session early so the masked numbers stop working?”
“Is it possible to extend how long a Proxy session stays alive?”
Tell an agent
Set Proxy session {session} in {service} to status {status}.
Extend Proxy session {session} ({service}) to expire at {date_expiry}.
Ask an LLM
“Which masked-number sessions exist in my Proxy service?”
“Is there a limit on how many Proxy sessions a list call returns?”
Tell an agent
List sessions in Proxy service {service}.
Show all masked-number sessions of {service}.
Ask an LLM
“Can I open a masked-number session between two people for a delivery?”
“Is it possible to make a Proxy session voice-only or message-only?”
Tell an agent
Start a Proxy session named {unique_name} in service {service}.
Create a {mode} Proxy session in {service} that expires after {ttl} seconds.
Ask an LLM
“Which static assets are in my Serverless service?”
“Can I see all the files hosted by a Functions service?”
Tell an agent
List assets in Serverless service {service}.
Show every static asset of {service}.
Ask an LLM
“Can I add a new static file to my Serverless service?”
“Is it possible to create an asset placeholder before uploading its content?”
Tell an agent
Create an asset called {name} in Serverless service {service}.
Add a new static asset named {name} to {service}.
Ask an LLM
“Can I look up one static asset in a Serverless service?”
“When was a given Serverless asset last updated?”
Tell an agent
Fetch asset {asset} from Serverless service {service}.
Show details of Serverless asset {asset} ({service}).
Ask an LLM
“Can I delete a static file I no longer serve?”
“What happens to builds that reference an asset I delete?”
Tell an agent destructive · confirm first
Delete asset {asset} from Serverless service {service}.
Remove Serverless static asset {asset} in {service}.
Ask an LLM
“Can I rename a static asset in my Serverless service?”
“Is changing an asset's friendly name enough to update it?”
Tell an agent
Rename Serverless asset {asset} in {service} to {name}.
Change the display name of asset {asset} ({service}) to {name}.
GET
/v1/Services/{ServiceSid}/Assets/{AssetSid}/Versions
List versions of a Serverless asset · List asset version
#
Ask an LLM
“What versions of a static asset have been uploaded?”
“Can I see whether an asset version is public, protected or private?”
Tell an agent
List versions of asset {asset} in Serverless service {service}.
Show upload history of Serverless asset {asset} ({service}).
GET
/v1/Services/{ServiceSid}/Assets/{AssetSid}/Versions/{Sid}
Get a version of a Serverless asset · Fetch asset version
#
Ask an LLM
“Can I look up one specific upload of a static asset?”
“What path and visibility does an asset version have?”
Tell an agent
Fetch version {version} of asset {asset} in {service}.
Show the path and visibility of Serverless asset version {version} ({asset}, {service}).
Ask an LLM
“Which builds have been created for my Serverless service?”
“Can I see the history of Functions builds?”
Tell an agent
List builds in Serverless service {service}.
Show the build history of {service}.
Ask an LLM
“Can I bundle specific function and asset versions into a build?”
“Is it possible to pin the Node runtime and npm dependencies of a build?”
Tell an agent
Build Serverless service {service} from function versions {function_versions}.
Create a build of {service} with assets {asset_versions} on runtime {runtime}.
Ask an LLM
“Which function and asset versions went into a particular build?”
“Can I look up one Serverless build's runtime and dependencies?”
Tell an agent
Fetch build {build} from Serverless service {service}.
Show the contents and runtime of Serverless build {build} ({service}).
Ask an LLM
“Can I delete an old build I will never deploy?”
“Is it possible to clean up failed Serverless builds?”
Tell an agent destructive · confirm first
Delete build {build} from Serverless service {service}.
Remove the old Serverless build {build} in {service}.
GET
/v1/Services/{ServiceSid}/Builds/{Sid}/Status
Check a Serverless build's status · Fetch build status
#
Ask an LLM
“Has my Serverless build finished, or is it still building?”
“Did a Functions build fail?”
Tell an agent
Check the status of build {build} in Serverless service {service}.
Poll whether Serverless build {build} ({service}) is completed.
GET
/v1/Services/{ServiceSid}/Environments/{EnvironmentSid}/Deployments
List deployments to a Serverless environment · List deployment
#
Ask an LLM
“Which builds have been deployed to my staging or production environment?”
“Can I see the deployment history of one Serverless environment?”
Tell an agent
List deployments to environment {environment} of Serverless service {service}.
Show deployment history for environment {environment} ({service}).
POST
/v1/Services/{ServiceSid}/Environments/{EnvironmentSid}/Deployments
Deploy a build to a Serverless environment · Create deployment
#
Ask an LLM
“Can I promote a finished build to my production environment?”
“Is it possible to roll back by deploying an older build?”
Tell an agent
Deploy build {build} to environment {environment} of Serverless service {service}.
Roll environment {environment} ({service}) back to build {build}.
GET
/v1/Services/{ServiceSid}/Environments/{EnvironmentSid}/Deployments/{Sid}
Get a Serverless deployment · Fetch deployment
#
Ask an LLM
“Which build did a particular deployment put live?”
“Can I look up one deployment to a Serverless environment?”
Tell an agent
Fetch deployment {deployment} in environment {environment} of {service}.
Show which build Serverless deployment {deployment} shipped ({environment}, {service}).
Ask an LLM
“Which environments, like dev or production, does my Serverless service have?”
“Can I see the domain of each Functions environment?”
Tell an agent
List environments of Serverless service {service}.
Show every environment and its domain for {service}.
Ask an LLM
“Can I add a staging environment to my Serverless service?”
“Is it possible to choose the domain suffix of a new environment?”
Tell an agent
Create environment {unique_name} in Serverless service {service}.
Add environment {unique_name} to {service} with domain suffix {domain_suffix}.
Ask an LLM
“What domain and current build does one Serverless environment have?”
“Can I look up a Functions environment by SID?”
Tell an agent
Fetch environment {environment} from Serverless service {service}.
Show the domain and active build of environment {environment} ({service}).
DELETE
/v1/Services/{ServiceSid}/Environments/{Sid}
Delete a Serverless environment · Delete environment
#
Ask an LLM
“Can I tear down a staging environment I no longer need?”
“What happens to the domain when I delete a Serverless environment?”
Tell an agent destructive · confirm first
Delete environment {environment} from Serverless service {service}.
Tear down Serverless environment {environment} in {service}.
Ask an LLM
“Which functions are defined in my Serverless service?”
“Can I see every Twilio Function in one service?”
Tell an agent
List functions in Serverless service {service}.
Show all Functions defined under {service}.
Ask an LLM
“Can I create a new function in my Serverless service?”
“Is it possible to create an empty function before uploading code?”
Tell an agent
Create a function called {name} in Serverless service {service}.
Add a new Function named {name} to {service}.
Ask an LLM
“Can I look up one function in a Serverless service?”
“When was a given Function created or last changed?”
Tell an agent
Fetch function {function} from Serverless service {service}.
Show details of Function {function} ({service}).
Ask an LLM
“Can I delete a function I no longer use?”
“Is it possible to remove a Function along with all its versions?”
Tell an agent destructive · confirm first
Delete function {function} from Serverless service {service}.
Remove Function {function} and its versions from {service}.
Ask an LLM
“Can I rename a function in my Serverless service?”
“Does renaming a Function change its deployed code?”
Tell an agent
Rename function {function} in Serverless service {service} to {name}.
Change the display name of Function {function} ({service}) to {name}.
GET
/v1/Services/{ServiceSid}/Functions/{FunctionSid}/Versions
List versions of a Serverless function · List function version
#
Ask an LLM
“What versions of a function's code have been uploaded?”
“Can I see whether each Function version is public or protected?”
Tell an agent
List versions of function {function} in Serverless service {service}.
Show the code upload history of Function {function} ({service}).
GET
/v1/Services/{ServiceSid}/Functions/{FunctionSid}/Versions/{Sid}
Get a version of a Serverless function · Fetch function version
#
Ask an LLM
“What path and visibility does one Function version have?”
“Can I look up metadata of a specific function version?”
Tell an agent
Fetch version {version} of function {function} in {service}.
Show path and visibility of Function version {version} ({function}, {service}).
GET
/v1/Services/{ServiceSid}/Functions/{FunctionSid}/Versions/{Sid}/Content
Download the code of a Serverless function version · Fetch function version content
#
Ask an LLM
“Can I read the actual source code of a deployed function version?”
“Is there a way to download what a Function version contains?”
Tell an agent
Get the source code of version {version} of function {function} in {service}.
Download Function code for version {version} ({function}, {service}).
GET
/v1/Services/{ServiceSid}/Environments/{EnvironmentSid}/Logs
List Serverless function logs · List log
#
Ask an LLM
“Can I read the console logs my functions wrote in production?”
“Is it possible to filter Serverless logs by function and date range?”
Tell an agent
List logs for environment {environment} of Serverless service {service}.
Show logs from function {function} in environment {environment} ({service}) since {start_date}.
GET
/v1/Services/{ServiceSid}/Environments/{EnvironmentSid}/Logs/{Sid}
Get a Serverless log entry · Fetch log
#
Ask an LLM
“Can I look up one log line from a function run?”
“What level and message does a particular Serverless log entry have?”
Tell an agent
Fetch log {log} from environment {environment} of {service}.
Show the message and level of Serverless log entry {log} ({environment}, {service}).
GET
/v1/Services/{ServiceSid}/Environments/{EnvironmentSid}/Variables
List environment variables · List variable
#
Ask an LLM
“Which environment variables are set in one Serverless environment?”
“Can I see the config keys my functions read at runtime?”
Tell an agent
List variables in environment {environment} of Serverless service {service}.
Show every environment variable set on {environment} ({service}).
POST
/v1/Services/{ServiceSid}/Environments/{EnvironmentSid}/Variables
Set an environment variable · Create variable
#
Ask an LLM
“Can I add an API key as an environment variable for my functions?”
“Is it possible to set different variables per Serverless environment?”
Tell an agent
Add variable {key} with value {value} to environment {environment} of {service}.
Create environment variable {key}={value} on {environment} in Serverless service {service}.
GET
/v1/Services/{ServiceSid}/Environments/{EnvironmentSid}/Variables/{Sid}
Get an environment variable · Fetch variable
#
Ask an LLM
“What value does one environment variable currently hold?”
“Can I look up a Serverless variable by SID?”
Tell an agent
Fetch variable {variable} in environment {environment} of {service}.
Show the key and value of Serverless variable {variable} ({environment}, {service}).
POST
/v1/Services/{ServiceSid}/Environments/{EnvironmentSid}/Variables/{Sid}
Change an environment variable · Update variable
#
Ask an LLM
“Can I rotate the secret stored in an existing environment variable?”
“Is it possible to rename a variable's key?”
Tell an agent
Set variable {variable} in environment {environment} ({service}) to {value}.
Rename the key of Serverless variable {variable} on {environment} in {service} to {key}.
DELETE
/v1/Services/{ServiceSid}/Environments/{EnvironmentSid}/Variables/{Sid}
Delete an environment variable · Delete variable
#
Ask an LLM
“Can I remove an environment variable my functions no longer need?”
“Does deleting a variable affect functions already deployed?”
Tell an agent destructive · confirm first
Delete variable {variable} from environment {environment} of {service}.
Remove Serverless environment variable {variable} ({environment}, {service}).
Ask an LLM
“Can I read the current JSON stored in a Sync document?”
“What revision is a Sync document on right now?”
Tell an agent
Fetch Sync document {document} from service {service}.
Show the data and revision of Sync document {document} ({service}).
Ask an LLM
“Can I delete a Sync document once the shared state is no longer needed?”
“Do connected clients get notified when a Sync document is removed?”
Tell an agent destructive · confirm first
Delete Sync document {document} from service {service}.
Remove the shared-state document {document} in Sync service {service}.
Ask an LLM
“Can I overwrite the JSON in a Sync document only if nobody changed it since I read it?”
“Is it possible to make a Sync document expire after some time?”
Tell an agent
Replace the data of Sync document {document} in {service} with {data}.
Update Sync document {document} ({service}) to {data} only if its revision is {revision}.
Ask an LLM
“Can I create a shared JSON document that my web and mobile clients both see?”
“Is it possible to give a Sync document a name and an expiry?”
Tell an agent
Create Sync document {unique_name} in service {service}.
Create a Sync document in {service} holding {data} that expires after {ttl} seconds.
Ask an LLM
“Which Sync documents exist in my Sync service?”
“Can I page through every document stored in a Sync service?”
Tell an agent
List Sync documents in service {service}.
Show all shared-state documents of Sync service {service}.
GET
/v1/Services/{ServiceSid}/Documents/{DocumentSid}/Permissions/{Identity}
Get a user's access to a Sync document · Fetch document permission
#
Ask an LLM
“Can a given user read, write or manage a particular Sync document?”
“What document permissions does one identity have?”
Tell an agent
Show identity {identity}'s permissions on Sync document {document} in {service}.
Fetch the Sync document permission of {identity} for {document} ({service}).
DELETE
/v1/Services/{ServiceSid}/Documents/{DocumentSid}/Permissions/{Identity}
Revoke a user's access to a Sync document · Delete document permission
#
Ask an LLM
“Can I take away one user's access to a Sync document?”
“Is it possible to remove a document permission so the default rules apply again?”
Tell an agent destructive · confirm first
Revoke {identity}'s permission on Sync document {document} in {service}.
Delete the Sync document permission for {identity} on {document} ({service}).
POST
/v1/Services/{ServiceSid}/Documents/{DocumentSid}/Permissions/{Identity}
Set a user's access to a Sync document · Update document permission
#
Ask an LLM
“Can I give one user read-only access to a Sync document?”
“Is it possible to let a user delete a specific Sync document?”
Tell an agent
Grant {identity} read {read}, write {write}, manage {manage} on Sync document {document} in {service}.
Set document {document} ({service}) access for {identity}: read={read}, write={write}, manage={manage}.
GET
/v1/Services/{ServiceSid}/Documents/{DocumentSid}/Permissions
List who can access a Sync document · List document permission
#
Ask an LLM
“Which users have explicit permissions on a Sync document?”
“Can I audit access to one Sync document?”
Tell an agent
List the access grants on Sync document {document} in service {service}.
Show every identity with access to Sync document {document} ({service}).
POST
/v1/Services/{ServiceSid}/Streams/{StreamSid}/Messages
Publish a message to a Sync stream · Create stream message
#
Ask an LLM
“Can I broadcast a fire-and-forget event to everyone subscribed to a Sync stream?”
“How big can a Sync stream message be?”
Tell an agent
Publish {data} to Sync stream {stream} in service {service}.
Broadcast the event {data} on stream {stream} ({service}).
Ask an LLM
“Can I look up one Sync list and see when it expires?”
“What revision is a Sync list on?”
Tell an agent
Fetch Sync list {list} from service {service}.
Show the expiry and revision of Sync list {list} ({service}).
Ask an LLM
“Can I delete a Sync list and all of its items?”
“Is there a way to clear out an ordered Sync collection completely?”
Tell an agent destructive · confirm first
Delete Sync list {list} from service {service}.
Remove the ordered Sync collection {list} and its items in {service}.
Ask an LLM
“Can I extend how long a Sync list lives before it expires?”
“Is it possible to make an existing Sync list never expire?”
Tell an agent
Set Sync list {list} in {service} to expire after {collection_ttl} seconds.
Extend the time-to-live of Sync list {list} ({service}).
Ask an LLM
“Can I create an ordered list that syncs across my users' devices?”
“Is it possible to give a new Sync list a name and expiry?”
Tell an agent
Create Sync list {unique_name} in service {service}.
Create an ordered Sync list in {service} that expires after {collection_ttl} seconds.
Ask an LLM
“Which Sync lists exist in my Sync service?”
“Can I page through all ordered collections in a Sync service?”
Tell an agent
List Sync lists in service {service}.
Show every ordered Sync collection in {service}.
GET
/v1/Services/{ServiceSid}/Lists/{ListSid}/Items/{Index}
Get an item from a Sync list · Fetch sync list item
#
Ask an LLM
“Can I read the item at a given position in a Sync list?”
“What data is stored at index 3 of my Sync list?”
Tell an agent
Fetch item {index} from Sync list {list} in {service}.
Show the data at position {index} of Sync list {list} ({service}).
DELETE
/v1/Services/{ServiceSid}/Lists/{ListSid}/Items/{Index}
Delete an item from a Sync list · Delete sync list item
#
Ask an LLM
“Can I remove one entry from a Sync list?”
“Is it possible to delete a list item only if it hasn't changed since I read it?”
Tell an agent destructive · confirm first
Delete item {index} from Sync list {list} in {service}.
Remove Sync list entry {index} ({list}, {service}) if its revision is {revision}.
POST
/v1/Services/{ServiceSid}/Lists/{ListSid}/Items/{Index}
Update an item in a Sync list · Update sync list item
#
Ask an LLM
“Can I change the data of one item in a Sync list without a race condition?”
“Is it possible to set an expiry on an individual Sync list item?”
Tell an agent
Set item {index} of Sync list {list} in {service} to {data}.
Update Sync list item {index} ({list}, {service}) to expire after {item_ttl} seconds.
POST
/v1/Services/{ServiceSid}/Lists/{ListSid}/Items
Append an item to a Sync list · Create sync list item
#
Ask an LLM
“Can I append a new JSON entry to the end of a Sync list?”
“Is there a size limit on what I can add to a Sync list?”
Tell an agent
Append {data} to Sync list {list} in service {service}.
Add a new entry {data} to Sync list {list} ({service}) that expires after {item_ttl} seconds.
GET
/v1/Services/{ServiceSid}/Lists/{ListSid}/Items
List items in a Sync list · List sync list item
#
Ask an LLM
“Can I read all the entries of a Sync list in order?”
“Is it possible to page through a Sync list starting from a given index?”
Tell an agent
List items in Sync list {list} of service {service}.
Read Sync list {list} ({service}) items from index {from} in {order} order.
GET
/v1/Services/{ServiceSid}/Lists/{ListSid}/Permissions/{Identity}
Get a user's access to a Sync list · Fetch sync list permission
#
Ask an LLM
“Can a given user read or edit a particular Sync list?”
“What list permissions does one identity hold?”
Tell an agent
Show identity {identity}'s permissions on Sync list {list} in {service}.
Fetch the Sync list permission of {identity} for {list} ({service}).
DELETE
/v1/Services/{ServiceSid}/Lists/{ListSid}/Permissions/{Identity}
Revoke a user's access to a Sync list · Delete sync list permission
#
Ask an LLM
“Can I take away a user's access to one Sync list?”
“Is it possible to remove a list permission I granted earlier?”
Tell an agent destructive · confirm first
Revoke {identity}'s permission on Sync list {list} in {service}.
Delete the Sync list permission for {identity} on {list} ({service}).
POST
/v1/Services/{ServiceSid}/Lists/{ListSid}/Permissions/{Identity}
Set a user's access to a Sync list · Update sync list permission
#
Ask an LLM
“Can I let one user add items to a Sync list but not delete it?”
“Is it possible to give read-only access to a single Sync list?”
Tell an agent
Grant {identity} read {read}, write {write}, manage {manage} on Sync list {list} in {service}.
Set list {list} ({service}) access for {identity}: read={read}, write={write}, manage={manage}.
GET
/v1/Services/{ServiceSid}/Lists/{ListSid}/Permissions
List who can access a Sync list · List sync list permission
#
Ask an LLM
“Which users have explicit permissions on a Sync list?”
“Can I audit who is allowed to edit one Sync list?”
Tell an agent
List permissions on Sync list {list} in service {service}.
Show every identity with access to Sync list {list} ({service}).
Ask an LLM
“Can I look up one Sync map and see when it expires?”
“What revision is a key-value Sync map on?”
Tell an agent
Fetch Sync map {map} from service {service}.
Show the expiry and revision of Sync map {map} ({service}).
Ask an LLM
“Can I delete a Sync map and every key in it?”
“Is there a way to wipe out a key-value Sync collection?”
Tell an agent destructive · confirm first
Delete Sync map {map} from service {service}.
Remove the key-value Sync collection {map} and its items in {service}.
Ask an LLM
“Can I extend how long a Sync map lives before it expires?”
“Is it possible to change the time-to-live on an existing key-value map?”
Tell an agent
Set Sync map {map} in {service} to expire after {collection_ttl} seconds.
Extend the time-to-live of key-value map {map} ({service}).
Ask an LLM
“Can I create a key-value store that syncs live to my clients?”
“Is it possible to name a new Sync map and give it an expiry?”
Tell an agent
Create Sync map {unique_name} in service {service}.
Create a key-value Sync map in {service} that expires after {collection_ttl} seconds.
Ask an LLM
“Which Sync maps exist in my Sync service?”
“Can I page through all key-value collections in a Sync service?”
Tell an agent
List Sync maps in service {service}.
Show every key-value Sync collection in {service}.
GET
/v1/Services/{ServiceSid}/Maps/{MapSid}/Items/{Key}
Get an item from a Sync map by key · Fetch sync map item
#
Ask an LLM
“Can I read the value stored under one key in a Sync map?”
“What data does a Sync map hold for a given key?”
Tell an agent
Fetch key {key} from Sync map {map} in {service}.
Show the value stored under {key} in Sync map {map} ({service}).
DELETE
/v1/Services/{ServiceSid}/Maps/{MapSid}/Items/{Key}
Delete an item from a Sync map · Delete sync map item
#
Ask an LLM
“Can I remove one key from a Sync map?”
“Is it possible to delete a map entry only if nobody else changed it?”
Tell an agent destructive · confirm first
Delete key {key} from Sync map {map} in {service}.
Remove Sync map entry {key} ({map}, {service}) if its revision is {revision}.
POST
/v1/Services/{ServiceSid}/Maps/{MapSid}/Items/{Key}
Update an item in a Sync map · Update sync map item
#
Ask an LLM
“Can I change the value under a key in a Sync map safely with a revision check?”
“Is it possible to make one Sync map entry expire on its own?”
Tell an agent
Set key {key} in Sync map {map} ({service}) to {data}.
Update map entry {key} of {map} in {service} to {data} only if its revision is {revision}.
Ask an LLM
“Can I store a new key and JSON value in a Sync map?”
“Is it possible to add a map item that expires by itself?”
Tell an agent
Add key {key} with value {data} to Sync map {map} in {service}.
Store {data} under new key {key} in map {map} ({service}) for {item_ttl} seconds.
Ask an LLM
“Can I read every key and value stored in a Sync map?”
“Is it possible to page through a Sync map starting from a given key?”
Tell an agent
Read every key-value entry in Sync map {map} of {service}.
Read Sync map {map} ({service}) entries from key {from} in {order} order.
GET
/v1/Services/{ServiceSid}/Maps/{MapSid}/Permissions/{Identity}
Get a user's access to a Sync map · Fetch sync map permission
#
Ask an LLM
“Can a given user read or edit a particular Sync map?”
“What map permissions does one identity hold?”
Tell an agent
Show identity {identity}'s permissions on Sync map {map} in {service}.
Fetch the Sync map permission of {identity} for {map} ({service}).
DELETE
/v1/Services/{ServiceSid}/Maps/{MapSid}/Permissions/{Identity}
Revoke a user's access to a Sync map · Delete sync map permission
#
Ask an LLM
“Can I take away a user's access to one Sync map?”
“Is it possible to remove a map permission I granted earlier?”
Tell an agent destructive · confirm first
Revoke {identity}'s permission on Sync map {map} in {service}.
Delete the Sync map permission for {identity} on {map} ({service}).
POST
/v1/Services/{ServiceSid}/Maps/{MapSid}/Permissions/{Identity}
Set a user's access to a Sync map · Update sync map permission
#
Ask an LLM
“Can I let one user change values in a Sync map but not delete it?”
“Is it possible to give read-only access to a single Sync map?”
Tell an agent
Grant {identity} read {read}, write {write}, manage {manage} on Sync map {map} in {service}.
Set map {map} ({service}) access for {identity}: read={read}, write={write}, manage={manage}.
GET
/v1/Services/{ServiceSid}/Maps/{MapSid}/Permissions
List who can access a Sync map · List sync map permission
#
Ask an LLM
“Which users have explicit permissions on a Sync map?”
“Can I audit who is allowed to edit one Sync map?”
Tell an agent
Audit the permissions granted on Sync map {map} ({service}).
Show every identity with access to Sync map {map} ({service}).
Ask an LLM
“Can I look up one Sync message stream and its expiry?”
“When was a given Sync stream created?”
Tell an agent
Fetch Sync stream {stream} from service {service}.
Show details of message stream {stream} in Sync service {service}.
Ask an LLM
“Can I delete a Sync stream when the live session ends?”
“Do subscribers stop receiving events once a stream is deleted?”
Tell an agent destructive · confirm first
Delete Sync stream {stream} from service {service}.
Tear down message stream {stream} in {service}.
Ask an LLM
“Can I extend how long a Sync stream lives?”
“Is it possible to set a new time-to-live on an existing stream?”
Tell an agent
Set Sync stream {stream} in {service} to expire after {ttl} seconds.
Change the time-to-live of message stream {stream} ({service}) to {ttl}.
Ask an LLM
“Can I create a pub-sub channel for broadcasting live events to clients?”
“Is it possible to give a new Sync stream a name and expiry?”
Tell an agent
Create Sync stream {unique_name} in service {service}.
Create a message stream in {service} that expires after {ttl} seconds.
Ask an LLM
“Which message streams exist in my Sync service?”
“Can I page through all pub-sub streams in a Sync service?”
Tell an agent
List Sync streams in service {service}.
Show every pub-sub message stream of {service}.
Ask an LLM
“Which Verify services do I have for sending one-time codes?”
“Can I see all my verification services and their code settings?”
Tell an agent
List my Verify services.
Show every verification service on the account.
Ask an LLM
“Can I set up a verification service that sends 6-digit codes?”
“Is it possible to skip SMS to landlines when I create a Verify service?”
Tell an agent
Create a Verify service named {name}.
Create Verify service {name} that sends {code_length}-digit codes.
Ask an LLM
“What code length and channels does one Verify service use?”
“Can I check whether a Verify service does a lookup before sending?”
Tell an agent
Fetch Verify service {service}.
Show the code and push settings of verification service {service}.
Ask an LLM
“Can I change the name shown in verification messages?”
“Is it possible to turn on the do-not-share warning for an existing Verify service?”
Tell an agent
Rename Verify service {service} to {name}.
Set Verify service {service} to {name} with {code_length}-digit codes.
Ask an LLM
“Can I delete a Verify service I no longer send codes from?”
“What happens to pending verifications when a Verify service is removed?”
Tell an agent destructive · confirm first
Delete Verify service {service}.
Remove verification service {service} from my account.
POST
/v2/Services/{ServiceSid}/AccessTokens
Create a Verify enrollment access token · Create access token
#
Ask an LLM
“Can my backend mint a short-lived token so a device can enroll a push factor?”
“How long can a Verify enrollment access token last?”
Tell an agent
Create an enrollment access token for {identity} with factor type {factor_type} in Verify service {service}.
Issue a {factor_type} enrollment token for {identity} ({service}) valid for {ttl} seconds.
GET
/v2/Services/{ServiceSid}/AccessTokens/{Sid}
Get a Verify enrollment access token · Fetch access token
#
Ask an LLM
“Can I look up an enrollment access token I issued earlier?”
“Which factor type was an access token created for?”
Tell an agent
Fetch access token {token} from Verify service {service}.
Show the factor type and expiry of enrollment token {token} ({service}).
POST
/v2/Services/{ServiceSid}/RateLimits/{RateLimitSid}/Buckets
Add a bucket to a Verify rate limit · Create bucket
#
Ask an LLM
“Can I cap verification attempts to five per minute per user?”
“Is it possible to add a daily limit alongside a per-minute one?”
Tell an agent
Allow at most {max} requests every {interval} seconds on rate limit {rate_limit} in {service}.
Add a bucket of {max} per {interval} seconds to Verify rate limit {rate_limit} ({service}).
GET
/v2/Services/{ServiceSid}/RateLimits/{RateLimitSid}/Buckets
List buckets on a Verify rate limit · List bucket
#
Ask an LLM
“What request thresholds are set on one of my Verify rate limits?”
“Can I see every bucket configured for a rate limit?”
Tell an agent
List buckets for rate limit {rate_limit} in Verify service {service}.
Show the thresholds configured on rate limit {rate_limit} ({service}).
POST
/v2/Services/{ServiceSid}/RateLimits/{RateLimitSid}/Buckets/{Sid}
Change a bucket on a Verify rate limit · Update bucket
#
Ask an LLM
“Can I loosen a rate limit bucket that is blocking real users?”
“Is it possible to change the interval of an existing bucket?”
Tell an agent
Set bucket {bucket} on rate limit {rate_limit} ({service}) to {max} requests.
Change the window of Verify bucket {bucket} ({rate_limit}, {service}) to {interval} seconds.
GET
/v2/Services/{ServiceSid}/RateLimits/{RateLimitSid}/Buckets/{Sid}
Get a bucket on a Verify rate limit · Fetch bucket
#
Ask an LLM
“What maximum and interval does one rate limit bucket enforce?”
“Can I look up a single Verify rate limit bucket?”
Tell an agent
Fetch bucket {bucket} of rate limit {rate_limit} in {service}.
Show the max and interval of Verify bucket {bucket} ({rate_limit}, {service}).
DELETE
/v2/Services/{ServiceSid}/RateLimits/{RateLimitSid}/Buckets/{Sid}
Delete a bucket from a Verify rate limit · Delete bucket
#
Ask an LLM
“Can I remove one threshold from a rate limit?”
“What happens to throttling when I delete a rate limit bucket?”
Tell an agent destructive · confirm first
Delete bucket {bucket} from rate limit {rate_limit} in {service}.
Remove Verify throttle bucket {bucket} ({rate_limit}, {service}).
POST
/v2/Services/{ServiceSid}/Entities/{Identity}/Challenges
Send a push or TOTP challenge to a user · Create challenge
#
Ask an LLM
“Can I send a push approval request to a user's phone when they log in?”
“Is it possible to show transaction details in the push challenge?”
Tell an agent
Challenge {identity} on factor {factor} in Verify service {service}.
Send a push challenge to {identity} via factor {factor} ({service}) with message {message}.
GET
/v2/Services/{ServiceSid}/Entities/{Identity}/Challenges
List push or TOTP challenges for a user · List challenge
#
Ask an LLM
“Which login approvals are still pending for a user?”
“Can I filter a user's Verify challenges by factor or by status like denied?”
Tell an agent
List challenges for entity {identity} in Verify service {service}.
List {status} challenges for {identity} on factor {factor} ({service}).
GET
/v2/Services/{ServiceSid}/Entities/{Identity}/Challenges/{Sid}
Get a push or TOTP challenge · Fetch challenge
#
Ask an LLM
“Has the user approved or denied a login challenge yet?”
“Can I check the status of one Verify challenge?”
Tell an agent
Fetch challenge {challenge} for {identity} in Verify service {service}.
Show whether challenge {challenge} for {identity} ({service}) was approved.
POST
/v2/Services/{ServiceSid}/Entities/{Identity}/Challenges/{Sid}
Verify a push or TOTP challenge · Update challenge
#
Ask an LLM
“Can I approve a challenge by submitting the TOTP code the user typed?”
“Is it possible to attach device metadata when responding to a challenge?”
Tell an agent
Verify challenge {challenge} for {identity} in {service} with code {auth_payload}.
Respond to challenge {challenge} of {identity} ({service}) with payload {auth_payload}.
Ask an LLM
“Can I register a user so they can later enroll push or TOTP factors?”
“What identifier should I use for a Verify entity?”
Tell an agent
Create entity {identity} in Verify service {service}.
Register user {identity} as a new Verify entity in {service}.
Ask an LLM
“Which end users have enrolled factors in my Verify service?”
“Can I list every entity registered for push or TOTP?”
Tell an agent
List entities in Verify service {service}.
Show all enrolled users of Verify service {service}.
Ask an LLM
“Can I delete a user and all of their push and TOTP factors?”
“What happens to a user's challenges when I delete their Verify entity?”
Tell an agent destructive · confirm first
Delete entity {identity} from Verify service {service}.
Remove user {identity} and all their factors from {service}.
Ask an LLM
“Can I look up one enrolled user in my Verify service?”
“When was a given Verify entity created?”
Tell an agent
Fetch entity {identity} from Verify service {service}.
Show the enrollment record of user {identity} in {service}.
DELETE
/v2/Services/{ServiceSid}/Entities/{Identity}/Factors/{Sid}
Delete a user's authentication factor · Delete factor
#
Ask an LLM
“Can I remove a lost phone as a user's push factor?”
“Is it possible to unenroll one TOTP factor but keep the user?”
Tell an agent destructive · confirm first
Delete factor {factor} of {identity} in Verify service {service}.
Unenroll authentication factor {factor} from user {identity} ({service}).
GET
/v2/Services/{ServiceSid}/Entities/{Identity}/Factors/{Sid}
Get a user's authentication factor · Fetch factor
#
Ask an LLM
“Is a user's push or TOTP factor verified yet?”
“Can I look up one authentication factor of an enrolled user?”
Tell an agent
Fetch factor {factor} of {identity} in Verify service {service}.
Show the status and type of factor {factor} for {identity} ({service}).
POST
/v2/Services/{ServiceSid}/Entities/{Identity}/Factors/{Sid}
Verify or update a user's authentication factor · Update factor
#
Ask an LLM
“Can I finish enrolling a TOTP factor by submitting the first code?”
“Is it possible to update the push token of a factor after the app reinstalls?”
Tell an agent
Verify factor {factor} of {identity} in {service} with code {auth_payload}.
Update the notification token of factor {factor} for {identity} ({service}) to {token}.
GET
/v2/Services/{ServiceSid}/Entities/{Identity}/Factors
List a user's authentication factors · List factor
#
Ask an LLM
“Which push and TOTP factors has a user enrolled?”
“Can I see every factor registered to one entity?”
Tell an agent
List factors for entity {identity} in Verify service {service}.
Show every enrolled factor of user {identity} ({service}).
POST
/v2/Services/{ServiceSid}/Entities/{Identity}/Factors
Enroll a push or TOTP factor for a user · Create new factor
#
Ask an LLM
“Can I enroll an authenticator app (TOTP) for a user?”
“What do I need to register a push factor for a user's phone?”
Tell an agent
Enroll a {factor_type} factor named {name} for {identity} in Verify service {service}.
Register a push factor {name} for {identity} ({service}) with public key {public_key} and factor type {factor_type}.
POST
/v2/Services/{ServiceSid}/MessagingConfigurations
Use a Messaging Service for one country · Create messaging configuration
#
Ask an LLM
“Can I send verification codes to one country from a specific Messaging Service?”
“Is it possible to route codes for India through a different sender pool?”
Tell an agent
Send codes for country {country} via Messaging Service {messaging_service} in Verify service {service}.
Add a {country} messaging configuration to {service} using {messaging_service}.
GET
/v2/Services/{ServiceSid}/MessagingConfigurations
List per-country messaging configurations · List messaging configuration
#
Ask an LLM
“Which countries use a custom Messaging Service for my verification codes?”
“Can I see all country-specific sender overrides on a Verify service?”
Tell an agent
List messaging configurations of Verify service {service}.
Show every country sender override for {service}.
POST
/v2/Services/{ServiceSid}/MessagingConfigurations/{Country}
Change the Messaging Service for a country · Update messaging configuration
#
Ask an LLM
“Can I switch the sender pool used for one country's verification codes?”
“Is it possible to point an existing country override at a new Messaging Service?”
Tell an agent
Switch {country} codes in Verify service {service} to Messaging Service {messaging_service}.
Point the {country} override of {service} at {messaging_service}.
GET
/v2/Services/{ServiceSid}/MessagingConfigurations/{Country}
Get the messaging configuration for a country · Fetch messaging configuration
#
Ask an LLM
“Which Messaging Service sends verification codes to a given country?”
“Can I check the country override for one Verify service?”
Tell an agent
Fetch the {country} messaging configuration of Verify service {service}.
Show which sender pool handles {country} codes in {service}.
DELETE
/v2/Services/{ServiceSid}/MessagingConfigurations/{Country}
Remove the messaging configuration for a country · Delete messaging configuration
#
Ask an LLM
“Can I drop a country override so codes use the default sender again?”
“What happens to verification messages to a country after I remove its configuration?”
Tell an agent destructive · confirm first
Delete the {country} messaging configuration from Verify service {service}.
Remove the {country} sender override on {service}.
Documentation
📖
Documentation
https://www.twilio.com/docs/iam/api/account
📖
Documentation
https://www.twilio.com/blog/what-is-intelligent-virtual-assistant
📖
Documentation
https://www.twilio.com/docs/
📖
Documentation
https://www.twilio.com/docs/conversations
📖
Documentation
https://www.twilio.com/docs/add-ons/marketplace
📖
Documentation
https://www.twilio.com/docs/media
📖
Documentation
https://www.twilio.com/en-us/messaging
📖
Documentation
https://www.twilio.com/en-us/trusted-activation/verify
📖
Documentation
https://www.twilio.com/docs/video
📖
Documentation
https://www.twilio.com/en-us/voice
📖
Documentation
https://www.twilio.com/docs/lookup
📖
Documentation
https://www.twilio.com/docs/flex
📖
Documentation
https://www.twilio.com/docs/sendgrid
Specifications
⚙
OpenAPI
https://raw.githubusercontent.com/api-evangelist/twilio/refs/heads/main/openapi/twilio-services-api-openapi.yml
⚙
AsyncAPI
https://raw.githubusercontent.com/api-evangelist/twilio/refs/heads/main/asyncapi/twilio-asyncapi.yml
Other Resources
🔗
Pricing
https://www.twilio.com/en-us/messaging/pricing/conversations-api
🔗
Pricing
https://www.twilio.com/en-us/sms/pricing/us
🔗
Pricing
https://www.twilio.com/en-us/verify/pricing
🔗
Pricing
https://www.twilio.com/en-us/video/pricing
🔗
Pricing
https://www.twilio.com/en-us/voice/pricing/us
🔗
Pricing
https://www.twilio.com/en-us/user-authentication-identity/pricing/lookup
🔗
Pricing
https://www.twilio.com/en-us/flex/pricing
🔗
Pricing
https://www.twilio.com/en-us/products/email-api/pricing