X API の Posts lookup エンドポイントを比較する
v2 の Posts lookup エンドポイントは、standard v1.1 の GET statuses/lookup と GET statuses/show エンドポイントを置き換えます。本ガイドは、これらの旧バージョンから X API v2 に移行する開発者向けです。エンドポイント比較表
Standard v1.1 と X API v2 の比較
standard v1.1 の GET statuses/show と GET statuses/lookup を利用してきた方向けに、本ガイドは standard と X API v2 の Posts lookup エンドポイント間の類似点と相違点の理解を助けます。 X API v1.1 データフォーマットと X API v2 フォーマットの違いを素早く確認できるビジュアルデータフォーマット移行ツールも役立ちます。-
類似点
- OAuth 1.0a User Context
- リクエストごとの投稿数制限
- 投稿の編集履歴とメタデータのサポート
-
相違点
- エンドポイント URL
- App と Project の要件
- レスポンスデータ形式
- リクエストパラメーター
類似点
OAuth 1.0a User Context 認証方式
standard エンドポイントは OAuth 1.0a User Context をサポートし、新しい X API v2 Post lookup エンドポイントは OAuth 1.0a User Context と OAuth 2.0 App-Only の両方をサポートします。したがって、これまで standard v1.1 の Post lookup エンドポイントを使用していた場合、X API v2 版に移行しても同じ認証方式を引き続き使用できます。 App-Only 認証は最も簡単に始められる方法です。App Access Token の生成方法については、この OAuth 2.0 App-only ガイドを参照してください。リクエストごとの投稿数制限
v1.1 の GET statuses/lookup エンドポイントは、リクエストごとに最大 100 件の投稿を指定できます。これは GET /tweets エンドポイントにも当てはまります。100 件をフルに指定するには、ids パラメーターをクエリパラメーターとして、カンマ区切りの Post ID リストで渡します。
投稿の編集履歴とメタデータのサポート
両バージョンとも、編集履歴を記述するメタデータを提供します。詳細は Post lookup API リファレンスと Edit Posts fundamentals ページを参照してください。
相違点
エンドポイント URL
-
Standard v1.1 エンドポイント:
https://api.x.com/1.1/statuses/showhttps://api.x.com/1.1/statuses/lookup
-
X API v2 エンドポイント:
https://api.x.com/2/tweetshttps://api.x.com/2/tweets/:id
App と Project の要件
X API v2 エンドポイントでは、認証に Project に紐づく開発者 App の認証情報が必要です。X API v1.1 エンドポイントは、App または App に紐づく App の認証情報を使用できます。レスポンスデータ形式
standard v1.1 と X API v2 エンドポイント間の重要な違いは、ペイロード内でフィールドをどう選択するかです。 standard エンドポイントでは、多くのレスポンスフィールドがデフォルトで含まれ、パラメーターを使って追加フィールドを指定するオプションがあります。 X API v2 は、デフォルトで投稿のid と text フィールドのみを配信します。追加のフィールドやオブジェクトには fields と expansions パラメーターの使用が必要です。展開されたフィールドはレスポンス内の includes オブジェクトに返され、ID を照合することでプライマリの Post オブジェクトに対応付けられます。
fields と expansions の使い方の詳細は、fields と expansions の使い方のガイドを参照してください。standard v1.1 フィールドを新しい v2 フィールドに対応付けるデータフォーマット移行ガイドもあります。
さらに、X API v2 は Post や user オブジェクトを含むオブジェクトに新しい JSON 設計を導入しています:
- standard エンドポイントは Post オブジェクトを
statuses配列で返しますが、X API v2 はdata配列を使います。 - X API v2 では Retweeted と Quoted Tweets が “statuses” の用語を置き換えます。
favoritesやfavouritesのような用語はlikeなどの新しい用語に置き換えられます。- 値のない (例:
null) 属性は X API v2 ペイロードに含まれません。
conversation_id- 2 つの新しい annotations フィールド (
contextとentities) - 新しいメトリクスフィールド
- 誰が指定の投稿に返信できるかを示す
reply_settingフィールド
リクエストパラメーター
以下の standard v1.1 リクエストパラメーターには X API v2 での相当物があります:
一部の standard v1.1 パラメーターは X API v2 ではサポートされていません:
cURL リクエスト
以下の cURL リクエストは、standard v1.1 エンドポイントと v2 で対応するものを示しています。ヘッダーのACCESS_TOKEN を自分の App アクセストークンに置き換えてください。v2 エンドポイントでは、そのトークンは Project 内の開発者 App のものである必要があります。
v1.1 からのレスポンスペイロードは v2 と異なります。v2 では fields と expansions パラメーターを使って異なるフィールドをリクエストできます。
Standard v1.1 GET statuses/lookup と v2 GET /tweets エンドポイント
GET statuses/show/:id と v2 GET /tweets/:id エンドポイント