Realtime Sessions
POST /realtime/sessions creates an OpenAI Realtime session with Dexter identity, wallet context, and MCP tools injected.
Request
URL: https://api.dexter.cash/realtime/sessions
| Field | Type | Required | Description |
|---|---|---|---|
model | string | No | Realtime model (default: server-configured) |
voice | string | No | Voice ID — cedar, verse, alloy, etc. Default: cedar |
supabaseAccessToken | string | No | For authenticated sessions. Omit for guest. |
guestProfile | object | No | Override guest label and instructions |
Guest sessions require no auth — just send an empty body {}.
Response (200)
| Field | Type | Description |
|---|---|---|
client_secret.value | string | Ephemeral token for WebRTC connection |
client_secret.expires_at | number | Expiry timestamp (seconds) |
dexter_session.type | string | "guest" or "user" |
dexter_session.wallet | object | { public_key, label } if wallet assigned |
tools | array | MCP tools available in the session |
WebRTC Setup
Use the ephemeral token to connect to the OpenAI Realtime WebSocket:
The session includes Dexter MCP tools, so the voice agent can search the marketplace, check pricing, and execute payments through the conversation.