Felo APIs
X Search API
X kullanıcılarını, gönderileri, zaman çizelgelerini ve yanıtları arayın; sayfalama üst verilerini alın.
/v2/x/tweet/searchKimlik doğrulama
Bearer API key
İçerik türü
application/json
Hız sınırı notları
1 request per 10 seconds, 3 per minute, 10 per 10 minutes.
X Arama API'si, kullanıcı profilleri, tweet arama, kullanıcı tweetleri ve tweet yanıtları dahil olmak üzere X (Twitter) verilerine erişim sağlar.
Kimlik Doğrulama
Tüm istekler, Authorization başlığında bir API anahtarı gerektirir:
Authorization: Bearer YOUR_API_KEYAI Ajanlarıyla Kullanım
Bir Ajana X Arama'yı ve mevcut tüm diğer Felo Skill'lerini kazandırmak için eksiksiz felo-ai paketini kurun. Kurulum programı, sabit bir Skill listesi tutmak yerine SKILL.md içeren her paket dizinini dinamik olarak keşfeder. Keşfedilen tüm Skill'leri Codex ~/.codex/skills, Claude Code ~/.claude/skills, OpenClaw ~/.agents/skills veya Hermes Agent ~/.hermes/skills dizinlerine kurun. Platforma özgü kurulum, API anahtarı ve doğrulama talimatları için manuel AI Ajanı kurulum kılavuzuna bakın.
1. Kullanıcı Bilgilerini Alma
X kullanıcı profillerini kullanıcı adına göre toplu olarak alın.
Endpoint
POST https://openapi.felo.ai/v2/x/user/infoİstek Gövdesi
| Parametre | Tür | Gerekli | Açıklama |
|---|---|---|---|
usernames | array of strings | Evet | Aranacak X kullanıcı adlarının listesi |
Örnek
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"]
}'Başarılı Yanıt (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"
}
]
}
}Kullanıcı Nesnesi Alanları
| Alan | Tür | Açıklama |
|---|---|---|
user_id | string | X kullanıcı kimliği |
username | string | X kullanıcı adı (@ olmadan) |
display_name | string | Görünen ad |
description | string | Kullanıcı biyografisi |
followers_count | integer | Takipçi sayısı |
following_count | integer | Takip edilen hesap sayısı |
tweet_count | integer | Toplam tweet sayısı |
verified | boolean | Hesabın doğrulanmış olup olmadığı |
blue_verified | boolean | Hesapta Blue doğrulaması olup olmadığı |
verified_type | string | Doğrulama türü |
profile_image_url | string | Profil resmi URL'si |
cover_image_url | string | Kapak resmi URL'si |
created_at | string | Hesap oluşturma zamanı |
location | string | Kullanıcının konumu |
url | string | Kullanıcının web sitesi URL'si |
protected | boolean | Hesabın korumalı olup olmadığı |
favorites_count | integer | Beğeni sayısı |
media_count | integer | Medya gönderisi sayısı |
can_dm | boolean | DM'in açık olup olmadığı |
is_automated | boolean | Hesabın otomatik olup olmadığı |
pinned_tweet_ids | array of strings | Sabitlenmiş tweet kimlikleri |
2. Kullanıcı Arama
X kullanıcılarını anahtar sözcükle arayın.
Endpoint
POST https://openapi.felo.ai/v2/x/user/searchİstek Gövdesi
| Parametre | Tür | Gerekli | Açıklama |
|---|---|---|---|
query | string | Evet | Arama anahtar sözcüğü |
cursor | string | Hayır | Önceki yanıttan alınan sayfalama imleci |
Örnek
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"
}'Başarılı Yanıt (200)
{
"status": "ok",
"message": null,
"data": {
"total": 50,
"has_next": true,
"next_cursor": "cursor_abc123",
"users": [
{
"user_id": "...",
"username": "...",
"display_name": "..."
}
]
}
}Yanıt Alanları
| Alan | Tür | Açıklama |
|---|---|---|
total | integer | Toplam sonuç sayısı |
has_next | boolean | Daha fazla sonuç olup olmadığı |
next_cursor | string | Sonraki sayfa imleci |
users | array | Kullanıcı nesnelerinin listesi (bkz. bölüm 1) |
3. Kullanıcı Tweetlerini Alma
Belirli bir X kullanıcısının tweetlerini alın.
Endpoint
POST https://openapi.felo.ai/v2/x/user/tweetsİstek Gövdesi
| Parametre | Tür | Gerekli | Açıklama |
|---|---|---|---|
x_user_id | string | Hayır | X kullanıcı kimliği (x_user_id veya username değerlerinden birini sağlayın) |
username | string | Hayır | X kullanıcı adı (x_user_id veya username değerlerinden birini sağlayın) |
limit | integer | Hayır | Döndürülecek tweet sayısı |
cursor | string | Hayır | Sayfalama imleci |
include_replies | boolean | Hayır | Yanıtların dahil edilip edilmeyeceği |
Örnek
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
}'Başarılı Yanıt (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"
}
]
}
}Tweet Nesnesi Alanları
| Alan | Tür | Açıklama |
|---|---|---|
id | string | Tweet kimliği |
content | string | Tweet metin içeriği |
author | object | Yazar kullanıcı nesnesi (bkz. bölüm 1) |
created_at | string | Tweet oluşturma zamanı |
metrics | object | Etkileşim ölçümleri (aşağıya bakın) |
replies | array | Yanıt tweetleri (varsa) |
conversation_id | string | Konuşma dizisi kimliği |
media_urls | array | Ekli medya |
hashtags | array of strings | Tweet içindeki hashtag'ler |
mentions | array of strings | Bahsedilen kullanıcı adları |
urls | array of strings | Tweet içindeki URL'ler |
url | string | Tweet'e kalıcı bağlantı |
source | string | Tweet kaynağı (ör. "Twitter Web App") |
lang | string | Tweet dil kodu |
is_reply | boolean | Bunun bir yanıt olup olmadığı |
in_reply_to_id | string | Yanıtlanan tweetin kimliği |
in_reply_to_user_id | string | Yanıtlanan tweetin kullanıcı kimliği |
in_reply_to_username | string | Yanıtlanan tweetin kullanıcı adı |
quoted_tweet | object | Alıntılanan tweet nesnesi (özyinelemeli) |
retweeted_tweet | object | Retweetlenen tweet nesnesi (özyinelemeli) |
is_limited_reply | boolean | Yanıtların sınırlı olup olmadığı |
Metrics Nesnesi Alanları
| Alan | Tür | Açıklama |
|---|---|---|
retweet_count | integer | Retweet sayısı |
favorite_count | integer | Beğeni sayısı |
reply_count | integer | Yanıt sayısı |
quote_count | integer | Alıntı sayısı |
view_count | integer | Görüntüleme sayısı |
bookmark_count | integer | Yer imi sayısı |
4. Tweet Arama
X tweetlerini gelişmiş sorgu desteğiyle anahtar sözcükle arayın.
Endpoint
POST https://openapi.felo.ai/v2/x/tweet/searchİstek Gövdesi
| Parametre | Tür | Gerekli | Açıklama |
|---|---|---|---|
query | string | Evet | Arama sorgusu (gelişmiş arama sözdizimini destekler) |
query_type | string | Hayır | Sorgu türü filtresi |
since_time | integer | Hayır | Başlangıç zamanı filtresi (saniye cinsinden Unix zaman damgası) |
until_time | integer | Hayır | Bitiş zamanı filtresi (saniye cinsinden Unix zaman damgası) |
limit | integer | Hayır | Döndürülecek tweet sayısı |
cursor | string | Hayır | Sayfalama imleci |
Örnek
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
}'Başarılı Yanıt (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 }
}
]
}
}Yanıt Alanları
| Alan | Tür | Açıklama |
|---|---|---|
total | integer | Toplam sonuç sayısı |
has_next | boolean | Daha fazla sonuç olup olmadığı |
next_cursor | string | Sonraki sayfa imleci |
tweets | array | Tweet nesnelerinin listesi (bkz. bölüm 3) |
5. Tweet Yanıtlarını Alma
Belirli tweetlerin yanıtlarını alın.
Endpoint
POST https://openapi.felo.ai/v2/x/tweet/repliesİstek Gövdesi
| Parametre | Tür | Gerekli | Açıklama |
|---|---|---|---|
tweet_ids | array of strings | Evet | Yanıtları alınacak tweet kimliği/kimlikleri |
cursor | string | Hayır | Sayfalama imleci |
since_time | integer | Hayır | Başlangıç zamanı filtresi (Unix zaman damgası) |
until_time | integer | Hayır | Bitiş zamanı filtresi (Unix zaman damgası) |
Örnek
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"]
}'Başarılı Yanıt (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"
}
]
}
]
}
}Yanıt Alanları
| Alan | Tür | Açıklama |
|---|---|---|
results | array | Yanıt sonucu nesnelerinin listesi |
results[].tweet_id | string | Orijinal tweet kimliği |
results[].total | integer | Toplam yanıt sayısı |
results[].has_next | boolean | Daha fazla yanıt olup olmadığı |
results[].next_cursor | string | Sonraki sayfa imleci |
results[].replies | array | Yanıt tweet nesnelerinin listesi (bkz. bölüm 3) |
Hata Kodları
| Kod | HTTP Durumu | Açıklama |
|---|---|---|
UNAUTHORIZED | 401 | API anahtarı geçersiz veya iptal edilmiş |
X_SEARCH_FAILED | 400/500 | X arama isteği başarısız oldu (parametreleri veya alt sistem hatasını kontrol edin) |
RATE_LIMIT_EXCEEDED | 429 | Çok fazla istek; lütfen kısa bir gecikmeden sonra yeniden deneyin |
insufficient_credits | 402 | İsteği tamamlamak için yeterli hizmet kredisi yok |
Hizmet Kredileri ve Hız Sınırlama
Hizmet Kredisi Maliyetleri
Her API çağrısı, döndürülen sonuç sayısına göre hizmet kredisi düşer:
| Endpoint | Hizmet Kredisi Maliyeti |
|---|---|
POST /x/user/info | Döndürülen kullanıcı başına 1 hizmet kredisi |
POST /x/user/search | Döndürülen kullanıcı başına 1 hizmet kredisi |
POST /x/user/tweets | Döndürülen tweet başına 1 hizmet kredisi |
POST /x/tweet/search | Döndürülen tweet başına 1 hizmet kredisi |
POST /x/tweet/replies | Döndürülen yanıt başına 1 hizmet kredisi |
Hizmet kredileri, istek tamamlandıktan sonra gerçek sonuç sayısına göre düşülür. Bir istek 0 sonuç döndürürse hizmet kredisi düşülmez.
Minimum bakiye gereksinimi: Herhangi bir X API isteği yapabilmek için hesabınızda en az 10 hizmet kredisi bulunmalıdır. 10 hizmet kredisinden az bakiyeyle yapılan istekler HTTP 402 ile reddedilir.
Hız Sınırlama
Hız sınırları, geçerli API hizmeti ve hesap politikalarına göre uygulanır. Hız sınırına takıldığınızda API HTTP 429 döndürür. Retry-After başlığı, saniye cinsinden önerilen bekleme süresini belirtir. Hız sınırlarını yönetmek için en güncel hizmet belgelerini ve gerçek API yanıtlarını kullanın; platformu kullanmak için abonelik gerekmez.