---
title: "Create transcription"
method: POST
path: "/v1/audio/transcriptions"
---

# Create transcription

`POST /v1/audio/transcriptions`

Transcribes audio into text (speech-to-text) with word-level timestamps. The request body is multipart/form-data carrying the audio file (or a URL to it).

## Response `200`

Transcription response.

- object — Transcription payload: full transcript text, detected language, audio duration in seconds and word-level timestamps.
  - `text` string
  - `language` string
  - `duration` number
  - `words` object[]
    - `text` string
    - `start` number
    - `end` number
    - `speaker` number
  - `channels` object[]

## Other responses

- `400` — Invalid request body or parameters.
- `401` — Unauthorized request.
- `402` — Payment required / insufficient credits.
- `403` — Forbidden.
- `410` — Archived or unavailable project.
- `413` — Audio file too large.
- `429` — Rate limited upstream response.
- `500` — Internal server error.
- `502` — Failed to connect to the upstream provider.
- `503` — Service unavailable upstream response.
- `504` — Upstream provider timeout.

---

[API](https://skmtc.dev/llmgateway/apis/llmgateway-api.md) · [All operations](https://skmtc.dev/llmgateway/apis/llmgateway-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/llmgateway/llmgateway-api/revisions/aaf167e3d8cc/schema)
