Webhooks
Webhooks 让 VoiceCheap 能够在发生情况时立即通知您的服务器,因此您可以停止轮询GET /v1/translate/{projectId}/status.
每次投递只尝试一次,不会重试。对于不能错过的事件,请继续轮询状态。
设置
- 在您的 VoiceCheap 账户中打开 API 页面。
- 在 Webhook 中选择 生成签名密钥。以
whsec_开头的密钥只会显示一次;请复制并保存在您的服务器上。 - 在 端点 URL 中输入
httpsURL,然后选择 保存。
Webhook URL 必须使用 443 端口的 HTTPS,并解析到公共网络地址。包含凭据或片段的
URL、私有或保留地址以及重定向均会被拒绝。此规则适用于账户端点和项目级覆盖 URL。
webhooks_get、webhooks_update 和 webhooks_delete。webhooks_create_secret 只能通过 REST 操作 API 使用。收到签名密钥后请妥善保存;MCP 无法执行此操作,也无法轮询其结果。
按请求覆盖端点
POST /v1/translate 和 POST /v1/projects 接受一个可选的 webhookUrl 字段,该字段仅覆盖
该项目的账户端点。这对于将暂存流量发送到其他地方非常方便:
您还可以在 POST /v1/projects/{projectId}/dub 中设置 webhookUrl,更新现有项目的投递地址。
事件
没有单独的转录事件。创建项目的请求会在转录完成前返回。
project.created 只在转录保存后发送;此时可通过 POST /v1/projects/{projectId}/transcript 获取转录。有效载荷
每次交付都是一个带有 JSON 主体的POST:
有效载荷特意保持精简。请调用 REST API 获取内容本身。
验证签名
每次交付都带有以下标头:
签名涵盖了
<timestamp>.<raw body>,因此在每次交付时都不同,并证明了
请求来自 VoiceCheap 且主体在传输过程中未被修改。
响应
回复任何2xx 状态以进行确认。请在 10 秒内 回复 — 先确认并
在之后执行工作,而不是在回复之前进行处理。
非 2xx 响应或超时将被记录为交付失败,目前不会重试。

