跳转至

MaaS_Seedance

关于真人资产库的使用

流程说明

第 1 步:创建真实人物肖像资产组(资产组)

  • 使用 API 生成 H5 认证页面链接。支持传入 CallbackURL 参数以自定义回调页面链接。

  • 访问 H5 认证页面链接以完成人脸认证。点击完成按钮后,将打开 CallbackURL 链接。

  • 注意:用户可能提供不可访问的callbackurl,完成人脸认证点击“完成认证”时可能是一个报错页面!!但不影响结果,只要完成了人脸认证,就已创建了资产组,可根据上一步的bytedToken参数查询资产组是否创建成功

  • 解析附加到 CallbackURL 的参数以获取人脸认证结果。如果人脸认证成功(resultCode 为 10000),调用接口查询终端用户对应的资产组 ID。

第 2 步:上传/管理资产(创建资产)

  • 当真实人类资产被上传时,系统会将上传的图像与在真人验证过程中收集的参考图像进行面部特征一致性比较。只有通过这一比较后,该资产才能被添加到库中。

  • 您可以使用资产 API 来检索资产 ID、更新资产信息或删除资产。

第 3 步:使用真人肖像进行视频生成

  • 基于已通过验证的真人肖像资产(处于活跃状态),使用资产 URI 来启动视频生成任务。

  • 每个资产组对应一个真实人,属于该人的每个资产文件都是资产。

关于虚拟资产库的使用

流程说明

第 1 步:创建虚拟资产组

  • 无需真人人脸识别,可以通过创建虚拟资产组接口直接创建AIGC类型的资产组

其余步骤与上述真人资产库的使用一致

接口及请求参数

创建视频生成任务 API

POST

https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/contents/generations/tasks

请求参数

属性名 类型 必需/可选 描述
model string 必选 您需要调用的模型的 ID (Model ID)
content object 必选 输入给模型,生成视频的信息,支持文本信息和图片信息。
content.type
string
必选
输入内容的类型
text 文本内容
image_url 图片信息
video_url
audio_url
draft_task
content.text
string
必选
输入给模型的文本内容,描述期望生成的视频,包括:
文本提示词(必填):
  • 提示词语言支持 :所有模型均支持中英文提示词;

    • Seedance 2.5 :额外支持西班牙语、印度尼西亚语、葡萄牙语、日语、马来语、泰语、阿拉伯语、越南语、韩语;
    • Seedance 2.0 系列 :额外支持西班牙语、印度尼西亚语、葡萄牙语、日语。
  • 提示词字数建议 :中文提示词不超过 500 字,英文提示词不超过 1000 词。字数过多易导致信息分散,模型可能忽略细节、仅关注重点,进而造成视频缺失部分元素。

参数(选填):在文本提示词后追加--[parameters],控制视频输出的规格,详情见seedance官网 模型文本命令(选填)。
content.draft_task
object
(content.Type为draft_task时,必选) 样片任务 ID
样片模式使用方法详见:Draft 样片模式示例
content.image_url object 必选 输入给模型的图片对象。
content.image_url.url
string
必选
图片信息,可以是图片URL或图片 Base64 编码。
  • 图片URL:请确保图片URL可被访问。
  • Base64编码:请遵循此格式data:image/<图片格式>;base64,<Base64编码>,注意 <图片格式> 需小写,如 data:image/png;base64,{base64_image}。
  • Asset ID:用于生成视频的数字角色的 URI。其格式为 asset://<ASSET_ID>,可从真人资产库中获取。
传入单张图片要求
  • 格式 :jpeg、png、webp、bmp、tiff、gif。其中,Seedance 1.5 pro 及以上模型版本额外支持 heic、heif。

  • 宽高比(宽/高) :[0.4, 2.5]

  • 宽高长度(px) :[300, 6000]

  • 大小 :单张图片小于 30 MB。请求体大小不超过 64 MB。大文件请勿使用 Base64 编码。

  • 图片数量 :

    • 图生视频-首帧 :1 张
    • 图生视频-首尾帧 :2 张
    • Seedance 2.5 多模态参考生视频 :1-30 张
    • Seedance 2.0 系列多模态参考生视频 :1-9 张
content.video_url object 必选 输入给模型的视频对象。
content.video_url.url
string
必选
视频URL、素材 ID。
  • 视频 URL:填入视频的公网 URL。
  • 素材 ID:用于视频生成的预置素材及虚拟人像视频的 ID,遵循格式:asset://<ASSET_ID>。可从真人资产库获取。
传入单个视频要求
  • 视频格式:mp4、mov,支持编码格式见下表。

  • 分辨率:480p、720p

  • 时长:单个视频时长 [2, 15] s,最多传入 3 个参考视频,所有视频总时长不超过 15s。

  • 尺寸:

    • 宽高比(宽/高):[0.4, 2.5]
    • 宽高长度(px):[300, 6000]
    • 总像素数:[640×640=409600, 834×1112=927408],即宽和高的乘积符合 [409600, 927408] 的区间要求。
  • 大小:单个视频不超过 50 MB。

  • 帧率 (FPS):[24, 60]

content.audio_url object 必选 输入给模型的音频对象。
content.audio_url.url string
音频 URL 、音频 Base64 编码、素材 ID。
  • 音频 URL:填入音频的公网 URL。
  • Base64 编码:将本地文件转换为 Base64 编码字符串,然后提交给大模型。遵循格式:data:audio/<音频格式>;base64,<Base64编码>,注意 <音频格式> 需小写,如 data:audio/wav;base64,{base64_audio}。
  • 素材 ID:用于视频生成的虚拟人的音频素材 ID,遵循格式:asset://<ASSET_ID>。可从真人资产库获取。
传入单个音频要求
  • 格式:wav、mp3
  • 时长:单个音频时长 [2, 15] s,最多传入 3 段参考音频,所有音频总时长不超过 15 s。
  • 大小:单个音频不超过 15 MB,请求体大小不超过 64 MB。大文件请勿使用Base64编码。
content.role
string
条件必填
  1. 图生视频\-首帧
字段 ** role ** 取值 :需要传入 1 个 image_url 对象,role 为 first_frame 或不填。
  • 图生视频\-首尾帧
字段 ** role ** 取值 :需要传入 2 个 image_url 对象,且 role 必填。
  • 首帧图片对应的 role 为 first_frame
  • 尾帧图片对应的 role 为 last_frame
传入的首尾帧图片可相同。首尾帧图片的宽高比不一致时,以首帧图片为主,尾帧图片会自动裁剪适配。
模型支持 :
  • Seedance 2.5
  • Seedance 2.0 系列
  • Seedance 1.5 pro
  • Seedance 1.0 pro
  • 图生视频\-参考图
字段 ** role ** 取值 :必填,每张参考图对应的 role 均为 reference_image。
模型支持 :
  • Seedance 2.5
  • Seedance 2.0 系列
  • 参考视频
固定为 reference_video
  • 参考音频
固定为 reference_audio
  • 样片任务
固定为draft_task
omni_reference_task_type
String 可选 默认auto
Seedance 2.5 全模态参考生视频任务 包括参考生视频、视频编辑和视频延长 3 类子任务。不同任务类型对参数有特殊限制,为减少任务创建后异步报错的情况,可通过本参数指定子任务类型,以提前校验对应限制。
  • 默认情况下,即 omni_reference_task_type=auto:模型根据输入素材和提示词自动判定任务类型,再校验参数取值。如果参数与实际任务类型不兼容,任务将触发 异步报错(错误码:InvalidParameter.TaskTypeConstraint)。
  • 显式指定任务类型,即 omni_reference_task_type 为 reference、edit 或 extend:接口在提交任务时提前校验对应任务的特殊参数限制。不符合要求时,接口立即报错,任务不会创建。
注意
实际处理任务时,模型仍会进一步结合提示词判断任务类型。若实际判定的任务类型和指定的不一致,仍会触发 异步报错(错误码:InvalidParameter.TaskTypeMismatch)。建议遵循各任务类型的 提示词写法,降低报错概率。
可选值:
  • auto:由模型根据输入素材和提示词自动判定任务类型。
  • reference:参考生视频任务,即基于参考图片、参考视频或参考音频生成新视频。设置 reference 时,ratio 或 duration 无特殊限制。
  • edit:视频编辑任务,即对原视频的画面或音频进行编辑操作。设置 edit 时,content 中必须至少包含一个 reference_video,且视频时长必须为 4–30 秒;ratio 必须为 adaptive;duration 必须为 -1。
  • extend:视频延长任务,即对原视频向前或向后延长。设置 extend 时,content 中必须至少包含一个 reference_video;ratio 必须为 adaptive。
模型支持 :
  • Seedance 2.5
callback_url
string 可选 填写本次生成任务结果的回调通知地址。当视频生成任务有状态变化时,方舟将向此地址推送 POST 请求。
camera_fixed boolean 可选 默认值false
是否固定摄像头。
  • true:固定摄像头。平台会在用户提示词中追加固定摄像头,实际效果不保证。
  • false:不固定摄像头。
参考图场景不支持。
模型支持 :
  • Seedance 1.5 Pro
  • Seedance 1.0 Pro
  • Seedance 1.0 Pro Fast
draft
boolean
可选
默认值false
true: 开启样片模式,生成一段预览视频,快速验证场景结构、镜头调度、主体动作与 prompt 意图是否符合预期。消耗 token 数较正常视频更少,使用成本更低。
仅支持480p分辨率(使用其他分辨率会报错),不支持返回尾帧功能,不支持离线推理功能。
false: 正常生成视频
支持 seedance 1.5 pro/seedance 2.5
duration integer
可选

duration 和 frames 二选一即可,frames 的优先级高于 duration。如果您希望生成整数秒的视频,建议指定 duration。

生成视频时长,仅支持整数,单位:秒。
  • Seedance 1.0 pro、Seedance 1.0 pro fast、Seedance 1.0 lite: [2, 12] s。
  • Seedance 1.5 pro: [4,12] 或设置为-1
  • Seedance 2.0 & 2.0 fast: [4,15] 或设置为-1
  • Seedance 2.5 :默认值 -1;取值范围 [4, 30];或设置为 -1(智能选择)
注意
Seedance 2.0系列、Seedance 1.5 pro 支持两种配置方法
  • 指定具体时长:支持有效范围内的任一整数。
  • 智能指定:设置为 -1,表示由模型在有效范围内自主选择合适的视频长度(整数秒)。实际生成视频的时长可通过 查询视频生成任务 API 返回的 duration 字段获取。注意视频时长与计费相关,请谨慎设置。
Seedance 2.5 模型在 视频编辑任务 (详见 任务类型与判定条件)的限制条件:
  • 仅支持配置duration为 -1,不支持指定具体输出时长。
  • 传入的待编辑视频时长需在 [4, 30]s 内,否则将触发报错。
execution_expires_after integer 可选 任务超时阈值。指定任务提交后的过期时间(单位:秒),从 created_at 时间戳开始计算,默认 48 小时。
超过该时间后任务会被自动终止,并标记为 expired 状态。
默认值 172800 (秒),即48小时
取值范围:[3600,259200]
frames
integer
可选 frames和duration(dur)二选一
seedance-1.5-pro 中移除该参数
Seedance 2.0系列不支持
generate_audio
boolean
可选
默认值true
true:模型输出的视频包含同步音频。Seedance 1.5 pro 能够基于文本提示词与视觉内容,自动生成与之匹配的人声、音效及背景音乐。建议将对话部分置于双引号内,以优化音频生成效果。例如:男人叫住女人说:“你记住,以后不可以用手指指月亮。”
false:模型输出的视频为无声视频。
仅在seedance-1.5-pro、seedance-2.0系列、seedance-2.5中支持
output_format
string 可选 默认值 mp4
输出视频的格式。
  • mp4:通用格式,兼容性最好,采用标准色彩精度,可在网页、移动端、各类播放器及分发平台直接播放。
  • mov:面向专业场景的高色彩精度格式,更好地保持画面色彩与亮度一致性、适用于调色、抠像、合成等对色彩还原要求高的专业后期加工。推荐在视频编辑、视频延长场景使用 mov 格式作为输入和输出。
模型支持 :
  • Seedance 2.5
priority
integer
可选 仅Seedance 2.0、Seedance 2.5支持

设置当前请求的执行优先级,并确定其在队列中的位置。有效值范围:0–9,数值越大表示优先级越高。 默认值为0
默认情况下,请求按先进先出(FIFO)顺序执行。当您设置更高的优先级后,该请求将插入到同一端点下所有低优先级请求的前面。
示例:
假设某个端点当前有三个排队任务(状态=排队),且所有任务的默认优先级均为0。
队列:[任务A:优先级=0] → [任务B:优先级=0] → [任务C:优先级=0]
如果提交一个优先级为5的新请求,则该请求会直接移到队列最前面:
队列:[新请求:优先级=5] → [任务A:优先级=0] → [任务B:优先级=0] → [任务C:优先级=0]
注意
优先级相同的请求仍按先进先出(FIFO)顺序排列。
优先级仅影响队列的排序,不会中断正在运行的任务(状态 = 运行)。
优先级仅在同一个端点内生效,不影响其他端点。
离线推理模式(service_tier=flex)不支持优先级配置。
ratio
string
可选 生成视频的宽高比例。不同宽高比对应的宽高像素值见官方文档
  • 16:9
  • 4:3
  • 1:1
  • 3:4
  • 9:16
  • 21:9
  • adaptive:根据输入自动选择最合适的宽高比(详见下文说明)
adaptive 适配规则
当配置 ratio 为 adaptive 时,模型会根据生成场景自动适配宽高比;实际生成的视频宽高比可通过 查询视频生成任务 API 返回的 ratio 字段获取。
支持模型:
  • Seedance 2.0 系列、Seedance 1.5 Pro 支持
  • 其他模型仅图生视频场景支持,注意 Seedance 1.0 lite 参考图场景不支持。
取值规则:
  • 文生视频:根据输入的提示词,智能选择最合适的宽高比。
  • 首帧 / 首尾帧生视频:根据上传的首帧图片比例,自动选择最接近的宽高比。
  • 多模态参考生视频:根据用户提示词意图判断,如果是首帧生视频/编辑视频/延长视频,以该图片/视频为准选择最接近的宽高比;否则,以传入的第一个媒体文件为准(优先级:视频>图片)选择最接近的宽高比。
resolution
string
可选
视频分辨率。可选值:480p、720p、1080p、4k。
模型支持 :
  • Seedance 2.5 :默认值 720p;可选值 480p、720p、1080p
  • Seedance 2.0 :默认值 720p;可选值 480p、720p、1080p、4k
  • Seedance 2.0 Fast :默认值 720p;可选值 480p、720p
  • Seedance 2.0 Mini :默认值 720p;可选值 480p、720p
  • Seedance 1.5 Pro :默认值 720p;可选值 480p、720p、1080p
  • Seedance 1.0 Pro :默认值 1080p;可选值 480p、720p、1080p
  • Seedance 1.0 Pro Fast :默认值 1080p;可选值 480p、720p、1080p
return_last_frame
Boolean
可选
默认值false。
true:返回生成视频的尾帧图像。尾帧图像的格式为 png,宽高像素值与生成的视频一致,无水印。您可通过查询视频生成任务接口获取视频的尾帧图像。
false:不返回生成视频的尾帧图像。
safety_identifier
string
可选
终端用户的唯一标识符,用于协助平台检测您的应用中可能违反火山方舟使用政策的用户。该标识符为英文字符串,需保证对单个用户固定且唯一,长度不超过 64 个字符。推荐传入对用户名、用户 ID 或邮箱进行哈希处理后生成的字符串,避免泄露用户隐私信息。
seed
integer
可选
默认-1
种子整数,用于控制生成内容的随机性。
取值范围:[-1, 2^32-1]之间的整数。
注意
  • 相同的请求下,模型收到不同的seed值,如:不指定seed值或令seed取值为-1(会使用随机数替代)、或手动变更seed值,将生成不同的结果。
  • 相同的请求下,模型收到相同的seed值,会生成类似的结果,但不保证完全一致。
service_tier
string
可选
指定处理本次请求的服务等级类型,枚举值:
default:在线推理模式,RPM 和并发数配额较低,适合对推理时效性要求较高的场景。
flex:离线推理模式,TPD 配额更高,价格为在线推理的 50%, 适合对推理时延要求不高的场景。
Seedance 2.0系列不支持
watermark
boolean 可选 默认值 false
生成视频是否包含水印。
  • true:生成视频右下角会展示水印。
  • false:生成视频不含水印。

请求体示例

文生视频

curl -X POST https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/contents/generations/tasks \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${your_AK}" \
  -d '{
    "model": "doubao-seedance-1-5-pro-251215",
    "content": [
        {
            "type": "text",
            "text": "多个镜头。一名侦探进入一间光线昏暗的房间。他检查桌上的线索,手里拿起桌上的某个物品。镜头转向他正在思索。 --ratio 16:9"
        }
    ]
}'

图生视频-首帧

curl -X https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/contents/generations/tasks \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${your_AK}" \
  -d '{
    "model": "doubao-seedance-1-0-pro-250528",
    "content": [
        {
            "type": "text",
            "text": "女孩抱着狐狸,女孩睁开眼,温柔地看向镜头,狐狸友善地抱着,镜头缓缓拉出,女孩的头发被风吹动  --ratio adaptive  --dur 5"
        },
        {
            "type": "image_url",
            "image_url": {
                "url": "https://ark-project.tos-cn-beijing.volces.com/doc_image/i2v_foxrgirl.png"
            }
        }
    ]
}'

首尾帧

curl -X POST https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/contents/generations/tasks \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${your_AK}" \
  -d '{
    "model": "doubao-seedance-1-0-lite-i2v-250428",
    "content": [
         {
            "type": "text",
            "text": "一只蓝绿精卫鸟变成人形 --rs 720p  --dur 5 --cf false"
        },
        {
            "type": "image_url",
            "image_url": {
                "url": "https://ark-project.tos-cn-beijing.volces.com/doc_image/seelite_first_frame.png"
            },
            "role": "first_frame"
        },
        {
            "type": "image_url",
            "image_url": {
                "url": "https://ark-project.tos-cn-beijing.volces.com/doc_image/seelite_last_frame.png"
            },
            "role": "last_frame"
        }
    ]
}'

参考图

curl -X POST https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/contents/generations/tasks \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${your_AK}" \
  -d '{
    "model": "doubao-seedance-1-0-lite-i2v-250428",
    "content": [
         {
            "type": "text",
            "text": "老爷爷在咖啡馆里,端起咖啡杯,画面风格卡通、清新  --rs 720p  --dur 5  --rt 16:9 --seed 12345 --wm true"
        },
        {
            "type": "image_url",
            "image_url": {
                "url": "https://ark-project.tos-cn-beijing.volces.com/doc_image/seelite_ref_1.png"
            },
            "role": "reference_image"
        },
        {
            "type": "image_url",
            "image_url": {
                "url": "https://ark-project.tos-cn-beijing.volces.com/doc_image/seelite_ref_2.png"
            },
            "role": "reference_image"
        },
        {
            "type": "image_url",
            "image_url": {
                "url": "https://ark-project.tos-cn-beijing.volces.com/doc_image/seelite_ref_3.png"
            },
            "role": "reference_image"
        }
    ]
}'

响应示例

{
  "id": "cgt-2025******-****"
}

样片模式示例

Step1: 生成样片

curl -X POST https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/contents/generations/tasks \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${your_AK}" \
  -d '{
    "model": "doubao-seedance-1-5-pro-251215",
    "content": [
        {
            "type": "text",
            "text": "女孩抱着狐狸,女孩睁开眼,温柔地看向镜头,狐狸友善地抱着,镜头缓缓拉出,女孩的头发被风吹动"
        },
        {
            "type": "image_url",
            "image_url": {
                "url": "https://ark-project.tos-cn-beijing.volces.com/doc_image/i2v_foxrgirl.png"
            }
        }
    ],
    "seed": 20, 
    "duration": 6, 
    "draft": true
}'

在接口返回中获取样片taskId

{
  "id": "cgt-2026******-AAAAA"
}

Step2: 查询样片状态

// $ID即刚刚获取的taskID,cgt-2026******-AAAAA
curl -X GET "https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/contents/generations/tasks/$ID" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${your_AK}"

Step3: 当样片生成成功后,基于样片视频生成正式视频

curl -X POST https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/contents/generations/tasks \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${your_AK}" \
  -d '{
    "model": "doubao-seedance-1-5-pro-251215",
    "content": [
        {
            "type": "draft_task",
            "draft_task": {"id": "cgt-2026******-AAAAA"}
        }
    ],
      "watermark": false,
      "resolution": "720p",
      "return_last_frame": true,
      "service_tier": "default"
  }'  

在接口返回中获取正式视频taskId

{
  "id": "cgt-2026******-BBBBB"
}

Step4: 获得正式视频生成结果

// $ID即刚刚获取的taskID,cgt-2026******-BBBBB
curl -X GET "https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/contents/generations/tasks/$ID" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${your_AK}"

查询视频生成任务 API

GET

https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/contents/generations/tasks/{id}

请求体示例

curl -X GET "https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/contents/generations/tasks/$ID" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${your_AK}"

响应示例

{
  "id": "cgt-2025******-****",
  "model": "doubao-seedance-1-0-pro-250528",
  "status": "succeeded",
  "content": {
    "video_url": "https://ark-content-generation-cn-beijing.tos-cn-beijing.volces.com/doubao-seedance-1-0-pro/****.mp4?X-Tos-Algorithm=TOS4-HMAC-SHA256&X-Tos-Credential=AKLTY****%2Fcn-beijing%2Ftos%2Frequest&X-Tos-Date=20250331T095113Z&X-Tos-Expires=86400&X-Tos-Signature=***&X-Tos-SignedHeaders=host"
  },
  "seed": 10,
  "resolution": "720p",
  "duration": 5,
  "ratio": "16:9",
  "framespersecond": 24,
  "usage": {
    "completion_tokens": 108900,
    "total_tokens": 108900,
    "tool_usage": {
        "web_search": 0
    },
  },
  "safety_identifier": "muxiaojue",
  "tools": [
    {
        "type": "web_search"
    }
  ],
  "created_at": 1743414619,
  "updated_at": 1743414673,
  "service_tier":"default",
  "execution_expires_after":172800,
  "generate_audio":true,
  "draft":false,
  "priority": 0
}

取消或删除视频生成任务

DELETE

https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/contents/generations/tasks/{id}

请求体示例

curl -X DELETE "https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/contents/generations/tasks/$ID" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $${your_AK}"

本接口无返回参数。

创建真人资产组(创建真人验证)

POST

https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/visual/validate

请求body参数

字段 类型 必填 默认值 描述
callbackURL string 是 验证完成后自动跳转的URL,会附带验证结果参数

响应参数

字段 类型 必填 描述
bytedToken string 是 本次验证的唯一凭证标识
h5Link string 是 真人验证H5链接(有效期120秒)
callbackURL string 是 验证完成后自动跳转的URL,会附带验证结果参数

请求体示例

curl --location 'https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/visual/validate' \
--header 'Authorization: Bearer $${your_AK}' \
--header 'Content-Type: application/json' \
--data '{
    "callbackURL":"https://www.example.com/callback"
}'

响应示例

{
    "bytedToken": "your bytedToken",
    "h5Link": "your h5 link",
    "callbackUrl": "your callback url"
}

获取验证结果(获取资产组id)

POST

https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/visual/result

请求body参数

字段 类型 必填 默认值 描述
bytedToken string 是 验证凭证标识

响应参数

字段 类型 必填 描述
groupId string 是 本次真人验证创建的肖像资产组ID
status string 是 状态

请求体示例

curl --location 'https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/visual/result' \
--header 'Authorization: Bearer $${your_AK}' \
--header 'Content-Type: application/json' \
--data '{
    "bytedToken":"your bytedToken"
}'

响应示例

{
    "groupId": "your groupId",
    "status": "Processing"
}

创建虚拟资产组

POST https:// genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset /group/create

请求body参数

字段 类型 必填 默认值 描述
name string 是 资产组名称,最多 64 个字符。
description string 否 资产组描述,最多 300 个字符。
groupType string 否 AIGC 资产组类型。可选值:AIGC:数字人角色(当前唯一支持的取值)。

响应参数

字段 类型 必填 描述
id string 是 资产组 ID。
h5Link string 是 真人验证H5链接(有效期120秒)
callbackURL string 是 验证完成后自动跳转的URL,会附带验证结果参数

请求体示例

curl --location 'https://genaiapi.cloudsway.net/v1/ai/{endpoint}/seedance/asset/group/create' \
--header 'Authorization: Bearer ${your_AK}' \
--header 'Content-Type: application/json' \
--data '{
  "Name": "test",
  "Description": "test",
  "GroupType": "AIGC"
}'

响应示例

{
  "id": "group-2026**********-*****"
}

获取资产组详情

GET

https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset/group

请求query参数

字段 类型 必填 默认值 描述
id string 是 资产组ID

响应参数

字段 类型 必填 描述
id string 是 资产组ID
bytedToken string 是 资产组bytedToken
name string 是 资产组名称
description string 是 资产组描述
groupType string 是 资产组类型(AIGC/LivenessFace)
createTime string 是 创建时间
updateTime string 是 更新时间
status string 是 状态:Active(可用)/Processing(处理中)/Failed(失败)

请求体示例

curl --location 'https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset/group?id={your group id}' \
--header 'Authorization: Bearer ${your_AK}' \
--header 'Content-Type: application/json'

响应示例

{
    "id": "your group id",
    "bytedToken": "your bytedToken",
    "name": "your group name",
    "description": "your group description",
    "groupType": "LivenessFace",
    "createTime": "2026-04-22T08:59:29Z",
    "updateTime": "2026-04-22T09:02:57Z",
    "status": "Active"
}

查询资产组列表

GET https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset/group/list

请求query参数

字段 类型 必填 默认值 描述
filter object 是 过滤条件对象
filter.groupIds array[string] 否 资产组ID列表
filter.groupType string 是 资产组类型(LivenessFace: 真人肖像 / AIGC: 数字人)
filter.name string 否 资产组描述资产组名称(支持模糊搜索)
pageNumber integer 否 1 页码,从1开始
pageSize integer 否 10 每页数量,最大100
sortBy string 否 CreateTime 排序字段(CreateTime/UpdateTime)
sortOrder string 否 Desc 排序方式(Desc/Asc)

响应参数

字段 类型 必填 描述
totalCount integer 是 资产总数
items array[object] 是 资产组列表
items[].id string 是 资产组ID
items[].bytedToken string 是 资产组bytedToken
items[].name string 是 资产组名称
items[].description string 是 资产组描述
items[].groupType string 是 资产组类型
items[].createTime string 是 创建时间
items[].updateTime string 是 更新时间
items[].status string 是 状态:Active(可用)/Processing(处理中)/Failed(失败)
pageNumber integer 是 当前页码
pageSize integer 是 每页数量

请求体示例

curl --location 'https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset/group/list?filter.groupType=LivenessFace&pageNumber=1&pageSize=10' \
--header 'Authorization: Bearer ${your_AK}' \
--header 'Content-Type: application/json'

响应示例

{
    "totalCount": 1,
    "items": [
        {
            "id": "your group id",
            "bytedToken": "your bytedToken",
            "name": "your group name",
            "description": "your group description",
            "groupType": "LivenessFace",
            "createTime": "2026-04-22T08:59:29Z",
            "updateTime": "2026-04-22T09:02:57Z",
            "status": "Active"
        }
    ]
}

更新资产组

POST

https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset/group

请求body参数

字段 类型 必填 默认值 描述
id string 是 资产组ID
name string 否 新的资产组名称,最多64个字符
description string 否 新的资产组描述,最多300个字符

响应参数

字段 类型 必填 描述
id string 是 资产组id
name string 否 新的资产组名称,最多64个字符
description string 否 新的资产组描述,最多300个字符

请求体示例

curl --location 'https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset/group' \
--header 'Authorization: Bearer ${your_AK}' \
--header 'Content-Type: application/json' \
--data '{
    "id":"your group id",
    "name":"your group name",
    "description":"your group description"
}'

响应示例

{
    "id": "your group id",
    "name": "your group name",
    "description": "your group description"
}

删除资产组

DELETE

https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset/group

请求body参数

字段 类型 必填 默认值 描述
id string 否 要删除的资产组ID
bytedToken string 否 资产组bytedToken

删除资产组必须传入资产组id或bytedToken,优先使用资产组id

删除资产组时,资产组下的所有资产将同步删除

响应参数

字段 类型 必填 描述
id string 是 删除的资产组ID

请求体示例

curl --location --request DELETE 'https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset/group' \
--header 'Authorization: Bearer ${your_AK}' \
--header 'Content-Type: application/json' \
--data '{
    "id":"your group id"
}'

响应示例

{
    "id": "your group id"
}

创建资产

POST

https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset

请求body参数

字段 类型 必填 默认值 描述
gourpId string 是 资产所属的资产组ID(必须是真人验证后获得的Group ID)
url string 是 可公开访问的资产URL
assetType string 是 资产类型:Image/Video/Audio
name string 否 资产名称,最多64个字符(仅用于ListAssets模糊搜索)
moderation object 否 指定当前资产是否关闭内容预审(Content Pre-filter)。
moderation.strategy string 是 当前资产的内容预审策略。可选值:Default:对本资产开启内容预审;Skip:跳过大部分非基线内容安全审核策略。

响应参数

字段 类型 必填 描述
id string 是 资产ID

请求体示例

curl --location 'https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset' \
--header 'Authorization: Bearer ${your_AK}' \
--header 'Content-Type: application/json' \
--data '{
    "groupId":"your group id",
    "url":"your image url",
    "name":"your image name",
    "assetType":"Image"
}'

响应示例

{
    "id": "your asset id"
}

查询资产详情

GET

https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset

请求query参数

字段 类型 必填 默认值 描述
id string 是 资产id

响应参数

字段 类型 必填 默认值 描述
id integer 是 资产ID
name string 是 资产名称
url string 是 资产访问URL(有效期12小时)
assetType string 是 所属资产组ID
groupId string 是 所属资产组ID
status string 是 资产状态:Active(可用)/Processing(处理中)/Failed(失败)
error object 否 错误信息(Status为Failed时返回)
error.code string 否 错误码
error.message string 否 错误消息
createTime string 是 创建时间
updateTime string 是 更新时间
moderation object 是 指定当前资产是否关闭内容预审(Content Pre-filter)。
moderation.strategy string 是 当前资产的内容预审策略。可选值:Default:对本资产开启内容预审;Skip:跳过大部分非基线内容安全审核策略。

请求体示例

curl --location 'https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset?{your asset id}' \
--header 'Authorization: Bearer ${your_AK}' \
--header 'Content-Type: application/json' 

响应示例

{
    "id": "your asset id",
    "name": "your asset name",
    "url": "seedance url for your asset",
    "assetType": "Image",
    "groupId": "your groupId",
    "status": "Active",
    "error": {
        "Code": null,
        "Message": null,
        "Data": null
    },
    "createTime": "2026-04-22T10:35:15Z",
    "updateTime": "2026-04-22T11:53:10Z"
}

查询资产列表

GET

https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset/list

请求query参数

字段 类型 必填 默认值 描述
filter object 是 过滤条件对象
filter.groupIds array[string] 否 资产组ID列表
filter.groupType string 是 资产组类型(LivenessFace: 真人肖像 / AIGC: 数字人)
filter.statuses string 否 资产状态列表(Active/Processing/Failed)
filter.name string 否 资产名称(支持模糊搜索)
pageNumber integer 否 1 页码,从1开始
pageSize integer 否 10 每页数量,最大100
sortBy string 否 CreateTime 排序字段(CreateTime/UpdateTime)
sortOrder string 否 Desc 排序方式(Desc/Asc)

响应参数

字段 类型 必填 描述
totalCount integer 是 资产总数
items array[object] 否 资产组列表
items[].id string 是 资产列表
items[].name string 是 资产ID
items[].url string 是 资产名称
items[].groupId string 是 资产URL(有效期12小时)
items[].groupType string 是 所属资产组ID
items[].assetType string 是 资产类型
items[].status string 是 资产状态
items[].moderation object 是 指定当前资产是否关闭内容预审(Content Pre-filter)。
items[].moderation.strategy string 是 当前资产的内容预审策略。可选值:Default:对本资产开启内容预审;Skip:跳过大部分非基线内容安全审核策略。
items[].error.code string 否 错误码
items[].error.message string 否 错误消息
items[].createTime string 是 创建时间
items[].updateTime string 是 更新时间
pageNumber integer 是 当前页码
pageSize integer 是 每页数量

请求体示例

curl --location 'https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset/list?filter.groupIds={your group id}&pageSize=10&sortBy=CreateTime&sortOrder=Desc&filter.groupType=LivenessFace' \
--header 'Authorization: Bearer ${your_AK}' \
--header 'Content-Type: application/json' 

响应示例

{
    "totalCount": 1,
    "items": [
        {
            "your asset id",
            "name": "your asset name",
            "url": seedance url for your asset,
            "assetType": "Image",
            "groupId": "your groupId",
            "status": "Active",
            "error": {
                "Code": null,
                "Message": null,
                "Data": null
            },
            "createTime": "2026-04-22T12:15:47Z",
            "updateTime": "2026-04-22T12:15:54Z"
        }
    ],
    "pageNumber": 1,
    "pageSize": 10
}

更新资产

POST

https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset/update

请求body参数

字段 类型 必填 默认值 描述
id string 是 要更新的资产ID
name string 否 新的资产名称,最多64个字符

响应参数

字段 类型 必填 描述
id string 是 资产id

请求体示例

curl --location 'https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset/update' \
--header 'Authorization: Bearer ${your_AK}' \
--header 'Content-Type: application/json' \
--data '{
    "id":"your asset id",
    "name":"your asset name"

响应示例

{
    "id": "your asset id"
}

删除资产

DELETE

https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset

请求query参数

字段 类型 必填 默认值 描述
id string 是 要删除的资产ID

响应参数

字段 类型 必填 描述
id string 是 删除的资产id

请求体示例

curl --location -request DELETE 'https://genaiapi-m2.cloudsway.net/v1/ai/{endpointPath}/seedance/asset?id={your group id}' \
--header 'Authorization: Bearer ${your_AK}' \
--header 'Content-Type: application/json'

响应示例

{
    "id": "your asset id"
}