X API v2 有哪些新内容 | 了解我们在 X API v2 中发布的新 endpoint 和功能。 |
---|---|
准备迁移了吗? | 按照一套指南和说明开始你的迁移。 |
数据格式迁移指南 | 了解如何重构此前适配 Standard v1.1 和 Enterprise 数据格式的 data 解析器。 |
X API endpoint 映射 | 查看 Standard v1.1 和 Enterprise endpoint 如何映射到新的 X API v2 endpoint。 |
什么是 X API v2?
为什么要迁移?
V2 endpoint
- Spaces endpoint,帮助人们更好地使用 X Spaces,并使开发者能够共同塑造音频对话的未来。
- Hide replies,可让您构建工具,在大规模场景下限制具有辱骂性、干扰性或误导性的回复带来的影响。
- 全新的 Lists endpoint,允许您固定和取消固定 Lists,或查询某人的固定 Lists。
- 全新的批量合规 endpoint,可帮助您确保所存储的用户和 Tweet data 符合合规要求。
新功能
- 各个 endpoint 间的一致性设计
- 可在响应负载中指定返回的 fields 和对象
- 更为丰富且更详细的数据对象
- 借助 Tweet annotations 提供的新上下文信息来接收并筛选数据
- 访问新的度量
- 轻松识别并筛选属于回复线程的会话
- 为学术研究人员提供高级功能与更高的数据访问权限
- 面向流式 endpoint 的恢复与冗余功能
- 轻松返回与 query 匹配的 Tweets 计数
- 支持 Edit Tweets
- 高置信度垃圾信息过滤
- 短链接将被完全展开,便于更高效的过滤与分析
- 通过移除已弃用字段并现代化标签来简化 JSON 响应对象
- 在搜索查询中返回 100% 符合条件且可用的公开 Tweets
- 流式“rules”,可在不断开连接的情况下进行更改
- 更具表达力的查询语言,适用于 search Tweets、Tweet counts 和 filtered stream
- OpenAPI 规范,用于构建新库并更透明地跟踪变更
了解全新与更新的响应对象
Object | Description |
---|---|
Tweet | Tweet 对象具有大量根级字段,例如 id 、text 和 created_at 。Tweet 对象也是多个子对象(包括 user 、media 、poll 和 place )的父对象。 |
User | 用户对象包含描述被引用用户的 X 账户元数据。 |
Spaces | Space 对象由 state 、host_id 、is_ticketed ,以及 lang 等字段组成。 |
Lists | List 对象包含关于所请求 List 的基本信息,包括 description 、member_count 和 owner_id 。 |
Media | 如果一条 Tweet 包含媒体(例如图像),则可使用 media.fields 参数请求 media 对象,其包含 media_key 、type 、url 、preview_image_url 等字段。 |
Poll | Tweet 中包含的投票不是任何 endpoint 的主对象,但可以在 Tweet 对象中找到并通过 expansions 展开。 |
Place | place 对象包含 place_id 、geo 对象、country_code 等字段。此信息可用于按位置识别和分析 Tweet。 |
选择接收对象与字段的灵活性
id
和 text
字段。
如果您希望在请求中获取更多字段,需要使用 fields 和 expansions 参数。expansions 参数可让您检索相关数据对象,例如用户置顶的 Tweet 或媒体对象;而 fields 参数可让您在返回对象中请求超出默认范围的特定字段。
以下是可与不同 X API v2 endpoint 一起请求的 expansions 完整列表:
Object / Resource | Available Expansions |
---|---|
Tweets | author_id , edit_history_tweet_ids , entities.mentions.username , in_reply_to_user_id , referenced_tweets.id , referenced_tweets.id.author_id , attachments.poll_ids , attachments.media_keys , geo.place_id |
Users | pinned_tweet_id |
Spaces | invited_user_ids , speaker_ids , creator_id , host_ids , topic_ids |
在 Tweets、用户、Spaces 和媒体对象中新增可用度量
对象 | 可用度量 | 公开度量 | 私有度量 | 有机度量 | 推广大度量 |
---|---|---|---|---|---|
tweets | retweet_count | ✔️ | ✔️ | ✔️ | |
quote_count | ✔️ | ||||
like_count | ✔️ | ✔️ | ✔️ | ||
reply_count | ✔️ | ✔️ | ✔️ | ||
impression_count | ✔️ | ✔️ | ✔️ | ||
url_profile_clicks | ✔️ | ✔️ | ✔️ | ||
url_link_clicks | ✔️ | ✔️ | ✔️ | ||
user | follower_count | ✔️ | |||
user | following_count | ✔️ | |||
media | view_count | ✔️ | |||
media | playback_0_count | ✔️ | |||
space | participant_count | ✔️ |
编辑 Tweet
- 该 Tweet 在创建时是否具备可编辑资格。某些 Tweets(例如包含投票或已排程发布的 Tweets)无法编辑。
- Tweets 可在 30 分钟内编辑,且最多可编辑 5 次。对于可编辑的 Tweets,您可以查看是否仍在可编辑时间窗口内,以及剩余可编辑次数。
- 您是否正在查看某条 Tweet 的已编辑版本(在大多数情况下,API 将返回该 Tweet 的最新版本,除非根据 Tweet ID 请求了特定的历史版本)。
- 该 Tweet 的完整编辑历史。
- 归属于该 Tweet 各个版本的互动数据。
跟踪串联会话
准备迁移
认证
工具与代码
- 我们提供了一个 X 的 Postman collection,可让你使用 Postman 客户端向各个 endpoint 发起请求并进行连接。这是一种低阻力的方式,用于测试身份验证并试用这些 endpoint。
- 我们还提供了由 X 支持及第三方维护的库清单,涵盖 Ruby、Python、Node、Java 等多种语言。欲了解更多背景,请查看我们的工具与库页面。
迁移到更新的 endpoint
- Tweets
- 用户
- Lists
迁移到新的数据格式
- Native format 到 X API v2(Standard v1.1)
- Native Enriched 到 X API v2(Enterprise)
- Activity Streams 到 X API v2(Enterprise)