Documentation Index
Fetch the complete documentation index at: https://docs.usetuner.ai/llms.txt
Use this file to discover all available pages before exploring further.
Tuner only needs a SIP URI and (if your edge uses digest auth) a username and password. Any provider that issues those will work, the tabs below are shortcuts for the most common sources.
Already have a SIP URI?
Twilio
Telnyx
LiveKit SIP bridge
-
Open Tuner → Agent Settings → SIP Settings.
-
Paste SIP URI, Username, and Password exactly as your provider issued them (leave username/password empty if your edge does not use digest auth).
-
Click Verify & Save.
That’s it, no provider-specific steps required.What is Twilio? Twilio is a cloud communications platform that lets you place and receive phone calls programmatically. Its Elastic SIP Trunking product gives you a SIP endpoint on Twilio’s network that you can dial from anywhere on the internet, which is what Tuner needs to reach your agent.Use Elastic SIP Trunking and copy the trunk’s Termination SIP URI plus a Credential List username/password.
- SIP URI shape:
sip:<credential-username>@<your-trunk>.pstn.twilio.com
- Username / Password: the values from your Credential List.
Follow Twilio’s docs for the current Console steps:Paste the result into Tuner → Agent Settings → SIP Settings. What is Telnyx? Telnyx is a communications platform similar to Twilio that provides voice, SMS, and SIP trunking on its own private IP network. Its SIP URI calling feature exposes your SIP Connection at sip:<username>@sip.telnyx.com so external clients like Tuner can dial it directly.On an active SIP Connection with credential authentication, enable Receive SIP URI calls.
- SIP URI shape:
sip:<credential-username>@sip.telnyx.com
- Username / Password: the same credential pair.
Follow Telnyx’s docs for the current portal steps:Paste the result into Tuner → Agent Settings → SIP Settings. What is the LiveKit SIP bridge? It is an optional add-on service for LiveKit projects that lets a normal phone call (SIP) enter a LiveKit room so your agent worker can talk to the caller. If you are building on LiveKit, you can choose to use this bridge as your phone ingress, or you can keep using your own SIP provider (Twilio, Telnyx, etc.) instead.
-
SIP URI: copy your project’s SIP URI from the LiveKit Cloud console (shape:
sip:<project-id>.sip.livekit.cloud).
-
Username / Password: the
auth_username / auth_password on your inbound SIP trunk (not your LiveKit API key).
-
Add a dispatch rule so inbound calls reach your agent worker.
Follow LiveKit’s docs for current steps:Paste the SIP URI and inbound-trunk credentials into Tuner → Agent Settings → SIP Settings.
Sync the call back with the SIP ID
Placing the call is only half of simulation, Tuner also has to recognise the call your agent syncs back as the one it just dialled. To make that link, Tuner uses the SIP Call-ID that travels with the call.
How the Call-ID flows
When Tuner dials your agent, it sends a standard SIP INVITE that contains a Call-ID header:
INVITE sip:your-agent@provider.example SIP/2.0
Call-ID: 2jf9wCCXfwgxKkTOfLcEsA5LD6fD
...
Your SIP provider receives this INVITE, accepts the call, and captures that Call-ID. It then surfaces the value to your application, which you pass back to Tuner via the Create Call API or one of the Tuner SDKs (Pipecat / LiveKit).
SIP providers may change the header name or format of the Call-ID as they process the call. If you’re unsure which field carries the original value, capture a PCAP (packet capture) of an inbound call on your SIP edge and look for the Call-ID header to trace how it was relayed.
How you pass this value back depends on how you sync calls into Tuner:
- LiveKit — follow the Connecting to LiveKit SDK guide. Pass the
Call-ID value as the sip_correlation_id argument in the Tuner LiveKit plugin.
- Pipecat — follow the Connecting to Pipecat SDK guide. Pass the
Call-ID value as the sip_call_id argument in the Tuner Pipecat observer.
- Custom integration (API) — include the
Call-ID value as sip_call_id in the payload you send to the Create Call API.
Without sip_call_id coming back on the synced call, the call still gets ingested, it just won’t be linked to its simulation row, and will appear as ordinary production traffic instead.
Paste your SIP URI and credentials into Agent Settings → SIP Settings, click Verify & Save, and you’re ready to run simulations.
Next: Run your first simulation.