Reference
Changelog
What changed for integrators, version by version. Existing requests keep working; read the "behaviour changes" list before you upgrade.
1.1.1
Additive: existing fields and values are unchanged.
- Every error on every endpoint has
error,error_code(UPPER_SNAKE) andmessage. Olderrorstrings and the lowercasecodeare kept; every401now haserror_codeUNAUTHORIZED. - Clone and TTS errors:
error_codeis nowNO_SPEECH,CLONE_UNAVAILABLEandVOICE_UNAVAILABLE(1.1.0 sentno_speech,clone_unavailable,voice_not_found; those values moved tocode). topic/audienceon/videosreturn aFIELD_IGNOREDwarning: they never changed the video. Put the brief invideo_idea/scene_prompt.
1.1.0
A guided tour with a link to every new feature is on What's new in 1.1.
Behaviour changes
- New video engines. Talking-head and scene videos now run on the current engines: sharper output, and prices follow price table
2026-09-30(returned asprice_table_version). Example: a 15 s talking head at 768P with your own audio is 125 credits. See Credits & pricing. - Default resolution is now
768P(was 480p).480P,768Pand1080Pare accepted;720pis served as 768P with aRESOLUTION_MAPPEDwarning. /ttsuses the v4 voice model. Same request, but voices sound different from before.- Captions remain a talking-head add-on (10 credits);
captions_positionnow also acceptscenter. - The quote is a ceiling. Video jobs reserve the quote before starting and charge
min(actual, reserved). Jobs quiet for 75 minutes fail withSTALE_TIMEOUTand are refunded. - First voice clone is free, once per account; later clones 30 credits.
- Non-https URLs. A non-https
first_frame_urloraudio_urlis ignored with aFIELD_IGNOREDwarning instead of being used. - Selfie URL check. Selfies and reference images that fail the URL check are dropped with a
FIELD_IGNOREDwarning; we store re-hosted copies, never your URL. - Legacy tuning fields (
fast,lipsync,narration_mode, …) are accepted and ignored with a warning.audio_urlis now allowed on scene videos.
Errors
- Errors on
/videos,/videos/estimateand the first-frame 500 gained anerror_code; since 1.1.1 every error on every endpoint haserror,error_codeandmessage. Olderrorstrings and HTTP statuses are kept; new failures use the UPPER_SNAKE code aserror. See Errors & limits. FIRST_FRAME_KIND_MISMATCH: afirst_frame_asset_idmust be made for the same video type.503 TRY_AGAINwhen briefly unavailable (nothing charged).
New endpoints
| Endpoint | What it does |
|---|---|
POST /videos/scene-plan | Split a script into clip lines (free). |
GET /videos/{id}/scenes | List a video's scenes. |
POST /videos/{id}/fix-scene | Redo one scene. |
POST /videos/{id}/edit-script | Rewrite lines. |
POST /videos/{id}/fix-sound | Replace the sound. |
GET /voices/presets | List studio voices (free). |
POST /voices/{id}/reclone | Re-clone a voice. |
POST /characters/{id}/regenerate | New sheet, same person. |
New fields
/videos:scene_photos,scene_prompt,scene_lines,video_mode,voice_mode+target_seconds(silent videos),voice_settings,language,first_frame_asset_id,expected_credits,client_request_id. The response addscredits_quoted,job_type,resolution,price_table_version,warnings,duplicate; the estimate addslinesandclips.- Idempotency:
Idempotency-Keyheader orclient_request_id— retries return the original job withduplicate: true. expected_credits: lock the price; a higher quote →409 QUOTE_MISMATCH. A paid fix-sound requires it — call withdry_run: truefirst.- Job status:
phase,progress,poster_url,error_code,source_workflow_id, andeditable/scenes_urlon the result. New workflow-id prefixespartner_h3t_,partner_h3v_,partner_se_,partner_fs_. /images/first-frame:kind,scene_prompt,scene_photos,script,language; response addsframe_id./characters: response addspresenter_gender,head_covering,warnings./tts:language; response addscharacters; a dead voice →409 VOICE_UNAVAILABLE.
Added after review (same release)
- Scene photos: a photo that can't be fetched safely while a scene job runs is dropped with a
SCENE_PHOTO_DROPPEDwarning, and the job is re-priced with the photos actually used (never above the reserve). See Scene photos and roles. - Free first clone: after 20 failed free attempts the API answers
409 FREE_CLONE_ATTEMPTS_EXHAUSTEDinstead of charging. Concurrent clones past the voice cap get409 VOICE_LIMIT_REACHEDand are refunded. - One
Idempotency-Keyis race-safe across talking-head and scene requests: one job is made.
Billing
- The default credit purchase is now the $19.99 pack — 1,499 credits on the current tier.
Rollback
Switching back to the previous engines
The operator of this deployment can switch video jobs back to the previous engines by setting PARTNER_LEGACY_MODELS_ENABLED=true. Under it, the new-only fields are ignored with a FIELD_IGNORED warning and the previous pricing applies.