跳到正文

如何选择 Twitter API:8 项检查

选择 Twitter API,先按你的真实任务算出每 1,000 条结果的价格,再核对批量大小、速度、免费测试、账号权限、可用性、接口和计费方式;作为基准的官方 X API,每 1,000 条帖子收费 $5.00。

  • 更新于
  • 发布于
  • 阅读约 14 分钟

简短回答: Twitter API 之间的差距,大半在于一次调用返回多少:一次 100 条推文的请求,顶得上 100 次单条查询。官方 X API 对每条帖子计费,每月最多 300 万条。Sorsa API 八项检查全部通过:每次请求 100 条推文,每 1,000 条 $0.014 起,另有 100 次免费请求用来测试你的任务。

接口
POST /tweet-info-bulk
每页条数
每次请求 100 条推文
价格
每 1,000 条 $0.014 起

#付费前要做的 8 项 Twitter API 检查

决定 Twitter API 是否适合你任务的有八项检查,每一项都能在花一分钱之前做完:

  1. 按每 1,000 条结果给任务定价。 把每份报价都换算成你自己任务中 1,000 条推文、粉丝或用户资料的成本,并计入每条推文的作者。

  2. 查看是否支持按 ID 批量查询。 一次调用应当返回 100 条推文或 100 份用户资料,并按一次调用计费。

  3. 核对入门套餐的速率限制。 要问你起步所用套餐的每秒请求数,而不是最高档的。

  4. 用自己的数据免费测试。 免费起步额度应当覆盖每个接口,无需绑卡,也没有到期日。

  5. 问清 API 需要你的 X 账号做什么。 它不应索取你的 X 登录信息、Cookie 或会话令牌。

  6. 把运营历史和可用性落到书面。 要看已在生产环境运行多少年,以及条款里是否写明可用性数字。

  7. 让接口覆盖任务的每一步。 从查询、历史搜索到活动核验,每一步都需要有专门的接口。

  8. 确保账单可预测。 套餐固定,失败的调用不收费,并且有你自己设定的支出上限。

这里的 Twitter API 指任何通过 HTTPS 返回 X 数据的服务:由 X Corp 出售的官方 X API,或者第三方 Twitter API,后者用服务商自己的 API 密钥调用,而不需要 X 开发者账号。这些检查对两类都适用。

官方 X API 是衡量每份报价的基准。在它的按量付费套餐(在新标签页打开)里,每 1,000 条帖子收费 $5.00,每 1,000 个用户或粉丝收费 $10.00,从预先购买的额度中扣除,并且每个计费周期读取 300 万条帖子后封顶。这份价目表的每一项都拆解在 X API 价格里。

第 1 项和第 2 项决定了大多数预算,第 5 项决定你的 X 账号有没有风险。发帖不在这份清单里:只有官方 X API 能以你自己的账号发布内容。

#Sorsa API 在这八项检查中的表现

Sorsa API 是一款 Twitter(X)API 与爬虫,自 2022 年起投入生产,累计处理请求超 60 亿次。八项检查它都能用具体数字通过,所以无论读取公开 X 数据的用量多大,都值得选它。下表把各项合格线与 Sorsa API 和官方 X API 并排列出:

检查项合格线Sorsa API官方 X API
1. 每 1,000 条结果的价格付费前就已知,含作者推文每 1,000 条 $0.014 起,每条推文都含作者每 1,000 条帖子 $5.00;自 2026 年 11 月 22 日起,每个作者另加 $0.010
2. 批量查询每次调用 100 条,按一次调用计费每次请求 100 条推文或用户资料,每页 200 个粉丝每次调用最多 100 条帖子,每条帖子都计费
3. 速率限制按秒计,入门套餐也一样所有套餐每秒 20 次请求,免费账号也不例外按接口分别计,多数按 15 分钟
4. 免费测试每个接口,无需绑卡,没有期限100 次请求,永不过期没有免费额度
5. 你的 X 账号从不索取登录信息或 Cookie只读,从不索取你的 X 登录信息开发者账号、应用和 OAuth
6. 运营历史运行多年,条款里写明可用性自 2022 年起,条款中写明 99.9% 可用性X Corp 自己的 API;访问规则在 2023 年和 2026 年两度调整
7. 接口每一步一个接口,历史可追溯到 2006 年45 个接口,搜索可回溯到 2006 年,一次调用完成关注核验可读可写;全量存档搜索限每秒 1 次请求
8. 账单可预测套餐固定,失败调用免费,上限由你设定月度套餐,失败的请求从不收费预付额度;余额为零时调用即停
  • 1. 每 1,000 条结果的价格

    合格线
    付费前就已知,含作者
    Sorsa API
    推文每 1,000 条 $0.014 起,每条推文都含作者
    官方 X API
    每 1,000 条帖子 $5.00;自 2026 年 11 月 22 日起,每个作者另加 $0.010
  • 2. 批量查询

    合格线
    每次调用 100 条,按一次调用计费
    Sorsa API
    每次请求 100 条推文或用户资料,每页 200 个粉丝
    官方 X API
    每次调用最多 100 条帖子,每条帖子都计费
  • 3. 速率限制

    合格线
    按秒计,入门套餐也一样
    Sorsa API
    所有套餐每秒 20 次请求,免费账号也不例外
    官方 X API
    按接口分别计,多数按 15 分钟
  • 4. 免费测试

    合格线
    每个接口,无需绑卡,没有期限
    Sorsa API
    100 次请求,永不过期
    官方 X API
    没有免费额度
  • 5. 你的 X 账号

    合格线
    从不索取登录信息或 Cookie
    Sorsa API
    只读,从不索取你的 X 登录信息
    官方 X API
    开发者账号、应用和 OAuth
  • 6. 运营历史

    合格线
    运行多年,条款里写明可用性
    Sorsa API
    自 2022 年起,条款中写明 99.9% 可用性
    官方 X API
    X Corp 自己的 API;访问规则在 2023 年和 2026 年两度调整
  • 7. 接口

    合格线
    每一步一个接口,历史可追溯到 2006 年
    Sorsa API
    45 个接口,搜索可回溯到 2006 年,一次调用完成关注核验
    官方 X API
    可读可写;全量存档搜索限每秒 1 次请求
  • 8. 账单可预测

    合格线
    套餐固定,失败调用免费,上限由你设定
    Sorsa API
    月度套餐,失败的请求从不收费
    官方 X API
    预付额度;余额为零时调用即停

读取推文、粉丝和用户资料,选 Sorsa API:每次请求查询 100 条推文,每 1,000 条 $0.014 起,推文比官方 X API 便宜 250 倍,所有套餐每秒 20 次请求。它的 99.9% 可用性在每个付费套餐的服务条款里有保证,X 有任何变动,都由我们负责修复,所以你今天写的代码会一直能用。

下面逐项说明要问什么、哪种红线说明服务商不合格,以及 Sorsa API 的数字。想把候选名单按同一标准并排定价,见 Twitter API 替代方案,它按同样的 1,000 条推文比较了 7 个 API。

#1. 按每 1,000 条结果给任务定价

如果一份报价能换算成你自己任务中 1,000 条结果的成本,并且含每条推文的作者,它就通过了这项检查。价格可能按调用、按结果或按月套餐给出,在不知道一次调用返回多少结果之前,这几种都没法比较:返回一条推文的调用和返回 100 条的调用,价格可以相同,而每条推文的成本却差 100 倍。

同样 1,000 条推文,四种计量方式 按 ID 查询 1,000 条推文时的计费项 官方 X API 按返回的推文计费 1,000 条推文 $5.00,作者另计 每次调用 1 条推文 按 ID 单条查询 1,000 次调用 每次都计费 每次调用 20 条推文 典型的搜索一页 50 次调用 每次都计费 Sorsa API POST /tweet-info-bulk 10 次请求 $0.014 起
计量方式决定账单。Sorsa API 每次请求返回 100 条推文,所以 1,000 条推文只需 10 次请求,$0.014 起。

官方 X API 的计量方式正相反:它对返回的每条帖子收费 $0.005,所以不管你怎么请求,1,000 条帖子都是 $5.00。根据 X 的扩展对象通知(在新标签页打开),自 2026 年 11 月 22 日起,随帖子返回的每个作者资料也要收费 $0.010,所以带作者的一条帖子是 $0.015。

红线: 只给每次调用的价格,旁边没有每页条数,或者作者在每条推文之外另外计费。

Sorsa API 所有接口都是每次调用算一次请求,并把作者的完整资料放进每条推文,不额外收费。一批 100 条推文就是一次请求,所以推文每 1,000 条 $0.014 起,粉丝 $0.007 起,用户资料 $0.014 起。

把你手上的任何报价放进转换器,就能看到它按每 1,000 条结果折算后的价格,并与两家 API 并排对照:

你的任务
报价的计费方式

你的报价: $1.00 每 1,000 推文

Sorsa API

低至 $0.014

每 1,000 推文,每次请求 100 条

官方 X API

$5.00

每 1,000 条帖子,每条帖子都计费

这个报价约为 Sorsa API 同样推文起步价的 71 倍。

Sorsa API 的价格取“低至”费率,即每 1,000 次请求 $1.40。官方 X API 的价格是每条返回结果的标价。

#2. 查看是否支持按 ID 批量查询

如果一次调用能按 ID 查询 100 条推文或 100 份用户资料,并按一次调用计费,这个 API 就通过了这项检查。批量查询对补全(rehydration)最重要,也就是根据一串推文 ID 取回完整推文,这是研究数据集和导出文件常用的分享方式。

数据量一大,差别就很悬殊。补全 100 万个推文 ID,需要 1 万次批量请求,按每秒 20 次请求约 8 分钟;而 100 万次单条调用,同样的速度下约需 14 小时:

查询 100 万个推文 ID 各速率限制下的用时,以及整个任务的费用 每次调用 1 个 ID 100 万次调用,每秒 20 次 约 14 小时 100 万次计费调用 官方 X API 每次 100 个 ID,每 15 分钟 3,500 次调用 约 43 分钟 $5,000 Sorsa API 每次请求 100 个 ID,每秒 20 次 约 8 分钟 $14 起
每批 100 个,把 100 万次查询缩减为 1 万次请求。按每秒 20 次请求,Sorsa API 约 8 分钟完成,$14 起。

官方 X API 每次调用也最多接受 100 个 ID,但它对批次中的每条帖子都计费,并且按其速率限制参考(在新标签页打开),每个应用每 15 分钟允许 3,500 次这样的调用。同样 100 万条帖子在那里要 $5,000。

红线: 只有单条查询,或者批量接口仍对其中每一项计费。

Sorsa API 对每种查询任务都有批量接口。POST /tweet-info-bulk(在新标签页打开) 最多接受 100 个推文 ID 或链接,GET /info-batch(在新标签页打开) 最多接受 100 个用户名或用户 ID,GET /followers(在新标签页打开) 每页返回最多 200 个粉丝。每次调用都算一次请求,所以 100 万条推文 $14 起。

#3. 核对入门套餐的速率限制

如果速率限制按秒计算,而且在你起步的套餐上保持不变,它就通过了这项检查。速率限制是 API 在一个时间窗口内接受的请求数;超过之后,调用会返回 429 错误,直到窗口重置。

有些服务商把免费起步额度或入门套餐限制在每秒不到一次请求,直到你付费为止,所以按最高档估算规模的管道,上线当天就会卡住。另一些则让每个接口各用一个 15 分钟的窗口。官方 X API 就是这样:近期搜索每个应用每 15 分钟允许 450 次请求,大约每两秒一次,X API 速率限制逐个窗口列出了这些数字。

红线: 只有更高的套餐才有的限制,免费起步额度低于每秒一次请求,或者每个接口各有独立窗口。

Sorsa API 所有套餐(包括免费账号)每个 API 密钥都允许每秒 20 次请求,窗口每秒重置一次。每次请求 100 条推文,一个密钥每秒最多读取 2,000 条推文。大用量套餐可以申请调高限制。

#4. 付费前先用你的任务测试

如果免费起步额度能在每个接口上跑你的真实任务,注册时无需绑卡,免费额度也没有消失的日期,它就通过了这项检查。在别人的数据上调用一次演示证明不了什么;关键是 API 能否返回你的账号、你的搜索和你的字段。

官方 X API 没有免费额度:新开发者在第一次读取之前就得购买预付额度,详见 Twitter API 免费吗。

红线: 额度一周或一个月后过期,接口要付费才解锁,或者注册时要绑卡,把测试变成订阅。

Sorsa API 给每个新账号 100 次免费请求,可用于全部 45 个接口,无需绑卡,永不过期。这足够读取你自己任务中的 1 万条推文或 2 万个粉丝,下面的测试方案就用其中少量请求跑一遍这些检查。

#5. 问清 API 需要你的 X 账号做什么

如果 API 从不索取你的 X 登录信息、Cookie 或会话令牌,那它做的任何事都不会牵涉你的 X 账号,就通过了这项检查。通过你的会话工作的 API 是以你的身份行事,这会让该账号受 X 对自动化行为规则的约束。写权限是第二项风险:同一个密钥既能读又能发,一个 bug 或一个 AI Agent 就可能自行发帖、点赞或关注。

官方 X API 使用你自己的开发者账号、应用和 OAuth 凭据,适合发帖,因为发帖必须用你自己的账号。

红线: 仅仅为了读取公开数据,就要“连接你的 X 账号”或“粘贴你的 auth token”,或者写操作和读取共用同一个密钥。

Sorsa API 从产品设计上就是只读的:它从不发帖、点赞、关注或发私信,也从不索取你的 X 登录信息或 Cookie,所以你的 X 账号零风险。它只返回公开数据;私密账号和私信对任何密钥都不可见。

#6. 把运营历史和可用性落到书面

如果服务商已运行多年,并且把可用性数字写进条款,而不仅仅放在首页上,它就通过了这项检查。要问:这个 API 在生产环境运行了多久(无论用这个名字还是以前的名字),某个月达不到承诺时条款怎么约定,以及响应字段的名称和类型是否保持不变,让你的解析器一直能用。

红线: 条款里没有可用性承诺,响应字段结构会变,或者需要你自己维护一个库。

Sorsa API 自 2022 年起已在生产环境运行,累计处理请求超 60 亿次,最初叫 TweetScout API。每个付费套餐的条款都包含 99.9% 的可用性:如果某月可用性低于 99.5%,Sorsa API 会补发相当于你月度请求数 10% 的赠送请求。X 有任何变动,都由我们负责修复,所以集成可以持续使用。

#7. 让接口覆盖任务的每一步

如果任务的每一步都有专门的接口,而且搜索能回溯到你的问题所需的时间,API 就通过了这项检查。接口数量多少不重要,缺了你要的那一步才要命:用粉丝列表去重建一次关注核验,要几千次调用,而核验接口只需一次。把任务写成步骤;在 Sorsa API 上,一个典型的读取任务对应如下:

步骤Sorsa API 接口每次请求
按 ID 或链接查询推文POST /tweet-info-bulk100 条推文
批量查询用户资料GET /info-batch100 份用户资料
导出粉丝GET /followers200 个粉丝
搜索可回溯到 2006 年的推文POST /search-tweets(在新标签页打开)约 20 条推文
核验某个账号是否关注了另一个账号POST /check-follow(在新标签页打开)1 次核验
  • 按 ID 或链接查询推文

    Sorsa API 接口
    POST /tweet-info-bulk
    每次请求
    100 条推文
  • 批量查询用户资料

    Sorsa API 接口
    GET /info-batch
    每次请求
    100 份用户资料
  • 导出粉丝

    Sorsa API 接口
    GET /followers
    每次请求
    200 个粉丝
  • 搜索可回溯到 2006 年的推文

    每次请求
    约 20 条推文
  • 核验某个账号是否关注了另一个账号

    每次请求
    1 次核验

红线: 搜索只能查几天内的内容,没有面向活动的核验接口,或者推文返回时不带作者。

Sorsa API 有 45 个接口,字段列在 Sorsa API 接口里。搜索支持 X 的运算符,可回溯到 2006 年。关注、转发、引用和评论的核验各一次调用完成,每次核验 $0.0014 起,X 列表、Space、X 长文和“关于此账号”数据也各有专门的接口。

#8. 确保账单可预测

如果你在月初就知道下个月的账单数字,失败的调用不收费,而且额度用完后会怎样由你决定,账单就通过了这项检查。没有你自己设定的上限,一个失控的循环就会变成一张账单。

官方 X API 从预付额度中按返回的每项资源扣费。余额降到零时,其价格页面写明 API 请求会被拦截,直到你补充额度,而设置了支出上限的话,则会拦截到下个计费周期。

红线: 失败或为空的调用也计费,没有支出上限,或者超出部分的计价没有封顶。

须知

比较账单之前,先算上重试。会重试超时和 429 错误的管道,在对失败调用计费的 API 上,每次重试都要付费。在 Sorsa API 上,失败的请求从不收费,所以只有成功的重试才会算一次请求。

Sorsa API 的月度套餐从 1 万到 1000 万次请求,每档价格固定。GET /key-usage-info(在新标签页打开) 会显示密钥剩余的请求次数,且本身不计入请求次数。套餐用完后调用就会停止,除非你开启按量付费:用预付余额支付额外请求(Pro 套餐为每 1,000 次 $1.99,与套餐自己的单价相同),默认每个计费周期的支出上限是 $100,你可以调高。

#用 100 次免费请求跑完这八项检查

借助其中几次免费请求,约十分钟就能在 Sorsa API 上跑完第 1、2、4、7、8 项检查,因为用量查询本身是免费的。要用你自己的 ID、账号和搜索词:重点是看到你的任务,而不是演示。

  1. 获取密钥。 注册后,在控制台复制你的 API 密钥。无需绑卡,100 次免费请求永不过期。

  2. 查看余额。 GET /key-usage-info 返回密钥上的请求次数,且不收费,所以每次测试前后都可以调用。

    终端
    curl "https://api.sorsa.io/v3/key-usage-info" \
      -H "ApiKey: YOUR_API_KEY"
    
    响应200 OK
    {
      "key_requests": 100,
      "remaining_requests": 100,
      "total_requests": 0
    }
    
  3. 一次请求查询 100 条推文。 向 POST /tweet-info-bulk 发送最多 100 个推文 ID 或链接。数一数返回的推文条数,并确认每条的 user 里都带有作者:这样你的数据就验证了第 1 项和第 2 项检查。

    终端
    curl -X POST "https://api.sorsa.io/v3/tweet-info-bulk" \
      -H "ApiKey: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{"tweet_links": ["1853120044917735424",
                          "1853098761204531200"]}'
    
    响应200 OK
    {
      "tweets": [
        {
          "id": "1853120044917735424",
          "full_text": "Shipped the weekly export: 48K rows, zero gaps.",
          "created_at": "2026-11-01T09:12:40Z",
          "lang": "en",
          "likes_count": 214,
          "retweet_count": 31,
          "reply_count": 12,
          "view_count": 18240,
          "user": {
            "id": "1712900461123481600",
            "username": "lena_signalwatch",
            "display_name": "Lena Signal",
            "followers_count": 3870,
            "verified": false
          }
        }
      ]
    }
    
  4. 翻页读取粉丝列表。 GET /followers 每页最多返回 200 个粉丝;把每次得到的 next_cursor 传回去,直到不再返回。返回 403 表示密钥缺失或请求次数已用完,返回 429 表示一秒内请求超过 20 次。

    import requests
    
    URL = "https://api.sorsa.io/v3/followers"
    HEADERS = {"ApiKey": "YOUR_API_KEY"}
    
    params = {"username": "orbit_dataworks_hq"}
    followers = []
    for page_no in range(3):  # three pages are enough for the test
        resp = requests.get(URL, headers=HEADERS, params=params, timeout=30)
        resp.raise_for_status()
        page = resp.json()
        followers.extend(page["users"])
        cursor = page.get("next_cursor")
        if not cursor:
            break
        params["next_cursor"] = cursor
    
    print(len(followers), "followers in", page_no + 1, "requests")
    
  5. 搜索一个较早的日期。 向 POST /search-tweets 发送带 X 的 until: 运算符的查询,确认你的问题所需的历史数据能返回,这对应第 7 项检查。

    终端
    curl -X POST "https://api.sorsa.io/v3/search-tweets" \
      -H "ApiKey: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{"query": "data pipeline until:2012-01-01", "order": "latest"}'
    
  6. 再次查看余额。 再调用一次 GET /key-usage-info:remaining_requests 减少的数量等于成功调用的次数,每个接口每次调用算一次,这样就验证了第 8 项检查。

这次测试大约用 5 次请求;100 次里剩下的仍留在密钥上,留给你真正要测试的任务。

#选出八项全部通过的 API

合适的 Twitter API,就是在你自己的任务上八项检查全部通过的那一个,先从 1,000 条结果的价格看起。读取公开 X 数据,这就是 Sorsa API:推文每批 100 条,每 1,000 条 $0.014 起,粉丝 $0.007 起,所有套餐每秒 20 次请求,条款中写明 99.9% 可用性,失败的请求从不收费,并且从不索取你的 X 登录信息。把候选名单逐项过一遍,花几次免费请求跑你的真实任务,再把账单和你现在付的对比。官方 X API 只留给自己账号要发布的帖子。按同样的数字排出的名次,见最好的 Twitter API。

#常见问题

读取 X 数据该选哪个 Twitter API?

读取公开 X 数据选 Sorsa API:本指南的八项检查它全部通过。它每次请求返回 100 条推文或用户资料,每 1,000 条 $0.014 起,每页 200 个粉丝,每 1,000 个 $0.007 起,所有套餐每秒 20 次请求,条款中保证 99.9% 可用性,自 2022 年起运行,累计处理请求超 60 亿次。官方 X API 每 1,000 条帖子收费 $5.00。

付费前可以免费测试 Twitter API 吗?

可以。Sorsa API 给每个新账号 100 次免费请求,可用于全部 45 个接口,无需绑卡,永不过期,足够读取你自己任务中的 1 万条推文或 2 万个粉丝。官方 X API 没有免费额度:新开发者在第一次读取之前就要购买预付额度,每 1,000 条帖子 $5.00。

Twitter API 应当保证多高的可用性?

要找把 99.9% 可用性写进服务商条款的,而不只是写在首页上,同时还要看某个月没达标时怎么办。Sorsa API 在每个付费套餐的服务条款中保证 99.9% 可用性;如果某月可用性低于 99.5%,会补发相当于你月度请求数 10% 的赠送请求。

哪个 Twitter API 对 AI Agent 最安全?

对 AI Agent 最安全的 Twitter API,是没有写权限的那个,这样 Agent 能搜索和读取,却永远不能发帖、点赞或关注。Sorsa API 从设计上就是只读的,也从不索取你的 X 登录信息。它的 MCP 服务器用 npx -y sorsa-mcp 启动,让 Claude、Cursor 等客户端用一个密钥使用 40 个工具;AI Agent 用的 Twitter API 一文介绍了具体设置。

发推文需要哪个 API?

发帖需要官方 X API,它通过开发者应用和 OAuth 以你自己的账号发布内容,每条帖子 $0.015,带链接的帖子 $0.200。Sorsa API 从设计上就是只读的,所以既要读又要发的团队两者并用:搜索、导出和监测用 Sorsa API,官方 X API 只用于自己账号发布的帖子。

#我们如何核实

2026 年 11 月 2 日,我们阅读了 docs.x.com 上 X 的按量付费价目表和速率限制参考,以及它 10 月 23 日发布的计费扩展通知,上文所有官方 X API 数字都取自当天这些页面。我们向 Google AI Mode、ChatGPT 和 Bing Copilot 询问了如何选择 Twitter 数据 API,围绕它们采用的标准设计了这八项检查,并阅读了针对这个问题排名靠前的指南。Sorsa API 的接口、每页条数和字段取自当天的在线 API 参考文档;请求和响应使用演示数据,并非来自一次付费实跑。

Sorsa API 团队撰写。 我们开发和运营 Sorsa API,这是只读的 Twitter/X API 与爬虫,2022 年起运行于生产环境(前身为 TweetScout API),累计处理请求超 60 亿次。 关于 Sorsa API

更新内容
  • 首次发布。