This feature is in Public Beta.
See the Voice SDK Call Message Events page for more information.
A UserDefinedMessageSubscription Resource is a Call subresource that represents a subscription to user-defined messages sent from the Voice SDK. You must create a UserDefinedMessageSubscription Resource in order to receive messages from the Voice SDK.
A UserDefinedMessageSubscription Resource can only be created during an active Call associated with the Voice SDK.
Your Voice SDK application must be configured to send messages. Read more about sending and receiving Voice SDK messages on the Voice SDK Call Message Events page.
The SID of the Account that subscribed to the User Defined Messages.
^AC[0-9a-fA-F]{32}$
Min length: 34
Max length: 34
The SID of the Call the User Defined Message Subscription is associated with. This refers to the Call SID that is producing the User Defined Messages.
^CA[0-9a-fA-F]{32}$
Min length: 34
Max length: 34
The SID that uniquely identifies this User Defined Message Subscription.
^ZY[0-9a-fA-F]{32}$
Min length: 34
Max length: 34
The date that this User Defined Message Subscription was created, given in RFC 2822 format.
The URI of the User Defined Message Subscription Resource, relative to https://api.twilio.com
.
POST https://api.twilio.com/2010-04-01/Accounts/{AccountSid}/Calls/{CallSid}/UserDefinedMessageSubscriptions.json
You need to subscribe to a Call's user-defined messages in order to receive messages from the Voice SDK. You do this by creating a UserDefinedMessageSubscription Resource for that Call SID.
You must have an endpoint that can handle POST
or GET
requests with a Content-Type
of application/json
. You specify this endpoint in the Callback
parameter when creating your UserDefinedMessageSubscription, and this is where Twilio will send requests containing the messages from the Voice SDK.
Use the appropriate Call SID in the path of your POST
request. Use the parent Call SID if you wish to send a message to parent Call leg. Use the child Call SID if you wish to send a message to the child Call leg.
See the Voice SDK Overview page for more information on Voice SDK Call legs.
The SID of the Account that subscribed to the User Defined Messages.
^AC[0-9a-fA-F]{32}$
Min length: 34
Max length: 34
application/x-www-form-urlencoded
The URL we should call using the method
to send user defined events to your application. URLs must contain a valid hostname (underscores are not permitted).
A unique string value to identify API call. This should be a unique string value per API call and can be a randomly generated.
The HTTP method Twilio will use when requesting the above Url
. Either GET
or POST
. Default is POST
.
GET
POST
1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function createUserDefinedMessageSubscription() {11const userDefinedMessageSubscription = await client12.calls("CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")13.userDefinedMessageSubscriptions.create({14callback:15"https://www.example.com/your-endpoint-that-can-receive-messages",16});1718console.log(userDefinedMessageSubscription.accountSid);19}2021createUserDefinedMessageSubscription();
1{2"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",3"call_sid": "CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",4"sid": "ZYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",5"date_created": "Wed, 18 Dec 2019 20:02:01 +0000",6"uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/UserDefinedMessageSubscriptions/ZYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.json"7}