---
title: "Generate Video from Proofread"
method: POST
path: "/v3/video-translations/proofreads/{proofread_id}/generate"
tags: ["Video Translate"]
---

# Generate Video from Proofread

`POST /v3/video-translations/proofreads/{proofread_id}/generate`

Starts final video generation using the approved subtitles from a proofread session.

## Path parameters

- `proofread_id` string, required

## Headers

- `Idempotency-Key` string

## Request body

- GenerateVideoRequest — Request body for POST /v3/video-translations/proofreads/{id}/generate.
  - `captions` boolean — Generate captions for the translated video
  - `translate_audio_only` boolean — Only translate audio, keep original video
  - `callback_id` string, nullable — ID included in webhook payload
  - `callback_url` string, nullable — Webhook URL for completion notifications

## Response `200`

Successful response

- object
  - `data` GenerateVideoResponse — Response for POST /v3/video-translations/proofreads/{id}/generate.
    - `video_translation_id` string, required — Video translation ID — use GET /v3/video-translations/{id} to poll status
    - `status` 'processing' | 'completed' | 'failed', required

## Other responses

- `400` — Invalid request parameters
- `401` — Authentication failed
- `404` — Resource not found
- `409` — A prior request with this Idempotency-Key is still in progress. Wait for the original request to complete, then retry.
- `429` — Rate limit exceeded

---

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