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

blocks lookup エンドポイントの始め方

このクイックスタートガイドでは、Postman を使用して blocks lookup エンドポイントへ最初のリクエストを送る方法を説明します。 各種言語のサンプルコードは、X API v2 sample code の GitHub リポジトリをご覧ください。

前提条件

このガイドを完了するには、リクエストを認証するためのキーとトークン一式が必要です。以下の手順に従って生成できます。
  • 開発者アカウントに登録し、承認を受けます。
  • 開発者ポータルで Project と関連付けられた developer App を作成します。
  • アプリの “Keys and tokens” ページに移動して、必要な認証情報を生成します。すべての認証情報は安全な場所に保存してください。

ブロック照会リクエストを作成する手順

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

このエンドポイントへのリクエストには、複数のツール、コード例、ライブラリを利用できますが、ここでは手順を簡潔にするため Postman を使用します。 X API v2 の Postman コレクションを環境に読み込むには、次のボタンをクリックしてください。 Postman に X API v2 コレクションを読み込んだら、「Blocks」フォルダーに移動し、「Blocks Lookup」を選択します。  

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

X API に正しくリクエストを送信するには、自分に権限があることを確認する必要があります。このエンドポイントでは、OAuth 1.0a ユーザーコンテキスト または OAuth 2.0 認可コード(PKCE 対応) のいずれかでリクエストを認証する必要があります。 この例では、OAuth 1.0a ユーザーコンテキストを使用します。 API Key、API Secret Key、OAuth 1.0a user Access Token、OAuth 1.0a user Access Token Secret といったキーやトークンを Postman に追加する必要があります。Postman の右上で “X API v2” という名前の environment を選択し、“initial value” と “current value” の fields にキーとトークンを追加します(environment ドロップダウンの横にある目のアイコンをクリック)。 これらの変数は、正しく設定されていればリクエストの authorization タブに自動的に反映されます。  

ステップ3:ユーザーを指定する

このエンドポイントでは、ブロックしている相手を確認するために、あなた自身のユーザーID、または認証済みユーザーのユーザーIDを指定する必要があります。 Postman で「Params」タブに移動し、セクションの一番下にある id パス変数の「Value」列にこのユーザーIDを入力します。ユーザー名やIDの前後にスペースを入れないようにしてください。  
KeyValue
id(あなたのユーザーID)
max_results5

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

ステップ3の後に「Send」ボタンをクリックすると、レスポンスにはデフォルトのユーザーオブジェクトの fields として id、name、username が返されます。 id、name、username 以外の fields も受け取りたい場合は、リクエストで fields および/または expansions パラメータを指定してください。 この演習では、異なるオブジェクトから追加で3つの fields セットをリクエストします。
  1. プライマリのユーザーオブジェクトに対する user.created_at の追加。
  2. 返されたユーザーに関連付けられた固定表示された Post のオブジェクトのデフォルト fields:id と text。
  3. 関連する Post オブジェクトに対する tweet.created_at の追加。
Postman で「Params」タブに移動し、「Query Params」テーブルに次の key:value ペアを追加します。
KeyValueReturned fields
user.fieldscreated_atuser.created_at
expansionspinned_tweet_idtweet.id, tweet.text
tweet.fieldscreated_atincludes.tweets.created_at
これで、「Send」ボタンの横に表示される URL は、TwitterDev のものではなく、あなた自身のユーザー ID を含む同様の形式になっているはずです。
      https://api.x.com/2/users/2244994945/blocking?user.fields=created_at&expansions=pinned_tweet_id&tweet.fields=created_at

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

準備が整ったら「Send」ボタンをクリックすると、以下の例と同様のレスポンスが返ってきます。
    {
  "data": [
    {
      "created_at": "2008-12-04T18:51:57.000Z",
      "id": "17874544",
      "username": "TwitterSupport",
      "name": "Twitter Support"
    },
    {
      "created_at": "2007-02-20T14:35:54.000Z",
      "id": "783214",
      "username": "Twitter",
      "name": "Twitter"
    },
    {
      "pinned_tweet_id": "1389270063807598594",
      "created_at": "2018-11-21T14:24:58.000Z",
      "id": "1065249714214457345",
      "username": "TwitterSpaces",
      "name": "Spaces"
    },
    {
      "pinned_tweet_id": "1293595870563381249",
      "created_at": "2007-05-23T06:01:13.000Z",
      "id": "6253282",
      "username": "XAPI",
      "name": "X API"
    }
  ],
  "includes": {
    "tweets": [
      {
        "created_at": "2021-05-03T17:26:09.000Z",
        "id": "1389270063807598594",
        "text": "本日より、フォロワーが600人以上いる全員がSpaceをホストできるようになりました。\n\nこれまでの学びに基づくと、既存のオーディエンスを持つこれらのアカウントはホストとして良好な体験をする可能性が高いです。Spaceの作成機能を全員に提供する前に、私たちはいくつかの点に注力しています。🧵"
      },
      {
        "created_at": "2020-08-12T17:11:04.000Z",
        "id": "1293595870563381249",
        "text": "X API v2: 早期アクセスをリリース\n\n本日、新しいTwitter APIの最初のエンドポイントへの早期アクセスを発表しました!\n\n#TwitterAPI #EarlyAccess #VersionBump https://t.co/g7v3aeIbtQ"
      }
    ]
  }

ステップ6:結果をページングする

レスポンスの末尾に meta オブジェクトがあることに気づくかもしれません。next_token を受け取った場合は、取得可能な結果の次ページが存在することを示します。次ページの結果を取得するには、next_token フィールドの値を取得し、追加の pagination_token パラメータの値としてリクエストに付与します。  
キー
pagination_token1D3PU6DRII9HEZZZ
この追加パラメータを付与してリクエストを送信すると、ステップ3で max_results を 5 に指定しているため、次の 5 件の結果が後続のペイロードで返されます。すべての結果が返るまでこの手順を繰り返せますが、max_results パラメータを使って 1 回のリクエストで最大 1000 ユーザーまで要求できるため、ページングの回数を抑えることも可能です。