Documentation Index
Fetch the complete documentation index at: https://generaltranslation.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
リスト投稿ルックアップ: Standard v1.1 と X API v2 の比較
標準 v1.1 の GET lists/statuses エンドポイントを利用している場合、このガイドでは、標準 v1.1 エンドポイントと X API v2 エンドポイントの共通点と相違点を理解できるように解説します。
- 共通点
- 相違点
- エンドポイント URL
- App と Project の要件
- リクエストごとのデータオブジェクト数の上限
- レスポンスデータ形式
- リクエストパラメータ
認証
両方のエンドポイントバージョンは OAuth 1.0a User Context をサポートしています。したがって、以前に標準 v1.1 の List Posts ルックアップエンドポイントのいずれかを使用していた場合、X API v2 のバージョンへ移行しても、同じ認証方式を引き続き利用できます。
利用する認証ライブラリ/パッケージによっては、App のみ認証が最も簡単な利用開始方法であり、シンプルなリクエストヘッダーで設定できます。App のみ Access Token の生成方法については、この App のみガイドを参照してください。
レート制限
| |
|---|
| Standard v1.1 | X API v2 |
/1.1/lists/statuses.json
OAuth 1.0a User Context を使用した場合、15 分あたり 900 リクエスト
App のみ認証を使用した場合、15 分あたり 900 リクエスト | /2/lists/:id/tweets
OAuth 1.0a User Context を使用した場合、15 分あたり 900 リクエスト
OAuth 2.0 Authorization Code with PKCE を使用した場合、15 分あたり 900 リクエスト
App のみ認証を使用した場合、15 分あたり 900 リクエスト |
エンドポイント URL
- 標準 v1.1 エンドポイント:
- X API v2 エンドポイント:
App と Project の要件
X API v2 のエンドポイントでは、リクエストを認証する際に、developer App の認証情報を使用する必要があります。また、この App は Project に関連付けられている必要があります。X API v1.1 のすべてのエンドポイントでは、Project に関連付けられていない App の認証情報も、Project に関連付けられた App の認証情報も使用できます。
1 リクエストあたりのデータオブジェクト数の上限
標準 v1.1 の /lists/statuses エンドポイントでは、1 回のリクエストで最大 5000 件の投稿を返すことができます。新しい v2 エンドポイントでは、1 回のリクエストで最大 100 件の投稿を返すことができます。デフォルトでは 100 件の user オブジェクトが返されます。返される結果数を変更するには、クエリパラメータ max_results= に 1〜100 の数値を指定する必要があります。その後、レスポンスペイロードで返される next_token を、次のリクエストの pagination_token クエリパラメータに指定できます。
レスポンスデータ形式
標準 v1.1 と X API v2 のエンドポイントバージョンの最大の違いの 1 つは、どのフィールドをペイロードに含めるかの指定方法です。
標準エンドポイントでは、多くのレスポンスフィールドがデフォルトで返され、追加で返したいフィールドまたはフィールドセットをパラメータで指定することができます。
X API v2 のバージョンでは、デフォルトで返されるのは Post の id と text フィールドのみです。追加のフィールドやオブジェクトを要求するには、fields および expansions パラメータを使用する必要があります。このエンドポイントから要求した Post のフィールドは、すべてプライマリの Post オブジェクト内に返されます。展開されたオブジェクトのフィールドは、レスポンス内の includes オブジェクトに返されます。その後、プライマリオブジェクトと展開されたオブジェクトの ID を照合することで、任意の展開オブジェクトをプライマリの Post オブジェクトに対応付けることができます。
以下は、指定可能な Post のフィールドと expansions の例です:
- attachments
- author_id
- context_annotations
- created_at
- geo
- lang
| |
|---|
| エンドポイント | Expansion |
| /2/lists/:id/tweets | author_id |
これらの新しいパラメータの詳細については、それぞれのガイド、または fields と expansions の使用方法 に関するガイドを参照することをお勧めします。
また、標準 v1.1 のフィールドを新しい v2 のフィールドにマッピングするのに役立つ データ形式移行ガイド も用意しています。このガイドでは、特定のフィールドを返すために v2 のリクエストに指定する必要がある、具体的な expansion および field パラメータも確認できます。
特定のフィールドのリクエスト方法の変更に加えて、X API v2 では、Post オブジェクトや user オブジェクトを含む、API が返すオブジェクトの新しい JSON 設計も導入しています。
-
JSON のルートレベルでは、標準エンドポイントは Post オブジェクトを statuses 配列で返しますが、X API v2 は data 配列で返します。
-
Retweeted と Quoted の「statuses」を指す代わりに、X API v2 の JSON では Retweeted と Quoted のツイートを参照します。contributors や user.translator_type など、多くのレガシー/非推奨フィールドは削除されます。
-
Post オブジェクトでの favorites、user オブジェクトでの favourites の両方を使用する代わりに、X API v2 では like という用語を使用します。
-
X では、値がない JSON フィールド (たとえば null) はペイロードに書き出さないという規約を採用しています。Post および user の属性は、非 null の値を持つ場合にのみ含まれます。
リクエストパラメータ
次の標準 v1.1 リクエストパラメータには、X API v2 における対応する項目があります:
| |
|---|
| 標準 v1.1 | X API v2 |
| list_id | id |
| slug | 対応する項目なし |
| owner_screen_name | 対応する項目なし |
| owner_id | expansions パラメータで author_id を指定してリクエスト |
| since_id | 対応する項目なし |
| max_id | 対応する項目なし |
| include_entities | tweet.fields パラメータで entities を指定してリクエスト |
| include_rts | 対応する項目なし |
| count | max_results |
curl "https://api.x.com/2/lists/84839422/tweets?tweet.fields=created_at,public_metrics&max_results=100" \
-H "Authorization: Bearer $BEARER_TOKEN"