Threads API endpoint
Returns the first public page shown on a profile's Media tab. Items include image and video URLs, including carousel attachments, plus post and topic metadata. The logged-out page exposes no continuation cursor or media-type filter; `pagination_limited` reports when additional results are gated by login or lack a supported cursor.
/threads/profile/{username}/mediaMCP tool: threads_profile_media
username (required): Threads username, with or without a leading @.Returns the first public page shown on a profile's Media tab. Items preserve
their author, topic metadata, and image or video attachments, including
carousel items when present. The logged-out tab exposes no continuation cursor
or media-type filter. pagination_limited is true when Threads shows a login
wall for additional items or reports more items without a usable cursor.
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| username (path) | string | Yes | Threads username | zuck | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/threads/profile/zuck/media" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"username": "zuck",
"items": [
{
"id": "123",
"code": "ABC123",
"url": "https://www.threads.com/@zuck/post/ABC123",
"text": "Example media post",
"author": {
"username": "zuck"
},
"image_urls": [
"https://cdn.example/image.jpg"
],
"video_urls": []
}
],
"has_more": false,
"pagination_limited": true
}
}Request schema
No body schema
Response schema
#/definitions/threads.profileMediaResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | threads.ProfileMediaResult | No | ||||
| data.has_more | boolean | No | Whether Threads reports more public media beyond this page. | |||
| data.items | array | No | Public media posts, including image and video attachments when available. Thread record, 26 fields: author, code, created_at, id, image_urls, is_reply, like_count, quote_count, reply_count, reply_to, repost_count, text and 3 more. Described under Search Threads API. | |||
| data.pagination_limited | boolean | No | True when Threads gates additional media behind login or exposes no supported continuation cursor. | |||
| data.username | string | No | Profile whose public Media tab was read. | |||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Invalid username | #/definitions/app.Response |
| 404 | Profile not found | #/definitions/app.Response |
| 503 | Upstream error or parser drift | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/threads/profile/zuck/media" \
-H "x-api-key: $CRAWLORA_API_KEY"