---
title: "Create transcription"
method: POST
path: "/audio/transcriptions"
tags: ["Audio"]
---

# Create transcription

`POST /audio/transcriptions`

Transcribes audio into the input language.

Returns a transcription object in `json`, `diarized_json`, or `verbose_json`
format, or a stream of transcript events.

## Response `200`

OK

- union
  - CreateTranscriptionResponseJson — Represents a transcription response returned by model, based on the provided input.
    - `text` string, required — The transcribed text.
    - `languages` TranscriptionLanguage[] — The languages detected in the audio. Returned by `gpt-transcribe`. An empty array indicates that no language could be reliably detected.
      - `code` string, required — The code of a language detected in the audio.
    - `logprobs` object[] — The log probabilities of the tokens in the transcription. Only returned with the models `gpt-4o-transcribe` and `gpt-4o-mini-transcribe` if `logprobs` is added to the `include` array.
      - `token` string — The token in the transcription.
      - `logprob` number — The log probability of the token.
      - `bytes` number[] — The bytes of the token.
    - `usage` union — Token usage statistics for the request.
      - object — Usage statistics for models billed by token usage.
        - `type` 'tokens', required — The type of the usage object. Always `tokens` for this variant.
        - `input_tokens` integer, required — Number of input tokens billed for this request.
        - `input_token_details` object — Details about the input tokens billed for this request.
          - `text_tokens` integer — Number of text tokens billed for this request.
          - `audio_tokens` integer — Number of audio tokens billed for this request.
        - `output_tokens` integer, required — Number of output tokens generated.
        - `total_tokens` integer, required — Total number of tokens used (input + output).
      - object — Usage statistics for models billed by audio input duration.
        - `type` 'duration', required — The type of the usage object. Always `duration` for this variant.
        - `seconds` number, double, required — Duration of the input audio in seconds.
  - CreateTranscriptionResponseDiarizedJson — Represents a diarized transcription response returned by the model, including the combined transcript and speaker-segment annotations.
    - `task` 'transcribe', required — The type of task that was run. Always `transcribe`.
    - `duration` number, double, required — Duration of the input audio in seconds.
    - `text` string, required — The concatenated transcript text for the entire audio input.
    - `segments` TranscriptionDiarizedSegment[], required — Segments of the transcript annotated with timestamps and speaker labels.
      - `type` 'transcript.text.segment', required — The type of the segment. Always `transcript.text.segment`.
      - `id` string, required — Unique identifier for the segment.
      - `start` number, double, required — Start timestamp of the segment in seconds.
      - `end` number, double, required — End timestamp of the segment in seconds.
      - `text` string, required — Transcript text for this segment.
      - `speaker` string, required — Speaker label for this segment. When known speakers are provided, the label matches `known_speaker_names[]`. Otherwise speakers are labeled sequentially using capital letters (`A`, `B`, ...).
    - `usage` union — Token or duration usage statistics for the request.
      - object — Usage statistics for models billed by token usage.
        - `type` 'tokens', required — The type of the usage object. Always `tokens` for this variant.
        - `input_tokens` integer, required — Number of input tokens billed for this request.
        - `input_token_details` object — Details about the input tokens billed for this request.
          - `text_tokens` integer — Number of text tokens billed for this request.
          - `audio_tokens` integer — Number of audio tokens billed for this request.
        - `output_tokens` integer, required — Number of output tokens generated.
        - `total_tokens` integer, required — Total number of tokens used (input + output).
      - object — Usage statistics for models billed by audio input duration.
        - `type` 'duration', required — The type of the usage object. Always `duration` for this variant.
        - `seconds` number, double, required — Duration of the input audio in seconds.
  - CreateTranscriptionResponseVerboseJson — Represents a verbose json transcription response returned by model, based on the provided input.
    - `language` string, required — The language of the input audio.
    - `duration` number, double, required — The duration of the input audio.
    - `text` string, required — The transcribed text.
    - `words` TranscriptionWord[] — Extracted words and their corresponding timestamps.
      - `word` string, required — The text content of the word.
      - `start` number, double, required — Start time of the word in seconds.
      - `end` number, double, required — End time of the word in seconds.
    - `segments` TranscriptionSegment[] — Segments of the transcribed text and their corresponding details.
      - `id` integer, required — Unique identifier of the segment.
      - `seek` integer, required — Seek offset of the segment.
      - `start` number, double, required — Start time of the segment in seconds.
      - `end` number, double, required — End time of the segment in seconds.
      - `text` string, required — Text content of the segment.
      - `tokens` integer[], required — Array of token IDs for the text content.
      - `temperature` number, float, required — Temperature parameter used for generating the segment.
      - `avg_logprob` number, float, required — Average logprob of the segment. If the value is lower than -1, consider the logprobs failed.
      - `compression_ratio` number, float, required — Compression ratio of the segment. If the value is greater than 2.4, consider the compression failed.
      - `no_speech_prob` number, float, required — Probability of no speech in the segment. If the value is higher than 1.0 and the `avg_logprob` is below -1, consider this segment silent.
    - `usage` TranscriptTextUsageDuration — Usage statistics for models billed by audio input duration.
      - `type` 'duration', required — The type of the usage object. Always `duration` for this variant.
      - `seconds` number, double, required — Duration of the input audio in seconds.

---

[API](https://skmtc.net/openai/apis/openai-api.md) · [All operations](https://skmtc.net/openai/apis/openai-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/openai/openai-api/versions/dcd35773a322/schema)
