Felo X 投稿検索
プロバイダー: Felo · プラットフォーム残高で支払い
必要なデータに応じて操作を選択してください。5 つのエンドポイントはすべて POST を使用し、共通の data ラッパーなしで JSON をルートに返します。
すべての例は 概要 の FELO_API_KEY を使用します。呼び出しには プラットフォーム残高 が使われ、Felo Pro クレジットは使われません。レスポンス例は説明用であり、実際の内容や任意フィールドは変動します。
4. 投稿を検索する
POST /api/v1/data/x/tweet/search
| フィールド | 型 | 必須 | 意味 |
|---|---|---|---|
query | string | はい | 検索テキスト、1〜1,000 文字 |
query_type | string | いいえ | Latest(既定)または Top |
limit | integer | いいえ | 1〜1,000。現在の実装では少なくとも 20 が使用され、既定値は 20 |
cursor | string | いいえ | ページ分割用カーソル、最大 4,000 文字 |
since_time | integer or string | いいえ | 開始時刻。あいまいさのない数値には Unix 秒を使用してください |
until_time | integer or string | いいえ | 終了時刻。ミリ秒ではなく Unix 秒を使用してください |
curl -sS --request POST "https://openapi.felo.ai/api/v1/data/x/tweet/search" \
-H "Authorization: Bearer $FELO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"query":"retrieval augmented generation","query_type":"Latest","limit":20}'レスポンスには tweets、total、has_next、next_cursor が含まれます。投稿オブジェクトには id、content、author、created_at、metrics が含まれ、返信や引用/リポストされた投稿がネストされる場合があります。ID は文字列として扱ってください。
結果件数の上限
limit は保証ではなく目標値です。現在の実装では少なくとも 20 を目標に動作します。20 のターゲットでは上流の 1 ページを読み取り、それより大きいターゲットでは最大 50 ページまで自動で取得します。各ページの前に経過時間を確認し、60 秒を超えた時点でそれ以降のページは取得しません。進行中の上流リクエストには時間がかかることがあるため、これは HTTP 全体のタイムアウトではありません。
取得は、目標件数に達した場合、上流に次のページがない場合、ページが空の場合、またはカーソルがない場合にも停止します。limit より少ない投稿しか返らなくても、リクエストが失敗したことや、すべての一致投稿を取得したことを意味するわけではありません。続行する前に has_next と next_cursor を確認してください。
{
"tweets": [{
"id":"example-post-id",
"content":"Example post content",
"author":{"user_id":"example-user-id","username":"example","display_name":"Example"},
"created_at":"2026-11-01T00:00:00Z",
"metrics":{},
"replies":[]
}],
"total":1,
"has_next":false,
"next_cursor":null
}ページ分割とコスト制御
total は、現在のレスポンス内の対応する配列の件数を数えます。投稿クエリではトップレベル投稿、返信クエリでは各結果エントリ内の返信です。これは、グローバルな一致件数、投稿の完全な返信数、または最終的な課金対象件数ではありません。
- 最初のリクエストは
cursorなしで送信します。 - レスポンスから
has_nextとnext_cursorを読み取ります。返信については、各結果エントリで読み取ります。 - さらにページがあり、カーソルが空でない場合は、同じクエリでそのまま送信します。返信のバッチでは、各投稿を個別に続行します。
- 次のページがない場合、カーソルが繰り返される場合、または自分のページ数や支出上限に達した場合は停止します。
ページ分割のメタデータは最後の上流レスポンスを反映しており、返されたコレクションは結果上限で切り詰められる場合があります。has_next=false であっても、すべての X の履歴や返信を取得したことを保証するものではありません。利用可能なデータがすべてであるかのように、制限付きの結果セットを表示しないでください。
成功した各ページには課金が発生する場合があります。これら 5 つの操作は、フラットなリクエスト शुल्कではなく返された結果に基づいて課金されます。ネストされた返信やその他の返されたレコードは課金対象件数に影響する場合があります。トップレベル配列の長さだけでコストを見積もらないでください。現在の価格 とコンソールでの使用状況を確認してください。完全なオブジェクトフィールドは OpenAPI スキーマ にあります。