メインコンテンツへスキップ

List Posts lookup endpoint の使い方入門

このクイックスタート ガイドでは、Postman を使用して List Posts lookup endpoint への最初のリクエストを送信する手順を説明します。 さまざまな言語のサンプルコードを確認したい場合は、X API v2 サンプルコード の GitHub リポジトリをご覧ください。

前提条件

このガイドを完了するには、リクエストを認証するための一連の キーおよびトークン が必要です。以下の手順に従ってキーおよびトークンを生成できます。
  • デベロッパーアカウントに登録 し、承認を受けてください。
  • developer portal で Project を作成し、関連付けられた 開発者用 App を作成します。
  • App の「Keys and tokens」ページに移動して、必要なクレデンシャルを生成します。すべてのクレデンシャルは安全な場所に保管してください。

ListのPostsをルックアップするリクエストを作成する手順

ステップ1: ツールまたはライブラリから始める

この endpoint にリクエストを送る方法はいくつかありますが、ここでは手順を簡潔にするため Postman を使用します。 X API v2 の Postman コレクションを環境に読み込むには、次のボタンをクリックしてください: Postman に X API v2 コレクションを読み込んだら、「List」フォルダに移動し、続いて「List Posts」フォルダを選択し、「List Posts lookup」を選びます。  

ステップ2:リクエストを認証する

X API に正しくリクエストするには、権限があることを確認する必要があります。この endpoint で行うには、App onlyOAuth 2.0 Authorization Code with PKCE、または OAuth 1.0a User Context のいずれかの認証方式でリクエストを認証する必要があります。 簡単のため、このリクエストでは App only を使用しますが、非公開のmetricsや Posts をリクエストする場合は、他のいずれかの認証方式を利用してください。  App only を利用するには、Postman で “X API v2”(Postman 右上)という名前の environment を選択し、「initial value」と「current value」の fields(environment ドロップダウンの横にある目のアイコンをクリック)にキーおよびトークン(特に App only Access Token、別名 App only Bearer Token)を追加してください。 正しく設定できていれば、これらの変数はリクエストの authorization タブに自動的に反映されます。  

ステップ3:取得したいPostsの取得元となるListを特定して指定する

リクエスト内で受け取りたいListを指定する必要があります。ListのIDは、x.comで対象のListをクリックしてURLを確認すると見つけられます。たとえば、次のURLのList IDは84839422です。 https://x.com/i/lists/84839422 対象IDは有効なList IDであればどれでも使用できます。Postmanで「Params」タブに移動し、idパス変数の「Value」列に自分のIDを入力してください。IDの前後にスペースを入れないよう注意してください。
KeyValue
id84839422(ListのID)

ステップ4:取得したい fields を特定して指定する

ステップ3の後に「Send」ボタンをクリックすると、レスポンスにはデフォルトのPost オブジェクトの fields(id と text)が返されます。 追加の fields を受け取りたい場合は、リクエストで tweet.fields および/またはexpansions パラメータでそれらの fields を指定する必要があります。 この演習では、異なるオブジェクトから次の3つの追加の fields セットをリクエストします:
  • プライマリの Lists オブジェクトにおける追加の created_at field
  • expansion パラメータを使用して取得する完全なユーザーオブジェクト
  • 関連するユーザーオブジェクトにおける追加の user.created_at field
Postman で「Params」タブに移動し、「Query Params」テーブルに次のキー:値のペアを追加します:
KeyValueReturned fields
tweet.fieldscreated_atcreated_at
expansionsauthor_idincludes.users.id,
includes.users.name,
includes.users.username
user.fieldscreated_atincludes.users.created_at
これで「Send」ボタンの横に、次のような URL が表示されるはずです: https://api.x.com/2/lists/84839422/tweets?expansions=author_id&user.fields=created_at&max_results=1

ステップ5:リクエストを送信し、レスポンスを確認する

すべての設定が完了したら、「Send」ボタンをクリックすると、次の例と同様のレスポンスが返ってきます。
{
  "data": [
    {
      "author_id": "4172587277",
      "id": "1458172421115101189",
      "text": "ドイツは今週、Covid-19の新規感染者数で記録を更新しました。政府と保健専門家によると、ワクチン未接種者がこの状況の原因となっています \nhttps://t.co/4POyaPwMLu"
    }
  ],
  "includes": {
    "users": [
      {
        "username": "MomentsBrasil",
        "name": "X Moments Brasil",
        "created_at": "2015-11-12T16:46:02.000Z",
        "id": "4172587277"
      }
    ]
  },
  "meta": {
    "result_count": 1,
    "next_token": "7140dibdnow9c7btw3z2vwioavpvutgzrzm9icis4ndix"
  }
}
ご注意ください: このendpointのレスポンスでは、指定されたListに対して最新のPosts800件をqueryできます
I