Skip to content
Real-time voice infrastructure

One voice layer.
Every model.

VoiceOpenRouter gives your product a single control plane for real-time voice sessions. Connect once, route by model, and keep usage and access policies in one place.

One API contractModel-agnostic routingPrepaid usage controls

VoiceOpenRouter

Session routing layer

Unified

Your application

One client contract

VoiceOpenRouter

Route and govern

Realtime

WebSocket

Transport

WebRTC

Controls

Metered

Model selection stays at the routing layer.

01

Single entry point

for realtime voice sessions

02

Flexible routing

without client rewrites

03

Governed access

with usage-aware controls

Built around the session

The infrastructure stays consistent while the model can change.

Keep provider-specific complexity behind a stable boundary. Your team can focus on the product experience while the gateway carries the routing, lifecycle, and usage policy.

01

One contract

Keep your application on one session API while VoiceOpenRouter handles the model-specific routing behind it.

02

Realtime by design

Use the voice transport your product already needs, with interruption and session lifecycle handled at the gateway.

03

Metered usage

Pre-authorise a session against a prepaid wallet and keep spend tied to the call while it runs.

04

Operational control

Issue governed keys with spend ceilings, model permissions, and an audit trail for every change.

Developer contract

Change your model strategy without changing your client.

Start with one authenticated session request. The response gives your application the connection details it needs, while model selection stays a configuration decision at the edge.

APIDesigned for server-side key handling.
Session request
POST /v1/voice/sessions
POST /v1/voice/sessions
Authorization: Bearer vr-sk-...

{
  model: "xai/grok-voice-latest"
}

-> session token + room details

Auth

vr-sk key

Route

model selected

Usage

prepaid wallet

How the flow works

A clear path from request to conversation.

01

Request a session

Your server sends a model choice and receives the credentials needed to start a voice session.

02

Connect once

Join through LiveKit or use the compatible realtime WebSocket contract without changing your client architecture.

03

Change the model at the edge

Your product keeps its interface while the routing layer selects the configured voice driver for the session.

Control by default

Make every session accountable.

Voice products need more than a model connection. Set the rules once and keep access, spend, and session behavior visible as your traffic grows.

Access

Issue and revoke scoped keys with a clear ownership trail.

Spend

Use prepaid balances and session pre-authorisation to bound cost.

Policy

Keep model permissions and operational controls close to the contract.

Start with the contract

Give your voice product room to evolve.

Create an account and manage the keys, wallet, and model access behind your next realtime experience.

Create an account