X API の投稿ルックアップエンドポイントの比較
エンドポイント比較表
| 説明 | Standard v1.1 | X API v2 |
|---|---|---|
| サポートされる HTTP メソッド | GET | GET |
| ホストドメイン | https://api.x.com | https://api.x.com |
| エンドポイントパス | /1.1/statuses/show.json, /1.1/statuses/lookup.json | /2/tweets |
| 認証 | OAuth 1.0a ユーザーコンテキスト | OAuth 1.0a ユーザーコンテキスト、OAuth 2.0 App-Only、OAuth 2.0 Authorization Code with PKCE |
| ポストの JSON 形式 | Standard v1.1 形式 | X API v2 形式、fields と expansions パラメーターによって決定される (v1.1 との後方互換性なし) |
| 特定の fields の選択をサポート | ✔ | |
| annotations フィールドをサポート | ✔ | |
| 新しい metrics フィールドをサポート | ✔ | |
conversation_id フィールドをサポート | ✔ | |
| ポスト編集履歴を提供 | ✔ | ✔ |
| Project に関連付けられた developer App の認証情報が必要 | ✔ |
Standard v1.1 と X API v2 の比較
-
類似点
- OAuth 1.0a ユーザーコンテキスト
- 1 回のリクエストあたりのポスト数の上限
- ポストの編集履歴とメタデータのサポート
-
相違点
- エンドポイントの URL
- App および Project の要件
- レスポンスのデータ形式
- リクエストパラメーター
共通点
OAuth 1.0a ユーザーコンテキスト認証方法
リクエストあたりのポスト数の上限
ids パラメータを使用し、カンマ区切りの Post IDs のリストを指定します。
ポストの編集履歴とメタデータのサポート
どちらのバージョンも、編集履歴を記述するメタデータを提供します。詳細については、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 の要件
レスポンスデータ形式
id と text フィールドのみが返されます。追加のフィールドやオブジェクトを取得するには、fields および expansions パラメータを使用する必要があります。展開されたフィールドはレスポンス内の includes オブジェクトに含まれ、ID を照合することで、メインのポストオブジェクトと対応付けることができます。
フィールドと expansions の使用方法については、fields と expansions の使い方ガイドを参照してください。データ形式の移行ガイドでは、standard v1.1 のフィールドを新しい v2 のフィールドにマッピングしています。
さらに、X API v2 では、ポストオブジェクトや user オブジェクトを含むオブジェクトに対して新しい JSON 設計が導入されています。
- standard エンドポイントはポストオブジェクトを
statuses配列で返しますが、X API v2 ではdata配列を使用します。 - X API v2 では、「statuses」という用語は使用されず、代わりにリツイートおよび引用ツイートという用語が用いられます。
likeなどの新しい用語が、favoritesやfavouritesといった用語を置き換えています。- 値を持たない属性 (例:
null) は、X API v2 のペイロードには含まれません。
conversation_id- 2 つの新しい annotations フィールド (
contextとentities) - 新しい metrics フィールド
- 特定のポストに誰が返信できるかを示す
reply_settingフィールド
リクエストパラメータ
| Standard | X API v2 |
|---|---|
id | ids |
| Standard | コメント |
|---|---|
tweet_mode | fields と expansions の機能に置き換えられました。 |
trim_user | fields と expansions に置き換えられました。ユーザーデータには author_id の expansion と user.fields を使用してください。 |
include_my_retweet | 認証ユーザーによるリツイートされたポストのリツイート元ポストの ID を返します。 |
include_entities | ペイロード内の entities を制御するために fields と expansions を使用してください。 |
include_ext_alt_text | alt テキストが存在する場合、media entity に ext_alt_text フィールドを追加します。 |
include_card_uri | 広告カードが添付されている場合に card_uri を追加します。 |
map | v1.1 でのフィールドの null 化とは異なり、利用できないポストについて、X API v2 ではポスト ID とエラーメッセージを返します。 |
cURL リクエスト
ACCESS_TOKEN を、あなたの App のアクセストークンに置き換えてください。v2 のエンドポイントの場合、トークンは Project 内の developer App に属している必要があります。
v1.1 からのレスポンスペイロードは v2 とは異なります。v2 では、fields パラメーターと expansions パラメーターを使って、返却されるフィールドを指定できます。
Standard v1.1 GET statuses/lookup および v2 GET /tweets エンドポイント
GET statuses/show/:id エンドポイントと v2 の GET /tweets/:id エンドポイント