开放 API

接口文档

贴一条链接,程序里直接取回成品。和网页共用同一个积分池,按条扣分,失败不扣。

一、鉴权

去「额度」页新建密钥,然后二选一放进请求头:

Authorization: Bearer cg_你的密钥
# 或者
X-API-Key: cg_你的密钥

密钥和取件码共用同一个积分池,所以 API 扣的就是你账户里的积分。密钥可随时吊销。

二、三个端点就够用
方法路径作用
POST/api/parse提交取件任务,立刻返回任务号
GET/api/job/{任务号}查进度和产物清单
GET/api/file/{任务号}/{文件名}下载产物
GET/api/meta价目表(免鉴权)
GET/api/jobs历史记录
三、完整跑一遍

提交任务:

curl -X POST https://你的域名/api/parse \
  -H "Authorization: Bearer cg_你的密钥" \
  -H "Content-Type: application/json" \
  -d '{"urls":["https://v.douyin.com/xxxx/"],"outs":["video","cover","transcript"]}'

返回(任务已排队,马上开始跑):

{"jobs":[{"id":"a1b2c3d4e5f6a7b8","url":"https://v.douyin.com/xxxx/"}]}

# B站同一套接口,直接把 url 换成 B站链接即可
-d '{"urls":["https://www.bilibili.com/video/BV1zqW765E2b"],"outs":["video","transcript"]}' 

轮询进度(建议 3 秒一次):

curl https://你的域名/api/job/a1b2c3d4e5f6a7b8 \
  -H "Authorization: Bearer cg_你的密钥"

状态到 done 就能下载了:

{
  "id": "a1b2c3d4e5f6a7b8",
  "status": "done",
  "cost": 5,
  "title": "作品标题",
  "artifacts": [
    {"kind":"video","name":"video.mp4","size":1795883},
    {"kind":"cover","name":"cover.jpg","size":65792},
    {"kind":"transcript","name":"transcript.srt","size":9633}
  ]
}

# 下载
curl -O https://你的域名/api/file/a1b2c3d4e5f6a7b8/video.mp4 \
  -H "Authorization: Bearer cg_你的密钥"

状态值:queued 排队中 · running 处理中 · done 全部完成 · partial 部分完成(看 failures)· failed 失败(不扣分)

四、Python 示例
import time, requests

BASE = "https://你的域名"
H = {"Authorization": "Bearer cg_你的密钥"}

r = requests.post(BASE + "/api/parse", headers=H, json={
    "urls": ["https://v.douyin.com/xxxx/"],
    "outs": ["video", "script", "transcript"],
}).json()
jid = r["jobs"][0]["id"]

while True:
    time.sleep(3)
    j = requests.get(BASE + "/api/job/" + jid, headers=H).json()
    if j["status"] in ("done", "partial", "failed"):
        break

print("扣分", j["cost"], "产物", [a["name"] for a in j["artifacts"]])

for a in j["artifacts"]:
    data = requests.get(BASE + "/api/file/%s/%s" % (jid, a["name"]), headers=H).content
    open(a["name"], "wb").write(data)
五、错误码
码含义怎么办
400参数不对(缺链接、选项不认识)看 detail 字段的说明
401密钥无效或已吊销重新建一个
402积分不足充值,或减少勾选项
404任务或文件不存在文件有保留期,过期需重新取
502上游源站异常链接可能失效或作品已删除
六、注意事项
  • 产物文件有保留期,取完请尽快下载到自己的存储。
  • 同一批里重复的链接会自动去重。
  • 只在成功产出后扣积分;解析失败、作品已删除、产物不存在都不扣。
  • 请遵守目标平台的服务条款与著作权规定,取回内容的使用责任由使用者承担。

完整价目见 积分与价目, 也可以直接 GET /api/meta 拿机器可读的价目表。