Export Video
POST /v1/videos/:id/export
Start an asynchronous export job. Produces a final video with subtitles and an SRT file.
Prerequisites
The video must be analyzed first. Exporting a draft video returns an error.
Path parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
id | string | Yes | Video ID |
Request body
| Parameter | Type | Required | Description |
|---|---|---|---|
language | string | No | Language code for subtitles |
Example
curl -X POST https://api.vidocu.ai/v1/videos/vid_.../export \
-H "Authorization: Bearer vdo_live_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"language": "en"
}'
Response 202 Accepted
{
"jobId": "export_1708300000000_abc1234",
"status": "pending"
}
If an export is already running for this video:
Response 200 OK (existing job)
{
"jobId": "export_1708300000000_abc1234",
"status": "processing",
"message": "Export already in progress"
}
Polling for completion
Use the Jobs endpoint to check progress:
curl https://api.vidocu.ai/v1/jobs/export_... \
-H "Authorization: Bearer vdo_live_your_key_here"
Or listen for the export.completed or export.failed webhook events.
Once complete, the exported files are available on the video object via exportedVideoUrl, exportedSrtUrl, and exportedVoiceoverUrl (combined voiceover MP3, if voiceover was generated).
Errors
| Status | Code | Cause |
|---|---|---|
| 400 | validation_error | Video must be analyzed before exporting, or invalid body |
| 401 | authentication_error | Invalid or missing API key |
| 404 | not_found | Video not found |