メインコンテンツへスキップこのページでは、blocks エンドポイントをシステムに統合する際に知っておくべき各種ツールと主要概念について説明します。内容は次のセクションに分かれています。
このエンドポイントを統合するうえで重要な概念に入る前に、次の内容にあらかじめ慣れておくことをおすすめします。
Postman は、エンドポイントのテストに最適なツールです。各 Postman リクエストには、利用可能な内容をすばやく把握できるよう、すべてのパスおよびボディパラメータが含まれています。Postman コレクションの詳細は、“Postman の使用”をご覧ください。
このエンドポイントを好みのプログラミング言語で使い始めたい方へ。私たちの GitHub ページには、導入の出発点として利用できるコードサンプルをいくつか用意しています。
コミュニティが提供するサードパーティ製ライブラリを活用して、スムーズに始めましょう。適切なバージョンタグを確認すれば、v2 エンドポイントに対応するライブラリを見つけられます。
すべての X API v2 エンドポイントでは、キーやトークンとも呼ばれる一連の認証情報を用いてリクエストを認証する必要があります。これらのエンドポイントへのリクエストの認証には、OAuth 1.0a ユーザーコンテキストまたは OAuth 2.0 認可コード(PKCE 対応)のいずれかを使用できます。
OAuth 1.0a ユーザーコンテキスト では、API Keys、ユーザーの Access Tokens、その他いくつかのパラメータを使用して 認可ヘッダーを作成 し、そのヘッダーをリクエストに付与して送信する必要があります。Access Tokens は、あなたが代理でリクエストを行うユーザーに紐づいている必要があります。別のユーザーの Access Tokens を生成したい場合は、そのユーザーが 3-legged OAuth flow を用いてあなたのアプリを承認する必要があります。
OAuth 1.0a は扱いが難しい場合があります。この認証方式に不慣れな場合は、ライブラリを利用する、Postman のようなツールを使う、または OAuth 2.0 を用いてリクエストを認証することをお勧めします。
OAuth 2.0 認可コード(PKCE 対応) は、アプリケーションのスコープをより細かく制御でき、複数デバイス間での認可フローにも対応します。OAuth 2.0 では、ユーザーに代わって特定の権限を付与するための細粒度なスコープを選択できます。
アプリで OAuth 2.0 を有効にするには、開発者ポータルの App settings セクションにあるアプリの認証設定で有効化してください。
X API v2 のエンドポイントで使用できる認証情報一式を取得するには、開発者アカウントに登録し、そのアカウント内にプロジェクトを設定し、そのプロジェクト内に開発者アプリを作成する必要があります。キーとトークンは開発者アプリ内で確認できます。
毎日、数千人規模の開発者が X API にリクエストを送信しています。こうした大量のリクエストを適切に管理するため、レート制限 が各エンドポイントに設けられており、アプリまたは認証済みユーザーに代わって行えるリクエスト数が制限されています。
これらのエンドポイントにはユーザーレベルのレート制限が適用されます。つまり、代行してリクエストを行う認証済みユーザーは、どの開発者アプリからであっても、そのエンドポイントを呼び出せる回数に上限があります。POST および DELETE メソッドの場合、エンドポイントごとに 15 分あたり 50 回のユーザーレート制限が適用されます。一方、GET メソッドでは 15 分あたり 15 回が上限です。
X API v2 の GET エンドポイントでは、fields と expansions と呼ばれる一連の手段を使って、API から返したい data を正確に指定できます。expansions パラメータを使うと、ペイロード内で参照されているオブジェクトを展開できます。たとえば、このエンドポイントでは次の expansions を取得できます:
fields パラメータを使うと、受け取りたい複数の data オブジェクト内のどの fields を返すかを正確に指定できます。これらのエンドポイントは主に Post オブジェクトを返します。既定では、Post オブジェクトは id と text fields を返します。tweet.created_at や tweet.entities のような追加の fields を受け取るには、fields パラメータで明示的にリクエストする必要があります。統合での利用を検討すべき重要な fields として、poll data、metrics、Post annotations、conversation ID fields があります。
X API v2 data dictionary に、fields と expansions の使い方 を解説したガイドを追加しました。
Blocks lookup は大量のデータを返す場合があります。任意の時点で結果が多くなりすぎないよう、ページネーションを使用しています。結果のページング方法については、こちらをご覧ください。