视频生成 API 参考

    字段
    Base URLhttps://api.gate.ai
    认证Authorization: Bearer <API_KEY>

    提交视频生成任务

    POST/api/v1/videos

    提交异步视频生成任务,成功返回 202 及 job_id 供后续轮询状态。建议传入 Idempotency-Key 以防重复创建。

    请求参数

    名称位置类型必选说明
    AuthorizationheaderstringGate.AI API Key。格式:Bearer <API_KEY>
    Content-Typeheaderstring请求体格式
    Idempotency-Keyheaderstring幂等键,相同 key 重复提交时返回首次创建的任务,不会重复创建

    请求体

    名称类型必选说明
    modelstring模型 ID
    promptstring视频描述,建议包含主体、动作、场景、镜头和风格。不同模型上限不同:Sora 500 字,Hailuo 2000 字,Wan T2V 1500 字、I2V 800 字。Gate.AI 本身不设硬性上限,超出后由上游拒绝并透传 502 / 503。
    durationinteger视频时长(秒),取值范围随模型不同
    resolutionstring输出分辨率:480p、720p 或 1080p
    aspect_ratiostring宽高比:16:9、4:3、1:1、3:4、9:16、21:9 或 adaptive
    generate_audioboolean是否生成音频
    seedinteger随机种子,-1 到 4294967295;相同 seed 不保证完全一致
    sizestring精确输出尺寸,如 1280x720
    input_referencesarray可选参考素材数组,用于图生视频、首尾帧驱动、视频风格迁移或音频驱动生成
    input_references\\\.typestring参考素材类型:image、video 或 audio,必须与 role 匹配
    input_references\\\.urlstring参考素材的 HTTPS 地址
    input_references\\\.rolestring参考素材用途。可选值:first_frame(首帧图)、last_frame(尾帧图)、reference(外观参考图,影响生成但不作首帧、不锁定画面位置)、reference_video(参考视频)、reference_audio(参考音频)
    metadataobject业务透传字段,用于审计或来源标记
    webhook_urlstring任务完成或失败后的回调地址

    示例

    json
    1    {2        {3          "model": "bytedance/seedance-2.0",4          "prompt": "A golden retriever running on a sunny beach, cinematic camera movement",5          "duration": 6,6          "resolution": "720p",7          "aspect_ratio": "16:9",8          "generate_audio": false,9          "seed": -1,10          "input_references": [11            {12              "type": "image",13              "url": "https://cdn.example.com/portrait.jpg",14              "role": "first_frame"15            }16          ],17          "metadata": {18            "source": "playground"19          },20          "webhook_url": "https://example.com/webhooks/gateai-video"21        }

    返回字段说明

    名称类型说明
    job_idstring任务唯一 ID
    statusstring任务状态:pending / in_progress / completed / failed
    modelstring使用的模型
    status_urlstring查询任务状态的完整 URL
    messagestring服务端提示信息
    current_balancestring当前账户余额(USD)
    estimated_coststring预估费用
    pre_deduct_amountstring预扣展示金额
    balance_after_estimatestring按预估费用计算后的余额
    currencystring货币类型,当前为 USD
    billing_noticestring计费提示

    返回示例

    json
    1        {2          "code": 200,3          "msg": "",4          "data": {5            "job_id": "video_abc123",6            "status": "in_progress",7            "model": "bytedance/seedance-2.0",8            "status_url": "https://api.gate.ai/api/v1/videos/video_abc123",9            "message": "视频任务已提交,请调用 status_url 查询生成进度。",10            "current_balance": "100.0000000000",11            "estimated_cost": "1.0800000000",12            "pre_deduct_amount": "1.0800000000",13            "balance_after_estimate": "98.9200000000",14            "currency": "USDT",15            "billing_notice": "视频生成完成后按实际任务结果扣款,提交后请保持余额充足。"16          }17        }

    返回结果

    状态码状态码含义说明数据模型
    202Accepted任务已提交并排队,响应中包含用于轮询的 job_id。VideoSubmitResponse
    400Bad Request参数错误ErrorResponse
    401Unauthorized未登录或 Token 无效ErrorResponse
    402Payment Required余额不足,响应中包含预估费用与当前余额。ErrorResponse
    429Too Many Requests请求过于频繁,请降低调用频率。ErrorResponse
    500Internal Server Error服务内部错误ErrorResponse

    查询任务状态

    GET/api/v1/videos/{job_id}

    轮询任务状态、进度及计费信息。任务完成后响应中包含 download_url。

    请求参数

    名称位置类型必选说明
    job_idpathstring视频任务 ID
    AuthorizationheaderstringGate.AI API Key。格式:Bearer <API_KEY>

    返回字段说明

    名称类型说明
    job_idstring任务唯一 ID
    statusstring任务状态:pending / in_progress / completed / failed
    modelstring使用的模型
    status_urlstring查询任务状态的完整 URL
    download_urlstring视频下载入口 URL(状态为 completed 后出现)
    durationinteger视频时长(秒)
    resolutionstring输出分辨率
    aspect_ratiostring宽高比
    generate_audioboolean是否包含音频
    estimated_coststring预估费用
    billed_coststring实际扣费金额
    billing_statusstring计费状态:pre_deducted 或 settled
    expires_atstring(ISO 8601)视频文件过期时间
    created_atstring(ISO 8601)任务创建时间
    completed_atstring(ISO 8601)任务完成时间

    返回示例

    json
    1        {2          "code": 200,3          "msg": "",4          "data": {5            "job_id": "video_abc123",6            "status": "completed",7            "model": "bytedance/seedance-2.0",8            "status_url": "https://api.gate.ai/api/v1/videos/video_abc123",9            "download_url": "https://api.gate.ai/api/v1/videos/video_abc123/content",10            "duration": 6,11            "resolution": "720p",12            "aspect_ratio": "16:9",13            "generate_audio": false,14            "estimated_cost": "1.0800000000",15            "billed_cost": "1.0800000000",16            "billing_status": "settled",17            "expires_at": "2026-06-26T05:00:00Z",18            "created_at": "2026-05-27T05:00:00Z",19            "completed_at": "2026-05-27T05:03:00Z"20          }21        }

    返回结果

    状态码状态码含义说明数据模型
    200OK成功VideoStatusResponse
    401Unauthorized未登录或 Token 无效ErrorResponse
    404Not Found任务不存在,或任务不属于当前 API Key。ErrorResponse
    500Internal Server Error服务内部错误ErrorResponse

    下载视频

    GET/api/v1/videos/{job_id}

    /content鉴权通过后 302 跳转至临时视频下载地址。

    请求参数

    名称位置类型必选说明
    job_idpathstring视频任务 ID
    AuthorizationheaderstringGate.AI API Key。格式:Bearer <API_KEY>

    返回示例

    json
    1        HTTP/1.1 302 Found2        Location: https://cdn.example.com/videos/video_abc123.mp4?expires=1780000000

    返回结果

    状态码状态码含义说明数据模型
    302Found跳转至临时视频下载地址。
    401Unauthorized未登录或 Token 无效ErrorResponse
    404Not Found任务不存在,或任务不属于当前 API Key。ErrorResponse
    409Conflict任务尚未完成,视频暂不可下载。ErrorResponse
    410Gone视频内容已过期,无法下载。ErrorResponse
    500Internal Server Error服务内部错误ErrorResponse