Skip to main content
Powerstream は、公開 X データにアクセスするための、当社で最速のリアルタイムストリーミング API です。従来の GNIP Powetrack API と同様に、キーワード、オペレーター、メタデータに基づいてポストをフィルタリングするルールを使用します。Powerstream エンドポイントへの永続的な HTTP 接続が確立されると、ほぼリアルタイムで条件に一致するポストを受信し始めることができます。 現在、Powerstream は最大 1,000 個のルールをサポートしており、各ルールは 2048 文字まで指定できます。

主な機能:

  • リアルタイムなデータ配信: ルールに一致するデータをほぼリアルタイムで取得できます。
  • 高精度なフィルタリング: 演算子付きのブールクエリを使用して、必要なデータだけを正確にフィルタリングできます。
  • 配信方式: HTTP/1.1 のチャンク転送エンコーディングを用いた JSON レスポンス。
  • ローカルデータセンター対応: レプリケーション遅延を回避してレイテンシを低減するために、ローカルデータセンターからの投稿のみを取得できます。
Powerstream API は、一部の Enterprise プランで利用可能なプレミアムなサービスです。Powerstream へのアクセスや Enterprise 向けサービスの詳細にご興味がある場合は、Enterprise Request Form から営業チームまでお問い合わせください。 Powerstream がどのようにお客様のニーズにお応えできるか、喜んでご相談させていただきます。

クイックスタート

このセクションでは、Python の requests ライブラリを使用して PowerStream エンドポイントをすぐに使い始める方法を紹介します。pip install requests でインストールしてください。すべての例は OAuth 2.0 ベアラートークン認証を使用します。YOUR_BEARER_TOKEN を実際のトークンに置き換えてください (os.getenv('BEARER_TOKEN') などを使って安全に保存してください) 。 各エンドポイントについて、コードスニペットとともに紹介します。ファイルの先頭に次の import があるものとします。

セットアップ

1. ルールの作成 (POST /rules)

ストリームを絞り込むためのルールを追加します。

2. ルールを削除する (POST /rules)

id (推奨) または value を指定して、ルールを削除します。
ヒント: すべてのルールを削除するには、まず GET リクエストで取得し、ID を抽出してから一括削除します。

3. ルールの取得 (GET /rules)

すべての有効なルールを取得します。

4. PowerStream (GET /stream)

リアルタイムの投稿を取得するためにストリームに接続します。行ごとに読み取るには stream=True を使用します。堅牢性を高めるために、再接続ロジックを実装してください。

ローカルデータセンターサポート

レイテンシを最適化するために、Powerstream では、接続が確立されているローカルデータセンター発 (で作成された) 投稿のみを取得できるオプションを提供しています。これによりレプリケーション遅延を回避でき、他のデータセンターからの投稿と比べて、より高速に配信されます。これを有効にするには、クエリパラメータ ?localDcOnly=true をストリームエンドポイント (例: /2/powerstream?localDcOnly=true) に追加します。接続しているデータセンターは、ストリームの初期データペイロード内とレスポンスの HTTP ヘッダーの両方で示されます。 コードで利用するには:
localDcOnly パラメータが有効になっている場合、ストリームが最初に接続されると、どのローカルデータセンターが使用されているかを示す次のレスポンスヘッダーが含まれます。
これに加えて、データセンターを指定する初回のペイロードも送信されます。
ヒント: レイテンシーを最適化するには、複数の地理的ロケーション (例:米国東海岸のアトランタ近郊と米国西海岸のポートランド近郊) から接続を構成し、それぞれで localDcOnly=true を有効にします。これにより、各データセンター内の投稿へより高速にアクセスできます。データセンター間のデータを統合するには、クライアント側でストリームを集約してください。

演算子

フィルタリングルールを設定するには、キーワードと演算子を使用します。利用可能な演算子は以下のとおりです。

フィールドベースの演算子

ユーザー演算子

コンテンツ演算子

エンティティオペレーター

ロケーション演算子

高度/コンテンツオペレーター

追加のオペレーター

フィールド以外の演算子

特殊構文演算子

論理演算子

レスポンス

Powerstream API のペイロードは、レガシー版 GNIP Powertrack API と同じ形式です。JSON レスポンスの例は次のとおりです。

制限事項とベストプラクティス

  • レート制限: ルール管理は 24時間あたり 50 リクエスト。ストリーム自体に制限はありません (ただし接続数の制限が適用されます) 。
  • 再接続: 切断時は指数バックオフ方式で再接続します。
  • 監視: Connection: keep-alive ヘッダーを使用します。