Use Studio with Twilio Regions
Public beta
Studio in IE1, including the API, is available as a public beta release, and the information on this page is subject to change. Some features are not yet implemented, and others may change before Twilio declares Studio in IE1 generally available. Public beta features aren't covered by the Twilio Support Terms or Twilio Service Level Agreement.
Studio in IE1 is not PCI compliant or a HIPAA Eligible Service and should not be used in workflows that are subject to HIPAA or PCI.
You can use Studio in Twilio's Ireland (IE1) Region for EU data residency. Studio in IE1 works the same way it does in US1, with the differences called out on this page. For the complete list of Twilio Regions and product availability, see Regional product and feature availability.
Every widget in the Studio widget library works the same way in IE1 as it does in US1, with four exceptions:
| Widget | Available in IE1 | Related unsupported feature |
|---|---|---|
| Send to Flex | No | Flex ^1 |
| Connect Virtual Agent | No | <VirtualAgent> TwiML noun |
| Resolve Profile, Create or Update Profile | No | Twilio Profiles ^1 |
| Incoming Conversation (classic) trigger | No | Studio's webhook integration with Conversations (classic) ^2 |
^1: See Regional product and feature availability for the current list of IE1-supported products
^2: See Use the Conversations API with Twilio Regions. Conversations (classic) in IE1 only supports the Chat channel. SMS, WhatsApp, and Facebook Messenger aren't supported.
Studio flows in IE1 can't be triggered by inbound SMS. For more information, see Messaging IE1 Feature Availability.
To use Studio in IE1, complete the following steps.
-
In the Twilio Console, use the region selector to switch to Ireland (IE1). When you set the Console to the IE1 region, created Flows only run in IE1.
-
Use Region-specific credentials. Twilio isolates its Regions. When you target IE1, a US1 Auth Token or API key doesn't work. To learn more, see Manage Regional API Credentials.
- In the Console, go to API keys & tokens.
- Change the region selector to Ireland (IE1).
- Find your IE1 Auth Token.
- Create API keys with the Console region selector set to Ireland (IE1). Any keys you create only work in IE1.
-
Send Studio API requests to the dublin edge, using the following base URL.
Resource Base URL Studio REST API studio.dublin.ie1.twilio.com Using the Twilio CLI, sign in with the IE1 region and the dublin edge.
twilio login --region ie1 --edge dublinUsing a Twilio helper library, pass both the region and the edge when you create the client. In Node.js:
const client = require('twilio')(accountSid, authToken, { region: 'ie1', edge: 'dublin' });
Use the REST API to connect a phone number in IE1
In IE1, the phone number configuration page in the Twilio Console doesn't offer a Studio Flow option. To connect a phone number to a flow in IE1, use the REST API steps in this section.
To send incoming calls on a phone number to a flow in IE1, route the number's inbound calls to IE1, then set the number's IE1 voice URL to the flow's webhook URL. Twilio stores a separate configuration for a phone number in each Region, so you need both steps. For more information, see Inbound Call Processing.
Send each request with your IE1 credentials.
-
Set the inbound processing Region of the phone number to IE1. Replace
$PHONE_NUMBERwith your phone number in E.164 format, such as+18005550100.1curl -u $API_KEY_SID:$API_KEY_SECRET \2https://routes.dublin.ie1.twilio.com/v2/PhoneNumbers/$PHONE_NUMBER \3-d VoiceRegion=ie1The response contains
"voice_region": "ie1". A routing change can take up to five minutes to take effect. For more information, see Set a phone number's inbound processing Region using the REST API. -
Get the webhook URL of your flow. Fetch the flow from the dublin edge and copy the
webhook_urlvalue from the response.1curl -u $API_KEY_SID:$API_KEY_SECRET \2https://studio.dublin.ie1.twilio.com/v2/Flows/$FLOW_SIDThe response includes the
webhook_urlof the flow:1{2"sid": "FWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",3"webhook_url": "https://webhooks.dublin.ie1.twilio.com/v1/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Flows/FWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"4}The webhook URL of a flow in IE1 uses the
webhooks.dublin.ie1.twilio.comhost. The US1 host,webhooks.twilio.com, doesn't work for a flow in IE1. -
Set the voice URL of the phone number in IE1 to the webhook URL from step 2. Replace
$WEBHOOK_URLwith the exactwebhook_urlvalue from the step 2 response, and replace$PHONE_NUMBER_SIDwith the SID of your phone number, which starts withPN.1curl -u $API_KEY_SID:$API_KEY_SECRET \2https://api.dublin.ie1.twilio.com/2010-04-01/Accounts/$ACCOUNT_SID/IncomingPhoneNumbers/$PHONE_NUMBER_SID.json \3--data-urlencode "VoiceUrl=$WEBHOOK_URL" \4-d VoiceMethod=POSTFor more information, see the IncomingPhoneNumber resource.
-
Call your phone number. The call appears in the IE1 call logs and in the execution logs of the flow. It doesn't appear in the US1 call logs.
If the caller hears an application error message and the call ends, check whether Twilio processed the call in US1 instead of IE1. When this happens, the US1 Debugger shows error 11200 with an HTTP 401 response from the webhook URL of the flow. To fix this, set the inbound processing Region of the phone number to IE1, as described in Connect a phone number to a flow.
A flow that runs in IE1 can only reference resources that also exist in IE1. A widget that points to Voice, Messaging, Functions, or another resource that exists only in US1 doesn't work when the flow runs in IE1.