API 响应格式:User 与 Tweet 对象结构
Sorsa API 以 JSON 返回所有数据。本页介绍响应结构、核心数据对象、字段类型和分页模型,让你了解各端点会返回什么。约定
在了解具体对象之前,请先查看适用于整个 API 的格式规则。 ID 是字符串。 所有 X/Twitter ID(id、conversation_id_str、in_reply_to_tweet_id 等)都以字符串返回,而非整数。X 使用的 Snowflake ID 是 64 位数字,超出了 JavaScript 的 Number.MAX_SAFE_INTEGER。使用字符串可防止浏览器、Node.js 及将 JSON 数字表示为浮点数的语言发生静默精度丢失。
核心时间戳是 ISO 8601 字符串。 User 和 Tweet 的 created_at 使用如 2026-03-06T12:00:00Z 的值。其他日期字段请查看端点结构,不要假设验证结果或关系日期使用相同格式。
布尔值使用严格类型。 verified、is_reply、protected 和 can_dm 等状态标记始终为 true 或 false,不会使用 0/1 或 "true"/"false"。
null 与缺失字段。 请稳健处理可选字段,区分缺失值与实际测得的零或 false。遍历 bio_urls、pinned_tweet_ids 等可选数组时,将 null 或缺失值统一为空列表(Python 使用 user.get("bio_urls") or [];JavaScript 使用 user.bio_urls ?? [])。精简响应模型会省略完整 User 对象中的部分字段。
响应包装结构
返回单个对象的端点(如/info 或 /tweet-info)直接在顶层返回对象。返回列表的端点使用以下包装结构之一。
UsersResponse:用于 /followers、/follows、/verified-followers、/retweeters、/search-users、/list-members 和 /list-followers。/community-members 使用相同包装字段,但返回精简的 CommunityUser 对象。
/user-tweets、/comments、/quotes、/search-tweets、/mentions、/list-tweets、/community-tweets 和 /community-search-tweets。
/new-followers-7d、/new-following-7d 和 /top-following。/top-followers 使用 TopFollowersResponse,包含精简资料和 score 字段。
next_cursor,而是在一次响应中返回完整结果集。
User 对象
User 对象表示 X/Twitter 账号资料。/info 直接返回该对象;列表端点将其作为数组元素;每个 Tweet 对象也会在 user 字段中嵌入它。
Follower 对象
Follower 在 User 对象基础上增加一个字段,由/new-followers-7d、/new-following-7d 和 /top-following 返回。/top-followers 返回单独的精简模型,其中包含 score。
Tweet 对象
Tweet 对象包含单条推文的完整内容、元数据、互动指标和嵌套关系。/tweet-info 直接返回该对象,推文列表端点将其作为数组元素。
互动指标
对话串与回复上下文
嵌套对象
quoted_status 和 retweeted_status 字段包含完整 Tweet 对象,包括各自的 user、entities 和互动指标。因此一次 API 调用即可获得全部相关数据,无需追加请求。
TweetEntity 对象
entities 数组的每个元素表示推文中的媒体附件或嵌入链接。
基于游标的分页
支持分页的列表端点使用游标分页。批量查询和前面提到的加密货币分析列表不使用游标。对于不断新增内容的动态信息流,这种方式比基于偏移量的分页更可靠。 工作流程:- 首次请求不传游标。
- 响应在返回数据的同时包含
next_cursor字段。 - 将
next_cursor值放入下一个请求,以获取下一页。 next_cursor为null或缺失时,表示已到达数据末尾。