---
title: "Place your first call"
description: "Place a browser call through a SIP trunk, confirm two-way audio, and inspect the resulting call record in the dashboard or Voice API."
canonical: "https://bird.com/docs/guides/voice/first-call"
---

# Place your first call

Place a real phone call from the dashboard. The dashboard [phone](/docs/guides/voice/phone) is a SIP client that uses the same trunk, caller ID, and destination settings as your phone system.

After the call, you can inspect its record in the dashboard or through the Voice API.

## Prerequisites

Before you start, make sure you have:

- A workspace with **Phone** under **Voice**. The dashboard shows it when your workspace region supports browser calling and you have `voice:write` and `voice_management:read` permissions.
- A phone number you own and a phone that can answer the verification and test calls.
- A browser with a working microphone.

## 1. Open the phone

Select **Voice** > **Phone** in the dashboard. The phone opens in a floating window and remains open as you navigate.

If your workspace is not ready to place calls, the phone displays **Finish setup to place calls**. Its checklist identifies each missing requirement and links to the required action. Creating a call-ready trunk and verifying a caller ID completes the checklist.

## 2. Create a call-ready trunk

Select **Create a trunk** from the checklist. Enter a name, then select **Create trunk**.

The dashboard enables outbound calling and [session credentials](/docs/guides/voice/sip-trunks#session-credentials) when it creates the trunk. The trunk also offers the MD5 digest that the browser uses. The checklist marks every trunk requirement as complete.

## 3. Verify your caller ID

Select **Verify a number you own** from the checklist. Enter a number you own in the **Phone number** field using E.164 format: a leading `+`, the country code, and the national number. Then select **Send verification call**.

Answer the verification call and listen for the six-digit code. Enter it in the **Verification code** field, then select **Verify caller ID**.

The dashboard displays **Caller ID verified**, removes the setup notice, and adds the number to the phone's **From** row.

## 4. Enable the destination country

Open [**Voice** > **Destinations**](https://bird.com/dashboard/w/voice/destinations). Find the country you plan to call and turn on its toggle.

Calls to disabled countries are rejected before the platform dials a carrier.

## 5. Place the call

Enter the number you verified in the **To** row, then select **Call**. If your browser requests microphone access, allow it.

Your phone rings and displays the verified caller ID. Answer the call and confirm that you have two-way audio. To end the call from the dashboard, select **Hang up**.

## 6. Inspect the call record

Open [**Voice** > **Legs**](https://bird.com/dashboard/w/voice/legs). The page lists calls by start time, newest first, so your call appears in the first row. Select it to inspect when it was answered, its billable duration, and its cost after rating completes.

The same call records are available through the API:

**TypeScript**

```typescript
for await (const leg of bird.voice.legs.list()) {
  console.log(leg.id, leg.status);
}
```

Examples: [TypeScript](/docs/guides/voice/first-call.ts.md) · [Python](/docs/guides/voice/first-call.py.md) · [Go](/docs/guides/voice/first-call.go.md) · [PHP](/docs/guides/voice/first-call.php.md) · [CLI](/docs/guides/voice/first-call.cli.md) · [MCP](/docs/guides/voice/first-call.mcp.md) · [cURL](/docs/guides/voice/first-call.curl.md)

Use the call record to investigate future call failures. A refused call stores its cause in `rejection_reason`. For dashboard filters, record fields, and API access, see the [call log guide](/docs/guides/voice/call-log).

## Troubleshoot the test call

- **The phone still displays Finish setup to place calls**: Complete each unchecked requirement using the link in its checklist row.
- **The phone displays a rejection reason**: `destination_not_enabled` means the destination country is disabled. `caller_id_not_verified` means the number in the **From** row is not verified. The [rejected calls reference](/docs/guides/voice/call-log#rejected-calls) covers every reason and its resolution.
- **The call connects, but one side has no audio**: Check your browser's microphone permission and the microphone picker in the phone. The [in-call controls guide](/docs/guides/voice/phone#during-a-call) covers the device pickers.

[Voice troubleshooting](/docs/guides/voice/troubleshooting) works through the same symptoms for any client.

## Next steps

- [Test calls from the terminal](/docs/cli/reference/voice-tools-test-call): place the same call with `bird voice tools test-call`.
- [Set up a SIP client](/docs/guides/voice/sip-clients): connect Asterisk, FreePBX, Zoiper, or another client to the trunk.
- [Configure SIP trunks](/docs/guides/voice/sip-trunks): review the settings enabled by the call-ready trunk and other admission methods.
- [Place calls](/docs/guides/voice/placing-calls): understand how the platform routes and prices calls.
- [Inspect the call log](/docs/guides/voice/call-log): filter records, review fields, retrieve calls through the API, or export CSV data.
- [Subscribe to voice events](/docs/guides/voice/events): send call outcomes to your systems instead of polling.

## Related resources

- [What is a voice API?](/explained/voice/what-is-a-voice-api) (answer)
- [Voice](/voice-api) (product)
- [Voice overview](/docs/guides/voice/overview) (docs)

[Get an implementation brief](/learn/workspace?topic=voice)
