Threads
Threads Profile API
To get a Threads account's public profile, call GET /v1/threads/profile?handle=… with your API key. You get clean JSON back.
GET
/v1/threads/profilecurl "https://api.scraperize.com/v1/threads/profile?handle=zuck" \ -H "x-api-key: YOUR_API_KEY"
Cost
1 credit / call
Only successful calls are charged. Errors are free.
Pagination
Single response
Everything comes back in one call.
Caching
0 credits
Set
cache_max_age to reuse a recent result for free.Rate limit
Per team / minute
Over the limit:
429 with a Retry-After header.Parameters
handleRequiredThe Threads username, e.g.
zuck (an @handle or threads.com/@... URL also works).cache_max_ageOptionalOptional. Return a cached result if one this age or newer exists — served for 0 credits with
meta.cached=true and meta.cachedAt. Otherwise a fresh scrape runs (1 credit) and refreshes the cache. Omit to always scrape fresh.One of 5 values.Send your key in the x-api-key header. Full API reference
Example response
200 OK · application/json
{
"data": {
"profile": {
"id": "63055343223",
"handle": "zuck",
"fullName": "Mark Zuckerberg",
"url": "https://www.threads.com/@zuck",
"biography": "Mostly superintelligence and MMA takes",
"bioMentions": [],
"bioUrls": [],
"profilePicUrl": "https://scontent-los4-1.cdninstagram.com/v/t51.82787-19/825322135_17989325280103224_1252773933700107438_n.jpg?stp=dst-jp…",
"profilePicUrlHd": "https://scontent-los4-1.cdninstagram.com/v/t51.82787-19/825322135_17989325280103224_1252773933700107438_n.jpg?stp=dst-jp…",
"isVerified": true,
"isPrivate": false,
"followerCount": 5754774,
"links": [],
"interests": [
{
"id": "18399895213044171",
"name": "AI Threads",
"tag": "aithreads",
"isCommunity": false,
"iconUrl": "https://scontent.xx.fbcdn.net/v/t1.6435-9/722635384_18590137618044171_7444848202374067606_n.png?_nc_cat=1&ccb=1-7&_nc_si…",
"url": "https://www.threads.com/search?q=aithreads&serp_type=tags&tag_id=18399895213044171"
}
],
"podcast": null,
"newsletterUrl": null,
"fediverseSharingEnabled": true,
"instagram": {
"handle": "zuck",
"url": "https://www.instagram.com/zuck/",
"followerCount": 17348027,
"followingCount": 625
}
},
"fetchedAt": "2026-10-19T09:39:14.113Z"
},
"meta": {
"requestId": "req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f",
"creditsCharged": 1,
"creditsRemaining": 4999,
"cached": false
}
}A real response, shortened to one item per list.
More Threads endpoints
FAQ
Threads Profile API questions
How much does the Threads Profile API cost?
1 credit per successful call. Errors and cached results are free, and new accounts start with 100 free credits, no card required. See pricing.
Do I need a Threads account or API key?
No. You only need a Scraperize API key, sent in the x-api-key header. Scraperize returns publicly available data. No Threads login or developer app is needed.
How fresh is the data?
Each call fetches the data live. To trade freshness for cost, pass cache_max_age (e.g. 1h, 1d) to get a recent cached result instantly for 0 credits.
Where are the full parameters and response fields?
In the API reference, with every parameter, field and error.