# OpenAI Realtime API (slim) > OpenAI's Realtime API runs spoken conversations with speech-to-speech models such as gpt-realtime-2.1. Clients connect over WebRTC, WebSocket or SIP, and sessions support interruptions, function calling and remote MCP tools. - Full: https://www.anchorterminal.com/tools/openai-realtime.md (~8,300 tokens) · this version ~1,980 tokens · JSON https://www.anchorterminal.com/tools/openai-realtime.json · canonical https://www.anchorterminal.com/tools/openai-realtime - Index: https://www.anchorterminal.com/llms.txt · API: https://www.anchorterminal.com/api/v1/index.json · Updated: 2026-10-10 **B · 63.3/100 · rank #400 of 950 · #7 in Conversational voice agents · not agent-ready · confidence low** Assessment: A generally available speech-to-speech API with WebRTC, WebSocket and SIP transports, a public OpenAPI file that types its events, and per-token prices. Per-model rate limits appear only in account settings, each turn re-bills the whole conversation, and openai.com refused our reader, so the terms, privacy policy and security pages were not read. ## Facts - Kind: HTTP API · vendor: OpenAI · category: Conversational voice agents · legal entity: OpenAI · provenance 84/100 - Endpoint: `https://api.openai.com/v1/realtime` (HTTP) - Auth: API key · pricing: Pay per use · x402: no · licence: Proprietary service. The service terms on openai.com were not read. The Agents SDK for TypeScript and the OpenAPI description are MIT - Probe metrics: not measured yet (probes haven't run) - Architecture: Speech-to-speech. The model takes audio in and speaks audio out in one stateful session, with text and image input, optional transcripts and server or semantic voice activity detection - Endpoints: `wss://api.openai.com/v1/realtime?model=gpt-realtime-2.1` for WebSocket, `POST /v1/realtime/calls` for WebRTC, `sip:$PROJECT_ID@sip.api.openai.com;transport=tls` for SIP (`sip-eu.api.openai.com` for European data residency), and `POST /v1/realtime/client_secrets` for browser credentials - Models: `gpt-realtime-2.1` and `gpt-realtime-2.1-mini` (6 July 2026), `gpt-realtime-2` and `gpt-realtime-1.5`. `gpt-realtime` and `gpt-realtime-mini` shut down on 20 January 2027. `gpt-realtime-translate` and `gpt-realtime-whisper` run translation and transcription sessions billed by the minute - Tools: Function tools run by the client or server, and remote MCP tools run by the API with `server_url`, `allowed_tools` and `require_approval` (default `always` in the OpenAPI file). Tools can be set for the session or for one response - Telephony: SIP over TLS on port 5061 with SRTP media, a `realtime.call.incoming` webhook, and accept, reject, refer and hangup endpoints under `/v1/realtime/calls/{call_id}`. DTMF events arrive on a sideband connection - Credentials: API key as a Bearer header from a server. Client secrets (`ek_`) for browsers, 10 seconds to 2 hours, default 10 minutes - Billing: Per token by modality on each response, with the whole conversation re-sent each turn. User audio is 1 token per 100 ms and assistant audio 1 token per 50 ms. Automatic prompt caching, best effort - Context control: `truncation` with `retention_ratio` and `token_limits.post_instructions`, `conversation.item.delete`, `conversation.item.truncate` and `max_output_tokens` - Errors: An `error` server event with type, code, message, param and the `event_id` of the client event at fault. `mcp_list_tools.failed` and `response.mcp_call.failed` for MCP. REST calls return 429 and 503 with `Retry-After` when present - Data handling: Per the data controls page, `/v1/realtime` data is not used for training, abuse monitoring logs are kept up to 30 days, no application state is stored, and Zero Data Retention is available with approval. Tracing is not EU data residency compliant - SDKs: Agents SDK for TypeScript, `@openai/agents` and `@openai/agents-realtime` 0.20.0 (8 October 2026), MIT. Docs examples also use the `openai` libraries for JavaScript, Python, Java, Ruby and .NET - Status: status.openai.com has a Realtime component under APIs, showing 100 per cent uptime for July to October 2026 - Prices: gpt-realtime-2.1 audio input $32 per 1M tokens; gpt-realtime-2.1 audio output $64 per 1M tokens; gpt-realtime-2.1 text input $4 per 1M tokens; gpt-realtime-2.1 text output $24 per 1M tokens; gpt-realtime-2.1-mini audio input $10 per 1M tokens; gpt-realtime-2.1-mini audio output $20 per 1M tokens - Scores: Reliability 67, Performance pending, Schema & documentation 84, Agent ergonomics 76, Security & auth 61, Payments & pricing 20, Task success pending, Maintenance & community 52, Transparency & trust 71 · total over the 7 assessed categories - Why: Reliability, Graded as a hosted API. · Schema & documentation, The OpenAPI 3.1 file in `openai/openai-openapi` (updated 8 October 2026) has nine `/realtime` paths and 167 Realtime schemas, with 13 client… · Agent ergonomics, Scored as a model API. · Security & auth, Server connections send the API key as a Bearer header. · Payments & pricing, No x402, MPP or L402 in the docs or the OpenAPI file (0 of 40). · Maintenance & community, The last dated changelog entry tagged `v1/realtime` that adds a feature is 28 July 2026, 73 days before the check, when `gpt-transcribe` bec… · Transparency & trust, Closed service. - Sources: 22, open questions: 10, both in the full twin - Capabilities: voice.agent, voice.speech-to-speech, voice.tools, voice.telephony - JSON: https://www.anchorterminal.com/api/v1/tools/openai-realtime.json - Verify (for the vendor): the badge `https://www.anchorterminal.com/badges/openai-realtime.svg` or a link to https://www.anchorterminal.com/tools/openai-realtime from a page on openai.com or one of its subdomains, or the README of github.com/openai/openai-agents-js, then `POST https://www.anchorterminal.com/api/v1/verify` `{"slug", "url"}` or `verify_listing` at /mcp; re-checked weekly, no effect on the grade. Snippets in the full twin. ## Before you call it 1. Create a client secret on a server with `POST /v1/realtime/client_secrets` and give browsers only the `ek_` value. Never ship the API key. 2. After a response with MCP calls finishes, send another `response.create`. The API does not create the follow-up response itself. 3. Set `truncation` with a `retention_ratio` below 1 and `token_limits.post_instructions` to cap input tokens, and keep instructions and tools unchanged to keep the cache. 4. On a WebSocket, stop playback on `input_audio_buffer.speech_started` and send `conversation.item.truncate` with `audio_end_ms`. WebRTC and SIP truncate on the server. 5. Use `gpt-realtime-2.1` or `gpt-realtime-2.1-mini`. `gpt-realtime` and `gpt-realtime-mini` shut down on 20 January 2027. ## Connect ```bash npm install @openai/agents ``` ```bash curl -X POST https://api.openai.com/v1/realtime/client_secrets \ -H "Authorization: Bearer $OPENAI_API_KEY" -H "Content-Type: application/json" \ -d '{"session": {"type": "realtime", "model": "gpt-realtime-2.1"}}' ``` Full config and headless snippets are in the full page. Through letme (picks today, calling later): https://letme.dev/openai-realtime ## Similar tools | Tool | Grade | Score | Shared capabilities | Slim | | --- | --- | --- | --- | --- | | Retell AI API + MCP | B | 69.1 | voice.agent, voice.speech-to-speech, voice.tools, voice.telephony | https://www.anchorterminal.com/tools/retell-ai.min.md | | Vapi API + MCP | B | 63.5 | voice.agent, voice.speech-to-speech, voice.tools, voice.telephony | https://www.anchorterminal.com/tools/vapi.min.md | | Ultravox Realtime API | C | 58.5 | voice.agent, voice.speech-to-speech, voice.tools, voice.telephony | https://www.anchorterminal.com/tools/ultravox.min.md | | Hume EVI (Empathic Voice Interface) | C | 56.7 | voice.agent, voice.speech-to-speech, voice.tools, voice.telephony | https://www.anchorterminal.com/tools/hume-evi.min.md | | Bolna API + MCP | D | 52.6 | voice.agent, voice.speech-to-speech, voice.tools, voice.telephony | https://www.anchorterminal.com/tools/bolna.min.md | ## Panel reviews (0, desk reviews from public material, no calls made)