Skip to main content

X API v2 と Enterprise の比較

共通点
  • ページネーション
  • タイムゾーン
  • ポストの編集履歴とメタデータのサポート
相違点
  • エンドポイントの URL
  • App および Project の要件
  • 利用可能な期間
  • レスポンスデータ形式
  • HTTP メソッド
  • リクエストの時間形式
  • リクエストパラメータ
  • フィルタリング演算子

類似点

ページネーション v2 には、since_iduntil_id を使ってポスト ID による移動を可能にする新しいページネーション用パラメータなど、追加のページネーション機能がありますが、enterprise と v2 のどちらでも、時間ベースのページネーション (enterprise では fromDatetoDate、v2 では start_timeend_time) が可能です。   タイムゾーン ページネーションのセクションで述べたように、enterprise と v2 の両方で、時間を使って異なるページのデータを取得できます。いずれの場合も、これらのパラメータを使用する際のタイムゾーンは UTC です。 ポストの編集履歴とメタデータのサポート どちらのバージョンも、編集履歴を示すメタデータを提供します。詳細については、検索 APIリファレンスポスト編集の基本事項ページ を参照してください。 

違い

エンドポイント URL
  • Enterprise エンドポイント:
    • 30 日 - http://gnip-api.x.com/search/30day/accounts/:account_name/:label.json
    • フルアーカイブ - http://gnip-api.x.com/search/fullarchive/accounts/:account_name/:label.json
  • X API v2 エンドポイント
    • 直近 (7 日間) - https://api.x.com/2/tweets/search/recent
    • フルアーカイブ - https://api.x.com/2/tweets/search/all
App と Project の要件 X API v2 のエンドポイントでは、リクエスト認証時に Project のクレデンシャルを使用する必要があります。すべての X API v1.1 エンドポイントでは、App のクレデンシャル、または App に関連付けられた App のクレデンシャルを使用できます。   利用可能な期間 Enterprise API と X API v2 の両方で、投稿のフルアーカイブからフィルタ済みのポストデータを取得できるエンドポイントを提供しています。 ただし、X API v2 には Enterprise API のような 30 日間エンドポイントはありません。その代わりに、前述のフルアーカイブ、または 7 日間エンドポイントを提供しており、これらは Native Enriched から v2 への移行や Activity Streams から v2 への移行 と整合しており、Enterprise のフィールドを新しい v2 のフィールドへマッピングする際に役立ちます。このガイドでは、特定のフィールドを返すために v2 のリクエストに含める必要がある、具体的な [expansions] および [fields] パラメータについても説明します。   レスポンスデータ形式 Enterprise のレスポンス形式X API v2 の形式 の最大の違いの 1 つは、ペイロードでどのフィールドを返すかの選択方法です。 Enterprise Search API では、多くのレスポンスフィールドがデフォルトで返され、そのうえでどのフィールドまたはフィールドのセットをペイロードに含めるかをパラメータで指定することができます。 X API v2 では、デフォルトでポストの idtext フィールドのみが返されます。追加のフィールドやオブジェクトをリクエストするには、fields パラメータと expansions パラメータを使用する必要があります。これらのエンドポイントからリクエストしたポストのフィールドはすべて、メインのポストオブジェクト内に返されます。展開された user、media、poll、place の各オブジェクトおよびフィールドは、レスポンス内の includes オブジェクト内に返されます。そのうえで、ポストと展開されたオブジェクトの両方に含まれる ID を突き合わせることで、各展開オブジェクトをポストオブジェクトに関連付けることができます。 これらの新しいパラメータの詳細については、それぞれのガイド、または fields と expansions の使い方 に関するガイドを参照することを推奨します。 特定のフィールドのリクエスト方法が変更されただけでなく、X API v2 では、Postuser オブジェクトを含む、API が返すオブジェクトに対して新しい JSON 設計も導入しています。
  • JSON のルートレベルでは、標準エンドポイントはポストオブジェクトを statuses 配列で返しますが、X API v2 は data 配列で返します。
  • Retweeted および Quoted の「statuses」を参照する代わりに、X API v2 の JSON では Retweeted および Quoted ツイートを参照します。contributorsuser.translator_type など、多くのレガシー/非推奨フィールドは削除されます。
  • Post オブジェクトの favorites と user オブジェクトの favourites の両方を使用する代わりに、X API v2 では like という用語を使用します。
  • X では、値が存在しない JSON 値 (たとえば null) はペイロードに書き出さないという規約を採用しています。ポストおよび user の属性は、非 null の値を持つ場合にのみ含まれます。  
また、ポストオブジェクトに対して、次のような新しいフィールド群も導入しました。
  • conversation_id フィールド
  • context と entities を含む 2 つの新しい annotations フィールド
  • 複数の新しい metrics フィールド
  • 特定のポストに誰が返信できるかを示す、新しい reply_setting フィールド
最後に 1 点補足です。Premium レスポンスには、ルートレベルに requestParameters オブジェクトが含まれており、そこにリクエストに含めたパラメータが格納されています。一方、v2 のバージョンには代わりにルートレベルに meta オブジェクトが含まれ、そこには newest_idoldest_idresult_count、および追加の結果ページが存在する場合は next_token が含まれます。 HTTP メソッド エンタープライズ版のAPIでは、リクエストをJSONボディを持つPOST HTTPメソッド、またはクエリ文字列付きのGET HTTPメソッドのいずれかとして送信できます。 v2では、クエリ文字列付きのGET HTTPメソッドのみを使用できます。   リクエスト時刻の形式 このエンドポイントのエンタープライズ版では、ページネーション用パラメータとtimePeriodレスポンスフィールドの両方で、次の日時形式を使用します: YYYYMMDDHHmm v2エンドポイントでは、ページネーション用パラメータとstartおよびendレスポンスフィールドの両方で、ISO 8601/RFC 3339日時形式を使用します: YYYY-MM-DDTHH:mm:ssZ   リクエストパラメータ 以下は、エンタープライズ版とX API v2のリクエストパラメータの対応表です。
EnterpriseSearch Posts v2
queryquery
maxResultsmax_results
fromDate (YYMMDDHHmm)start_time (YYYY-MM-DDTHH:mm:ssZ)
toDate (YYMMDDHHmm)end_time (YYYY-MM-DDTHH:mm:ssZ)
since_id
until_id
nextnext_token or pagination_token
フィルタリングオペレーター エンタープライズ版とX API v2のオペレーターはほとんど同じですが、利用可能なオペレーターにいくつか違いがあり、X API v2版のみに追加された新しいオペレーターもあります。 X API v2、エンタープライズ版、さらにプレミアム版とスタンダード版で利用可能なオペレーターの完全な一覧表については、Search Posts の移行ランディングページをご覧ください。 次のステップ X API v2 フルアーカイブ検索用クイックスタートガイドを確認する フルアーカイブ検索のAPIリファレンスを確認する これらのエンドポイント向けサンプルコードを確認する