跳到正文

Grok API 与 Twitter API 获取 X 数据对比

Grok 通过 xAI 的 X Search 工具读取 X,每获取 1,000 条帖子收费 $5,另加模型 token 费用,交回的是一段带链接的文字回答;而 X 数据 API 交回的是帖子本身,以 JSON 记录的形式。

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

简短回答: Grok 的 X Search 每 1,000 条帖子收费 $5.00,另加 token 费用,而且由模型决定读哪些帖子,所以你得到的是一段回答,而不是一份数据集。要拿原始帖子,用 Sorsa API:POST /search-tweets 每次调用返回约 20 条帖子及其作者,每 1,000 条 $0.07 起,并有 100 次免费请求供你启动。

接口
POST /search-tweets
每页条数
每次调用约 20 条帖子
价格
每 1,000 条 $0.07 起

#Grok 能从 X 拿到什么,又交回什么

Grok 只能通过搜索工具读取 X 上的公开帖子:xAI 的模型页面(在新标签页打开)写道,Grok “对时事以及训练数据之外的数据一无所知”,而 grok-4.7 的训练数据截止于 2026 年 5 月。在 Grok 应用里,搜索会自动运行。通过 xAI API 则要你自己开启,这个工具叫 X Search(x_search)。

这就把 Grok 放在了每个智能体开发者都会遇到的分界线的“回答”一侧。我们的 面向 AI 智能体的 Twitter API 指南讲的是另一侧:以普通 JSON 向模型返回 X 数据的工具。

开启 X Search 的一次请求,就是对 xAI Responses API 的一次调用,下面是通过指向 api.x.ai 的 OpenAI SDK 发起的:

Python
import os

from openai import OpenAI

grok = OpenAI(api_key=os.environ["XAI_API_KEY"],
              base_url="https://api.x.ai/v1")
resp = grok.responses.create(
    model="grok-4.7",
    input="What are developers saying about MCP this week?",
    tools=[{"type": "x_search"}],
)
print(resp.output_text)

在这一次调用背后,模型会按自己的判断运行任意多次搜索。X Search 文档(在新标签页打开)列出了它能调用的四个功能:用 X 搜索运算符做关键词搜索、按语义做搜索、用户搜索,以及抓取帖子串的功能,它会把一条帖子连同它的上级帖子和回复一起取回。你可以把范围限定在最多 20 个用户名,或者排除 20 个,并按 YYYY-MM-DD 设置日期范围。

返回的是模型写的文字、它引用的链接,以及两个用量计数:x_posts_fetched 和 x_users_fetched。帖子本身留在请求内部:没有记录列表,没有固定的字段集,也没有通往下一页的 cursor。xAI 自己的文档也提醒说“结果会有差异,因为模型自己选择查询”。旧的 Live Search API 也已经下线:它的指南现在重定向到 Web Search。

#Grok 的 X Search 与 X 数据 API 并排对比

X Search 是为了回答问题而造的,X 数据 API 是为了返回记录而造的,所以当任务需要每一条匹配的帖子、精确的数字,或者同一个请求得到同样的结果时,两者的差别最大。在这几行上,数据 API 都占上风,而 Sorsa API 做到这些,价格只是另外两家每条帖子价格的零头。

关注点Sorsa APIxAI X Search(Grok)官方 X API
返回什么JSON 记录,每条帖子连同作者共 41 个字段模型的回答和链接JSON 记录,字段由你指定
谁来挑帖子你,用查询和 X 运算符模型,用它自己的查询你
逐页取完所有匹配能,next_cursor 一直到为空不能:模型有了答案就停能,用分页令牌
同样的请求,同样的帖子是否:每次运行结果不同是
能回溯多久到 2006 年你设置的日期范围用全量归档搜索可到 2006 年
每 1,000 条帖子的价格$0.07 起$5.00 另加 token$5.00;2026 年 11 月 22 日起带作者为 $15.00
每 1,000 份用户资料的价格$0.014 起$10.00$10.00
你需要什么请求头里的一个 API 密钥一个 xAI API 密钥开发者账号、OAuth 或 bearer 令牌、预付额度
  • 返回什么

    Sorsa API
    JSON 记录,每条帖子连同作者共 41 个字段
    xAI X Search(Grok)
    模型的回答和链接
    官方 X API
    JSON 记录,字段由你指定
  • 谁来挑帖子

    Sorsa API
    你,用查询和 X 运算符
    xAI X Search(Grok)
    模型,用它自己的查询
    官方 X API
    你
  • 逐页取完所有匹配

    Sorsa API
    能,next_cursor 一直到为空
    xAI X Search(Grok)
    不能:模型有了答案就停
    官方 X API
    能,用分页令牌
  • 同样的请求,同样的帖子

    Sorsa API
    是
    xAI X Search(Grok)
    否:每次运行结果不同
    官方 X API
    是
  • 能回溯多久

    Sorsa API
    到 2006 年
    xAI X Search(Grok)
    你设置的日期范围
    官方 X API
    用全量归档搜索可到 2006 年
  • 每 1,000 条帖子的价格

    Sorsa API
    $0.07 起
    xAI X Search(Grok)
    $5.00 另加 token
    官方 X API
    $5.00;2026 年 11 月 22 日起带作者为 $15.00
  • 每 1,000 份用户资料的价格

    Sorsa API
    $0.014 起
    xAI X Search(Grok)
    $10.00
    官方 X API
    $10.00
  • 你需要什么

    Sorsa API
    请求头里的一个 API 密钥
    xAI X Search(Grok)
    一个 xAI API 密钥
    官方 X API
    开发者账号、OAuth 或 bearer 令牌、预付额度
问题:开发者本周怎么评价 MCP? 带 X Search 的 Grok xAI Responses API 回答 开发者大多喜欢 MCP 能在 各应用间复用工具;也有人 反映认证麻烦、服务器 慢。[1] [2] [3] 引用 3 条模型挑选的推文链接 用量 x_posts_fetched: 19 没有记录,没有游标取剩余结果 Sorsa API POST /search-tweets { "tweets": [ { "id":"2116193940272985298", "full_text":"Our digest…", "created_at":"2026-10-30T…", "likes_count":64, "user":{ "followers_count": 4210, … } }, … 每页约 20 条 ], "next_cursor":"DAADDAAB…" } 每页每条推文 41 个字段
Grok 交回的是它从自己选的帖子里得出的结论;数据 API 交回的是帖子本身,带着每个字段,以及指向其余部分的 cursor。

官方 X API 的价格来自它的按量付费价目表(在新标签页打开),其中还把每月读取量封顶在 300 万条帖子;超出之后,X 只出售 Enterprise 合同,每月约 $42,000 起。X 在 10 月 23 日的通知(在新标签页打开)里补充说,从 2026 年 11 月 22 日起,随帖子一起返回的作者和媒体也按读取计费,所以一条带作者的搜索结果,从 $0.005 涨到 $0.015。

须知

让 Grok “把帖子以 JSON 返回”,并不能把它的回答变成记录。这段 JSON 是模型根据它读到的内容写出来的,而读多少条帖子也是它说了算。请保留它引用的帖子 ID,在数字要紧时按 ID 取回记录:Sorsa API 的 POST /tweet-info-bulk(在新标签页打开)每次调用最多返回 100 条帖子,每 1,000 条 $0.014 起。

#读取 1 万、10 万和 100 万条帖子要花多少钱

读取 100 万条帖子,通过 Grok 的 X Search 要 $5,000 另加 token,在官方 X API 上要 $5,000(从 11 月 22 日起带上每条帖子的作者要 $15,000),在 Sorsa API 上 $70 起。各个规模下差距都一样,因为 X Search 和官方 X API 都按帖子计费,而 Sorsa API 按请求计费,每次搜索请求返回约 20 条帖子。

要读取的帖子数

Sorsa API

低至 $70

每 1,000 条帖子低至 $0.07,每条都带作者

xAI X Search (Grok)

$5,000 + token

每获取 1,000 条帖子 $5.00,另加模型 token

官方 X API

$5,000

每 1,000 条帖子 $5.00; $15,000 自 2026 年 11 月 22 日起另计作者

仅数据成本:之后由 Grok 读取这些帖子时,其 token 费用在各条路线上相同。

token 不会改变这个比较。不管帖子从哪条路线进来,Grok 读取它们都按 grok-4.7 的费率计费:每百万输入 token $2.00,每百万输出 token $6.00,见 xAI 的 API 价格页面(在新标签页打开)。如果一条精简过的帖子约合 60 个 token,1,000 条帖子只多出约 $0.12 的输入费用,和帖子本身的 $5.00 相比微不足道。

X Search 有三条计费规则,会让一个问题的花费比看上去更高:

  • 每一个取回的条目都要计费, 而不是每个被引用的条目:上级帖子、被引用的帖子,以及取回的帖子串里的每条帖子,都按每 1,000 条 $5 计算。
  • 计数不去重。 两次搜索都返回的同一条帖子,会计费两次。
  • 数量由模型决定。 你可以限制搜索的轮数,事后再读 x_posts_fetched,但在调用之前无法固定帖子的数量。

Grok 或 X 的订阅并不覆盖这些费用。套餐页面(在新标签页打开)说付费套餐包含 API 访问权限,但“API 用量按标准模型费率单独计费,不会从你的套餐用量池中扣除”。

#如何用 Sorsa API 给 Grok 喂原始 X 帖子

要给 Grok 原始帖子,就先从 X 数据 API 取回它们,只保留你的问题需要的字段,再在提示词里把它们交给 grok-4.7,不开 X Search 工具,这样 Grok 读到的就正好是你选的那些帖子。取回这一步,用 Sorsa API,一款 Twitter(X)API 与爬虫:只需一个 ApiKey 请求头,不需要 OAuth,每次搜索调用返回约 20 条帖子及完整的作者资料,每 1,000 条 $0.07 起,所有套餐统一每秒 20 次请求。

你的查询 X 运算符、 日期、账号 Sorsa API POST /search-tweets 每页约 20 条推文 你的代码 每条推文 保留 6 个字段 grok-4.7 回答时 附推文 ID 翻页直到 next_cursor 为空
先取回,再提问:数据成本在 Grok 运行之前就已固定,而且同样的帖子可以交给任何模型。
  1. 准备两个密钥。 注册后,把你的 Sorsa API 密钥复制到 SORSA_API_KEY;把你的 xAI 密钥放进 XAI_API_KEY。两个都只留在你的服务器上。

  2. 搜索帖子。 POST /search-tweets(在新标签页打开)接收带 X 搜索运算符的查询,每页返回约 20 条帖子,设置 "order": "latest" 则最新的在前。搜索可回溯到 2006 年。

    Terminal
    curl -X POST "https://api.sorsa.io/v3/search-tweets" \
      -H "ApiKey: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{"query": "\"grok api\" lang:en -filter:retweets", "order": "latest"}'
    
    Response200 OK
    {
      "tweets": [
        {
          "id": "2116193940272985298",
          "full_text": "Our digest now fetches posts first, then asks Grok.",
          "created_at": "2026-10-30T15:42:07Z",
          "lang": "en",
          "likes_count": 64,
          "retweet_count": 7,
          "reply_count": 12,
          "quote_count": 3,
          "view_count": 8120,
          "is_reply": false,
          "conversation_id_str": "2116193940272985298",
          "user": {
            "id": "1544001928374651904",
            "username": "maya_ships_prompts",
            "display_name": "Maya Ships Prompts",
            "followers_count": 4210,
            "verified": false
          }
        }
      ],
      "next_cursor": "DAADDAABCgABHV6x9mPAJxIKAAIdXrH2Y8"
    }
    
  3. 取回并精简各页。 这个函数沿着 next_cursor 一直取到页数预算用完,并为每条帖子只保留六个字段,这样 200 条帖子仍是一个很短的提示词。

    Python
    import os
    
    import requests
    
    SORSA = "https://api.sorsa.io/v3"
    HEADERS = {"ApiKey": os.getenv("SORSA_API_KEY", "YOUR_API_KEY")}
    
    
    def fetch_posts(query: str, max_pages: int = 10) -> list[dict]:
        posts, cursor = [], None
        for _ in range(max_pages):
            body = {"query": query, "order": "latest"}
            if cursor:
                body["next_cursor"] = cursor
            r = requests.post(f"{SORSA}/search-tweets", json=body,
                              headers=HEADERS, timeout=30)
            r.raise_for_status()  # 403: key or quota; 429: over 20 req/s
            data = r.json()
            for t in data.get("tweets", []):
                posts.append({
                    "id": t["id"],
                    "at": t["created_at"],
                    "author": t["user"]["username"],
                    "followers": t["user"]["followers_count"],
                    "likes": t["likes_count"],
                    "text": t["full_text"][:500],
                })
            cursor = data.get("next_cursor")
            if not cursor:
                break
        return posts
    
  4. 只就这些帖子向 Grok 提问。 把精简后的帖子作为提示词发出去,不带 tools,并要求在回答里给出帖子 ID。

    Python
    import json
    
    from openai import OpenAI
    
    grok = OpenAI(api_key=os.environ["XAI_API_KEY"],
                  base_url="https://api.x.ai/v1")
    
    
    def ask_grok(question: str, posts: list[dict]) -> str:
        lines = "\n".join(json.dumps(p, ensure_ascii=False) for p in posts)
        resp = grok.responses.create(
            model="grok-4.7",
            input=[
                {"role": "system", "content":
                 "Answer only from the posts given. Cite post ids."},
                {"role": "user", "content": f"{question}\n\nPosts:\n{lines}"},
            ],
        )
        return resp.output_text
    
    
    posts = fetch_posts('"grok api" lang:en -filter:retweets')
    print(ask_grok("What problems do developers report?", posts))
    

十页搜索是 10 次请求、约 200 条帖子,所以不论哪个 Sorsa API 套餐,这次运行的数据成本最多几美分,而且接下来无论是 Grok、Claude 还是 GPT 来读,成本都一样。我们的 Twitter 搜索 API 指南列出了能在花钱之前先收窄查询的运算符。

#人们向 Grok 询问 X 账号时问的是什么

人们在 Grok 里输入的许多关于某个账号的问题,都有一个精确的答案,一次 API 调用就能返回,例如粉丝数、用户 ID、关注列表或限流状态。模型针对这些数字写出的一句话,可能过时或被四舍五入;而查询返回的是调用那一刻的当前值,放在你的代码能直接读取的字段里。

人们向 Grok 问什么Sorsa API 查询返回什么
这个账号有多少粉丝?GET /info(在新标签页打开)followers_count、followings_count、tweets_count、created_at,另有 15 个字段
这个账号的用户 ID 是什么?GET /username-to-id/{user_handle}(在新标签页打开)数字 id
这个账号关注了谁?GET /follows(在新标签页打开)每页最多 200 个账号,附 next_cursor
这个账号被限流了吗?GET /check-shadowban(在新标签页打开)is_shadowbanned,以及每项检查的结果:正常、被限制或未知
这个账号这周发了什么?POST /user-tweets(在新标签页打开)每页约 20 条帖子,每条都带完整的作者资料

其中有两项有不用写代码的免费工具:查用户 ID 用 Twitter ID 查询,查搜索限制用 Twitter 限流检测。要一次查许多账号,GET /info-batch(在新标签页打开)每次调用返回 100 份用户资料,每 1,000 份 $0.014 起,而通过 X Search 是每 1,000 份 $10.00。

#按任务选择用哪个

当你想要的结果是一句话时,问 Grok;当结果是帖子、一份列表或一个数字时,用 X 数据 API;大多数产品两者都需要,顺序是:先取回,再提问。决定的标准就是上面表格里的那些:谁来挑帖子、能不能拿到每一条匹配、重跑一遍会不会得到同样的帖子,以及每 1,000 条的价格。

任务用什么
针对今天的讨论问一个一次性的问题Grok,在应用里
匹配某个查询的每一条帖子,存进你的数据库Sorsa API,POST /search-tweets 逐页取
粉丝数或互动数据的看板Sorsa API,GET /info-batch 和 POST /tweet-info-bulk
一个账号往前几年的帖子Sorsa API,POST /user-tweets
人们谈论你产品的每日摘要用 Sorsa API 取回,再用 Grok 或任何模型总结
核对 Grok 回答中引用的帖子Sorsa API,用 ID 调用 POST /tweet-info-bulk
  • 针对今天的讨论问一个一次性的问题

    用什么
    Grok,在应用里
  • 匹配某个查询的每一条帖子,存进你的数据库

    用什么
    Sorsa API,POST /search-tweets 逐页取
  • 粉丝数或互动数据的看板

    用什么
    Sorsa API,GET /info-batch 和 POST /tweet-info-bulk
  • 一个账号往前几年的帖子

    用什么
    Sorsa API,POST /user-tweets
  • 人们谈论你产品的每日摘要

    用什么
    用 Sorsa API 取回,再用 Grok 或任何模型总结
  • 核对 Grok 回答中引用的帖子

    用什么
    Sorsa API,用 ID 调用 POST /tweet-info-bulk

对于任何以帖子本身为产品的任务,选择是 Sorsa API:帖子带全部 41 个字段,通过搜索每 1,000 条 $0.07 起,按 ID 获取每 1,000 条 $0.014 起,每个匹配都能逐页取到,历史可回溯到 2006 年。它是只读的,从不索要你的 X 登录信息,所以你的 X 账号没有任何风险。要发帖或回复,请搭配官方 X API。

按计划运行 Grok 的智能体也遵循同样的规则;Hermes Agent 指南展示了它内置的 x_search 处于什么位置,以及如何更换数据源。这些数字背后的每一项 X API 价格,都在我们的 X API 价格详解里。

#给 Grok 喂你选的帖子

Grok 给你的是一段关于 X 的回答;至于背后的帖子、计数和历史,请先取回它们。用 Sorsa API,每 1,000 条帖子 $0.07 起,而不是通过 X Search 的 $5.00,帖子带着作者和每个字段,而且你的前 100 次请求是免费的:大约够取 2,000 条帖子,来试一试上面的管道。

#常见问题

Grok API 能搜索 Twitter 吗?

能。xAI API 的 X Search 工具(x_search)让 Grok 可以对 X 帖子做关键词搜索和语义搜索、查询用户、抓取帖子串,然后给出一段回答,附上它所用帖子的链接。收费是每取回 1,000 条帖子 $5、每 1,000 份用户资料 $10,另加模型 token。它返回的是 Grok 的回答,不是帖子记录;要记录,请从 X 数据 API 获取帖子。

有 X 或 Grok 订阅,Grok 的 X Search 就免费吗?

不是。xAI 的套餐页面说,The X Subscription 的付费套餐包含 Grok API 访问权限,但 API 用量按标准模型费率单独计费,不会从套餐的用量池中扣除。不论你持有哪个套餐,通过 API 的每一次 X Search 调用,都按取回的帖子和用户资料计费,分别是每 1,000 条 $5 和 $10,另加 token。

Grok 使用实时的 X 数据吗?

只有在搜索工具开启时才用。xAI 表示 Grok 对训练数据之外的时事一无所知,grok-4.7 的训练数据截止到 2026 年 5 月,实时数据需要 Web Search 或 X Search。在 Grok 应用里,搜索会替你运行;通过 API 则要在请求里加上 x_search,并为它取回的帖子付费。

Grok 能把推文以 JSON 返回吗?

Grok 可以把回答格式化成 JSON,但这段 JSON 是模型根据它选择去读的帖子写出来的,不是从数据库里返回的。字段可能缺失,重跑一次也可能选出不同的帖子。要可靠的记录,请让 Grok 给出帖子 ID,再按 ID 取回这些帖子,例如用 Sorsa API 的 POST /tweet-info-bulk,每次调用 100 条。

Grok 一个问题会取回多少条帖子?

模型想取多少就取多少。X Search 对它的搜索和帖子串抓取所返回的每一条帖子计费,包括上级帖子和被引用的帖子,返回两次的帖子算两次;xAI 的示例问题取回了 19 条帖子。每个响应都会报告 x_posts_fetched,所以你可以在调用之后读到这个数,范围更窄的用户名、日期和更少的搜索轮数,可以把它压低。

给 AI 应用获取推文,该用哪个 API?

用 Sorsa API 获取推文,再用任意模型(包括 Grok)来读它们。Sorsa API 返回带 41 个字段和作者的帖子,通过搜索每 1,000 条 $0.07 起,而 Grok 的 X Search 或官方 X API 是每 1,000 条 $5.00。它只需要一个 API 密钥,所有套餐统一每秒 20 次请求,并附 100 次免费请求。

#我们如何核实

2026 年 11 月 2 日,我们读了 xAI 的 X Search、价格和模型文档,x.ai 上的套餐页面,X 的按量付费价目表及其 10 月 23 日关于扩展的通知,并与 Sorsa API 的实时接口文档做了比对。本页的请求和代码都依据这些文档编写;我们没有为这篇文章调用任何一个 API,所以文中的响应只是按文档格式给出的示例。

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

更新内容
  • 首次发布。