What you get#
Onekey exposes Threads as 6 endpoints behind one API key: 2 endpoints return one record (data is an object) and 4 endpoints return a list (data is an array). Every answer uses the same envelope (success, data, metadata, error), the cost is reported in metadata.credits_charged, and fields are mapped onto the unified schema so the code you write for Threads also works for the rest of the social networks category.
Endpoints#
| Endpoint | What it does | Parameters | Credits | Status |
|---|---|---|---|---|
post | A single Threads post with engagement counts. | id* | 1 | beta |
profile | Threads profile lookup: bio, followers, likes, verification. | handle* | 2 | beta may need a pack |
replies | Replies to a Threads post. | id* | 2 | beta |
search | Search public Threads posts by keyword. | q*, cursor | 2 | beta may need a pack |
search_users | Search Threads users. | query* | 2 | beta needs a pack |
user_posts | Public threads posted by a user. | handle* | 2 | beta may need a pack |
A * marks a required parameter. Each endpoint name links to its reference page with the full parameter table, caching window and a recorded response.
Make a request#
This calls threads.post (1 credit, beta). Replace YOUR_API_KEY with your key; sign up, no card. 1,000 free credits cover the open-platform endpoints. Hard-to-reach platforms (X, TikTok, Instagram, Reddit, and others marked on their page) need a verified email and a purchased pack.
curl "https://api.onekey.dev/v1/threads/post?id=17900000000000000" \
-H "x-api-key: YOUR_API_KEY"Fields you get back#
These unified fields come back from Threads, with the same names as on every other platform. The count is how many of its 6 mapped endpoints return the field; a field the source lacks is null, never missing.
| Field | Type | Endpoints |
|---|---|---|
author.username | string | 6 |
content.text | string | 5 |
engagement.likes | integer | 5 |
content.createdAt | ISO 8601 date | 4 |
content.id | string | 4 |
content.url | URL | 4 |
engagement.comments | integer | 4 |
engagement.quotes | integer | 4 |
engagement.shares | integer | 4 |
engagement.views | integer | 4 |
author.avatarUrl | URL | 2 |
author.displayName | string | 2 |
author.followers | integer | 2 |
author.verified | boolean | 2 |
author.id | string | 1 |
The full schema is in Unified schema.
Pricing#
Threads calls cost 1 to 2 credits, flat per endpoint. Free when served from cache (0.2 credit for a cached response over 100 KB). Invalid, failed or not-found calls are not charged. See pricing for credit packs.