# Vapi assistants on Voice Logica

Your Vapi assistant answers your number through Voice Logica, calls out from it, and transfers callers to your team, blind or warm. Every call is recorded in Voice Logica and can be analysed next to your team's calls.

> **Being rolled out:** If you don't see **Connect an AI agent (ElevenLabs, Vapi, Retell)** on your line, ask us in **Support** and we set it up for you.
## Before you start

- Your own line in **Telephony**: a SIP trunk from [your own carrier](https://docs.voicelogica.ai/telephony/your-own-carrier/) or your [office PBX](https://docs.voicelogica.ai/telephony/connect-your-pbx/). Voice Logica's own numbers can't carry an outside agent.
- Your assistant in Vapi.
- Your Vapi private key: **Vapi dashboard - API Keys - private key**. US and EU organisations are detected from the key. Vapi creates SIP trunks only through its API, so **Connect** is the simple way. If you prefer not to share the key, ask us in **Support** for the values to set it up yourself through the Vapi API.
- Trunk minutes on your plan (see [What is charged](https://docs.voicelogica.ai/integrations/ai-platforms/#what-is-charged)).

## 1. Send your number's calls to the assistant

1. **Open the line**

   **Telephony - Trunks**, open the line that has your number.

2. **Choose the destination**

   Under **Default Inbound Destination**, set **Destination Type** to **SIP URI (AI platform or SIP system)** and pick the **Vapi** preset with your region. The **Vapi SIP credential ID** is filled in by **Connect** in the next step.

3. **Connect**

   In **AI agent on this line**, click **Connect an AI agent (ElevenLabs, Vapi, Retell)**, choose **Vapi**, paste your key if none is saved yet, pick the assistant under **Agent** and click **Connect**.

4. **Call your number**

   Your Vapi assistant answers. The call appears in **Calls**.

**Connect** does the Vapi side for you: it creates the SIP trunk credential in Vapi with this line's address and a login only Vapi uses, adds your number and assigns your assistant. The same number in Vapi is now set up to call out through your Voice Logica line too (section 3).

To send only some numbers to the assistant, use an [inbound route](https://docs.voicelogica.ai/telephony/routing/) with the same **SIP URI** destination.

## 2. Transfers to your team

In Vapi, give the assistant the **Transfer Call** tool and add one destination per place it may transfer to. On a SIP number Vapi transfers with SIP REFER, and Voice Logica rings the destination.

Your line's address is `<line ID>.sip.voicelogica.ai`: you find it on the SIP trunk credential that **Connect** created in Vapi.

| You want | Destination in Vapi |
|---|---|
| Blind transfer to a person | Type **SIP**, `sip:108@<line ID>.sip.voicelogica.ai` (108 = their extension) |
| Blind transfer to a team | Type **SIP**, `sip:<group extension>@<line ID>.sip.voicelogica.ai` |
| Blind transfer to an outside number | Type **Number**, `+302101234567` |
| Warm transfer to a person | Type **SIP**, `sip:warm-108@<line ID>.sip.voicelogica.ai` |
| Warm transfer to an outside number | Type **SIP**, `sip:warm-+302101234567@<line ID>.sip.voicelogica.ai` |

**Blind:** the caller is passed straight on and the assistant leaves the call.

**Warm:** the caller hears hold music while the person rings. When they answer, they are connected and the assistant leaves. Vapi's own warm-transfer modes need a Twilio number; on Voice Logica you get a warm transfer with the `warm-` prefix instead.

**Tell your team why they get the call.** Add a SIP header `X-VL-Summary` to the destination with a short summary. Voice Logica saves it with the call as the transfer reason.

Use full numbers or Voice Logica extensions. Short service numbers, emergency, premium-rate, shared-cost and satellite numbers are refused.

## 3. Outgoing calls from your assistant

After **Connect**, your number in Vapi places its calls through your Voice Logica line.

- Start them from Vapi as usual: an outbound call from the number, a campaign, or the Vapi API.
- The person you call sees your number.
- The calls appear in **Calls** as outgoing, with recording and analysis.

**Outgoing only.** A line can be connected for outgoing calls only: your assistant calls out through it and incoming calls keep going where they go today. The line then shows that your assistant *places its calls through this line* and that *incoming calls are not affected*. Ask us in **Support** to connect it this way.

## 4. Transfers during outgoing calls

The same **Transfer Call** destinations work when your assistant placed the call. They move **the person you called**:

- **Blind:** the person is passed on and the assistant leaves.
- **Warm:** the person hears hold music while we ring your colleague, who sees **the customer's number**. When your colleague answers, the two are connected and the assistant leaves.

## 5. See every call analysed

- Every call, incoming and outgoing, is in **Calls**, including the part your team handled after a transfer.
- Each call has its **recording**. With analysis on, also the **transcript** by speaker, a **summary** and your **call results**.
- Callers are matched to your **contacts**, with their history, and **workflows** can run when a call ends.
- Your team's own calls are analysed with the same results, so you compare the assistant and your people on the same scale.

Each connected line has an **Analysis** switch, on by default. While it is on, each call is transcribed and, at the end, analysed by the default analysis agent in [Call settings](https://docs.voicelogica.ai/telephony/call-settings/): the summary and whatever else that agent is set up to produce. That uses analysis minutes as well as trunk minutes. If you have no analysis minutes left, calls still go through, without a transcript, on trunk minutes only. Turned off, the line's calls are never transcribed. While the connection is being rolled out, we set the switch for you.

## 6. Try the same assistant on Voice Logica

Click **Import agent** on the line (or **API Keys** - **AI platforms** - **Import an agent**). Voice Logica copies the prompt, greeting, voice, model, transfers, tools and knowledge. Your webhook tools become workflows that run during the call. Compare both in **Calls**, and use **Update agent** when you change the original. More in [Try a Voice Logica agent](https://docs.voicelogica.ai/integrations/ai-platforms/#try-a-voice-logica-agent).

## If something doesn't work

| What you see | What to do |
|---|---|
| A transfer to a short number is refused | Use the full number, or the Voice Logica extension of the person or team. |
| Outgoing calls end at once, without ringing | Your carrier must allow this line to call out. Connect the assistant to a line that can call out. |
| Calls are refused before they ring | Your plan has no trunk minutes left. See **Billing**. |
| Connect says the line is a Voice Logica number | Outside agents run on your own SIP trunk or office PBX. Connect that line instead. |
| Vapi rejects the call with a credential error | Click **Connect** again on the line: it re-creates the credential with the right region. |
