# Migrate Voice from Bandwidth

Inventory realms, credentials, inbound route priorities, endpoint weights, phone-number assignments and any separate Programmable Voice behavior. For an AI integration, record the runtime and its inbound source rules separately from the carrier connection.

## Map the calling behavior

Map the outbound client connection and inbound number route as separate operations. Preserve the customer-facing call behavior in the PBX or assistant runtime you intend to keep. Confirm how authentication, caller identity and media settings change before moving traffic.

You can evaluate a connection change while retaining the application if its SIP, authentication and media requirements match. Reconfigure the connection deliberately and verify incoming and outgoing calls, caller identity, audio and handoff. An existing integration is not proof of compatibility with a new carrier path.

Use the [call-sequence design guide](/docs/guides/voice/call-sequences) to plan defined calling steps and the [AI voice integration guide](/docs/ai/voice-conversations) for a conversational runtime.

## Prepare the replacement connection

Create the Bird workspace, trunk and calling identity for a controlled test. Enable the destination and configure authentication and media settings in the client. Keep existing number routing in place while evaluating the new path.

A telephone number port does not migrate the application behind it. Confirm portability and the expected cutover procedure for each country and number type. Prepare the new inbound route before relying on the number move.

## Test the complete customer journey

Use a number you control and verify these outcomes:

- The intended client authenticates and the test destination rings.
- Audio works in both directions and the call ends cleanly.
- Prompts and keypad choices reach the expected branch.
- Business tools distinguish success, failure and an uncertain result.
- The call record and events connect to the outcome in your application.
- Recording or transcription, when required, produces the intended evidence.

Test a refused call and an unavailable business dependency as well as the successful path. An accepted request alone does not establish a working replacement.

## Move traffic deliberately

Confirm capacity, access and the final number route. Keep a way to restore the prior route while evaluating the initial traffic. Preserve historical provider records and maintain a mapping to your application’s customer or task identity.

Reconcile rated costs after the calls finish. Include all relevant legs and any separate speech, recording or model services when comparing the new workflow.

## Work with a coding agent

Paste this prompt into your coding agent with the integration you want to migrate. The numbered procedure starts with an inventory and keeps production changes explicit.

```text
Help me evaluate a Voice migration from Bandwidth to Bird.
1. Read https://bird.com/docs/guides/voice/migrate/bandwidth.md. Use the .md alternatives of linked Bird guides for the steps below.
2. Check for a connected Bird MCP server or an installed, signed-in Bird CLI. Use whichever is available and discover its tools or command help. If neither is available, follow https://bird.com/docs/ai/set-up-your-agent.md. Do not invent operation names or install a second integration.
3. Perform a read-only inventory of my current call sites, numbers, SIP configuration, call-control instructions, event handlers, recordings, speech services and business tools. Identify secrets without printing them. Show the dependencies that stay with Bandwidth and the ones that need replacement.
4. Read https://bird.com/docs/guides/voice/sip-trunks.md, https://bird.com/docs/guides/voice/placing-calls.md and https://bird.com/docs/guides/voice/receiving-calls.md. Prepare the replacement connection and caller-identity requirements. Use https://bird.com/docs/guides/voice/call-sequences.md for defined menus and https://bird.com/docs/ai/voice-conversations.md for a conversational runtime. Verify each operation against the connected surface before proposing an executable step.
5. Prepare a test of one complete journey: setup, audio in both directions, keypad input, unanswered and failure paths, handoff where needed, and business-tool results. Show the exact target, configuration and expected cost before placing a call or recording audio; wait for my approval. Do not buy numbers, submit a port, change production routing or stop the existing provider without my explicit approval.
6. Use https://bird.com/docs/guides/voice/events.md and https://bird.com/docs/guides/voice/call-log.md to reconcile the outcome. Keep missing evidence and uncertain results visible. A spoken confirmation is not proof that a business action succeeded.
7. Return the integration differences, test evidence, unresolved requirements and rollback plan. Keep the current service running until I approve cutover. If a number port needs support, inspect the available support command or tool, prepare the exact request and ask for approval before submitting it. Return the ticket reference if authorized; a ticket does not schedule or complete a port.
```

## Supplier references

- [Bandwidth calling documentation](https://dev.bandwidth.com/docs/voice/sip-trunking/sip-getting-started/)
- [Bandwidth workflow documentation](https://dev.bandwidth.com/docs/voice/integrations/vapi/)

## Next steps

- [SIP trunks](/docs/guides/voice/sip-trunks)
- [Voice events](/docs/guides/voice/events)
- [Call log](/docs/guides/voice/call-log)

## Related resources

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

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