Skip to contentSkip to navigationSkip to topbar
Page tools
Useful for sharing or LLM
Accelerate development with AI

On this page
Looking for more inspiration?Visit the

Set a phone number's inbound processing Region using the REST API


This guide explains how to use Twilio's REST API to control which Twilio Region handles incoming calls to your phone numbers.

To get the most out of this guide, please ensure you are familiar with the concepts described in the Inbound Processing Region overview.

The examples in this guide target the Ireland (IE1) Region. To view the available Regions, see the Region and Product Availability reference.

(information)

Info

Inbound Processing Region API V3 adds support for SMS Data Residency in the EU in the Ireland (IE1) region. This covers configuring the messaging region for a phone number or short code to Ireland.

To learn more about these changes, see the V3 API documentation.


Review your phone number's webhook configuration in the target Region

review-your-phone-numbers-webhook-configuration-in-the-target-region page anchor

Your phone number's webhook configuration is Region-specific and may vary between different Regions. Before making any changes to your phone number's call routing, it's a good idea to double-check the number's configuration in the specific Region that you plan to set the number's routing to.

To manage a phone number's configuration via Twilio Console, follow the instructions under the phone number section of our guide to managing Region-specific resources in the Console.

To inspect a phone number's configuration via the API, make a request to fetch the IncomingPhoneNumber resource in the target Region. Make sure that the request's FQDN targets the desired Region, and remember that the default FQDN of api.twilio.com defaults to the US1 Region.

For example, to check a phone number's configuration in the IE1 Region, you might make the following request using cURL or another HTTP client:

1
curl -u $API_KEY_SID:$API_KEY_SECRET \
2
https://api.dublin.ie1.twilio.com/2010-04-01/Accounts/$ACCOUNT_SID/IncomingPhoneNumbers/$PHONE_NUMBER.json

Alternatively, you can issue these requests using a Twilio server-side SDK or the Twilio CLI. See the guide to using the REST API with Twilio Regions for more information.

If the phone number's configuration in the target Region is not correct, use the REST API or the Console to adjust the number's configuration in the target Region before proceeding.


Check which Region your phone number is routed to

check-which-region-your-phone-number-is-routed-to page anchor

To check the Region that your number is routed to, make a GET request to the Inbound Processing Region API.

1
curl -u $API_KEY_SID:$API_KEY_SECRET \
2
https://routes.dublin.ie1.twilio.com/v2/PhoneNumbers/+16505551212

Look for the voice_region key in the response. This will indicate which Region your number's inbound voice calls will be routed to for processing.

(warning)

Warning

If the response to this request is a 404, the number has no explicitly set routing configuration and routes inbound calls to the default United States (US1) Region.

This occurs only when a phone number has been provisioned via the /IncomingPhoneNumbers REST API resource. Phone numbers provisioned via the Twilio Console will automatically be configured with an explicit routing configuration.


Set which Region your phone number is currently routed to

set-which-region-your-phone-number-is-currently-routed-to page anchor

To set the Region that your number is routed to, make a POST request to the Inbound Processing Region API with the VoiceRegion parameter.

In this example, the request sets the Region for inbound calls to IE1:

1
curl -u $API_KEY_SID:$API_KEY_SECRET \
2
https://routes.dublin.ie1.twilio.com/v2/PhoneNumbers/+16505551212 \
3
-d VoiceRegion=ie1
(error)

Danger

Warning: changing a phone number's incoming call routing Region can lead to call handling errors in certain cases. Be sure to test call routing in the target Region in a pre-production environment before changing routing in production.


Verify the incoming call routing Region

verify-the-incoming-call-routing-region page anchor

To demonstrate that calls to your phone number are being handled in the appropriate Region after a routing change, perform the following steps:

  1. Place a call to your phone number from any phone.
  2. Visit the phone number's Call Logs in the target Region.
  3. Verify that you find a new Call Log that corresponds with your sample call from step 1.
  4. Visit the phone number's Call Logs in a different, non-Active Region.
  5. Verify that you do not find a Call Log that corresponds with your sample call.

Routing calls to an Elastic SIP Trunk or Twilio SIP Domain

routing-calls-to-an-elastic-sip-trunk-or-twilio-sip-domain page anchor

Twilio routes inbound calls to your Twilio-powered SIP Trunks and SIP Domains using the same system as for phone numbers.

To manage routing for these resources types using the Inbound Processing Region API, adjust the request URL paths illustrated above as follows:

  1. Replace the word PhoneNumbers with Trunk or SipDomain, depending on which resource type you are managing.
  2. Replace the phone number in the path with the Trunk or Domain's full URI.
(warning)

Warning

It may take up to five minutes for a routing change to take effect.


V3 Region Configuration API

v3-region-configuration-api page anchor
(information)

V3 API limited to the United States (US1) region

V3 includes support for setting the messaging region for a phone number or short code to Ireland (IE1) for EU SMS data residency. See the SMS Data Residency Guide to learn more about this feature.

(error)

Define where Twilio processes SMS

To control where Twilio processes a sender's SMS messages, set the messagingRegion parameter for that sender.

Phone numbers and short codes can send and receive SMS only in their configured region. Messages sent from a sender in a different region fail.

Phone numbers

phone-numbers page anchor

Get phone number regional configuration

get-phone-number-regional-configuration page anchor
1
curl -u $API_KEY_SID:$API_KEY_SECRET \
2
https://routes.twilio.com/v3/PhoneNumbers/+33123XXXXXX
1
{
2
"phoneNumber": "+33123XXXXXX",
3
"url": "https://routes.twilio.com/v3/PhoneNumbers/+33123XXXXXX",
4
"voiceRegion": "ie1",
5
"messagingRegion": "us1",
6
"dateCreated": "2026-03-15T10:00:00Z",
7
"dateUpdated": "2026-03-18T14:30:00Z"
8
}

The messaging and voice regions can be set independently, so you can choose to only update one at a time. Twilio recommends keeping voice and messaging regions aligned to ensure consistent behavior.

(information)

Info

Phone numbers that are currently part of a messaging service should be removed from the service before updating the messaging region.

Set phone number regional configuration

set-phone-number-regional-configuration page anchor
1
curl -u $API_KEY_SID:$API_KEY_SECRET \
2
https://routes.twilio.com/v3/PhoneNumbers/+33123XXXXXX \
3
--data-urlencode messagingRegion=ie1 \
4
--data-urlencode voiceRegion=ie1
1
{
2
"phoneNumber": "+33123XXXXXX",
3
"url": "https://routes.twilio.com/v3/PhoneNumbers/+33123XXXXXX",
4
"voiceRegion": "ie1",
5
"messagingRegion": "ie1",
6
"dateCreated": "2026-03-15T10:00:00Z",
7
"dateUpdated": "2026-03-18T14:30:00Z"
8
}

To specify a short code, add the relevant ISO 3166-2(link takes you to an external page) country code to the path of the API endpoint URL: routes.twilio.com/v3/ShortCodes/{ISO_CODE}/{SHORT_CODE}

Get short code regional configuration

get-short-code-regional-configuration page anchor
1
curl -u $API_KEY_SID:$API_KEY_SECRET \
2
https://routes.twilio.com/v3/ShortCodes/US/123456
1
{
2
"isoCountryCode": "US",
3
"shortCode": "123456",
4
"url": "https://routes.twilio.com/v3/ShortCodes/US/123456",
5
"messagingRegion": "us1",
6
"dateCreated": "2026-03-15T10:00:00Z",
7
"dateUpdated": "2026-03-18T14:30:00Z"
8
}

Set short code regional configuration

set-short-code-regional-configuration page anchor
1
curl -u $API_KEY_SID:$API_KEY_SECRET \
2
https://routes.twilio.com/v3/ShortCodes/US/123456 \
3
--data-urlencode messagingRegion=ie1
1
{
2
"isoCountryCode": "US",
3
"shortCode": "123456",
4
"url": "https://routes.twilio.com/v3/ShortCodes/US/123456",
5
"messagingRegion": "ie1",
6
"dateCreated": "2026-03-15T10:00:00Z",
7
"dateUpdated": "2026-03-18T14:30:00Z"
8
}