进入资源中台

输入部署时配置的管理员密钥。密钥只保存在当前浏览器会话。

资源中台概览

资源收集与业务系统调用驾驶舱
接入业务系统
--
有效租户
收集资源总数
--
累计统一资源
业务调用量
--
资源 API + 媒体
平均响应时间
--
所选周期全部业务请求

调用趋势

资源 API图片调用视频调用

资源构成

业务系统调用排行 按调用量排序
业务系统调用次数成功率平均响应
暂无调用数据

全量采集任务与缺口

有界元数据遍历 · 不下载视频 · AIKO 采用和发布独立操作
上游尚未提供完整快照合同,authority_complete 始终为 false。观察至某时点、遍历末页、成功状态或零缺口均不等于权威全库完整;缺席不会触发下架。

创建冻结范围

持久任务(每批 50 条)

任务来源 / 类型状态 / 安全码版本完整性操作

资源同步中心

统一管理 Plexadel 黑料库、黑料短剧、无界资源与老司机资源库
黑料库 · Plexadel
黑料短剧
无界资源
老司机资源库

来源配置

启用自动同步

新建同步

从上游抓取最新一批资源,自动写入中台资源库。

同步批次
批次来源 / 方式进度状态更新时间操作
暂无同步批次

媒体准备任务

显式选择单个资源版本与资产;完成表示中央与双网关包安装,不代替业务采用或发布

新建受控任务

先在资源详情核对 source_instance_id、id、content_hash 与 blocks 的 asset_id / cover_asset_id。预算、许可、来源域名、路径和执行程序由受保护 profile 固定,网页不能修改。

最近任务(最多50条;更早任务按原ID查询)
操作 / 资产模式 / 状态尝试 / 双节点进度更新操作
暂无任务

原操作恢复

运行进程中断后由租约接管同一操作。结果未知或单节点失败时,先查看原ID,再点“原ID重试”;原 CLI journal 会对账,不换资产、不重建许可或自动选 latest。配置、二进制或身份摘要变化需要复核,禁止通过覆盖原 profile 强行重试。未配置队列时保留停用状态。

资源管理

检查中台已拉取的标题、缩略图、媒体组成及源数据
黑料库 · Plexadel
黑料短剧
无界资源
老司机资源库
暂无资源

接入运维

采集与后台、独立签发、主备媒体网关分别观测
中台持续维护来源;业务方手动选取、复审与采用。这里只验证中台合同与媒体准备,不代表真实业务站已迁移。容量仅本机基线,真实峰值及独立故障域未证明。

告警汇总

运行健康与材料ACK

健康、版本及连接指标来自独立实时探测;ACK是材料安装证据。带宽由同进程连续两次刷新累计字节计算,不是链路峰值验收。

服务 / 节点实际探测运行版本连接 / 传输安全材料ACK

来源与历史刷新覆盖

来源实例成功核对 / 库存最旧核对滞后当前批次支持类型与限制

逐版本与分集准备

纯正文须本站材料与中央正文租约。清理只检查资格,不执行物理删除。

安全策略与复审代次

恢复只解除中台拒绝,不代替业务复审。媒体恢复必须重新核实真实包和上游就绪状态;已撤销Key永久失效。
主体策略复审代次操作

最近管理审计

时间操作目标版本 / 结果

租户与 API Key

为每个业务方创建独立访问密钥和来源权限

接入权限管理

新接口实例、能力和用途各自显式授权;旧 /v1 权限保留独立范围。修改使用当前policy_revision,过期页面会被拒绝。

租户 / 版本角色 / 状态实例范围能力 / 用途管理

兼容入口:仅创建新的旧 /v1 租户

API Key 仅显示一次

请立即复制并安全交给业务后端,关闭或刷新页面后无法再次查看。

接口文档

业务后端通过统一 API 拉取黑料库、黑料短剧、无界与老司机资源

新接入合同

新站点使用 /api/v1/catalog、引用与受控播放入口。source_link 模式由业务后端鉴权并流式转发清单、KEY 和分片,中台不落盘存储视频;媒体网关属于独立显式模式。旧 /v1 兼容既有租户。

接口冻结合同、来源能力、引用、中央租约与网关运行限制见交付接入包。运维控制台展示的媒体准备不能代替本站复审与租约准备。

旧接口接入流程(兼容)

  1. 管理员在“租户与 API Key”创建业务方密钥,并勾选允许访问的来源。
  2. 业务后端使用 Authorization: Bearer <API_KEY> 调用资源中台。
  3. 首次调用增量接口时不传 cursor,之后原样保存并回传 next_cursor。
  4. 业务后端保存统一资源,前端只使用审核上架后的数据和块内 media_url。

API Key 只放业务后端,禁止写入网页、App 或小程序前端代码。

公共接口

GET /v1/sources
查询当前租户被授权的来源:black、black-drama、wujie、lsj。黑料短剧须单独授权。
GET /v1/resources?source=black-drama&limit=50
按黑料短剧来源读取已同步剧目。
GET /v1/resources?source=lsj&limit=50
浏览最近资源。source 支持逗号分隔;limit 默认 50、最大 200。
GET /v1/resources/{id}?include=source_payload
按统一 ID 获取详情;仅排查上游数据时增加 include=source_payload。
GET /v1/changes?source=black,wujie,lsj&limit=100&cursor=...
首次全量及后续增量同步。limit 默认 100、最大 500;cursor 必须原样传回。
GET /v1/media/{token}
读取块内 media_url 或 cover_url 指向的图片、HLS 视频和音频;业务方不要自行拼接媒体地址。

统一资源契约

id
black/wujie:source:<source_id>;黑料短剧:black-drama:<postId>;老司机:lsj:<content_type>:<source_id>。
source / source_id / content_type
黑料短剧 content_type 固定为 movie;老司机取值:movie / post / novel / audio / comics。
title / summary / tags / status / version
清洗后的标题、摘要、标签、状态及内容版本。
source_updated_at / fetched_at
上游更新时间与中台拉取时间,均为 Unix 秒。
blocks[]
按上游顺序返回;type=text / image / video / audio。
blocks[].text / asset_id / media_url / cover_asset_id / cover_url
文本块读取 text;媒体块直接使用 media_url,视频或音频封面使用 cover_url。
blocks[].episode_number / ready
黑料短剧每集均为 video:asset_id 为源集标识,episode_number 为上游 ord + 1,保留集号空洞;text 为源标题或第 N 集。ready=false 时保留分集但不返回 media_url。详情封面字段为空时,中台不自动生成封面;按准确帖子与视频身份获取来源真实 poster,未就绪或受限项保留复核状态。

老司机增量同步示例

curl 'https://endoroot.com/v1/changes?source=lsj&limit=100' \
  -H 'Authorization: Bearer <API_KEY>'

# 下一页:保存上次响应 data.next_cursor,并原样传回
curl 'https://endoroot.com/v1/changes?source=lsj&limit=100&cursor=<NEXT_CURSOR>' \
  -H 'Authorization: Bearer <API_KEY>'

统一响应

{
  "success": true,
  "data": {
    "items": [{
      "id": "lsj:movie:资源ID",
      "source": "lsj",
      "source_id": "资源ID",
      "content_type": "movie",
      "title": "资源标题",
      "blocks": [
        {"type": "text", "text": "正文"},
        {"type": "image", "media_url": "https://endoroot.com/v1/media/..."},
        {"type": "video", "media_url": "https://endoroot.com/v1/media/...", "cover_url": "https://endoroot.com/v1/media/..."},
        {"type": "audio", "media_url": "https://endoroot.com/v1/media/...", "cover_url": "https://endoroot.com/v1/media/..."}
      ]
    }],
    "next_cursor": "不透明游标",
    "has_more": true
  },
  "request_id": "req-..."
}

错误响应统一返回 success=false、code、message、request_id;业务方应记录 request_id 便于排查。