Zum Inhalt springen
DeutschlandGPT

Create transcription

Transcribes audio into text. Compatible with the OpenAI /v1/audio/transcriptions API.

Accepts an audio file (max 25 MB) as multipart/form-data and returns the transcript in the requested response_format. Swap the model string to change the model; use /v2/models/all to discover audio transcription models.

Speaker separation. Models whose supports_diarization is true in /v2/models/all separate speakers: send diarize=true (and optionally num_speakers as an upper bound) with response_format=verbose_json, and the response adds a segments array of speaker turns. Speakers are named speaker_0, speaker_1, … in order of first appearance, on every model. words (word timestamps) are added where the model reports word timing; a model that only reports speaker turns returns segments without words. On a model without speaker separation, diarize is ignored. timestamps_granularity, tag_audio_events and temperature are ElevenLabs Scribe options. The json/text formats always return the plain transcript. Subtitle formats such as srt and vtt are not supported.

POSThttps://api.deutschlandgpt.de/v2/audio/transcriptionsTry it

Example request

curl https://api.deutschlandgpt.de/v2/audio/transcriptions \
  -X POST \
  -H "Authorization: Bearer $DGPT_API_KEY"

Response

200application/json
{
  "text": "string"
}

Transcription result. The media type depends on response_format.

Also available as text/plain

The response takes one of the following shapes:

Variant 1

Returned when response_format is json (default).

textstringrequired

The transcribed text.

Variant 2

Returned when response_format is verbose_json. words and segments appear only on the ElevenLabs Scribe path.

textstringrequired

The transcribed text.

wordsobject[]optional

Word-level timestamps. Present where the model reports word timing (ElevenLabs Scribe unless timestamps_granularity is none; other speaker-separating models when diarize=true). Never invented for a model that reports only speaker turns.

wordstringrequired

The transcribed word or sound.

startnumberoptional

Start time of the token in seconds.

endnumberoptional

End time of the token in seconds.

typestringrequired

Token type. audio_event marks non-speech sounds such as laughter (see tag_audio_events).

speakerstringoptional

Identifier of the speaker of this token. Present only when diarize=true.

segmentsobject[]optional

Speaker turns: consecutive speech of one speaker, with start/end in seconds. Present when diarize=true ran on a model whose supports_diarization is true.

speakerstringoptional

Identifier of the speaker for this segment.

textstringrequired

The text spoken in this segment.

startnumberoptional

Start time of the segment in seconds.

endnumberoptional

End time of the segment in seconds.

usageobjectrequired
audioSecondsnumberrequired

Duration of the input audio in seconds, as reported by the provider.

costInEuronumberrequired

Amount deducted from the workspace credit balance for this request, in EUR.

Response headers
X-Request-IDstring

Unique request identifier (req_<id>). Include in support tickets.

Response codes

200

Transcription result. The media type depends on response_format.

object | object
400

Invalid request — missing file, file exceeds 25 MB, or provider error.

Error
401

Unauthorized — missing or invalid API key.

402

Insufficient credits.

403

API key lacks permission for this model.

404

Model not found or not configured for this workspace.

500

Server error.

Was this page helpful?