Felo API PlatformFelo API Platform

Felo APIs

X Search API

Vyhledávejte uživatele X, tweety, časové osy a odpovědi a získávejte metadata stránkování.

POST/v2/x/tweet/search

Ověř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_KEY

Použ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/info

Tělo požadavku

ParametrTypPovinnéPopis
usernamespole řetězcůAnoSeznam 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

PoleTypPopis
user_idstringID uživatele na X
usernamestringUživatelské jméno na X (bez @)
display_namestringZobrazované jméno
descriptionstringBio uživatele
followers_countintegerPočet sledujících
following_countintegerPočet sledovaných
tweet_countintegerCelkový počet tweetů
verifiedbooleanZda je účet ověřený
blue_verifiedbooleanZda má účet ověření Blue
verified_typestringTyp ověření
profile_image_urlstringURL profilového obrázku
cover_image_urlstringURL obrázku záhlaví
created_atstringČas vytvoření účtu
locationstringMísto uživatele
urlstringURL webu uživatele
protectedbooleanZda je účet chráněný
favorites_countintegerPočet lajků
media_countintegerPočet mediálních příspěvků
can_dmbooleanZda jsou otevřené DM
is_automatedbooleanZda je účet automatizovaný
pinned_tweet_idspole ř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/search

Tělo požadavku

ParametrTypPovinnéPopis
querystringAnoKlíčové slovo pro vyhledávání
cursorstringNeKurzor 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

PoleTypPopis
totalintegerCelkový počet výsledků
has_nextbooleanZda jsou k dispozici další výsledky
next_cursorstringKurzor pro další stránku
usersarraySeznam 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/tweets

Tělo požadavku

ParametrTypPovinnéPopis
x_user_idstringNeID uživatele na X (uveďte buď x_user_id, nebo username)
usernamestringNeUživatelské jméno na X (uveďte buď x_user_id, nebo username)
limitintegerNePočet tweetů, které se mají vrátit
cursorstringNeKurzor stránkování
include_repliesbooleanNeZda 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

PoleTypPopis
idstringID tweetu
contentstringTextový obsah tweetu
authorobjectObjekt autora (viz část 1)
created_atstringČas vytvoření tweetu
metricsobjectMetriky zapojení (viz níže)
repliesarrayOdpovědi na tweet (pokud jsou k dispozici)
conversation_idstringID vlákna konverzace
media_urlsarrayPřiložená média
hashtagspole řetězcůHashtagy v tweetu
mentionspole řetězcůZmíněná uživatelská jména
urlspole řetězcůURL v tweetu
urlstringTrvalý odkaz na tweet
sourcestringZdroj tweetu (např. "Twitter Web App")
langstringKód jazyka tweetu
is_replybooleanZda jde o odpověď
in_reply_to_idstringID tweetu, na který se odpovídá
in_reply_to_user_idstringID uživatele tweetu, na který se odpovídá
in_reply_to_usernamestringUživatelské jméno tweetu, na který se odpovídá
quoted_tweetobjectObjekt citovaného tweetu (rekurzivní)
retweeted_tweetobjectObjekt retweetnutého tweetu (rekurzivní)
is_limited_replybooleanZda jsou odpovědi omezené

Pole objektu metrik

PoleTypPopis
retweet_countintegerPočet retweetů
favorite_countintegerPočet lajků
reply_countintegerPočet odpovědí
quote_countintegerPočet citací
view_countintegerPočet zobrazení
bookmark_countintegerPoč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/search

Tělo požadavku

ParametrTypPovinnéPopis
querystringAnoVyhledávací dotaz (podporuje pokročilou syntaxi vyhledávání)
query_typestringNeFiltr typu dotazu
since_timeintegerNeFiltr času začátku (unixové časové razítko v sekundách)
until_timeintegerNeFiltr času konce (unixové časové razítko v sekundách)
limitintegerNePočet tweetů, které se mají vrátit
cursorstringNeKurzor 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

PoleTypPopis
totalintegerCelkový počet výsledků
has_nextbooleanZda jsou k dispozici další výsledky
next_cursorstringKurzor pro další stránku
tweetsarraySeznam 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/replies

Tělo požadavku

ParametrTypPovinnéPopis
tweet_idspole řetězcůAnoID tweetu (tweetů), pro které se mají získat odpovědi
cursorstringNeKurzor stránkování
since_timeintegerNeFiltr času začátku (unixové časové razítko)
until_timeintegerNeFiltr č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

PoleTypPopis
resultsarraySeznam objektů výsledků odpovědí
results[].tweet_idstringID původního tweetu
results[].totalintegerCelkový počet odpovědí
results[].has_nextbooleanZda jsou k dispozici další odpovědi
results[].next_cursorstringKurzor pro další stránku
results[].repliesarraySeznam objektů odpovědí na tweet (viz část 3)

Kódy chyb

KódStav HTTPPopis
UNAUTHORIZED401API klíč je neplatný nebo zrušený
X_SEARCH_FAILED400/500Požadavek na vyhledávání na X selhal (zkontrolujte parametry nebo chybu navazující služby)
RATE_LIMIT_EXCEEDED429Příliš mnoho požadavků, zkuste to znovu po krátké prodlevě
insufficient_credits402Nedostatek 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ů:

EndpointNáklad na kredity
POST /x/user/info1 kredit za vráceného uživatele
POST /x/user/search1 kredit za vráceného uživatele
POST /x/user/tweets1 kredit za vrácený tweet
POST /x/tweet/search1 kredit za vrácený tweet
POST /x/tweet/replies1 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é.