API接入文档
仅包含「提交视频文案提取任务」与「查询任务状态和结果」两项接口说明
基础信息
Base URL:https://api.anytocopy.com/vip/open-api/v1
如你的网关未使用 /prod-api 前缀,请将 Base URL 调整为实际可访问地址。
鉴权请求头(Header)
X-API-Key: your_api_key
X-API-Secret: your_api_secret提交视频文案提取任务
提交作品链接并创建提取任务,返回 taskId 用于后续查询
Endpoint
https://api.anytocopy.com/vip/open-api/v1/video/extract
请求参数
- workUrl:作品链接(支持抖音、小红书等)
curl 示例
curl -X POST 'https://api.anytocopy.com/vip/open-api/v1/video/extract?workUrl=https://v.douyin.com/xxx&taskType=TEXT' \
-H 'X-API-Key: your_api_key' \
-H 'X-API-Secret: your_api_secret'响应示例
1. 创建成功
{
"msg": "任务已提交",
"code": 200,
"data": "2008802706718072832"
}2. 创建失败
{
"msg": "您的并发任务已达上限(5/5),请等待任务完成后再试",
"code": 500
}查询任务状态和结果
根据 taskId 查询任务进度与结果
Endpoint
https://api.anytocopy.com/vip/open-api/v1/video/query
请求参数
- taskId:任务ID
任务状态: WAITING / PROCESSING / SUCCESS / FAILED
curl 示例
curl -X GET 'https://api.anytocopy.com/vip/open-api/v1/video/query?taskId=1734422400000001' \
-H 'X-API-Key: your_api_key' \
-H 'X-API-Secret: your_api_secret'响应示例
1. 任务完成
{
"msg": "操作成功",
"code": 200,
"data": {
"taskId": "2008802706718072832",
"title": "小个子女生如何逆袭第一眼大美女",
"content": "#听劝改造[话题]# #如何找到自己的风格",
"videoUrl": "https://sns-video-bd.xhscdn.com/f0370019b934b9b6e_258.mp4",
"videoUrlList": [
"https://sns-video-bd.xhscdn.com/stream/79258.mp4"
],
"imageUrlList": [
"https://ci.xiaohongshu.com/1040g2sg31r0hdqhjnge05q"
],
"cover": "https://ci.xiaohongshu.com/1040g2sg31r0hdqhjnge05",
"textContent": "小个子女生真的不要再和别人卷身高上的天赋...",
"platform": "xhs",
"audioUrl": "https://pub-6026ae78487b47e5bd4a5b8a0d9ae5aa.r2.dev/audio.mp3",
"duration": 156.36,
"workType": "video",
"status": "SUCCESS",
"errorMessage": "视频处理成功!",
"createBy": "60227",
"createTime": "2026-01-07 15:27:42"
}
}2. 任务执行中
{
"msg": "操作成功",
"code": 200,
"data": {
"taskId": "2008805155734429696",
"title": "今日摘抄,不知道原创是谁,太多了",
"content": "今日摘抄,不知道原创是谁,太多了,可以在",
"videoUrl": "https://sns-video-qc.xhscdn.com/stream/79/258.mp4",
"videoUrlList": ["https://sns-video-qc.xhscdn.com/stream/79/258.mp4"],
"imageUrlList": ["https://ci.xiaohongshu.com/spectrum/1040g0k031qo"],
"cover": "https://ci.xiaohongshu.com/spectrum/1040g0k031qoj7pr9gm905",
"textContent": "",
"platform": "xhs",
"audioUrl": null,
"duration": null,
"workType": "video",
"status": "WAITING",
"errorMessage": "作品内容提取中...",
"createBy": "60227",
"createTime": "2026-01-07 15:37:26"
}
}3. 任务失败
{
"msg": "操作成功",
"code": 200,
"data": {
"taskId": "2008805155734429696",
"title": "今日摘抄,不知道原创是谁,太多了",
"content": "今日摘抄,不知道原创是谁,太多了,可以在",
"videoUrl": "https://sns-video-qc.xhscdn.com/stream/79/258.mp4",
"videoUrlList": ["https://sns-video-qc.xhscdn.com/stream/79/258.mp4"],
"imageUrlList": ["https://ci.xiaohongshu.com/spectrum/1040g0k031qo"],
"cover": "https://ci.xiaohongshu.com/spectrum/1040g0k031qoj7pr9gm905",
"textContent": "",
"platform": "xhs",
"audioUrl": null,
"duration": null,
"workType": "video",
"status": "FAILURE",
"errorMessage": "任务执行失败",
"createBy": "60227",
"createTime": "2026-01-07 15:37:26"
}
}响应状态码说明
| 状态码 | 说明 | 场景 |
|---|---|---|
| 200 | 成功 | 任务创建成功或查询成功 |
| 500 | 失败 | 并发任务已达上限或其他错误 |
任务状态说明
| 状态值 | 说明 | 处理建议 |
|---|---|---|
| WAITING | 任务等待中或处理中 | 继续轮询查询任务状态 |
| SUCCESS | 任务执行成功 | 可获取完整的提取结果数据 |
| FAILURE | 任务执行失败 | 检查 errorMessage 字段获取失败原因 |
接口使用流程
推荐的接口调用流程和最佳实践
1
提交任务
调用 POST /video/extract 接口,传入作品链接。成功后会返回 taskId,用于后续查询。
2
轮询查询
使用返回的 taskId 调用 GET /video/query 接口。建议每隔 3-5秒 查询一次任务状态。
3
处理结果
当 status 为 SUCCESS 时,获取完整的提取结果(标题、正文、视频、音频等)。 若为 FAILURE,检查 errorMessage 了解失败原因。
最佳实践建议
- • 轮询间隔建议 3-5 秒,避免过于频繁请求
- • 设置最大轮询次数(如 60 次),避免无限轮询
- • 妥善保管 API Key 和 Secret,不要泄露到客户端
- • 处理好并发限制,合理安排任务提交
响应字段说明
| 字段名 | 类型 | 说明 |
|---|---|---|
| taskId | String | 任务唯一标识 |
| title | String | 作品标题 |
| content | String | 作品正文内容 |
| textContent | String | 视频语音转文字文案(任务完成后) |
| videoUrl | String | 视频下载链接(无水印) |
| audioUrl | String | 音频文件链接(任务完成后) |
| imageUrlList | Array | 图片链接列表 |
| cover | String | 封面图片链接 |
| platform | String | 平台标识(xhs、douyin 等) |
| duration | Number | 视频时长(秒) |
| workType | String | 作品类型(video、image) |
| status | String | 任务状态(WAITING、SUCCESS、FAILURE) |
| errorMessage | String | 状态描述或错误信息 |