Voice

Start a voice session

Opens a real-time voice conversation on the platform default voice agent, attached to an existing session (sessionId) or a new one, and returns the clientBootstrap to hand to the ElevenLabs Conversational AI SDK client-side (Conversation.startSession): connect with signedUrl, apply any overrides, and forward sessionToken as custom_llm_extra_body.b4m_session. Transcripts are appended to the session as the call runs. When credits are enforced, the maximum call length is reserved up front and reconciled down by POST /api/v1/voice/sessions/{id}/end, so always end the call. Pass isReconnect: true to re-attach a dropped transport without a second reservation. POST /api/voice/v2/sessions is a legacy alias of this endpoint. Authenticate with an API key (b4m_live_) or a JWT.

post/api/v1/voice/sessions

Request

  • Base URL: https://your-deployment.example.com
  • URL: https://your-deployment.example.com/api/v1/voice/sessions
  • Auth: one of:
    • HTTP bearer
    • API key in header x-api-key

Request body

sessionIdstring

Attach the call to this existing session (notebook). Omit to create a new one.

reasoningModelIdstring

Chat model that answers each spoken turn. Defaults to the platform voice default.

isReconnectboolean

Set when re-establishing a dropped transport for the same sessionId: the live credit hold from the original connect is reused instead of reserving (and charging) a second time.

Example request

{
  "sessionId": "664f1c2b9a1e4d0012ab34aa"
}

Response

The call is provisioned. clientBootstrap is consumed by the ElevenLabs Conversational AI SDK in the client; signedUrl is short-lived, so connect promptly.

reasoningModelIdstring required

The model that will answer, after any platform remap.

Example response

{
  "session": {
    "id": "664f1c2b9a1e4d0012ab34aa",
    "name": "Voice • claude-sonnet-4-6"
  },
  "reasoningModelId": "claude-sonnet-4-6",
  "clientBootstrap": {
    "transport": "elevenlabs-conversational",
    "signedUrl": "wss://api.elevenlabs.io/v1/convai/conversation?agent_id=agent_123&conversation_signature=sig",
    "agentId": "agent_123",
    "sessionToken": "eyJhbGciOiJIUzI1NiJ9.<payload>.<signature>"
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.