All endpoints
Threads User Posts

Threads User Posts API

Get a user's recent posts (their feed) on Threads by username. Returns post text, engagement metrics (likes, replies, reposts, quotes, reshares), author metadata, attached media, link previews, and whether each post is pinned to the profile.

Price: $0.006 per request
Free tier: 50 requests/month
Endpoint
GET /v1/threads/user/posts

Parameters

username *
Threads username, with or without leading @ (max 100 characters)
get_sentiment
Set to true to add AI emotion analysis (+$0.001/request)

Response fields

posts
Array of the user's recent posts
title
Post title (format: @username on Threads)
url
Direct link to the post
date
Publication date and time (UTC, YYYY-MM-DD HH:MM:SS)
author
Author's Threads username
source
Platform name (Threads)
domain
threads.com
snippet
Post text content
likes
Number of likes
replies
Number of replies
reposts
Number of reposts
quotes
Number of quote posts
reshares
Number of times reshared to other surfaces
author_name
Author's display name
author_verified
Whether the author is verified
is_reply
Whether the post is a reply
is_pinned
Whether the post is pinned to the top of the user's profile
media_type
Post type: text, image, video, or carousel
image_url
Cover image URL for image/video/carousel posts, empty for text-only (temporary; valid ~6-24 hours)
video_url
Direct video URL for video posts, empty otherwise (temporary; valid ~6-24 hours)
width
Media width in pixels (0 when not applicable)
height
Media height in pixels (0 when not applicable)
has_audio
Whether the post's video has audio
reply_control
Who can reply (e.g. everyone)
hashtags
Hashtags used in the post
mentions
Usernames mentioned in the post
carousel_media
Array of slides for carousel posts (media_id, is_video, image_url, video_url, width, height); empty otherwise
link_preview
Link preview object for posts sharing a URL (url, display_url, title, description, image_url, favicon_url), or null
quoted_post
The embedded quoted/reposted post (same post shape), or null
post_id
Threads post ID
code
Post shortcode (used in the post URL)
sentiment
Emotion analysis: emotions, dominant_emotion, emotional_intensity, polarity (when get_sentiment=true)
count
Total results returned

Example Request

curl "https://apidirect.io/v1/threads/user/posts?username=mrbeast" \
  -H "X-API-Key: YOUR_API_KEY"

Example Response

{
  "posts": [
    {
      "title": "@mrbeast on Threads",
      "url": "https://www.threads.com/@mrbeast/post/DPb1G6SEocH",
      "date": "2025-10-05 16:49:10",
      "author": "mrbeast",
      "source": "Threads",
      "domain": "threads.com",
      "snippet": "When AI videos are just as good as normal videos, I wonder what that will do to the millions of creators making content for a living.",
      "likes": 9742,
      "replies": 1825,
      "reposts": 297,
      "quotes": 40,
      "reshares": 105,
      "author_name": "MrBeast",
      "author_verified": true,
      "is_reply": false,
      "is_pinned": false,
      "media_type": "text",
      "image_url": "",
      "video_url": "",
      "width": 0,
      "height": 0,
      "has_audio": false,
      "reply_control": "everyone",
      "hashtags": [],
      "mentions": [],
      "carousel_media": [],
      "link_preview": null,
      "quoted_post": null,
      "post_id": "3736813887196137223",
      "code": "DPb1G6SEocH",
      "sentiment": {
        "emotions": {"joy": 15, "trust": 20, "fear": 55, "surprise": 20, "sadness": 30, "disgust": 5, "anger": 10, "anticipation": 40},
        "dominant_emotion": "fear",
        "emotional_intensity": 6,
        "polarity": "negative"
      }
    }
  ],
  "count": 25
}

Frequently asked questions

How do I specify the user?

Provide the username with or without a leading @ (e.g. mrbeast or @mrbeast).

What engagement metrics are included?

Each post includes likes, replies, reposts, quotes, and reshares, plus author metadata. Threads doesn't expose public view counts, so there is no views field.

Does the feed include replies?

Yes. A user's feed can include their original posts and their replies. Use the is_reply field to distinguish them.

How do I know which post is pinned?

Posts the user has pinned to the top of their profile have is_pinned set to true.

What happens if the username doesn't exist?

The endpoint returns 404 with code: "not_found". You are not charged for not_found responses.

How does pricing work?

You only pay for successful requests. The Threads User Posts API costs $0.006 per request. There are no monthly fees or commitments. You get 50 free requests per endpoint every month.

Do I need a credit card to start?

No. You can sign up and use the free tier (50 requests/endpoint/month) without adding a payment method. You only need to add a card when you want to exceed the free tier.

Are there rate limits?

Yes, there's a concurrency limit of 5 simultaneous requests per endpoint per user. If you need more, just get in touch.

Start using the Threads User Posts API

Get your API key and start making requests in minutes. 50 requests/month free every month.

Get API Key