Twitter 监控 API:实时监控指定 X 账号

你选定的 X/Twitter 账号的帖子、删除、置顶、资料和关注变化通过一个 WebSocket 以 JSON 送达,所有套餐还能同步发到 Discord。

  • Minimum 含 50 个账号
  • 随时添加或移除账号

3 天试用,之后 $199/月 · 5 个监控账号 · 1 个 WebSocket

Twitter 监控 API 如何运作

使用 TweetStream 的 Twitter 监控 API,你的后端打开一个经过身份验证的 WebSocket,你选定的 X 账号产生的事件都会以 JSON 送达。数据流保持打开时也可以添加或移除账号。

  1. 在控制台创建 API key,并添加要监控的 X 账号。
  2. 从服务端用 tweetstream.v1 协议和你的 API key 打开 WebSocket。
  3. 按事件类型和操作路由,例如新帖子、删除、资料变化和关注。
  4. 通过 REST 接口或账号管理连接修改观察列表。已打开的数据流会直接使用新列表,无需重连。

TweetStream 负责什么

随时添加或移除账号
把账号发送到添加和移除接口,或通过账号管理连接发送。消费端连接持续运行,并按新列表路由。
不止帖子的账号事件
删除、置顶、资料变化、关注和取消关注在可用时推送,并附带代币检测和帖子图片 OCR。
Discord 路由
所有套餐都可以把同样的提醒发送到 Discord webhook,团队成员阅读提醒的同时,机器人照常消费数据流。
客户端重连
重连由你的客户端负责。使用指数退避,连接稳定 30 秒后重置等待时间,Node.js 和 Python 指南都是这样做的。

用 Node.js 或 Python 连接

Node.js:打印观察列表中的新帖子

typescript
import WebSocket from "ws";
 
const ws = new WebSocket("wss://ws-global.tweetstream.io/ws", [
  "tweetstream.v1",
  `tweetstream.auth.token.${process.env.TWEETSTREAM_API_KEY}`,
]);
 
ws.on("message", (raw) => {
  const event = JSON.parse(raw.toString());
  if (event.t === "tweet" && event.op === "content") {
    console.log(event.d?.author?.handle, event.d?.text);
  }
});
带重连逻辑的 Node.js 客户端指南

Python:打印观察列表中的新帖子

python
import asyncio
import json
import os
 
import websockets
 
PROTOCOLS = ["tweetstream.v1", f"tweetstream.auth.token.{os.environ['TWEETSTREAM_API_KEY']}"]
 
async def main():
    async with websockets.connect("wss://ws-global.tweetstream.io/ws", subprotocols=PROTOCOLS) as ws:
        async for raw in ws:
            event = json.loads(raw)
            if event["t"] == "tweet" and event["op"] == "content":
                tweet = event["d"]
                print(tweet.get("author", {}).get("handle"), tweet.get("text"))
 
asyncio.run(main())
带重连逻辑的 Python 客户端指南

团队为什么使用它

  • 3 天试用包含 5 个跟踪账号和 1 个 WebSocket 连接。
  • 无需运行自己的账号关注进程,也能监控重点账号列表。
  • 所有套餐都包含 Discord 路由,提醒可以直达团队采取行动的频道。
  • 投入生产前即可查看账号和连接容量。

常见问题

我可以实时监控指定 X/Twitter 账号吗?
可以。TweetStream 跟踪你列出的账号,不必依赖覆盖整个 X 的关键词搜索。
如何在不重启机器人的情况下添加或移除账号?
在后端调用添加和移除接口,或通过账号管理 WebSocket 发送命令。消费端连接保持打开,会自动使用新的列表。请求格式见账号管理文档。
提醒如何交付?
通过 WebSocket API 以 JSON 形式接收。所有套餐还可以把同样的提醒发送到 Discord webhook,在控制台中设置即可。
连接断开时客户端应该怎么做?
用指数退避重连,连接稳定 30 秒后重置等待时间。事件处理要保持幂等,避免重复消息触发第二笔交易。Pro、Scale 和 Ultra Speed 可以用 History API 回放断线期间错过的事件。
最多可以监控多少个 X 账号?
Minimum 可监控 50 个账号,Pro 可监控 250 个。Scale 可自定义上限。

把这个工作流接入实时信号

添加最多 5 个你交易时关注的账号,连接一个 WebSocket,再把提醒与你现在看到的信息对比。

3 天试用,之后 $199/月 · 5 个监控账号 · 1 个 WebSocket