通过统一的 REST API,用 Schema、预览、正式任务、渲染、文件和 Webhook,把产品视频、社媒短片、个性化内容和 Agent 生成视频接入你的系统。
几分钟内跑通 schema -> preview -> task -> render -> webhook 的完整接入流程。
推荐流程:preview 或 create task -> render -> poll status / receive webhook
以下示例展示面向生产接入的标准调用路径,适合营销视频、产品视频、AI Agent 输出和可重复内容工作流。
curl -X POST 'https://renderingvideo.com/api/v1/video' \
-H 'Authorization: Bearer sk-your-api-key' \
-H 'Content-Type: application/json' \
-d '{
"config": {
"meta": {
"version": "2.0.0",
"width": 1920,
"height": 1080,
"fps": 30,
"background": "#000000"
},
"tracks": [
{
"clips": [
{
"type": "text",
"text": "你好世界",
"start": 0,
"duration": 5
}
]
}
]
}
}'
curl -X POST 'https://renderingvideo.com/api/v1/video/<taskId>/render' \
-H 'Authorization: Bearer sk-your-api-key' \
-H 'Content-Type: application/json' \
-d '{
"webhook_url": "https://your-server.com/renderingvideo-webhook",
"num_workers": 5
}'围绕预览、任务、渲染、文件和额度管理的关键接口,适合产品接入与自动化工作流。
根据 Schema 创建一个可追踪的正式任务,但不会立即开始渲染。
分页读取当前账号下的任务列表,适合控制台和服务端状态同步。
返回任务尺寸、时长、状态、输出地址、元数据和关键时间戳。
删除本地任务记录,并尝试同步清理上游远端任务。
将既有任务送入渲染流程,支持 num_workers 和 webhook_url。
上传图片、视频和音频文件,供 Schema 在预览与渲染中复用。
按分页浏览文件库,并按 image、video、audio 类型筛选。
删除素材记录及其对应存储对象,保持文件库整洁。
在触发正式渲染前检查剩余积分与可用额度。
生成不消耗正式渲染额度的临时预览链接,默认有效期为 7 天。
查看某个临时预览链接当前对应的 Schema 内容。
在链接过期前主动清理临时预览。
将调试过的临时预览克隆成正式任务,但不立即渲染。
将临时预览直接转换为正式任务并立即进入渲染。
当你在 render 请求中传入 webhook_url 后,任务完成或失败时,RenderingVideo 会向你的地址发送一个 POST 请求。适合驱动数据库更新、业务回调或 Agent 后续动作。当前发送 completed 与 failed 事件。
{
"taskId": "abc123def456",
"renderTaskId": "rt_002",
"status": "completed",
"videoUrl": "https://storage.../videos/abc123.mp4",
"error": null,
"timestamp": "2026-03-23T10:00:00.000Z"
}使用 SDK 可以更快把 RenderingVideo 接入现有服务。
import { RenderingVideo } from '@renderingvideo/sdk';
const client = new RenderingVideo({ apiKey: 'sk-xxx' });
const task = await client.video.create({
meta: {
version: '2.0.0',
width: 1920,
height: 1080,
fps: 30,
background: '#000000',
},
tracks: [...],
});
const render = await client.video.render(task.taskId, {
webhook_url: 'https://your-server.com/renderingvideo-webhook',
});
console.log(render.status);from renderingvideo import Client
client = Client(api_key="sk-xxx")
task = client.video.create({
"meta": {
"version": "2.0.0",
"width": 1920,
"height": 1080,
"fps": 30,
"background": "#000000"
},
"tracks": [...]
})
render = client.video.render(
task.task_id,
webhook_url="https://your-server.com/renderingvideo-webhook"
)
print(render.status)use RenderingVideo\Client;
$client = new Client('sk-xxx');
$task = $client->video->create([
'meta' => [
'version' => '2.0.0',
'width' => 1920,
'height' => 1080,
'fps' => 30,
'background' => '#000000'
],
'tracks' => [...]
]);
$render = $client->video->render(
$task->task_id,
['webhook_url' => 'https://your-server.com/webhook']
);
echo $render->status;所有服务端 API 请求都需要 API Key。
Authorization: Bearer sk-your-api-keyAuthorization: Token sk-your-api-keyX-API-Key: sk-your-api-key?api_key=sk-your-api-key安全提示:API Key 应只保存在服务端。不要在客户端、前端打包结果或公开仓库中暴露密钥。