You’re correct—there are two primary methods to integrate custom telephony providers with Retell AI(1).
Method 1: Elastic SIP Trunking (Recommended)(1)
This is the recommended approach for integrating with telephony providers that support elastic SIP trunking(1). You’ll need to set up a SIP trunk and configure your number to point to it, then import that number to Retell(1). When using this method, all telephony functionalities supported by Retell numbers will also be supported here, assuming your telephony provider supports them(1).
Retell’s SIP server URI is: sip:sip.retellai.com(1)
IP block for traffic: 18.98.16.120/30 (All regions), 143.223.88.0/21 (certain United States traffic), 161.115.160.0/19 (certain United States traffic)(1)
Transport methods supported include TCP (Recommended), UDP, and TLS(1).
Method 2: Dial to SIP URI(1)
If your telephony provider doesn’t support elastic SIP trunking, or you have a more complicated telephony setup, you can use this method(1). With this approach, Retell doesn’t directly make or receive calls—instead, your system dials the call to the respective SIP URI(1). This requires you to have code to handle integration with your telephony provider(1).
To obtain the SIP URI for a call, you would call the Register Phone Call API(1). You’ll get a call_id back from this API, which you use to construct the SIP URI(1):
SIP URI: sip:{call_id}@sip.retellai.com(1)
When using this method, you won’t be able to utilize Retell’s transfer call feature, as Retell doesn’t have access and control over the telephony provider and number(1). However, you can implement your own transfer logic using a custom function(1).
**