发出第一次请求

四步,不用读完整本手册。先要一个免费账号,只要一个邮箱。

1选接入方式

大多数开发者从 REST API 开始。

AI / Agent MCP 还没有。现在可以用提示词让 AI 帮你写 REST 调用。

2拿到 API 密钥

免费注册,只要一个邮箱。密钥只显示一次,我们不存原文。

每月 1,000 次请求、每分钟 10 次、最多 5 把密钥。不用银行卡,不发验证邮件。

  • 放进环境变量,例如 TEXTFROM_API_KEY。
  • 不要提交到仓库、放进网址,或贴进聊天和 AI 提示词。
  • 泄露了:到控制台撤销它,再新建一把。

3发出第一次请求

填一个你有权使用的视频和能接受的语言,下面的代码会跟着变。

用你自己的或已获授权的视频。留空会保留占位符 VIDEO_ID。

按这个顺序依次找,不会加你没写的语言。

json、text、srt、vtt 都支持。

将密钥放进 TEXTFROM_API_KEY 环境变量。每次请求计入每月的 1,000 次。选定域名后服务地址可能变化。

需要译文?在取字幕的请求里加 translate=zh(或 es、fr、ja 等语言代码)。这是免费的机器翻译,质量有波动,字幕会合并成约 240 字的段落返回(delivered.source 是 “translated”,delivered.segmentation 是 “merged”)。每次计 1 次请求,外加每月翻译额度里的 1 次。超过约 10 分钟的视频会返回 translation_too_long,中文译文可能混用简体和繁体;翻译失败就是报错,不会给你原文。字幕本来就是目标语言时原样返回。

4读懂结果和错误

成功 = 拿到了你列表里某个语言的轨。先看这两个字段。

示例成功 · 200
{ "data": {
    "requested": { "lang": ["en-US","en"] },
    "delivered": { "lang": "en",
                   "kind": "auto" },
    "segments": [ … ] },
  "meta": { "request_id": "req_example_01" } }
示例出错 · 404
{ "error": {
    "category": "verdict",
    "code": "language_not_available",
    "retryable": false,
    "details": { "available": [ … ] } },
  "meta": { "request_id": "req_example_02" } }
  • language_not_availableverdict · 404
    视频没有你列出的语言。看 details.available,自己决定改哪个语言;我们不会替你换。不要原样重试。
  • no_captions
    video_unavailable
    video_restricted
    verdict · 404
    视频确实没有字幕,或者视频不可用、受限制。换一个视频;不要重试。
  • upstream_error
    upstream_refused
    transport · blocked · 503
    临时故障,不是“没有字幕”。等 Retry-After 指定的秒数再重试;不要连续猛刷。
  • not_supportedunsupported · 400
    这个请求我们做不到,例如语音转写,或译文的原语言翻译器不认识。去掉那个选项;重试没用。
  • translation_too_longinvalid_request · 400
    这个视频太长,没法一次翻译完。请直接取原语言字幕,或换短一点的视频。
  • rate_limit_exceededaccount · 429
    每分钟超过 5 次。等 Retry-After 指定的秒数再发。
  • quota_exceededaccount · 429
    本月的 1,000 次用完了,下月 1 日 UTC 00:00 重置。Retry-After 会告诉你还要等多少秒。
  • translation_quota_exceededaccount · 429
    本月的翻译额度用完了,下月 1 日 UTC 00:00 重置。不翻译的字幕请求照常可用。
  • capacity_exhaustedquota · 503
    试用期间所有人共用的当天总量用完了。稍后再试;Retry-After 会给出等待时间。这不是你的额度问题。
  • invalid_tokenunauthorized · 401
    密钥缺失、写错或已撤销。检查请求头 Authorization: Bearer 和环境变量;不要把密钥贴给任何人或对话。
空结果或未知结果,不等于“没有字幕”。 只有明确的结论才说视频没有字幕。报告问题时带上 request_id。

第一次请求跑通了,接下来?

到控制台看本月用了多少次,管理你的密钥。

打开控制台