介绍
- Post 在创建时是否具备可编辑资格。某些 Post(例如带投票或已排程的 Post)不可编辑。
- Post 在 30 分钟内可编辑,且最多可编辑 5 次。对于可编辑的 Post,您可以查看是否仍有剩余编辑时间以及还可以编辑多少次。
- 您是否正在查看某个 Post 的已编辑版本(在大多数情况下,API 会返回该 Post 的最新版本,除非通过 Post ID 请求了特定的历史版本)。
- 该 Post 的完整编辑历史。
- 归属于该 Post 各版本的互动数据。
- 默认情况下,Post 负载会包含一个由 Post ID 构成的数组,表示该 Post 的编辑历史。此信息由
edit_history_tweet_ids
指定,它是 Post 负载中的默认字段。该数组至少包含一个 ID,即原始未编辑 Post 的 ID。当只有一个 ID 时,表示该 Post 没有编辑历史。 - 通过在您的 tweet.fields 参数中指定
edit_controls
,您可以获取诸如该 Post 在创建时是否可编辑、该 Post 是否仍有剩余可编辑时间,以及剩余可编辑次数等信息。 - 最后,您可以通过在 expansion 参数中指定
edit_history_tweet_ids
,获取该 Post 的编辑历史中每个 Post 的 Post 对象。
- 被推广的 Post
- 含有投票的 Post
- 非同线程的回复 Post
- 转发的 Post(注意引用 Tweet 符合编辑条件)
- nullcast 的 Post
- 社区 Post
- Super Follow Post
- 协作 Post
下面的示例演示了开发者如何使用 X API v2 请求已编辑 Post 的 metadata。 注意:以下示例使用的是用户 Post 时间线 endpoint,但对于所有返回 Post 的 endpoint(例如 Posts 查找、搜索、过滤的流 等),您都可以使用相同的参数(包含 fields 和 expansions)来请求这些 metadata。
默认行为
- Post ID
- Post 文本
- 一个包含某个 Post 编辑历史所涉及的 Post ID 的数组。如果仅提供一个 ID,则表示该 Post 尚未编辑。
curl --request GET 'https://api.x.com/2/users/:id/tweets' --header 'Authorization: Bearer $BEARER_TOKEN'
示例响应:
使用 edit_controls 获取更多数据
如果您需要额外的已编辑 Post 元数据,例如某个 Post 在创建时是否具备可编辑资格,以及其剩余的可编辑时间,您可以通过使用 tweet.fields 参数并将其设置为 edit_control 来请求这些信息。 请求:curl --request GET 'https://api.x.com/2/users/:id/tweets?tweet.fields=edit_control' --header 'Authorization: Bearer $BEARER_TOKEN'
示例响应:
获取某个 Post 的编辑历史中所有 Post 的 Post 对象
edit_history_tweet_ids
。构成编辑历史的 Post 对象将返回在“includes”对象中。
请求: