POST
/
realtime
/
transcription_sessions
curl --request POST \
  --url https://api.openai.com/v1/realtime/transcription_sessions \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "modalities": [
    [
      "text",
      "audio"
    ]
  ],
  "input_audio_format": "pcm16",
  "input_audio_transcription": {
    "model": "gpt-4o-transcribe",
    "language": "<string>",
    "prompt": "<string>"
  },
  "turn_detection": {
    "type": "server_vad",
    "eagerness": "auto",
    "threshold": 123,
    "prefix_padding_ms": 123,
    "silence_duration_ms": 123,
    "create_response": true,
    "interrupt_response": true
  },
  "input_audio_noise_reduction": null,
  "include": [
    "<string>"
  ]
}'
{
  "client_secret": {
    "value": "<string>",
    "expires_at": 123
  },
  "modalities": [
    "text"
  ],
  "input_audio_format": "<string>",
  "input_audio_transcription": {
    "model": "gpt-4o-transcribe",
    "language": "<string>",
    "prompt": "<string>"
  },
  "turn_detection": {
    "type": "<string>",
    "threshold": 123,
    "prefix_padding_ms": 123,
    "silence_duration_ms": 123
  }
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json

Create an ephemeral API key with the given session configuration.

Realtime transcription session object configuration.

Response

200 - application/json

Session created successfully.

A new Realtime transcription session configuration.

When a session is created on the server via REST API, the session object also contains an ephemeral key. Default TTL for keys is one minute. This property is not present when a session is updated via the WebSocket API.