{"templateId":"markdown","sharedDataIds":{},"props":{"metadata":{"markdoc":{"tagList":[]},"product":"Voice v2 (preview)","type":"markdown"},"seo":{"title":"Why migrate to Voice API v2?","siteUrl":"https://developers.sinch.com","llmstxt":{"title":"Sinch Developer Documentation","description":"LLMs.txt containing a map of all the documentation files for Sinch.","sections":[{"title":"Numbers API","description":"The Numbers API enables you to search for, view, and activate numbers. It's considered a precursor to other APIs in the Sinch product family. The numbers API can be used in tandem with any of our APIs that perform messaging or calling.","includeFiles":["docs/numbers/**/*.md","docs/numbers/**/*.yaml"],"excludeFiles":["docs/numbers/index.md"]},{"title":"Conversation API","description":"Send and receive messages globally on many popular channels with ease and confidence when using Sinch's Conversation API. Conversation API is the preferred API for sending mobile messages on SMS and other social channels with Sinch. It is a simple API with unified error messages, consistent request payloads, and common webhook payloads that are channel-agnostic.","includeFiles":["docs/conversation/**/*.md","docs/conversation/**/*.yaml"],"excludeFiles":["docs/conversation/index.md"]},{"title":"Voice API","description":"The Voice API works as a big telephony switch. The Voice API handles incoming phone calls (also known as incoming call “legs”), sets up outgoing phone calls (or outgoing call “legs”), and bridges the two. The incoming call leg may come in over a data connection (from a smartphone or web application using the Sinch SDKs) or through a local phone number (from the PSTN network). Similarly, the outgoing call leg can be over data (to another smartphone or web application using the Sinch SDKs) or the PSTN network.","includeFiles":["docs/voice/**/*.md","docs/voice/**/*.yaml"],"excludeFiles":["docs/voice/index.md"]},{"title":"Voice API v2","description":"The Voice API works as a big telephony switch. The Voice API handles incoming phone calls (also known as incoming call “legs”), sets up outgoing phone calls (or outgoing call “legs”), and bridges the two. The incoming call leg may come in over a data connection (from a smartphone or web application using the Sinch SDKs) or through a local phone number (from the PSTN network). Similarly, the outgoing call leg can be over data (to another smartphone or web application using the Sinch SDKs) or the PSTN network.","includeFiles":["docs/voice-2.0/**/*.md","docs/voice-2.0/**/*.yaml"],"excludeFiles":["docs/voice-2.0/index.md"]},{"title":"Verification API","description":"The Verification API is a platform for phone number verification. It consists of the API and different software development kits (the Sinch SDKs) that you integrate with your smartphone or web application and cloud based back-end services. Together they enable SMS, Flashcall, Phone Call and Data verification in your application.","includeFiles":["docs/verification/**/*.md","docs/verification/**/*.yaml"],"excludeFiles":["docs/verification/index.md"]},{"title":"Provisioning API","description":"Provisioning API allows you to programmatically set up your senders, accounts and templates on your favorite messaging platforms on the Conversation API. For now, you can create your first WhatsApp channel through Meta's Embedded sign up, you can configure your first SMS App and configure your webhooks. As development continues, we will be adding the most commonly used channels.","includeFiles":["docs/provisioning-api/**/*.md","docs/provisioning-api/**/*.json"],"excludeFiles":["docs/provisioning-api/index.md"]},{"title":"Elastic SIP Trunking API","description":"With Elastic SIP Trunking you can create and manage your SIP trunks and phone numbers programmatically.","includeFiles":["docs/est/**/*.md","docs/est/**/*.yaml"],"excludeFiles":["docs/est/index.md"]},{"title":"Fax API","description":"Send and receive HIPAA compliant faxes on our modern fax platform using our developer-friendly API.","includeFiles":["docs/fax/**/*.md","docs/fax/**/*.yaml"],"excludeFiles":["docs/fax/index.md"]},{"title":"In-app Voice and Video SDK","description":"The In-app Voice and Video SDK enables you to add voice and video calling capabilities directly into your mobile or web application using the Sinch SDKs.","includeFiles":["docs/in-app-calling/**/*.md"],"excludeFiles":["docs/in-app-calling/index.md"]},{"title":"Number Lookup API","description":"The Number Lookup API is designed to provide in-depth information about phone numbers, helping enterprises enhance their communication strategies and prevent fraud. By identifying the type of phone line (for example, mobile, landline, VoIP) and the associated carrier, the API allows businesses to optimize routing, reduce unnecessary costs, and improve customer engagement.","includeFiles":["docs/number-lookup-api-v2/**/*.md","docs/number-lookup-api-v2/**/*.yaml"],"excludeFiles":["docs/number-lookup-api-v2/index.md"]},{"title":"Functions","description":"Serverless compute for voice and messaging. Deploy your code and Sinch routes live calls and messages to it — no infrastructure to run.","includeFiles":["docs/functions/functions/**/*.md","docs/functions/concepts/**/*.md","docs/functions/reference/**/*.md"],"excludeFiles":["docs/functions/functions/index.md"]},{"title":"CLI","description":"One command line for every Sinch API and the full Functions lifecycle — scaffold, run locally, deploy, and manage.","includeFiles":["docs/functions/cli/**/*.md"],"excludeFiles":["docs/functions/cli/index.md"]}]},"description":"Read about why should you migrate to Voice API v2."},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"what-are-the-main-benefits-of-migrating-to-voice-api-v2","__idx":0},"children":["What are the main benefits of migrating to Voice API v2?"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Voice API v2 is a ground-up redesign that gives developers more control, better AI integration, and a cleaner architecture for building modern voice applications. Here’s what’s new:"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"cleaner-call-model-with-sessions-and-bridges","__idx":1},"children":["Cleaner call model with Sessions and Bridges"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["V2 introduces a Session/Bridge architecture that replaces the flat call-leg model in V1. A session groups all related calls into a single context, making it significantly easier to manage multi-party scenarios, call transfers, and parallel legs without stitching together separate API requests."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"native-ai-voice-integration--no-glue-code-required","__idx":2},"children":["Native AI voice integration — no glue code required"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["V2 ships with two dedicated AI integration paths built directly into the API:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Voice Relay"]}," — a WebSocket bridge that streams real-time speech-to-text to your AI agent and plays back text-to-speech responses with barge-in support and interruption detection. Connect to any LLM or AI agent in real time."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Raw audio streaming"]}," — pipe raw PCM audio directly to any WebSocket endpoint if you prefer to bring your own STT/TTS stack."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Combined with built-in Answering Machine Detection (AMD) — which classifies calls as human, machine, beep, or unknown, each with its own event handler — v2 covers the full AI voice application lifecycle out of the box."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"500-tts-voices-with-ssml-support","__idx":3},"children":["500+ TTS voices with SSML support"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The expanded voice library gives you over 500 voices including AI voices across multitude of languages and accents. All text-to-speech commands support SSML for fine-grained control over pronunciation, pacing, and emphasis."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"richer-call-control-with-svaml-v2","__idx":4},"children":["Richer call control with SVAML v2"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The SVAML command language has been significantly expanded. New commands include startRecording and stopRecording with direct delivery to AWS S3, Google Cloud Storage, or Azure Blob — including optional transcription. The full command set is schema-validated, making it reliable for both developers and AI-assisted code generation."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"batch-calling-with-intelligent-call-pacing","__idx":5},"children":["Batch calling with intelligent call pacing"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["New batch endpoints let you run large outbound campaigns with configurable call pacing, TTL controls, and per-call parameter interpolation — without managing your own queue infrastructure."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"unified-authentication-across-sinch-products","__idx":6},"children":["Unified authentication across Sinch products"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["V2 supports both OAuth 2.0 and Basic Auth, with a single credential set that works across Sinch products. Six named regional endpoints (US, EU, Brazil, Singapore, Australia, and a global redirect) give you latency control for global deployments."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"cloudevents-compliant-webhooks","__idx":7},"children":["CloudEvents-compliant webhooks"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Webhook events follow the CloudEvents 1.0 standard, making them directly compatible with event-driven infrastructure such as AWS EventBridge, Apache Kafka, and similar platforms — with no custom parsing required."]}]},"headings":[{"value":"What are the main benefits of migrating to Voice API v2?","id":"what-are-the-main-benefits-of-migrating-to-voice-api-v2","depth":1},{"value":"Cleaner call model with Sessions and Bridges","id":"cleaner-call-model-with-sessions-and-bridges","depth":2},{"value":"Native AI voice integration — no glue code required","id":"native-ai-voice-integration--no-glue-code-required","depth":2},{"value":"500+ TTS voices with SSML support","id":"500-tts-voices-with-ssml-support","depth":2},{"value":"Richer call control with SVAML v2","id":"richer-call-control-with-svaml-v2","depth":2},{"value":"Batch calling with intelligent call pacing","id":"batch-calling-with-intelligent-call-pacing","depth":2},{"value":"Unified authentication across Sinch products","id":"unified-authentication-across-sinch-products","depth":2},{"value":"CloudEvents-compliant webhooks","id":"cloudevents-compliant-webhooks","depth":2}],"frontmatter":{"seo":{"title":"Why migrate to Voice API v2?","description":"Read about why should you migrate to Voice API v2."}},"lastModified":"2026-08-31T13:48:15.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/docs/voice-2.0/migration","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}