Skip to content
On this page


If you already have captions or subtitles for a video, you can add them using POST /videos/:id/tracks. However if you don't you can request the video be transcribed using AI.


Transcribing incurs an additional fee per minute of video.

POST /transcribes

Request a video be transcribed. This may take a while depending on the video's duration.

The body of the request should contain:

video_idStringThe ID of the video to be transcribed
languageStringThe language the audio is in. For example:
"en-US" English - United States
"es-ES" Spanish - Spain
"pt-BR" Portuguese - Brazil
"en-GB" English - Great Britain
"en-AU" English - Australia
"en-IN" English - India
"hi-IN" Hindi - India
"fr-FR" French - France
"de-DE" German - Germany
"it-IT" Italian - Italy
labelStringA short label based on the language, such as "English"
kindStringEither "subtitles" or "captions"

Example request

curl \
-g \
-H "Authorization: Bearer YOUR-API-KEY" \
-H "Content-Type: application/json" \
-d '{"video_id":"abcde12345abcde12345a", "language": "en-US", "label": "English", "kind": "subtitles"}' \

Example response

  "success": true,
  "result": {
    "id": "abcde12345abcde12345a",
    "video_id": "abcde12345abcde12345a",
    "language": "en-US",
    "label": "English",
    "kind": "subtitles",
    "progress": 0,
    "status": "waiting",
    "created_by": "abcde12345abcde1234a",
    "created_time": "2022-01-01T00:00:00.000Z",
    "updated_by": "abcde12345abcde12345a",
    "updated_time": "2022-01-01T00:00:00.000Z"
  "links": null,
  "errors": []

Its status will be set as waiting. Once the video's audio is extracted it should proceed to processing. If the transcribing completes successfully, you may see a status of success or the job may be deleted entirely. That's because the AI-generated subtitles/captions should by then have been added to the chosen video (you will see it in the video's tracks array).