Apinoa Docs

Posts

列出 YouTube 视频:某频道的上传、一次搜索、某话题标签、相关视频,或热门榜单。

查看原始 .mdx
GET | POST /v1/youtube/posts

参数可以用 GET 的查询字符串发送,也可以用 POST 的 JSON 请求体发送,两者等价。

传入内容

传入读取内容说明
username 或 userId某频道的上传type:videos(默认)、shorts、live、community
query视频搜索type:videos(默认)或 shorts
hashtag某话题标签下的视频
relatedToYouTube 在某个视频旁推荐的视频
不传热门榜单country(默认 US);2 个单位

每次调用只传一个来源。所有标识符也都接受页面 URL。

参数

参数类型必填说明
countrystringDefault feed only: the country whose trending feed to read (ISO alpha-2, default US).
cursorstringOpaque cursor from the previous page's cursor. Pass it alone for the next page.
hashtagstringVideos under a hashtag, with or without #.
querystringSearch videos by keyword.
relatedTostringA video id or URL; returns the videos YouTube recommends beside it.
typeenumusername/userId: which channel tab — videos (default), shorts, live or community · query: videos (default) or shorts. videos shorts live community
userIdstringChannel id (UC…).
usernamestringChannel @handle (with or without @), or the channel URL (/@handle, /channel/UC…, /c/…, /user/…).

请求

curl "https://gateway.apinoa.com/v1/youtube/posts?username=%40mkbhd&type=shorts" \
  -H "x-api-key: $APINOA_API_KEY"

响应

在 data 中返回 Post Page。 真实响应的节选:数组只保留前几项,长文本已截断。

{
  "success": true,
  "data": {
    "platform": "youtube",
    "items": [
      {
        "platform": "youtube",
        "id": "_4ELeWAgMwo",
        "url": "https://www.youtube.com/watch?v=_4ELeWAgMwo",
        "author": {
          "platform": "youtube",
          "id": "UCBJycsmduvYEL83R_U4JriQ",
          "handle": "mkbhd",
          "displayName": "Marques Brownlee",
          "url": "https://www.youtube.com/channel/UCBJycsmduvYEL83R_U4JriQ",
          "avatarUrl": "https://yt3.googleusercontent.com/qu4TmIaYUlS41-dJ9gZ7DUR3nilvmB5_11i6OKSdvNnBNiyOusZP1bMN6ICnuxtjFBb6ioKgRQ=s900-c-k-c…"
        },
        "title": "ASMR iPhone Duo Unboxing",
        "media": [
          {
            "type": "video",
            "url": "https://www.youtube.com/watch?v=_4ELeWAgMwo",
            "thumbnailUrl": "https://i.ytimg.com/vi/_4ELeWAgMwo/oar3.jpg?sqp=-oaymwEdCJUDENAFSFWQAgHyq4qpAwwIARUAAIhCcAHAAQY=&rs=AOn4CLDEzqDprq0dEj0…"
          }
        ],
        "metrics": {
          "views": 2100000
        },
        "ext": {
          "isShort": true
        }
      }
    ],
    "cursor": "4PUpJI-hNYFf8QYTuifBDYgNyLZERTjzoZKnbWwvxtxd6TFzjKx55Gw3YS9-IN4MUE1IAmpHzO19I7UGyZlIYr_d0r7eOHkiDMA6R0H8z6gujuSriodxpkF…"
  }
}

错误

状态代码含义
400INVALID_CURSOR该 cursor 不是本操作返回的。请不带它重新开始。
400INVALID_PARAMS参数缺失、未知或超出范围。消息中会指出是哪一个。
401UNAUTHORIZED缺少 x-api-key 请求头,或密钥已吊销或未知。
402INSUFFICIENT_BALANCE余额不足以支付本次调用。请在控制台充值。
404NOT_FOUND账号、帖子或分组不存在,或为私密、已删除、有年龄限制。
429MARKETPLACE_SATURATED并发调用过多。请等待 Retry-After 秒后重试。
502UPSTREAM_ERROR平台返回了无法使用的内容。请退避后重试。

全部错误代码见 Errors。失败的调用不计费。

价格

价格 每次调用 $0.001,每多一次调用加 $0.001——最多再加 1 次,合计最多 $0.002。标价;单日调用超过 1,000 次后单价下调。

本页内容