Appearance
Search by Keyword
GET /v1/threads/search
Searches Threads for posts matching a keyword, returning up to 10 results with caption text, like_count, reshare_count, direct_reply_count, user info, and image_versions2. Supports optional start_date and end_date filters plus a trim option. Only 10 results are returned per request due to public API limitations.
Authentication
All requests require the x-api-key header. Get your key at scrapecreators.com.
Query Parameters
| Name | Type | Required | Description | Example |
|---|---|---|---|---|
query | string | yes | Keyword to search for | basketball |
start_date | string | no | Start date to search for | 2026-01-01 |
end_date | string | no | End date to search for | 2026-01-01 |
trim | boolean | no | Set to true for a trimmed down version of the response | false |
Example Request
curl
bash
curl 'https://api.scrapecreators.com/v1/threads/search?query=basketball' \
-H 'x-api-key: $SCRAPECREATORS_API_KEY'Node / TypeScript
js
const params = new URLSearchParams({ query: 'basketball' });
const res = await fetch(`https://api.scrapecreators.com/v1/threads/search?${params}`, {
headers: { 'x-api-key': process.env.SCRAPECREATORS_API_KEY }
});
const data = await res.json();
console.log(data);Python
python
import os, requests
r = requests.get(
'https://api.scrapecreators.com/v1/threads/search',
headers={'x-api-key': os.environ['SCRAPECREATORS_API_KEY']},
params={'query': 'basketball'},
)
r.raise_for_status()
print(r.json())CLI
bash
scrapecreators threads search --helpExample Response
json
{
"success": true,
"posts": [
{
"id": "3658605407757558624_71259204903",
"pk": "3658605407757558624",
"caption": {
"text": "This woman selling mini umbrellas shows love to stray cats & dogs & introduces them. She may not have money but is richer than many.🥹🥹",
"pk": "18077403781726333",
"has_translation": null
},
"code": "DLF-jv2tmNg",
"like_count": 5419,
"taken_at": 1750359780,
"user": {
"pk": "71259204903",
"friendship_status": null,
"profile_pic_url": "https://scontent-dfw5-2.cdninstagram.com/v/t51.2885-19/501402907_17869607802372904_1939177145792832486_n.jpg?stp=dst-jpg_s150x150_tt6&_nc_ht=scontent-dfw5-2.cdninstagram.com&_nc_cat=1&_nc_oc=Q6cZ2QHQ6tqymzxxWWnD3Y69dUStiwPULqhvwrOx1_1jXHmGEOp8LBdxfOkihhVQW0v5NsY&_nc_ohc=FICE0ht7dSAQ7kNvwEXdDzp&_nc_gid=C_fAfqKQ2OEy746wTYa0sw&edm=APs17CUBAAAA&ccb=7-5&oh=00_AfPyuWIMTTIwpoiGW4059hDGkyKRW8eVZbUH1Zfzd2xxRw&oe=685AA184&_nc_sid=10d13b",
"username": "mahtabuddinit",
"id": "71259204903",
"full_name": "Mahtab Uddin",
"transparency_label": null,
"transparency_product": null,
"transparency_product_enabled": false,
"is_verified": false,
"text_post_app_is_private": false,
"has_onboarded_to_text_post_app": true
}
}
]
}Credits
Most ScrapeCreators endpoints consume 1 credit per successful response. Some heavier endpoints (transcripts, AI-driven enrichment, ad detail lookups) may cost more. Check GET /v1/credit-balance for your remaining balance.
Errors
| Status | Meaning | Action |
|---|---|---|
| 200 | Success. | Use the JSON payload. |
| 400 | Invalid or missing parameter. | Verify required parameters and value format. |
| 401 | Missing or invalid x-api-key. | Pass a valid API key in the header. |
| 402 | Out of credits. | Top up at scrapecreators.com or wait for plan reset. |
| 404 | Resource not found or private. | Confirm the handle, URL, or id and that the resource is public. |
| 429 | Rate limited. | Backoff and retry with exponential delay. |
| 500 | Server error or upstream platform failure. | Retry with backoff; report persistent errors to support. |