SIP Destinations

Save the SIP URI of your PBX or voice-agent platform once as an Edesy SIP destination, test it, and reuse it on any number. Portal steps and the /v1/sip-destinations API.

3 min read

A SIP destination is a saved SIP URI, such as your LiveKit Cloud inbound address or your PBX, that Edesy dials when a call arrives on one of your numbers. You save it once with a name and a transport, test it with one click, and then pick it from a dropdown on as many numbers as you like.

How it works#

  1. Your platform gives you an inbound SIP URI (for example, LiveKit shows one when you create an inbound trunk).
  2. You save it in Edesy as a destination.
  3. You click Test call to confirm it answers.
  4. You choose it as the inbound target on one or more numbers. See Route a Number to SIP.

Add a destination in the portal#

Open SIP → Inbound destinations → New destination:

Field What to enter
Name A label shown in the routing dropdown, such as My LiveKit Cloud
SIP URI Starts with sip: or sips:, for example sip:[email protected]
Transport Auto (recommended), UDP, TCP or TLS
Notes Optional, for your team

Tip Include a user part (the number before @). Most agent platforms, including Retell, Vapi and LiveKit, pick the agent from the dialled number, so a bare host often will not connect. The portal warns you when the user part is missing.

Note TLS signalling and SRTP media are available on request. Contact support before saving a destination that only accepts TLS.

With the API#

Method Path Purpose
GET /v1/sip-destinations List saved destinations
POST /v1/sip-destinations Create a destination
PATCH /v1/sip-destinations/:id Update name, URI, transport or notes
DELETE /v1/sip-destinations/:id Delete a destination
POST /v1/sip-destinations/:id/test-call Place a test call to it
curl -X POST https://voice-api.edesy.in/v1/sip-destinations \
  -H "Authorization: Bearer sk_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "My LiveKit Cloud",
    "sip_uri": "sip:[email protected]",
    "transport": "auto",
    "notes": "Production project"
  }'
Field Type Required Description
name string Required Label for the destination
sip_uri string Required sip: or sips: URI
transport string Optional auto (default), udp, tcp or tls
notes string Optional Free text

The URI is forwarded as saved, including a non-standard port (:9060) or a ;transport= parameter.

Platform-specific values#

Platform Typical SIP URI Notes
LiveKit Cloud sip:<number>@<project>.sip.livekit.cloud From your LiveKit inbound trunk. See LiveKit Cloud.
xAI Grok sip:<number>@sip.voice.x.ai Leave Transport on Auto. See xAI Grok.
Retell sip:<number>@sip.retellai.com See Vapi, Retell and Bolna.
Vapi The SIP URI shown in Vapi Usually needs credentials or an X-Vapi-Secret header, set on the number
Dograh From Dograh's SIP connectivity panel See Dograh.
Your PBX sip:<number>@pbx.example.com:5060 Allow Edesy's signalling IP on the PBX firewall

FAQ#

Can one destination serve many numbers?#

Yes. That is the point of saving it. When the URI changes, edit the destination once.

Where do I set a username and password for the destination?#

On each number's inbound routing, under SIP authentication. See Route a Number to SIP.

Does the caller hear ringing before my agent answers?#

The call is bridged with answer-on-bridge, so the caller is connected only when your endpoint answers.

What happens if my endpoint does not answer?#

The call fails on the caller's side with the response your endpoint returned. Check it with a test call.

Was this page helpful?