一个 API Key,支持图片生成与视频生成
图片接口直接返回结果;视频接口采用任务制,先提交任务,再查询进度与结果。
图片生成 API
输入文字描述后直接返回图片结果,支持推荐尺寸、风格描述与多张输出,适合页面配图、自动化流程和内容生产。
视频生成 API
使用同一个 API Key 创建文生视频任务,拿到 task_id 后即可继续查询任务状态,并获取最终视频与封面地址。
返回结构与计费字段
图片接口会直接返回 `images`、`points_used` 和 `billing.charged`,其中 `charged` 就是本次实际费用;视频接口创建时会先返回 `task_id` 与 `status`,查询成功后再返回 `video_url` 与 `cover_url`。当前视频相关响应里的 `billing.charged` 为 `0.0`,主要用于统一返回结构与展示余额。
- ✓ 图片创建成功后可直接拿到结果图与实际扣费
- ✓ 视频创建阶段先返回 task_id,查询阶段再返回状态与视频地址
- ✓ 两类接口都会返回 billing 和 balance,方便统一处理余额展示
三步开始使用
从注册到接入,最快几分钟
注册 / 登录
使用邮箱注册并登录控制台。新用户注册后会自动获得免费初始额度,可以先体验图片生成、视频任务与 Web 工作台。
创建接入口令
在个人中心的「API Key」页面创建口令。口令明文只显示一次,请立即复制保存,后续可用于 OpenClaw `spark-media` Skill、图片 API 和视频 API 认证。
按能力接入
图片可直接调用 `/api/v1/image` 获取结果;视频可调用 `/api/v1/video` 创建任务,再通过 `/api/v1/video/{taskId}` 查询状态与最终地址。
OpenClaw Skill 与图片 / 视频 API
一个 Skill,一套凭证,同时接入图片与视频能力
`spark-media` 现在可以作为同一个 Skill 包使用:既能处理图片生成,也能在需要视频时发起 `/api/v1/video` 任务,并继续查询 `/api/v1/video/{taskId}` 的结果。图片是同步返回,视频是任务制返回,但它们共用同一个站点、同一个账号余额和同一套 API Key 凭证。
安装与配置
openclaw skills install spark-media
openclaw config set env.SPARK_MEDIA_API_KEY "<完整 API Key>"
创建 Key 后,复制完整内容保存到 `SPARK_MEDIA_API_KEY`。安装同一个 Skill 后,图片可直接生成,视频可按任务制创建并查询;无论接图片还是接视频,都不需要再维护第二套凭证。
适合这样用
- 在 OpenClaw 或 AI Agent 中通过同一个 Skill 生成图片或发起视频任务
- 在自有服务中直连 `/api/v1/image` 获取图片结果
- 在同一账号下调用 `/api/v1/video` 创建视频任务并查询状态
- 先在 Web 工作台验证图片与视频提示词,再接入正式流程
个人中心提供推荐提示词、图片历史与视频历史,方便先验证效果,再把同一套凭证接入到你的应用、工作流或 Agent 中。
注册并获取 API Key简单易用的 API
同一套认证即可调用图片接口和视频接口。图片同步返回结果,视频先返回 task_id,再查询状态与结果地址。
POST /api/v1/image
请求示例
{
"prompt": "一只可爱的猫咪在窗台上晒太阳",
"style": "写实摄影,真实光影,高清细节",
"width": 2048,
"height": 2048,
"image_count": 1
}
响应示例
{
"success": true,
"data": {
"images": [
"<base64 PNG data>"
],
"width": 2048,
"height": 2048,
"style": "写实摄影,真实光影,高清细节",
"image_count": 1,
"points_used": 56
},
"billing": {
"charged": 0.56,
"balance": 12.44,
"currency": "CNY"
}
}
POST /api/v1/video
创建文生视频任务
GET /api/v1/video/{taskId}
查询任务结果
创建任务示例
{
"prompt": "雨夜城市街头,镜头缓慢推进,霓虹倒影,电影感",
"duration": 5,
"resolution": "720p",
"ratio": "16:9",
"watermark": false
}
创建响应示例
{
"success": true,
"data": {
"task_id": "video_task_xxx",
"status": "submitted",
"duration": 5,
"resolution": "720p",
"ratio": "16:9",
"watermark": false
},
"billing": {
"charged": 0.0,
"balance": 12.44,
"currency": "CNY"
}
}
查询结果示例
{
"success": true,
"data": {
"task_id": "video_task_xxx",
"status": "succeeded",
"video_url": "https://example.com/video.mp4",
"cover_url": "https://example.com/cover.jpg"
},
"billing": {
"charged": 0.0,
"balance": 12.44,
"currency": "CNY"
}
}
计费说明
图片和视频共用同一账号与 API Key,但当前调用方式和计费呈现并不相同,所以分开写清楚。
图片生成计费
已上线最终费用 = 实际消耗点数 × 单价;点数会随输出尺寸和生成张数变化。
- ✓ 按实际点数结算,不是固定按张一口价
- ✓ 余额不足会在生成前直接拦截
- ✓ 若实际消耗低于预估,会自动回退差额
视频生成计费
任务制视频接口当前采用“先创建任务,再查询结果”的方式接入,因此这里不直接展示一个并不准确的固定价格;后续如上线正式计费规则,会同步更新控制台与文档。
- ✓ 与图片共用同一账号余额和 API Key
- ✓ 创建任务与查询结果的响应里都会返回 billing 字段
- ✓ 当前接口返回的 charged 为 0.0,后续若上线正式计费会在控制台与文档同步说明