Vapi, Retell and Bolna

Connect Vapi, Retell AI and Bolna to Edesy over SIP - point their bring-your-own SIP trunk at your Edesy termination trunk, and route your Edesy number to their SIP URI for inbound calls.

3 min read

Vapi, Retell and Bolna all accept a bring-your-own SIP trunk. For outbound calls, enter your Edesy termination trunk host (tk-<id>.trunk.edesy.in, port 5070) and its credentials in the platform. For inbound calls, route your Edesy number to the platform's SIP URI, adding credentials or a secret header if the platform requires them.

The trunk page in the Edesy portal shows ready-made snippets for all three under Integration snippets.

Outbound settings#

Setting Value
SIP server / gateway tk-<id>.trunk.edesy.in
Port 5070
Transport UDP or TCP
Username / password From your credentials trunk
Caller ID An Edesy number you own

Vapi#

Outbound. Create a BYO SIP trunk credential in Vapi with these values:

Vapi field Value
Provider byo-sip-trunk
Gateway IP / host tk-1a2b3c4d.trunk.edesy.in
Gateway port 5070
Outbound auth username user-1a2b3c4d
Outbound auth password Your trunk password

Then add your Edesy number to Vapi on that credential. The trunk page's Vapi snippet shows these values as JSON; check Vapi's current docs for the exact request shape.

Inbound. Route your Edesy number to the SIP URI Vapi gives you. Vapi challenges unauthenticated INVITEs, so on the number's inbound routing add either:

  • SIP authentication with the username and password Vapi expects, or
  • a custom SIP header X-Vapi-Secret set to your Vapi secret.

Do not put the secret in the URI; URI header parameters are dropped. See Route a Number to SIP.

Retell AI#

Outbound. In the Retell dashboard, add a SIP trunk under telephony and enter:

sip_address: tk-1a2b3c4d.trunk.edesy.in:5070
username: user-1a2b3c4d
password: YOUR_TRUNK_PASSWORD

Import your Edesy number into Retell on that trunk.

Inbound. Route your Edesy number to sip:<number>@sip.retellai.com, using the number in E.164 without + (such as sip:[email protected]) or the format Retell shows for your number. Add SIP authentication on the number if Retell asks for it.

Bolna#

Outbound. In Bolna's custom telephony settings, enter:

sip_endpoint: tk-1a2b3c4d.trunk.edesy.in:5070
username: user-1a2b3c4d
password: YOUR_TRUNK_PASSWORD

Inbound. Route your Edesy number to the SIP URI Bolna provides for your agent.

Test#

  1. Use the outbound test on the trunk page to check the Edesy side.
  2. Save the platform's inbound URI as a SIP destination and click Test call.
  3. Place a real call each way.

FAQ#

Inbound calls to Vapi drop within a second.#

Vapi answered with 401 Unauthorized and no credentials were sent. Add SIP authentication or the X-Vapi-Secret header on the number.

Retell or Vapi says the number is not found.#

The SIP URI has no user part, or the number format does not match what the platform registered. Use sip:<number>@host.

Should I use IP allowlist instead of credentials?#

Only if the platform publishes fixed egress IPs for SIP. Otherwise use a credentials trunk.

Outbound calls get 403 Caller ID Not Authorized.#

The platform is sending a caller ID that is not your Edesy number. Set the Edesy number as the caller ID in the platform.

For the API side of building an AI agent on Edesy numbers, see SIP Trunking for AI Voice Agents.

Was this page helpful?