Skip to main content
Video models are task-based. A request returns a task id immediately; the render happens upstream and you poll until it finishes. No long-lived HTTP connection is held open.

Submit a task

The response is a task object:
Keep id. It is the only handle for the job.

Poll for the result

Poll every 5–15 seconds. Treat these status values as terminal: a finished state that carries the asset, or a failure state that carries a reason. Anything else means keep polling.

Image-to-video

Pass a reference image alongside the prompt; the field name follows the model’s own API (commonly image, image_url, or input_reference). Triw forwards unknown fields to the channel, so the provider’s parameter names are the ones that work.

Other operations

Provider-native paths are also proxied when the matching plugin is enabled — for example Kling’s /v1/videos/text2video, Alibaba’s /api/v1/services/aigc/video-generation/video-synthesis, or Doubao’s /ent/v2/text2video. Use those only if you already have code written against that provider’s SDK.

Practical notes

Troubleshooting