X (Twitter) API
Eleven endpoints for X post search, timelines, replies, retweeters, followers and trending topics — each one a single POST returning structured JSON. No developer account, no paid API tier, a flat 1 credit per call.
50 free credits on signup. No card, no X developer account.
{ "data": { "tweets": [ { "id": "1899384756123456789", "text": "We moved our RAG pipeline off pgvector to Qdrant last month.", "created_at": "2026-07-19T11:02:44.000Z", "favorite_count": 428, "retweet_count": 61, "reply_count": 37, "view_count": 91204, "author": { "screen_name": "embeddings_guy", "name": "Ravi", "followers_count": 18422, "verified": false } } ], "next_cursor": "DAABCgABGf4-a__" }, "response_time": 1284, "credits_used": 1, "credits_remaining": 4741}A real captured response from this endpoint. Sign up to run your own.
What is the Scavio X (Twitter) API?
The Scavio X API is a REST API that returns public X data as structured JSON. You send a query, handle, post id or country to one of 11 POST endpoints with your API key, and get back matching posts, timelines, reply threads, retweeters, follower lists or trending topics — with no X developer account and no paid tier.
- 11
- endpoints, all live in production
- 1
- credit per call, every endpoint
- 0
- developer applications
Start with these four
They cover most of what people build. The full eleven are below.
Search
POST /api/v1/x/searchKeyword search across X with author and engagement on every row — the endpoint most monitoring pipelines are built on.
User posts
POST /api/v1/x/user/tweetsA handle's timeline with its pinned post, paginated. Everything an account has said, at 1 credit a page.
Post replies
POST /api/v1/x/tweet/commentsThe conversation under a post, ranked or chronological — where sentiment and objections actually surface.
Trending
POST /api/v1/x/trendingTrending topics per country with post-volume counts, so you can size a moment before deciding to join it.
All 11 X endpoints
Every route is a POST, returns JSON, and takes the same API key. X is flat-priced: 1 credit per successful call.
| Endpoint | Returns | Credits |
|---|---|---|
Search/api/v1/x/search | Matching posts — text, author, engagement counts, timestamps | 1 |
Post detail/api/v1/x/tweet | One post by id — text, author, engagement, media, reply count | 1 |
Post replies/api/v1/x/tweet/comments | Replies to a post, ranked (top) or chronological (latest) | 1 |
Retweeters/api/v1/x/tweet/retweeters | Accounts that reposted — handle, name, bio, follower counts | 1 |
User profile/api/v1/x/user | Display name, bio, follower and following counts, verification | 1 |
User posts/api/v1/x/user/tweets | A handle's timeline plus its pinned post, paginated | 1 |
User replies/api/v1/x/user/replies | Posts and replies with conversation context, paginated | 1 |
User media/api/v1/x/user/media | Only the posts carrying photos or video, paginated | 1 |
Followers/api/v1/x/user/followers | A handle's followers with bios and follower counts, paginated | 1 |
Following/api/v1/x/user/followings | The accounts a handle follows, paginated | 1 |
Trending/api/v1/x/trending | Trending topics for a country, with post-volume counts | 1 |
50 free credits on signup covers 50 calls of any kind. See plans
From a search to a full thread
Find the posts, then read the conversation under one. The response on the right is a real capture, field names and all.
from scavio import ScavioClient
client = ScavioClient(api_key="sk_live_your_key")
res = client.x.search(search="vector database")
for t in res["data"]["tweets"]:
print(t["favorite_count"], t["author"]["screen_name"], t["text"][:60])
# Then the replies under one post - 1 credit
thread = client.x.tweet_comments(tweet_id=res["data"]["tweets"][0]["id"]){
"data": {
"tweets": [
{
"id": "1899384756123456789",
"text": "We moved our RAG pipeline off pgvector to Qdrant last month.",
"created_at": "2026-07-19T11:02:44.000Z",
"favorite_count": 428,
"retweet_count": 61,
"reply_count": 37,
"view_count": 91204,
"author": {
"screen_name": "embeddings_guy",
"name": "Ravi",
"followers_count": 18422,
"verified": false
}
}
],
"next_cursor": "DAABCgABGf4-a__"
},
"response_time": 1284,
"credits_used": 1,
"credits_remaining": 4741
}Why not X's official API?
If you are building a client that posts on behalf of logged-in users, you need theirs. For reading public conversation, the pricing changed the calculus.
X API v2
- Paid since 2023, with the free tier effectively write-only
- Read volume is capped per tier, so monitoring cost scales in steps rather than smoothly
- Requires a developer account, an app and OAuth credentials
- Follower and reply access varies by tier, so a feature can vanish on a downgrade
Scavio X API
- One API key, issued at signup — no developer account, no app, no OAuth
- Flat 1 credit per call across all eleven endpoints
- Replies, retweeters and follower lists all available at the same price
- Same key and JSON envelope as 30 other Scavio platforms
Scavio returns publicly available data only, and never authenticates as an X user.
What developers build with it
Social listening and lead capture
Search for people describing the problem you solve and route the fresh posts to a human. At 1 credit a call, broad keyword coverage is a budget line rather than a project.
search + tweet/commentsBrand and crisis monitoring
Track mentions with engagement attached, so a post with 40,000 views is triaged differently from one with four. Reply threads tell you whether it is spreading.
search + tweet + tweet/commentsCompetitor and creator research
Page an account's timeline, replies and media separately to see what it posts, what it engages with, and which formats earn reach.
user/tweets + user/replies + user/mediaAudience and influence mapping
Pull followers, following and the accounts that reposted a given post to map who actually amplifies a topic, rather than who merely has a large number next to their name.
user/followers + tweet/retweetersTrend detection
Read trending topics per country with post volumes, then search into the ones that matter to see what is actually being said.
trending + searchAgent tools and RAG
Point an agent at the MCP server and X becomes a callable tool — what are people saying about X right now — with the same key as every other Scavio platform.
MCP + RESTHow to get X data as JSON
- 1
Get an API key
Sign up for a Scavio account and copy your key from the dashboard. You get 50 credits free on signup, with no card required and no X developer account or paid tier.
- 2
POST a query, handle or post id
Send {"query": "vector database"} to https://api.scavio.dev/api/v1/x/search with an Authorization: Bearer header. Every X endpoint is a POST and takes a query, handle, post id or country.
- 3
Read the JSON
The response wraps the payload under data, plus credits_used and credits_remaining. Timeline, reply and follower endpoints return next_cursor, which you pass back to page.
X (Twitter) API FAQ
What is the Scavio X (Twitter) API?
+
It is a REST API that returns public X data as structured JSON. Eleven POST endpoints cover post search, post detail, replies and retweeters, user profiles, timelines, replies and media, followers and following, and trending topics. You authenticate with a Scavio API key.
Who are these endpoints for?
+
Developers embedding social data in a product; AI agent builders wiring X in as an MCP or SDK tool; automation engineers running alerts inside n8n, Zapier or Make; GTM and sales teams finding buying-intent posts; brand and comms teams monitoring mentions; and researchers mapping conversation. Same API for all of them — what changes is which of the 11 endpoints you call.
How is this different from X's official API?
+
X's own API has been paid since 2023, with tiers that start well above hobby budgets and cap monthly post reads. Scavio needs no X developer account, no application, and no per-tier post ceiling: one key, a flat 1 credit per call, and the same JSON envelope as 30 other platforms.
How much does an X request cost?
+
Every X endpoint costs 1 credit, including reply threads and follower lists. New accounts get 50 free credits on signup, one time, with no card required. Paid plans start at $30 per month for 7,000 credits.
Can I read replies to a post?
+
Yes. POST a post id to /api/v1/x/tweet/comments and choose ranked (top) or chronological (latest) ordering. There is a separate endpoint for the accounts that reposted it, which is often the better amplification signal.
What does the response look like?
+
The API wraps the payload under a data key and adds credits_used and credits_remaining. A post carries id, text, created_at, favorite_count, retweet_count, reply_count, view_count and a nested author with screen_name, name, followers_count and verified.
How does pagination work?
+
Search, timeline, reply and follower endpoints return next_cursor alongside the results. Pass it back as the cursor parameter on the next call to get the following page.
Do I need an X developer account?
+
No. You call the Scavio endpoint with your Scavio API key. There is no X developer application, no OAuth flow, and no paid API tier to subscribe to.
Which languages and tools are supported?
+
Official Python (pip install scavio) and JavaScript/TypeScript (npm i scavio) SDKs, a remote MCP server at mcp.scavio.dev for AI agents, and an n8n community node. Any language can call the REST endpoints directly with an HTTP client.
Is scraping X data legal?
+
Scavio returns publicly available posts and profile data and does not access private accounts, direct messages or authenticate as a user. You remain responsible for how you use the data, including compliance with X's terms and with privacy law. Talk to your own counsel for your specific use case.
Explore more of Scavio
Reddit API
Search Reddit and pull full comment threads.
Instagram API
Profiles, posts, reels and hashtag search.
Threads API
Profiles, posts, replies and search.
TikTok API
Profiles, videos, comments and hashtags.
MCP server
Every platform as a callable tool for agents.
Pricing
Credit packs and plans, no per-platform surcharge.
Start pulling X data today
50 free credits on signup, no card. Your first request is a POST with a query in it.