Reddit API

Reddit 搜索 API

按查询词在所有子版块中搜索 Reddit 帖子,可设置排序和时间范围。用 after 游标分页。

US$0.35/千次请求,按请求付费,无需订阅。

best mechanical keyboard : search
reddit.com/search/?q=best%20mechanical%20keyboard
redditLog InSign Up
PostsCommunitiesCommentsPeopleMediaRelevance
1,842

r/MechanicalKeyboards· Jun 12, 2024

What is the best mechanical keyboard under $150?

327 CommentsShareSave
CommentsShareSave
CommentsShareSave
API 返回的内容posts[0]
{
"id": "t3_1abc234",
"title": "What is the best mechanical keyboard under $150?",
"author": "keebenjoyer",
"score": 1842,
"numComments": 327,
"url": "https://www.reddit.com/r/MechanicalKeyboards/comments/1abc234/",
"permalink": "/r/MechanicalKeyboards/comments/1abc234/",
"createdUtc": 1718200000,
... 还有 7 个字段
}
可用率
99.54%
30d · 427,530 次调用
请求数
429,281
30d · 按周,近 12 周
响应时间
1.9s
中位数 · 30d

价格与服务商

Reddit 搜索 API 价格:一个 API,4 个可互换的服务商

最便宜的服务商优先响应。如果它失败,下一个会在同一次调用中接手。

你需支付
US$3.50
US$0.35/千次请求,只为实际用量付费。没有月度套餐。
有了 US$0.10 的初始余额,你的前 285 次请求免费。

试一试

一个请求获取 Reddit 搜索

requireFieldsarray
Optional; omit it and routing is unchanged, with the cheapest source serving. Name the output fields this request must be able to return, for example `nextCursor` or `media`, and it is served only by a source that returns every one of them. Fields you do not name are still returned whenever the serving source has them. This can raise your price: when the cheapest source cannot return a named field, a dearer source serves, and you are quoted and charged its price. Name `nextCursor` only if you will fetch more than the first page: when you leave it out, a cheaper source that cannot paginate may serve the request, and its nextCursor is null, so there is no next page to ask for. A named field can still be absent on a post that genuinely lacks it. Naming a combination that no single source returns together is refused as invalid input, with no charge. On a paginated walk it applies to the first page only; later pages stay with the source that page chose, at the price it was quoted.
打开于
获取免费密钥
示例响应
免费运行只返回前 3 条结果。为密钥充值即可获得完整响应。

这个示例展示了 25 个字段中的 13 个。查看全部字段

{
  "found": true,
  "data": {
    "posts": [
      {
        "id": "t3_1abc234",
        "title": "What is the best mechanical keyboard under $150?",
        "author": "keebenjoyer",
        "score": 1842,
        "numComments": 327,
        "url": "https://www.reddit.com/r/MechanicalKeyboards/comments/1abc234/",
        "permalink": "/r/MechanicalKeyboards/comments/1abc234/",
        "createdUtc": 1718200000,
        "subreddit": "MechanicalKeyboards"
      }
    ],
    "nextCursor": "t3_1abc234"
  }
}

完整的参数与响应参考:这个接口的每个字段、类型和示例。

参考

一个请求,一种响应结构。

你发送的每个字段和收到的每个字段,都附有真实示例。

最近验证于 2026-11-14 · 可用率和延迟按 30d 统计

请求体

JSON,POST 到这个接口。

  • querystring

    best mechanical keyboard

    在整个 Reddit 中进行自由文本搜索。字符串内支持 Reddit 的字段运算符:subreddit:<name> 限定到一个子版块,author:<user>、title:<text>、selftext:<text>、self:yes|no、nsfw:yes|no,以及布尔运算 AND/OR/NOT。要限定到单个子版块,可以在这里使用 subreddit:<name>,或用 reddit.subreddit_posts SKU 获取普通的子版块列表。

  • cursorstring

    Opaque pagination cursor from a previous response's nextCursor. Omit for the first page; pass it to fetch the next page of results. Include `nextCursor` in requireFields on the first request to make sure a source that supports pagination serves it.

  • requireFieldsarray

    Optional; omit it and routing is unchanged, with the cheapest source serving. Name the output fields this request must be able to return, for example `nextCursor` or `media`, and it is served only by a source that returns every one of them. Fields you do not name are still returned whenever the serving source has them. This can raise your price: when the cheapest source cannot return a named field, a dearer source serves, and you are quoted and charged its price. Name `nextCursor` only if you will fetch more than the first page: when you leave it out, a cheaper source that cannot paginate may serve the request, and its nextCursor is null, so there is no next page to ask for. A named field can still be absent on a post that genuinely lacks it. Naming a combination that no single source returns together is refused as invalid input, with no charge. On a paginated walk it applies to the first page only; later pages stay with the source that page chose, at the price it was quoted.

  • sortenum

    relevance

    结果排序方式。

  • timeframeenum

    month

    结果的时间范围。

你发送。 一个简短的 JSON 请求体。显示的值只是示例,请换成你自己的。

响应

JSON,每个字段一个示例值。

datadata
  • nextCursorstring可设为必填

    t3_1abc234

    Opaque cursor for the next page of posts, or null when this lane has no more. Pass it back as cursor to continue.

each postdata.posts[]

Populated whenever the provider has data for the entity.

  • authorstring

    keebenjoyer

    Author username, without the u/ prefix. Empty when the upstream omits it.

  • authorIdstring

    Reddit account ID of the author, without the t2_ prefix.

  • createdUtcnumber

    1718200000

    UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds.

  • idstring

    t3_1abc234

    Reddit post ID (base-36, without the t3_ prefix). Populated whenever the provider has data for the entity.

  • isArchivedboolean可设为必填

    True when Reddit has archived the thread, which blocks new comments and votes. Archiving is a per-community setting, so an old thread is not necessarily archived. Absent when the source that served this request does not report it, which means unknown rather than false.

  • isLockedboolean可设为必填

    True when a moderator has locked the thread, which blocks new comments. Absent when the source that served this request does not report it, which means unknown rather than false.

  • nsfwboolean

    Whether the post is marked not-safe-for-work.

  • numCommentsinteger

    327

    Total number of comments on the post.

  • permalinkstring

    /r/MechanicalKeyboards/comments/1abc234/

    Canonical reddit.com thread path for the post (e.g. "/r/golang/comments/abc123/..."). Differs from url, which is the destination link. Empty if the upstream omits it. Populated whenever the provider has data for the entity.

  • scoreinteger

    1842

    Net score (upvotes minus downvotes) at fetch time.

  • selftextstring

    Body text of a self post, as Markdown. Empty on a link post, which has no body.

  • subredditstring

    MechanicalKeyboards

    Subreddit name, without the r/ prefix. Populated whenever the provider has data for the entity.

  • titlestring

    What is the best mechanical keyboard under $150?

    Post title. Populated whenever the provider has data for the entity.

  • urlstring

    https://www.reddit.com/r/MechanicalKeyboards/comments/1abc234/

    The post's destination link: the external URL for a link post, the media URL for an image, gallery or video post, or the thread URL for a text post. A text post that also carries an image may give either its thread URL or the image URL. Populated whenever the provider has data for the entity.

each mediadata.posts[].media[]

Photo, video, and GIF attachments on the post. Empty when the post has none.

  • heightinteger
  • typestring

    One of photo, video, or gif.

  • urlstring

    Image URL. For a video or GIF this is the poster/thumbnail frame.

  • videoUrlstring

    Playable video file URL. Present only for video and gif items.

  • widthinteger
top level
  • foundboolean

    true

  • reason"not_found"

    Present only when `found` is false, and says why there is no result. `not_found`: the source states the target does not exist, or returned nothing for it. A `found: false` answer is a successful call, not an error, and `costUsd` is what it actually cost.

你收到。 字段有名称、有类型,无论哪个数据源响应,结构都一样。

你在出售这个 API?查看你的接口必须返回的完整数据结构。

常见问题

关于 Reddit 搜索 API

AnyAPI 的 Reddit 搜索 API 只需一次 POST 请求 /v1/run/reddit.search,就以统一格式的 JSON 返回 Reddit 数据。按查询词在所有子版块中搜索 Reddit 帖子,可设置排序和时间范围。用 after 游标分页。AnyAPI 会在 4 个数据源之间路由每个请求,某个数据源失败时自动切换。费用:每千次请求 US$0.35 起,以美元计价,无需订阅,也没有每月最低消费。过去 30 天,通过 AnyAPI 发起的 Reddit 搜索 API 调用中有 99.5% 成功,响应时间中位数为 1.9 秒,共测量 427,530 次调用。

费用:每千次请求 US$0.35 起,以美元计价,无需订阅,也没有每月最低消费。你只需为一个美元钱包充值,每次调用从中扣费。部分由钱包付费的失败请求会产生处理费用,我们按成本原价转嫁,不加价;错误响应会显示收取的金额。

按查询词在所有子版块中搜索 Reddit 帖子,可设置排序和时间范围。用 after 游标分页。响应是统一格式的 JSON,外层结构与每个 AnyAPI 接口相同,所以解析另一个接口只需换一个 URL,别的都不用改。

过去 30 天,通过 AnyAPI 发起的 Reddit 搜索 API 调用中有 99.5% 成功,响应时间中位数为 1.9 秒,共测量 427,530 次调用。这些是 AnyAPI 对经过网关的流量的自有测量,持续重新计算,并非公开承诺的服务等级目标。

可以。新的 AnyAPI 账户自带 US$0.10 免费余额,无需绑卡,足够调用 285 次 Reddit 搜索,每次 US$0.00035。

AnyAPI 会在同一个请求中依次尝试它的 4 个数据源,从最便宜的开始,所以一个数据源宕机不会让你的调用失败。

向 https://api.getanyapi.com/v1/run/reddit.search 发送 POST 请求,在 “Authorization: Bearer” 请求头中放入你的 AnyAPI 密钥,并以 JSON 请求体传入参数。同一个密钥和同一个钱包适用于所有 AnyAPI 接口。

不需要。你向一个预付费的 AnyAPI 余额充值美元,每个请求从中扣费。没有月度套餐,也没有最低消费,同一个余额可用于所有 AnyAPI 接口。

有。TypeScript 用 npm 安装 @getanyapi/sdk,Python 用 pip 安装 getanyapi。两者都用同一个密钥调用所有 AnyAPI 接口,任何 HTTP 客户端也都可以。

可以。智能体可以连接 https://api.getanyapi.com/mcp 上的 AnyAPI MCP 服务器,或者向 https://api.getanyapi.com/agent/signup 发送一次无需认证的 POST 来创建自己的免费试用密钥,再通过 HTTP 调用这个接口。