Skip to content
For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Primary navigation

Create voice

$ openai audio:voices create
POST/audio/voices

Create a custom voice you can use for audio output (for example, in Text-to-Speech and the Realtime API). This requires an audio sample and a previously uploaded consent recording.

Send name, audio_sample, and the consent recording ID as multipart form data. The optional type defaults to audio_sample.

Returns the saved voice’s metadata. See the custom voices guide for requirements and best practices. Custom voices are limited to eligible customers.

ParametersExpand Collapse
--audio-sample: file path

The sample audio recording file. Maximum size is 10 MiB.

Supported MIME types: audio/mpeg, audio/wav, audio/x-wav, audio/ogg, audio/aac, audio/flac, audio/webm, audio/mp4.

--name: string

The name of the new voice.

--type: optional "audio_sample"

The voice creation method. Defaults to audio_sample when omitted.

ReturnsExpand Collapse
voice: object { id, created_at, name, 2 more }

A custom voice that can be used for audio output.

id: string

The voice identifier, which can be referenced in API endpoints.

created_at: number

The Unix timestamp (in seconds) for when the voice was created.

name: string

The name of the voice.

object: "audio.voice"

The object type, which is always audio.voice.

type: "audio_sample"

How the voice was created.

Create voice

openai audio:voices create \
  --api-key 'My API Key' \
  --name x \
  --audio-sample 'Example data' \
  --consent consent
{
  "id": "id",
  "created_at": 0,
  "name": "name",
  "object": "audio.voice",
  "type": "audio_sample"
}
Returns Examples
{
  "id": "id",
  "created_at": 0,
  "name": "name",
  "object": "audio.voice",
  "type": "audio_sample"
}