Add to Claude
VoiceLabs
API ReferenceVoices and history

Download generated audio

Download the audio of a completed generation. This URL is not called directly — it is the `audio_url` returned by GET /v1/generations/{generationId}, already signed and ready to follow. The signature grants access to this one generation for about 15 minutes, so no API key is sent (and none is accepted): the link can be handed straight to a media player, a download, or an <audio> tag that cannot attach an Authorization header. Links expire — poll the generation again to mint a fresh one rather than storing this URL. Without `format` the audio is returned exactly as stored (WAV); append `&format=mp3` (or `opus`, or `wav`) to the URL to have it re-encoded first. The signature covers the generation, not the format, so the same link serves every container. Re-encoding is limited to 10 requests a minute per generation; the encoded file is kept, so fetch it once rather than on every play. Authenticated by the signature in the URL, not by an API key.

GET
/v1/audio/{generationId}

Download the audio of a completed generation. This URL is not called directly — it is the audio_url returned by GET /v1/generations/{generationId}, already signed and ready to follow. The signature grants access to this one generation for about 15 minutes, so no API key is sent (and none is accepted): the link can be handed straight to a media player, a download, or an tag that cannot attach an Authorization header. Links expire — poll the generation again to mint a fresh one rather than storing this URL. Without format the audio is returned exactly as stored (WAV); append &format=mp3 (or opus, or wav) to the URL to have it re-encoded first. The signature covers the generation, not the format, so the same link serves every container. Re-encoding is limited to 10 requests a minute per generation; the encoded file is kept, so fetch it once rather than on every play.

Authenticated by the signature in the URL, not by an API key.

Path Parameters

generationId*string

The generation whose audio to download.

Length1 <= length

Query Parameters

sig*string

The capability signature. Supplied by audio_url; do not construct it.

format?string

Re-encode before returning: mp3 (audio/mpeg), opus (audio/ogg) or wav (audio/wav). Omit it to get the stored audio unchanged.

Value in

  • "mp3"
  • "opus"
  • "wav"

Response Body

audio/*

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

curl -X GET "https://example.com/v1/audio/string?sig=string"
"string"