Felo APIs
X Search API
Vyhledávejte uživatele X, tweety, časové osy a odpovědi a získávejte metadata stránkování.
/v2/x/tweet/searchOvěřování
Bearer API key
Typ obsahu
application/json
Poznámky k limitům
1 request per 10 seconds, 3 per minute, 10 per 10 minutes.
X Search API poskytuje přístup k datům X (Twitter), včetně uživatelských profilů, vyhledávání tweetů, tweetů uživatele a odpovědí na tweety.
Ověřování
Všechny požadavky vyžadují API klíč v hlavičce Authorization:
Authorization: Bearer YOUR_API_KEYPoužití s AI agenty
Nainstalujte kompletní balíček felo-ai, abyste agentovi zpřístupnili X Search a všechny ostatní dostupné Felo Skills. Instalátor dynamicky objevuje každý adresář balíčku obsahující SKILL.md, místo aby udržoval pevný seznam Skills. Nainstalujte všechny objevené Skills do Codex ~/.codex/skills, Claude Code ~/.claude/skills, OpenClaw ~/.agents/skills nebo Hermes Agent ~/.hermes/skills. Pokyny k instalaci specifické pro platformu, API klíči a ověření najdete v příručce k ručnímu nastavení AI agenta.
1. Získání informací o uživateli
Hromadně načtěte profily uživatelů X podle uživatelského jména.
Endpoint
POST https://openapi.felo.ai/v2/x/user/infoTělo požadavku
| Parametr | Typ | Povinné | Popis |
|---|---|---|---|
usernames | pole řetězců | Ano | Seznam uživatelských jmen na X, která se mají vyhledat |
Příklad
curl -X POST 'https://openapi.felo.ai/v2/x/user/info' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"usernames": ["elonmusk", "OpenAI"]
}'Úspěšná odpověď (200)
{
"status": "ok",
"message": null,
"data": {
"total": 2,
"users": [
{
"user_id": "44196397",
"username": "elonmusk",
"display_name": "Elon Musk",
"description": "...",
"followers_count": 100000000,
"following_count": 500,
"tweet_count": 30000,
"verified": true,
"blue_verified": true,
"profile_image_url": "https://pbs.twimg.com/...",
"created_at": "2009-06-02T00:00:00Z",
"location": "Mars"
}
]
}
}Pole objektu uživatele
| Pole | Typ | Popis |
|---|---|---|
user_id | string | ID uživatele na X |
username | string | Uživatelské jméno na X (bez @) |
display_name | string | Zobrazované jméno |
description | string | Bio uživatele |
followers_count | integer | Počet sledujících |
following_count | integer | Počet sledovaných |
tweet_count | integer | Celkový počet tweetů |
verified | boolean | Zda je účet ověřený |
blue_verified | boolean | Zda má účet ověření Blue |
verified_type | string | Typ ověření |
profile_image_url | string | URL profilového obrázku |
cover_image_url | string | URL obrázku záhlaví |
created_at | string | Čas vytvoření účtu |
location | string | Místo uživatele |
url | string | URL webu uživatele |
protected | boolean | Zda je účet chráněný |
favorites_count | integer | Počet lajků |
media_count | integer | Počet mediálních příspěvků |
can_dm | boolean | Zda jsou otevřené DM |
is_automated | boolean | Zda je účet automatizovaný |
pinned_tweet_ids | pole řetězců | ID připnutých tweetů |
2. Vyhledávání uživatelů
Vyhledávejte uživatele X podle klíčového slova.
Endpoint
POST https://openapi.felo.ai/v2/x/user/searchTělo požadavku
| Parametr | Typ | Povinné | Popis |
|---|---|---|---|
query | string | Ano | Klíčové slovo pro vyhledávání |
cursor | string | Ne | Kurzor stránkování z předchozí odpovědi |
Příklad
curl -X POST 'https://openapi.felo.ai/v2/x/user/search' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"query": "artificial intelligence"
}'Úspěšná odpověď (200)
{
"status": "ok",
"message": null,
"data": {
"total": 50,
"has_next": true,
"next_cursor": "cursor_abc123",
"users": [
{
"user_id": "...",
"username": "...",
"display_name": "..."
}
]
}
}Pole odpovědi
| Pole | Typ | Popis |
|---|---|---|
total | integer | Celkový počet výsledků |
has_next | boolean | Zda jsou k dispozici další výsledky |
next_cursor | string | Kurzor pro další stránku |
users | array | Seznam objektů uživatelů (viz část 1) |
3. Získání tweetů uživatele
Načtěte tweety od konkrétního uživatele X.
Endpoint
POST https://openapi.felo.ai/v2/x/user/tweetsTělo požadavku
| Parametr | Typ | Povinné | Popis |
|---|---|---|---|
x_user_id | string | Ne | ID uživatele na X (uveďte buď x_user_id, nebo username) |
username | string | Ne | Uživatelské jméno na X (uveďte buď x_user_id, nebo username) |
limit | integer | Ne | Počet tweetů, které se mají vrátit |
cursor | string | Ne | Kurzor stránkování |
include_replies | boolean | Ne | Zda zahrnout odpovědi |
Příklad
curl -X POST 'https://openapi.felo.ai/v2/x/user/tweets' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"username": "elonmusk",
"limit": 20
}'Úspěšná odpověď (200)
{
"status": "ok",
"message": null,
"data": {
"total": 20,
"has_next": true,
"next_cursor": "cursor_def456",
"tweets": [
{
"id": "1234567890",
"content": "Tweet content here...",
"author": { "user_id": "...", "username": "elonmusk" },
"created_at": "2026-03-09T12:00:00Z",
"metrics": {
"retweet_count": 1000,
"favorite_count": 5000,
"reply_count": 200,
"quote_count": 100,
"view_count": 500000,
"bookmark_count": 50
},
"hashtags": ["AI"],
"mentions": ["OpenAI"],
"url": "https://x.com/elonmusk/status/1234567890",
"lang": "en"
}
]
}
}Pole objektu tweetu
| Pole | Typ | Popis |
|---|---|---|
id | string | ID tweetu |
content | string | Textový obsah tweetu |
author | object | Objekt autora (viz část 1) |
created_at | string | Čas vytvoření tweetu |
metrics | object | Metriky zapojení (viz níže) |
replies | array | Odpovědi na tweet (pokud jsou k dispozici) |
conversation_id | string | ID vlákna konverzace |
media_urls | array | Přiložená média |
hashtags | pole řetězců | Hashtagy v tweetu |
mentions | pole řetězců | Zmíněná uživatelská jména |
urls | pole řetězců | URL v tweetu |
url | string | Trvalý odkaz na tweet |
source | string | Zdroj tweetu (např. "Twitter Web App") |
lang | string | Kód jazyka tweetu |
is_reply | boolean | Zda jde o odpověď |
in_reply_to_id | string | ID tweetu, na který se odpovídá |
in_reply_to_user_id | string | ID uživatele tweetu, na který se odpovídá |
in_reply_to_username | string | Uživatelské jméno tweetu, na který se odpovídá |
quoted_tweet | object | Objekt citovaného tweetu (rekurzivní) |
retweeted_tweet | object | Objekt retweetnutého tweetu (rekurzivní) |
is_limited_reply | boolean | Zda jsou odpovědi omezené |
Pole objektu metrik
| Pole | Typ | Popis |
|---|---|---|
retweet_count | integer | Počet retweetů |
favorite_count | integer | Počet lajků |
reply_count | integer | Počet odpovědí |
quote_count | integer | Počet citací |
view_count | integer | Počet zobrazení |
bookmark_count | integer | Počet záložek |
4. Vyhledávání tweetů
Vyhledávejte tweety na X podle klíčového slova s podporou pokročilých dotazů.
Endpoint
POST https://openapi.felo.ai/v2/x/tweet/searchTělo požadavku
| Parametr | Typ | Povinné | Popis |
|---|---|---|---|
query | string | Ano | Vyhledávací dotaz (podporuje pokročilou syntaxi vyhledávání) |
query_type | string | Ne | Filtr typu dotazu |
since_time | integer | Ne | Filtr času začátku (unixové časové razítko v sekundách) |
until_time | integer | Ne | Filtr času konce (unixové časové razítko v sekundách) |
limit | integer | Ne | Počet tweetů, které se mají vrátit |
cursor | string | Ne | Kurzor stránkování |
Příklad
curl -X POST 'https://openapi.felo.ai/v2/x/tweet/search' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"query": "artificial intelligence",
"limit": 20
}'Úspěšná odpověď (200)
{
"status": "ok",
"message": null,
"data": {
"total": 20,
"has_next": true,
"next_cursor": "cursor_ghi789",
"tweets": [
{
"id": "...",
"content": "...",
"author": { "user_id": "...", "username": "..." },
"created_at": "2026-03-09T12:00:00Z",
"metrics": { "retweet_count": 100, "favorite_count": 500 }
}
]
}
}Pole odpovědi
| Pole | Typ | Popis |
|---|---|---|
total | integer | Celkový počet výsledků |
has_next | boolean | Zda jsou k dispozici další výsledky |
next_cursor | string | Kurzor pro další stránku |
tweets | array | Seznam objektů tweetů (viz část 3) |
5. Získání odpovědí na tweet
Načtěte odpovědi na konkrétní tweety.
Endpoint
POST https://openapi.felo.ai/v2/x/tweet/repliesTělo požadavku
| Parametr | Typ | Povinné | Popis |
|---|---|---|---|
tweet_ids | pole řetězců | Ano | ID tweetu (tweetů), pro které se mají získat odpovědi |
cursor | string | Ne | Kurzor stránkování |
since_time | integer | Ne | Filtr času začátku (unixové časové razítko) |
until_time | integer | Ne | Filtr času konce (unixové časové razítko) |
Příklad
curl -X POST 'https://openapi.felo.ai/v2/x/tweet/replies' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"tweet_ids": ["1234567890"]
}'Úspěšná odpověď (200)
{
"status": "ok",
"message": null,
"data": {
"results": [
{
"tweet_id": "1234567890",
"total": 10,
"has_next": true,
"next_cursor": "cursor_jkl012",
"replies": [
{
"id": "...",
"content": "Great tweet!",
"author": { "user_id": "...", "username": "..." },
"created_at": "2026-03-09T12:30:00Z"
}
]
}
]
}
}Pole odpovědi
| Pole | Typ | Popis |
|---|---|---|
results | array | Seznam objektů výsledků odpovědí |
results[].tweet_id | string | ID původního tweetu |
results[].total | integer | Celkový počet odpovědí |
results[].has_next | boolean | Zda jsou k dispozici další odpovědi |
results[].next_cursor | string | Kurzor pro další stránku |
results[].replies | array | Seznam objektů odpovědí na tweet (viz část 3) |
Kódy chyb
| Kód | Stav HTTP | Popis |
|---|---|---|
UNAUTHORIZED | 401 | API klíč je neplatný nebo zrušený |
X_SEARCH_FAILED | 400/500 | Požadavek na vyhledávání na X selhal (zkontrolujte parametry nebo chybu navazující služby) |
RATE_LIMIT_EXCEEDED | 429 | Příliš mnoho požadavků, zkuste to znovu po krátké prodlevě |
insufficient_credits | 402 | Nedostatek kreditů k dokončení požadavku |
Kredity a limity rychlosti
Náklady na kredity
Každé volání API odečte kredity podle počtu vrácených výsledků:
| Endpoint | Náklad na kredity |
|---|---|
POST /x/user/info | 1 kredit za vráceného uživatele |
POST /x/user/search | 1 kredit za vráceného uživatele |
POST /x/user/tweets | 1 kredit za vrácený tweet |
POST /x/tweet/search | 1 kredit za vrácený tweet |
POST /x/tweet/replies | 1 kredit za vrácenou odpověď |
Kredity se odečítají po dokončení požadavku podle skutečného počtu výsledků. Pokud požadavek vrátí 0 výsledků, neodečtou se žádné kredity.
Požadavek na minimální zůstatek: Váš účet musí mít alespoň 10 kreditů, aby mohl provést jakýkoli požadavek na X API. Požadavky provedené s méně než 10 kredity budou odmítnuty s HTTP 402.
Limity rychlosti
Limity rychlosti se uplatňují podle aktuálních zásad služby API a účtu. Při překročení limitu vrací API HTTP 429. Hlavička Retry-After udává doporučenou dobu čekání v sekundách. Pro zpracování limitů rychlosti používejte nejnovější dokumentaci služby a skutečné odpovědi API; k používání platformy není nutné předplatné.