メインコンテンツへスキップ
Enterpriseエンドポイントは、編集されたPostのmetadataを提供するように更新されました。_Edit Posts_機能は、2022年9月1日にX従業員の間でテスト用に初めて導入されました。その日から、対象となるPostsは30分間、最大5回まで編集可能でした。2022年9月29日以降に作成されたすべてのPostsのオブジェクトには、そのPostが一度も編集されていない場合でも、Post編集metadataが含まれています。Postが編集されるたびに、新しいPost IDが作成されます。Postの編集履歴は、元のIDから始まって、これらのIDを連鎖させることで記述できます。さらに、編集チェーン内のいずれかのPostが削除された場合、そのチェーン内のすべてのPostsも削除されます。 これらのmetadataの詳細は自動的に含まれます。Post オブジェクトの一部として利用可能な編集履歴を含めるのに、リクエストパラメータは不要です。 これらの新しいmetadataにより、開発者は次のことを確認できます:
  • 作成時点でそのPostが編集対象だったかどうか。投票を含むものや予約されたPostsなど、一部のPostsは編集できません。
  • Posts は30分間編集でき、最大5回まで編集可能です。編集可能な Posts では、残りの編集時間と、あと何回編集できるかを確認できます。
  • 編集済みのPostのバージョンを表示している場合。ほとんどの場合、特定の過去バージョンがPost IDでリクエストされない限り、APIはPostの最新バージョンを返します。
3つの新しいPost属性がルートレベルに追加されました:
  • edit_history  - このフィールドは、そのPostの編集履歴に関連付けられたすべてのPost IDを返します。“initial_tweet_id” 属性は元のPostを示し、“edit_tweet_ids” 属性は編集履歴に関連付けられたすべてのIDを含む配列です。Postが編集されていない場合、この配列にはIDが1件だけ含まれます。
"edit_history": {
    "initial_tweet_id": "1283764123"
    "edit_tweet_ids": ["1283764123"]
  }
  • edit_controls - 30分間の編集ウィンドウの終了時刻と、残りの編集可能回数を示す属性を提供します。
"edit_controls": {  
     "editable\_until\_ms": 1660155761384
     "edits_remaining": 3   
  }
  • editable - 作成時点でその Post が編集可能だったかどうかを示します。
“editable”: true ほとんどのPostsが対象となります。ただし、以下のタイプのPostsは対象外です:
  • Post はプロモートされています
  • Post には投票が含まれています
  • Post は自己スレッド以外への返信です
  • Post はリツイートです(引用ツイートは編集可能である点に注意)
  • Post は nullcast です
  • Community Post
  • スーパーフォロー Post
  • 共同作成のPost
未編集のPostの属性例 以下のJSONは、Post編集機能が追加された後に投稿されたPostに含まれる編集metadataを示しています。この例は編集履歴のないPostのものです。 "edit_tweet_ids"配列には単一のIDが含まれていることに注意してください。
{
  "created_at": "Wed Aug 16 18:29:02 +0000 2022",
  "id": 1557433858676740098,
  "id_str": "1557433858676740098",
  "text": "編集ボタンを使うことがあるのかな",
  "edit_history": {
    "initial_tweet_id": "1557433858676740098",
    "edit_tweet_ids": ["1557433858676740098"]
  },
  "edit_controls": {
    "editable_until_ms": 1660155761384,
    "edits_remaining": 5
  },
  "editable": true
}
編集されたPostの属性例 以下のJSONは、Post編集機能が追加された後に投稿されたPostに含まれる編集metadataを示しています。この例は、1回編集されたPostのものです。 "edit_tweet_ids"配列には2つのIDが含まれていることに注意してください。1つは元のPost、もう1つは編集後の更新されたPostのIDです。
{
  "created_at": "Wed Aug 16 18:35:42 +0000 2022",
  "id": 1557445923210514432,
  "id_str": "1557445923210514432",
  "text": "編集ボタンを使うことがあるのかな",
  "edit_history": {
    "initial_tweet_id": "1557433858676740098",
    "edit_tweet_ids": ["1557433858676740098", "1557445923210514432"]
  },
  "edit_controls": {
    "editable_until_ms": 1660155761384,
    "edits_remaining": 4
  },
  "editable": true
}
コンプライアンス対応 Compliance Firehose と v2 の batch compliance endpoint の双方が、Post の編集に対応するよう更新されました。 Compliance Firehose に新しい “tweet_edit” イベント type が追加されました。
{
  "tweet_edit": {
    "id": <tweetId>,
    "initial_tweet_id": <tweetId>,
    "edit_tweet_ids": [<tweetId1>, <tweetId2>, <tweetId3> ...],
    "timestamp_ms": "<timestampMsStr>"
  }
}
I