AniBT Wiki
公开 API

删除番剧发布

DELETE /api/releases/{releaseId} —— 删除番剧发布;GET …/deletion 查状态。

只支持 rel_*。要求 releases:delete。无 query、无请求体。

DELETE /api/releases/{releaseId}

鉴权 · releases:delete

最多等待约 2 秒:完成返回 200,否则 202。重复 DELETE 幂等。

GET /api/releases/{releaseId}/deletion

鉴权 · releases:delete

查询同一删除回执。未知、从未删除或无权一律 404。

202 只表示已受理。只有 completed 才表示站内公开面已不可见。不召回已下载内容、Tracker 和外站帖子。

releaseId^rel_[A-Za-z0-9_-]+$,5–100 字符。普通成员只能删自己的发布;owner / admin 可删本组任意发布。无权与不存在一样返回 404。Key 不能跨组删除。scope 上线前的旧 Key 仅有 releases:publish,用 /me 检查 scopes

完整字段见 接口参考

DELETE + 轮询
release_id='rel_example'
base='https://anibt.net'

response=$(curl -sS -X DELETE \
  -H "Authorization: Bearer $ANIBT_API_KEY" \
  "$base/api/releases/$release_id")

while [ "$(jq -r '.result.state // .error.details.state // empty' <<<"$response")" = "pending" ]; do
  sleep 2
  response=$(curl -sS \
    -H "Authorization: Bearer $ANIBT_API_KEY" \
    "$base/api/releases/$release_id/deletion")
done

jq . <<<"$response"
state做什么
pendingRetry-After 继续轮询
completed停止
failed停止自动重试,记录 failure.codeX-Request-ID

pendingRetry-After 是轮询建议。真正超限返回 429。响应 private, no-store,不要缓存回执。被 tombstone 覆盖的 releaseId 不能复用。若对象仍被另一条 live release 引用,返回 409 / RELEASE_OBJECT_SHARED

HTTP处理
400去掉请求体
401检查 Bearer / X-API-Key
403改用含 releases:delete 的 Key
404不存在,或无权;两者不可区分
409先解除共享对象引用
422只传规范 rel_* 路径,不要加 query
429Retry-After 退避
500DELETE 观察到终态失败。保存回执和 X-Request-ID,停止盲目重试

GET 读取已失败操作仍返回 200state=failed。再次 DELETE 终态失败映射为 500