Standard v1.1 と X API v2 の比較
- 共通点
- リクエストパラメータとオペレーター
- ポスト編集履歴とメタデータのサポート
- 相違点
- エンドポイント URL
- App と Project の要件
- 認証方式
- ルール数とストリームの永続性
- レスポンスデータ形式
- リクエストパラメータ
- リカバリーおよび冗長性機能の有無
- クエリオペレーター
類似点
statuses/filter エンドポイントには、ストリームをフィルタリングするためにリクエストと一緒に渡せるパラメータがいくつか用意されています。v2 の filtered stream では代わりに、ブールロジックを使って組み合わせることができる一連のオペレーターを使用して、目的の投稿をフィルタリングします。利用可能なオペレーターの中には、既存の Standard v1.1 パラメータをそのまま置き換えられるものもあります。
次の Standard v1.1 リクエストパラメータには、X API v2 における同等のオペレーターがあります。
ポスト編集履歴とメタデータのサポート
どちらのバージョンも、編集履歴を表すメタデータを提供します。詳細については、filtered stream APIリファレンスおよびポスト編集の基本事項ページを確認してください。
違い
- Standard v1.1 エンドポイント:
- X API v2 エンドポイント:
- JSON のルートレベルでは、Standard エンドポイントはポストオブジェクトを statuses 配列で返す一方、X API v2 は data 配列で返します。
- Retweeted および Quoted の “statuses” を参照する代わりに、X API v2 の JSON では Retweeted および Quoted ツイートを参照します。contributors や user.translator_type などの多くのレガシーかつ非推奨フィールドは削除されます。
- ポストオブジェクトの favorites と user オブジェクトの favourites の両方を使用する代わりに、X API v2 では like という用語を使用します。
- X では、値を持たない JSON の値 (たとえば null) はペイロードに書き込まないという規約を採用しています。ポストおよび user の属性は、値が null でない場合にのみ含まれます。
- conversation_id フィールド
- context と entities を含む、2 つの新しい annotations フィールド
- いくつかの新しい metrics フィールド
- 特定のポストに対して誰が返信できるかを示す、新しい reply_setting フィールド
リカバリと冗長性機能の提供状況
X API v2 の filtered stream では、ストリーミングの稼働時間を最大化し、5 分以下の切断によって取り逃した可能性のある投稿を復旧するのに役立つリカバリおよび冗長性機能が導入されています。
冗長接続機能により、特定のストリームに対して最大 2 回まで接続することができ、一方の接続が失敗した場合でも、常にストリームへの接続を維持するのに役立ちます。
backfill_minutes パラメータを使用して、最大 5 分分の取り逃したデータを復旧できます。
これら 2 つの機能はどちらも、Academic Research access を通じてのみ利用できます。この機能の詳細については、recovery and redundancy features インテグレーションガイドを参照してください。
新しいクエリオペレーター
X API v2 では、次の 2 つの新機能をサポートするための新しいオペレーターが導入されています:
- Conversation IDs - X 上で会話が展開されると、その会話に含まれる投稿を示す conversation ID が利用可能になります。会話内のすべての投稿は、その会話を開始したポストの ID を conversation_id として持ちます。
- conversation_id:
- X Annotations は、投稿に関するコンテキスト情報を提供し、entity と context のアノテーションを含みます。Entities は、人、場所、製品、組織で構成されます。Contexts は、エンティティが属するドメインやトピックです。例えば、ポスト内で言及されている人物には、その人物がアスリート、俳優、政治家のいずれであるかを示すコンテキストが付与される場合があります。
- context: - 関心のあるコンテキストでアノテーションされた投稿にマッチします。
- entity: - 関心のあるエンティティでアノテーションされた投稿にマッチします。
コードサンプル
フィルター済みストリーム (v2) にルールを追加する
cURL
フィルター済みストリームに接続する (v2)
cURL