When to use it
The standard /v1/videos and /v1/images/generations endpoints cover common calls. Use /ark for newly released Volcano parameters, Seedance-specific controls, or native Seedream fields.
Path mapping: /ark replaces Volcano /api
The native Volcano Ark URL uses /api after the host. When calling through ZeroFA, replace that /api segment with /ark and keep the remaining /v3/contents/... path unchanged. Direct clients should use /ark/v3/....
Volcano native https://ark.cn-beijing.volces.com/api/v3/contents/generations/tasks
ZeroFA recommended https://api.fornai.im/ark/v3/contents/generations/tasksConnect through new-api
Create or edit the new-api channel used for Volcano video, set its custom API address (Base URL) to the ZeroFA /ark root, enter a ZeroFA API Key, and configure the Seedance models you use. new-api and ZeroFA handle the remaining routing automatically.
Open the complete new-api Volcano video setup guide →
# Upstream settings in the new-api channel
API address / Base URL: https://api.fornai.im/ark
API Key: sk-zerofa-xxx
Model: your-seedance-model-idTwo-step native Volcano flow
POST /ark/v3/contents/generations/tasksNative Volcano bodyRequiredGET /ark/v3/contents/generations/tasks/:idid = Volcano task idRequiredGET /ark/v3/contents/generations/taskspage_num / page_size / filter.*Optionalpage_numintegerOptionalpage_sizeintegerOptionalfilter.statusstringOptionalfilter.task_idsstringOptionalfilter.modelstringOptionalfilter.service_tierstringOptionalDraft mode
Seedance 2.5 supports two-step generation: generate a 480p preview draft to verify the result, then produce a 1080p final video from the draft id. Each step bills independently: the draft bills at 480p, the final video bills at its target resolution (1080p); the token unit price depends on whether the draft included input video. Draft task ids are valid for 7 days.
# 样片模式 Step1:生成 480p 预览样片
# 顶层 draft:true + resolution 480p(仅支持 480p)
curl -X POST "https://api.fornai.im/ark/v3/contents/generations/tasks" \
-H "Authorization: Bearer sk-zerofa-xxx" \
-H "Content-Type: application/json" \
-d '{
"model": "your-seedance-model-id",
"content": [
{ "type": "text", "text": "一只柴犬在雪地奔跑 --ratio 16:9 --duration 5" }
],
"draft": true,
"resolution": "480p"
}'
# → {"id":"cgt-..."} 记住这个 task id,Step2 需要用它# 样片模式 Step2:基于样片 ID 生成 1080p 成片
# content 只带 draft_task 引用,resolution 固定 1080p(仅支持 1080p)
curl -X POST "https://api.fornai.im/ark/v3/contents/generations/tasks" \
-H "Authorization: Bearer sk-zerofa-xxx" \
-H "Content-Type: application/json" \
-d '{
"model": "your-seedance-model-id",
"content": [
{ "type": "draft_task", "draft_task": { "id": "cgt-..." } }
],
"resolution": "1080p"
}'
# → 成片 resolution=1080p,其余参数(提示词/参考素材/时长/比例/seed/音频)由 Step1 自动复用draftbooleanOptionaldraft_task.idstringOptionalresolutionstringOptionalUse the official Volcano schema
/ark is a native passthrough endpoint and does not redefine Volcano content items, roles, model parameters, or asset limits. When a model has a default bitrate and the request omits bitrate_mode, that default is added; all other fields retain native semantics. Use the latest official Volcano documentation for request bodies and model capabilities.
Billing model
Request and response bodies
Use the examples below to verify the request and response structures. To send a request, select Debug at the top of the page.
# Native Volcano body: content and advanced flags pass through unchanged
# Path rule: replace the native Volcano /api segment with /ark
curl https://api.fornai.im/ark/v3/contents/generations/tasks \
-H "Authorization: Bearer sk-zerofa-xxx" \
-H "Content-Type: application/json" \
-d '{
"model": "your-seedance-model-id",
"content": [
{ "type": "text",
"text": "A shiba inu running through the snow --ratio 16:9 --duration 5 --resolution 720p" },
{ "type": "image_url",
"image_url": { "url": "https://.../dog.png" },
"role": "first_frame" }
]
}'
# Native Volcano response:{"id":"cgt-..."}curl https://api.fornai.im/ark/v3/contents/generations/tasks/cgt-xxx \
-H "Authorization: Bearer sk-zerofa-xxx"
# 响应字段与官网查询接口同形:
# {"id":"cgt-...","model":"your-seedance-model-id","status":"succeeded",
# "content":{"video_url":"https://...","last_frame_url":"https://..."},
# "usage":{"completion_tokens":108900,"total_tokens":108900},
# "created_at":1779354227,"updated_at":1779354426,
# "seed":83017,"resolution":"720p","ratio":"16:9","duration":5,
# "framespersecond":24,"service_tier":"default","execution_expires_after":172800,
# "generate_audio":true,"draft":false,"priority":0,"output_format":"mp4"}curl "https://api.fornai.im/ark/v3/contents/generations/tasks?page_num=1&page_size=10&filter.status=succeeded" \
-H "Authorization: Bearer sk-zerofa-xxx"
# {"total":30,"items":[
# {"id":"cgt-...","model":"your-seedance-model-id","status":"succeeded",
# "content":{"video_url":"https://...","last_frame_url":"https://..."},
# "usage":{"completion_tokens":108900,"total_tokens":108900},
# "created_at":1779354227,"updated_at":1779354426,
# "seed":39832,"resolution":"720p","ratio":"16:9","duration":5,
# "framespersecond":24,"service_tier":"default","execution_expires_after":172800,
# "generate_audio":true,"draft":false,"priority":0,"output_format":"mp4"}]}