视频详情

读取已存储的单个视频快照;不会触发 YouTube 实时抓取。

GET
https://api.shortsmonkey.com/v1/videos/abc123

找到视频时扣 1 Credit

视频详情#

读取已存储的单个视频快照;不会触发 YouTube 实时抓取。

鉴权#

发送 Authorization: Bearer sm_live_...。完整 Key 不能放在 URL、Cookie、请求体、日志或 Analytics 中。

数据新鲜度#

榜单只读取 Worker 发布的稳定 Snapshot。公开读取绝不会触发 YouTube 刷新。

接口请求#

项目说明
请求方法GETHTTP 请求方法
完整 URLhttps://api.shortsmonkey.com/v1/videos/abc123生产环境 API 地址
鉴权Authorization: Bearer sm_live_...完整 Key 仅放在 Header 中
内容类型无请求体GET 请求没有请求体
计费找到视频时扣 1 Credit错误响应消耗 0 Credits

请求参数#

参数名位置类型必填默认值取值或限制说明
video_idPathstring6–32 个 URL-safe 字符已存储的 YouTube 视频 ID;不存在时返回 404 且不扣费

成功返回字段#

all_data 是稳定 Snapshot 中未应用请求筛选的全部数据页;filter_data 是同一 Snapshot 应用本接口默认条件及用户参数后的数据页。两组数据各自分页。

字段路径使用点号表示嵌套对象,[] 表示数组元素。订阅者数未知时返回 null,并设置 subscriber_count_hidden: true。单次请求按两组实际返回条数中的较大值结算一次,不相加重复计费。

字段路径类型可为空说明
data.all_data.itemsarray<object>未应用请求筛选的当前页视频列表
data.all_data.items[].video_idstringYouTube 视频 ID
data.all_data.items[].titlestring视频标题
data.all_data.items[].video_urlstringYouTube 视频地址
data.all_data.items[].channel.idstring频道 ID
data.all_data.items[].channel.titlestring频道名称
data.all_data.items[].channel.subscribersinteger频道订阅数;隐藏时为 null
data.all_data.items[].channel.subscriber_count_hiddenboolean订阅数是否隐藏
data.all_data.items[].viewsinteger播放量快照
data.all_data.items[].views_to_subscribers_rationumber播放订阅比
data.all_data.items[].opportunity_scorenumber机会分数
data.all_data.items[].duration_secondsinteger视频时长,单位为秒
data.all_data.items[].published_atstring(date-time)视频发布时间,UTC ISO 8601
data.all_data.items[].snapshot_atstring(date-time)数据采集时间
data.all_data.items[].nichestring赛道或分类
data.all_data.items[].trackstring数据赛道标识
data.all_data.items[].regionstring地区代码
data.all_data.items[].reasonsarray<string>入榜原因
data.all_data.items[].video_typestringshortslong
data.all_data.next_cursorstring本结果集的下一页 Cursor;无下一页时为 null
data.filter_data.itemsarray<object>应用默认条件与请求筛选后的当前页视频列表
data.filter_data.items[].video_idstringYouTube 视频 ID
data.filter_data.items[].titlestring视频标题
data.filter_data.items[].video_urlstringYouTube 视频地址
data.filter_data.items[].channel.idstring频道 ID
data.filter_data.items[].channel.titlestring频道名称
data.filter_data.items[].channel.subscribersinteger频道订阅数;隐藏时为 null
data.filter_data.items[].channel.subscriber_count_hiddenboolean订阅数是否隐藏
data.filter_data.items[].viewsinteger播放量快照
data.filter_data.items[].views_to_subscribers_rationumber播放订阅比
data.filter_data.items[].opportunity_scorenumber机会分数
data.filter_data.items[].duration_secondsinteger视频时长,单位为秒
data.filter_data.items[].published_atstring(date-time)视频发布时间,UTC ISO 8601
data.filter_data.items[].snapshot_atstring(date-time)数据采集时间
data.filter_data.items[].nichestring赛道或分类
data.filter_data.items[].trackstring数据赛道标识
data.filter_data.items[].regionstring地区代码
data.filter_data.items[].reasonsarray<string>入榜原因
data.filter_data.items[].video_typestringshortslong
data.filter_data.next_cursorstring本结果集的下一页 Cursor;无下一页时为 null
meta.request_idstring请求追踪 ID
credits.costinteger找到视频时为 1
credits.remaininginteger账户剩余 Credits
credits.period_ends_atstring(date-time)当前额度周期结束时间

分页与 Cursor#

limit 默认为 20,最大 50。all_data.next_cursor 传给 all_cursorfilter_data.next_cursor 传给 filter_cursor;两个 Cursor 独立、不透明、带签名并在 24 小时后过期,且始终读取同一 Snapshot。旧 cursor 仅作为 filter_cursor 的兼容别名。

ETag#

排行榜支持 If-None-Match。命中返回 304、X-Credits-Cost: 0,且不会重复执行。

错误与限流#

错误 Envelope 始终包含 code、固定英文 messagerequest_iddetails。429 与所有 4xx/5xx 都不扣 Credits。

HTTP 状态错误码原因处理建议
400INVALID_REQUEST参数格式、组合或范围错误根据 details.issues 修正参数
401INVALID_API_KEYKey 无效或已失效检查 Bearer Header 和 Key 状态
402SUBSCRIPTION_REQUIRED / CREDITS_EXHAUSTED订阅或 Credits 不可用检查套餐、余额和 Key 安全预算
429RATE_LIMITED速率或并发超限Retry-After 退避重试
503DATA_STALE / SERVICE_UNAVAILABLE数据或服务暂不可用稍后重试并保留 request_id
curl -X GET "https://api.shortsmonkey.com/v1/videos/abc123" \
  -H "Authorization: Bearer $SHORTSMONKEY_API_KEY"