【剪映小助手】草稿管理接口

简介: 本文档详解剪映草稿管理三大核心API:创建、保存及获取草稿文件列表,涵盖请求参数、响应格式、错误码、URL规则与最佳实践,助力开发者快速集成稳定高效的草稿系统。(239字)

草稿管理接口

目录

  1. 简介
  2. 核心接口概览
  3. 接口详细说明
  4. 草稿URL生成规则
  5. 文件结构说明
  6. 最佳实践
  7. 错误码对照表

简介

本文档详细介绍剪映草稿管理的核心API接口,包括创建草稿、保存草稿、获取草稿文件列表三个基础功能。文档涵盖每个接口的HTTP方法、URL路径、请求参数、响应格式、错误处理等关键信息,帮助开发者快速集成草稿管理系统。

核心接口概览

草稿管理接口遵循RESTful设计原则,提供简洁明了的三个核心API:

graph TB
Client["客户端"] --> Create["创建草稿<br/>POST /v1/create_draft"]
Client --> Save["保存草稿<br/>POST /v1/save_draft"]
Client --> Get["获取草稿文件<br/>GET /v1/get_draft"]
Create --> Service1["服务层<br/>create_draft.py"]
Save --> Service2["服务层<br/>save_draft.py"]
Get --> Service3["服务层<br/>get_draft.py"]
Service1 --> Cache["缓存<br/>draft_cache.py"]
Service2 --> Cache
Service3 --> Config["配置<br/>config.py"]
Cache --> FS["文件系统<br/>DRAFT_DIR"]
Config --> FS

接口详细说明

接口一:创建草稿

  • HTTP方法与路径
    • POST /openapi/capcut-mate/v1/create_draft
  • 功能描述
    • 基于模板初始化剪映草稿项目,支持自定义画布宽高
    • 返回草稿URL和帮助文档URL
  • 请求参数
    • width:数字,≥1,默认1920
    • height:数字,≥1,默认1080
  • 响应字段
    • draft_url:草稿URL,形如".../get_draft?draft_id=2025..."
    • tip_url:帮助文档URL
  • 错误处理
    • 400:参数类型错误或越界
    • 500:内部错误
    • 503:服务不可用

创建草稿工作流程

flowchart TD
Start(["开始"]) --> Parse["解析请求参数<br/>width/height"]
Parse --> Validate{"参数合法?"}
Validate --> |否| ErrParam["返回400 参数错误"]
Validate --> |是| CopyTpl["复制模板到草稿目录"]
CopyTpl --> InitCanvas["设置画布尺寸"]
InitCanvas --> AddTrack["添加空主轨道"]
AddTrack --> Save["保存草稿"]
Save --> Cache["更新缓存"]
Cache --> BuildURL["生成草稿URL"]
BuildURL --> Done(["结束"])
ErrParam --> Done

接口二:保存草稿

  • HTTP方法与路径
    • POST /openapi/capcut-mate/v1/save_draft
  • 功能描述
    • 将当前编辑状态持久化到磁盘,确保内容不丢失
    • 通常在完成编辑操作后调用
  • 请求参数
    • draft_url:草稿URL,必填
  • 响应字段
    • draft_url:保存后的草稿URL
  • 错误处理
    • 400:缺少或格式无效的draft_url
    • 404:草稿不存在
    • 500:保存失败
    • 503:服务不可用

保存草稿工作流程

flowchart TD
Start(["开始"]) --> ParseURL["解析 draft_url 获取 draft_id"]
ParseURL --> CheckCache{"缓存中存在?"}
CheckCache --> |否| ErrNotFound["返回404 草稿不存在"]
CheckCache --> |是| Load["从缓存加载草稿对象"]
Load --> Save["调用 save() 持久化"]
Save --> Done(["结束"])
ErrNotFound --> Done

接口三:获取草稿文件列表

  • HTTP方法与路径
    • GET /openapi/capcut-mate/v1/get_draft
  • 功能描述
    • 获取指定草稿ID对应的所有文件列表
    • 用于草稿内容预览、文件管理和状态检查
  • 请求参数
    • draft_id:字符串,必填,长度20-32
  • 响应字段
    • files:文件URL列表(基于DOWNLOAD_URL拼接)
  • 错误处理
    • 400:缺少或格式无效的draft_id
    • 404:草稿不存在
    • 500:获取失败
    • 503:服务不可用

获取草稿文件列表工作流程

flowchart TD
Start(["开始"]) --> ValidateID["校验 draft_id 非空且长度20-32"]
ValidateID --> Exists{"草稿目录存在?"}
Exists --> |否| ErrNotFound["返回404 草稿不存在"]
Exists --> |是| Scan["遍历草稿目录获取文件列表"]
Scan --> BuildURL["批量生成下载URL"]
BuildURL --> Done(["结束"])
ErrNotFound --> Done

草稿URL生成规则

文件结构说明

  • 草稿目录结构
    • output/draft/{draft_id}/
    • draft_info.json:模板元信息
    • draft_content.json:内容脚本
    • 其他素材与配置文件
  • 模板来源
    • template/default2/为初始模板目录
    • 创建时复制到草稿目录
  • 双文件兼容模式
    • draft_info.json和draft_content.json同步更新
    • 确保数据一致性

最佳实践

  • 参数验证
    • 确保width和height为正整数
    • 建议使用常见视频分辨率
  • 调用顺序
    • 先调用创建草稿,再进行编辑操作
    • 频繁保存,避免中途断电或异常丢失
  • 性能考虑
    • 避免超高分辨率导致性能问题
    • 高分辨率草稿占用更多存储空间
  • 并发控制
    • 避免并发保存同一草稿
    • 保存后及时清理缓存中不再使用的草稿

错误码对照表

错误码 错误信息 描述 解决方案
400 width必须大于等于1 宽度参数非法 提供≥1的宽度值
400 height必须大于等于1 高度参数非法 提供≥1的高度值
400 参数类型错误 参数类型不正确 确保width和height为数值类型
400 draft_url是必需的 缺少draft_url参数 提供有效的draft_url
400 draft_id长度不在范围内 draft_id长度不符合要求 确保draft_id长度为20-32字符
404 草稿不存在 指定草稿无法找到 确认draft_url或draft_id正确性
500 草稿创建失败 内部服务错误 联系技术支持
500 保存失败 保存操作失败 联系技术支持或稍后重试
500 获取文件列表失败 获取文件列表失败 联系技术支持或稍后重试
503 服务不可用 系统维护 稍后重试
相关文章
|
5月前
|
Linux API Docker
【开源剪映小助手】配置与部署
本文档面向运维与开发人员,系统介绍 capcut-mate 的配置、部署与运维实践。涵盖Python+FastAPI架构、跨平台(Win/Linux)支持、Docker容器化、腾讯云COS集成、CI/CD自动化及性能优化等核心内容,助力快速稳定上线。(239字)
|
Android开发 iOS开发 MacOS
APP备案公钥、证书MD5指纹/签名MD5值获取最简单方法
APP备案公钥、证书MD5指纹/签名MD5值获取方法,Android安卓平台、Windows平台、macOS平台,三个平台获取方法, Android平台使用 APP备案助手,各大安卓应用市场搜索 APP备案助手 即可,Windows/macOS平台使用jadx-gui工具。
11190 3
|
Java Linux 程序员
linux实现定时备份文件到百度网盘详细教程
作为一个程序员,数据备份尤为重要,本文主要介绍的是将服务器上的某文件定时备份到百度网盘中。主要实现思路是:安装pip、byp --&gt; 百度网盘进行授权登陆 --&gt; 使用crontab+bypy实现定时自动数据备份。
2827 0
|
5月前
|
Linux 测试技术 开发者
【开源剪映小助手】开发者指南
capcut-mate 是开源剪映自动化工具,基于 FastAPI + Electron 构建,支持跨平台草稿管理、媒体处理与视频导出。采用分层架构、条件依赖与优雅降级机制,确保 Windows/Linux 兼容性与一致开发体验。(239字)
|
1月前
|
人工智能 运维 Linux
凌晨告警不再慌!SysOM 巡检 Skill 一键锁定根因
凌晨两点被叫醒,还要花 40 分钟拼出根因?阿里云操作系统控制台发布的 SysOM 巡检 Skill,沉淀了内核专家的排查经验,37 秒即可生成报告,巡检发现问题后自动衔接诊断、精准定位根因。目前 SysOM 巡检 Skill 已开源,一行命令即可立即上手,欢迎体验。
186 10
|
5月前
|
JSON 前端开发 中间件
【开源剪映小助手】API 接口文档
CapCut Mate 是基于 FastAPI 构建的剪映自动化 API,提供草稿管理、媒体添加、特效/字幕/贴纸应用、时间线计算及云端渲染等 RESTful 接口,遵循 OpenAPI 规范,支持中英文双语文档与完整错误处理。(239字)
1884 0
|
1月前
|
SQL 关系型数据库 MySQL
UNION vs UNION ALL:一个“ALL”字,性能差了一个数量级
UNION和UNION ALL的区别很多人知道,但INTERSECT和EXCEPT的执行机制、性能差异,以及如何用JOIN和子查询替代,很多人并不清楚。本文从集合操作的执行计划出发,拆解UNION去重的“隐形代价”、INTERSECT与INNER JOIN的本质差异、EXCEPT与NOT EXISTS的性能对比,并通过真实案例展示集合操作在业务场景中的正确用法与避坑指南,帮助读者从“会写集合操作”升级到“理解集合操作的底层逻辑”。
|
1月前
|
存储 固态存储 关系型数据库
DBA凌晨查账单:每月5万的云数据库竟有一半在空转,我的六个优化动作和数据验证
从一次真实的云数据库成本优化复盘出发,分享实例规格合理选型、冷热数据分层、存储压缩、弹性伸缩策略、清理历史数据、预留实例规划六个关键步骤,附优化前后的成本对比数据和操作要点。
|
3月前
|
监控 中间件 API
【剪映小助手】音频时间线计算接口(Audio Timelines)
音频时间线计算接口用于草稿自动化中音视频时序分析,依赖requests、subprocess、Pydantic等模块,支持并发处理、流式下载与断点续传。含参数校验、错误重试及自动清理机制,OpenAPI为准。
230 12

热门文章

最新文章