transcribe a video for edit dialogue
dialogue-transcriptions_createStarts a timed-word transcription for editing dialogue in a saved single-speaker video: correct or remove spoken words while preserving the original speaker voice.
Instructions
Start the unbilled timed-word transcription that begins Edit Dialogue: correcting or removing spoken words in a saved single-speaker video while keeping the original speaker voice. Not for general transcription or speaker analysis (transcriptions_create, when available), translation (dubbing_create, when available), or a new full script or different voice (explain the limit; use lipsync_create with a script only if the user asks for a new voice).
Returns: the job's id, status, and once COMPLETED the transcript and speakerCount. Unless it is already COMPLETED, poll dialogue-transcriptions_get with the id; then, if speakerCount is 1, send the user's word edits to dialogue-previews_create.
Effects: despite the destructive hint it overwrites nothing. It adds at most one transcription job, and none when it reuses one: for an identical source video in the organization the API returns its existing COMPLETED job, or one still running that started within the last hour. Only the copy fallback below adds an asset. It never changes the source, replaces dialogue or generates a video.
Limits: the tool sets a 600-second ceiling, checked for a video after audio extraction, so a new job for a longer video still comes back and then ends FAILED with error.code SOURCE_TOO_LONG. HTTP 429 comes from the per-caller rate limit (10 a minute), the concurrency limit (2 at once per caller) or the organization's daily transcription cap; HTTP 402 means the account is on a payment or fraud hold.
Copy fallback: if the API rejects the video as not hosted in sync. storage, the tool copies it to a new VIDEO asset in the project, retries, and adds the copy's id to the result as videoAssetId, which every later dialogue call must use. If that retry fails, the error names the saved copy to retry with; do not copy again.
Project: projectIntent=explicit is required with projectId, and only for the project just created for this request or one the user explicitly asked for or selected in the interface; a matching name, workflow or open editor is never permission. Default new work to a new project.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| projectId | Yes | Project for this Edit Dialogue work: the id projects_create returned for this request (defaultWorkflow edit_dialogue) or a project the user explicitly chose; pass projectIntent=explicit with either. The tool reads it first to confirm access, and the copy fallback saves into it. Keep it for every later dialogue call. | |
| videoAssetId | Yes | Saved VIDEO asset to transcribe that the account can read, from assets_create, assets_list or dialogue_upload-source. If the result returns videoAssetId, that sync.-hosted copy replaces this id for every later dialogue call. | |
| projectIntent | No | Required with projectId. Set only for an explicit user project selection/update, or the new project just created for this request. Never infer intent from a matching project name, workflow name or active editor. |