Threads API
Profiles, a creator's posts and replies, single posts and the conversations under them — each one a single POST returning structured JSON. No Meta app, no OAuth, and a documented way to halve your credit cost.
50 free credits on signup. No card, no Meta app review.
{ "data": { "user_id": "63269174602", "username": "natgeo", "full_name": "National Geographic", "biography": "Step into wonder and find your inner explorer with National Geographic", "profile_pic_url": "https://scontent-sea5-1.cdninstagram.com/v/t51.82787-19/...", "follower_count": 18211345, "is_verified": true, "is_private": null }, "response_time": 1218, "credits_used": 2, "credits_remaining": 999}A real captured response from this endpoint. Sign up to run your own.
What is the Scavio Threads API?
The Scavio Threads API is a REST API that returns public Threads data as structured JSON. You send a username, numeric user_id, post id or threads.net URL to one of 6 POST endpoints with your API key, and get back profiles, a creator's posts and replies, single post detail or the replies under a post — with no Meta app and no OAuth.
- 6
- endpoints, all live in production
- 2–4
- credits: 2 by user_id, 4 by username
- 0
- Meta app reviews required
Start with these four
They cover most of what people build. All six are below.
Profile
POST /api/v1/threads/profileHandle, name, bio, follower count and verification — plus the numeric user_id that halves the cost of every later call.
User posts
POST /api/v1/threads/user/postsA creator's own posts with like, reply and repost counts, paginated.
Post replies
POST /api/v1/threads/post/commentsThe conversation under a post. Threads skews heavily to replies, so this is where most of the signal is.
Search profiles
POST /api/v1/threads/search/usersFind accounts by name or handle and get the numeric user_id back — the cheapest way to resolve a handle once and cache it.
All 6 Threads endpoints
Every route is a POST, returns JSON, and takes the same API key. Where two prices are shown, the lower one applies when you pass a numeric user_id.
| Endpoint | Returns | Credits |
|---|---|---|
Profile/api/v1/threads/profile | Numeric user id, handle, name, biography, followers, verified | 2 / 4 |
User posts/api/v1/threads/user/posts | A creator's own posts — text, like / reply / repost counts | 2 / 4 |
User replies/api/v1/threads/user/replies | What an account replies to, with the parent post for context | 2 / 4 |
Post detail/api/v1/threads/post | One post by id or threads.net URL, with engagement counts | 2 |
Post replies/api/v1/threads/post/comments | Replies under a post — text, author, engagement counts | 2 |
Search profiles/api/v1/threads/search/users | Profiles by name or handle, returning the numeric user_id | 2 |
50 free credits on signup covers 25 calls by user_id, or 12 by username. See plans
Resolve once, then pay half
The first call by username costs 4 credits; cache the user_id and every call after it costs 2. The response on the right is a real capture.
from scavio import ScavioClient
client = ScavioClient(api_key="sk_live_your_key")
# By username: 4 credits (handle lookup costs an extra fetch)
p = client.threads.profile(username="natgeo")
uid = p["data"]["user_id"]
# Cache the user_id and every later call is 2 credits
posts = client.threads.user_posts(user_id=uid){
"data": {
"user_id": "63269174602",
"username": "natgeo",
"full_name": "National Geographic",
"biography": "Step into wonder and find your inner explorer with National Geographic",
"profile_pic_url": "https://scontent-sea5-1.cdninstagram.com/v/t51.82787-19/...",
"follower_count": 18211345,
"is_verified": true,
"is_private": null
},
"response_time": 1218,
"credits_used": 2,
"credits_remaining": 999
}Why not Meta's Threads API?
Theirs publishes to an account you control. This one reads the network you are researching.
Meta Threads API
- Built for publishing to and reading your own authorised account
- Requires a Meta app and an OAuth grant per user
- No access to arbitrary public profiles, posts or reply threads
- Permissions gated by app review for most scopes
Scavio Threads API
- One API key, issued at signup — no Meta app, no OAuth, no review
- Any public profile, post or reply thread
- Documented cost control: pass user_id and pay half
- Same key and JSON envelope as 30 other Scavio platforms
Scavio returns publicly available data only, and never authenticates as a Threads user.
What developers build with it
Brand monitoring on a newer network
Threads is where a lot of conversation moved, and far fewer teams monitor it. Track accounts and the replies under their posts before your competitors bother to.
user/posts + post/commentsCreator vetting
Resolve a handle to real follower counts and verification, then read the engagement on recent posts rather than trusting a screenshot.
profile + user/postsReply-graph and sentiment analysis
Threads skews to replies more than most networks. Pull the conversation under a post and run an LLM over it for objections and themes.
post + post/commentsCross-network content tracking
Compare what an account posts on Threads against Instagram and X with one key and one JSON envelope, to see which message lands where.
user/posts + Instagram + XAgent tools
Point an agent at the MCP server and Threads becomes a callable tool — what is this account saying, who is replying — with one key.
MCP + RESTHow to get Threads 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 Meta app or review.
- 2
Resolve the handle once
Send {"username": "natgeo"} to https://api.scavio.dev/api/v1/threads/profile and read user_id from the response. That first call costs 4 credits because resolving a handle needs a second upstream fetch.
- 3
Then pass user_id and pay 2
Every profile, posts and replies call costs 2 credits when you pass the numeric user_id instead of the username. Cache the id and you halve the bill on everything that follows.
Threads API FAQ
What is the Scavio Threads API?
+
It is a REST API that returns public Threads data as structured JSON. Six POST endpoints cover profiles, a user's posts and replies, single post detail, the replies under a post, and profile search. You authenticate with a Scavio API key.
Who are these endpoints for?
+
Brand and comms teams monitoring a network few competitors watch yet; developers embedding social data in a product; AI agent builders wiring Threads in as an MCP or SDK tool; automation engineers running alerts inside n8n, Zapier or Make; and creators or agencies vetting collaborators. Same API for all of them.
How much does a Threads request cost?
+
It depends on the identifier you pass. Calls keyed on the numeric user_id cost 2 credits; calls keyed on a username cost 4, because resolving the handle requires a second upstream fetch. Post, post replies and profile search are always 2.
How do I avoid paying 4 credits every call?
+
Resolve the handle once — via profile or search/users — cache the numeric user_id, and pass that from then on. Everything keyed on user_id is 2 credits, so caching halves your bill on any repeated workload.
Does Meta offer a Threads API for this?
+
Meta's Threads API is for publishing and reading your own account's content after an OAuth grant. It does not let you read arbitrary public profiles, posts or reply threads, which is what monitoring and research need.
What does the response look like?
+
The API wraps the payload under a data key and adds credits_used and credits_remaining. A profile carries user_id, username, full_name, biography, profile_pic_url, follower_count, is_verified and is_private.
Can it read private accounts?
+
No. Only data Threads makes publicly available is returned. The is_private flag on a profile tells you when an account's posts are not accessible.
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 Threads data legal?
+
Scavio returns publicly available posts and profile data and does not authenticate as a user or access private accounts. You remain responsible for how you use the data, including compliance with Meta's terms and with privacy law. Talk to your own counsel for your specific use case.
Explore more of Scavio
Instagram API
Profiles, posts, reels and hashtag search.
X (Twitter) API
Post search, timelines and social graph.
Reddit API
Search Reddit and pull full comment threads.
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 Threads data today
50 free credits on signup, no card. Your first request is a POST with a handle in it.