Threads · Guide

How to get Threads post details

TL;DR
To get Threads post details, sign up for a free Captapi key, then send one GET request to /v1/threads/post-details with your input. You get clean JSON back in seconds for 1 credit per call — no OAuth, scraping or platform SDKs. Threads post — engagement (views when exposed), comments[], relatedPosts[], threadId/isReply. Flat 1 credit.

How to get Threads post details (step by step)

  1. 1

    Get a free API key

    Create a free Captapi account (100 credits, no card) and generate an API key from the dashboard.

  2. 2

    Call the Threads Post Details API

    Send an authenticated GET request to /v1/threads/post-details with your input. No OAuth, no scraping setup.

  3. 3

    Read the JSON response

    Parse the clean JSON response. Pass cache=true for a free 24h cache hit; default is always fresh.

Code example

curl "https://api.captapi.com/v1/threads/post-details?url=https%3A%2F%2Fwww.threads.net%2F%40zuck%2Fpost%2FDZ7eGA1G7wU" \
  -H "Authorization: Bearer capt_live_..."
# or: -H "x-api-key: capt_live_..."

What the response looks like

{
  "success": true,
  "data": {
    "platform": "threads",
    "id": "3925863854786722836",
    "code": "DZ7eGA1G7wU",
    "url": "https://www.threads.net/@zuck/post/DZ7eGA1G7wU",
    "text": "Our new line of @metaglasses is available today. Three shapes, 26 style combos, with our most advanced Meta AI built in. Plus, three custom styles designed by @kyliejenner.",
    "publishedAt": "2026-06-23T12:57:42.000Z",
    "threadId": "3925863854786722836",
    "replyToId": null,
    "quoteId": null,
    "isReply": false,
    "isQuote": false,
    "author": {
      "username": "zuck",
      "displayName": "Mark Zuckerberg",
      "verified": true,
      "profileImage": "https://scontent-arn2-1.cdninstagram.com/v/t51.82787-19/550174606_17925811725103224_8363667901743352243_n.jpg?stp=dst-jpg_s150x150_tt6&efg=eyJ2ZW5jb2RlX3RhZyI6InByb2ZpbGVfcGljLmRqYW5nby4xMDgwLmMyIn0&_nc_ht=scontent-arn2-1.cdninstagram.com&_nc_cat=1&_nc_oc=Q6cZ2gFsMxaeE1_m_Q_Q0eLf64nCG364CCEvIvzu9jsBCHKpQUWN0bClo9JEGGd5l3LhCQ8&_nc_ohc=2ejw17SwZhoQ7kNvwHwwhmI&_nc_gid=vNCBwQPT-0NDIFQsV3MGZQ&edm=APs17CUBAAAA&ccb=7-5&oh=00_AQFuCMUtskb3YHQEeVcugbTVFCIEBGnplQquZ3GzBmvhDA&oe=6A77D5BE&_nc_sid=10d13b"
    },
    "engagement": {
      "views": null,
      "likes": 3693,
      "replies": 1408,
      "reposts": 243,
      "quotes": 119
    },
    "media": [
      "https://scontent-arn2-1.cdninstagram.com/v/t51.71878-15/729466804_1549760159886177_1883659439515397370_n.jpg?stp=dst-jpg_e15_tt6&_nc_cat=105&ig_cache_key=MzkyNTg1NzYxNDQ3NTQyMzA5NQ%3D%3D.3-ccb7-5&ccb=7-5&_nc_sid=58cdad&efg=eyJ2ZW5jb2RlX3RhZyI6IkNBUk9VU0VMX0lURU0ueHBpZHMuNjQwLnNkci52aWRlb19kZWZhdWx0X2NvdmVyX2ZyYW1lLkMzIn0%3D&_nc_ohc=gwtwKMHXGY0Q7kNvwFs8O_B&_nc_oc=AdoeAgtu1iFjbAXZR03M0jk5mHDyXG-V4YkfEgAhFcL9ShW87MFpF6dbSvT0ivhLv8A&_nc_ad=z-m&_nc_cid=0&_nc_zt=23&_nc_ht=scontent-arn2-1.cdninstagram.com&_nc_gid=vNCBwQPT-0NDIFQsV3MGZQ&_nc_ss=7a22e&oh=00_AQGstcY-xX--otMYSGqFyYqoIP73kZ_8D8RHL_quEES13w&oe=6A77F376",
      "https://scontent-arn2-1.cdninstagram.com/o1/v/t16/f2/m84/AQOTRrCQTl1fyJz7fqBninvUdgWeil7BncTOhD-RfiP256I4PY_ioi8UAxdGl0WLEByzkS3XiObR8E2yNiSbmnE634ktoS1hPNebBYI.mp4?_nc_cat=107&_nc_sid=5e9851&_nc_ht=scontent-arn2-1.cdninstagram.com&_nc_ohc=fSXEPxW14JIQ7kNvwHBncdf&efg=eyJ2ZW5jb2RlX3RhZyI6Inhwdl9wcm9ncmVzc2l2ZS5JTlNUQUdSQU0uQ0FST1VTRUxfSVRFTS5DMy43MjAuZGFzaF9iYXNlbGluZV8xX3YxIiwieHB2X2Fzc2V0X2lkIjoxNzk2ODE3MTU3ODA4OTg4OCwiYXNzZXRfYWdlX2RheXMiOjQwLCJ2aV91c2VjYXNlX2lkIjoxMDE2NCwiZHVyYXRpb25fcyI6MjQsInVybGdlbl9zb3VyY2UiOiJ3d3cifQ%3D%3D&ccb=17-1&vs=cefa3ff17e61a968&_nc_vs=HBksFQIYTGlnX2JhY2tmaWxsX3RpbWVsaW5lX3ZvZC81NDQyODFEMkZCRDg0MzU4MzZBQUE0QzI5MzE4MzlBRF92aWRlb19kYXNoaW5pdC5tcDQVAALIARIAFQIYUWlnX3hwdl9wbGFjZW1lbnRfcGVybWFuZW50X3YyLzYwNEVGNDk2M0EwQzdFNTY4QTIyNDRDRkI4MDZBMkIwX2F1ZGlvX2Rhc2hpbml0Lm1wNBUCAsgBEgAoABgAGwKIB3VzZV9vaWwBMRJwcm9ncmVzc2l2ZV9yZWNpcGUBMRUAACbAhufCnv3qPxUCKAJDMywXQDgF41P3ztkYEmRhc2hfYmFzZWxpbmVfMV92MREAde4HZeieAQA&_nc_gid=vNCBwQPT-0NDIFQsV3MGZQ&_nc_zt=28&_nc_ss=7a22e&oh=00_AQHxRBBUCqh74vHFVtIRloUxKv6fQJnkF0rhbfQ9oLWYUw&oe=6A73E2B5"
    ],
    "comments": [],
    "relatedPosts": [
      {
        "platform": "threads",
        "id": "3955997150920775044",
        "code": "DbmhnLxFxWE",
        "url": "https://www.threads.net/@thelexlibris/post/DbmhnLxFxWE",
        "text": "The lack of accountability in that teas and tropes post is so wild. The signing lines is all that needs improvements?? I know not.",
        "publishedAt": "2026-08-04T02:47:11.000Z",
        "threadId": "3955997150920775044",
        "replyToId": null,
        "quoteId": null,
        "isReply": false,
        "isQuote": false,
        "author": {
          "username": "thelexlibris",
          "displayName": "Lex 🌱",
          "verified": null
        },
        "engagement": {
          "views": null,
          "likes": 1,
          "replies": null,
          "reposts": null,
          "quotes": null
        },
        "media": []
      },
      {
        "platform": "threads",
        "id": "3955973937109715838",
        "code": "DbmcVYOIMt-",
        "url": "https://www.threads.net/@xaylibarclay/post/DbmcVYOIMt-",
        "text": "WOW!! 😮 >> Out of approximately 41,000 to 47,000 active psychiatrists in the U.S., Black women make up less than 1% of the total. \n\nExact counts place the number of practicing Black female psychiatrists between 600 and 850 nationwide, meaning you are looking for a very rare, specialized group of professionals.\n\n🤯🤯",
        "publishedAt": "2026-08-04T02:01:04.000Z",
        "threadId": "3955973937109715838",
        "replyToId": null,
        "quoteId": null,
        "isReply": false,
        "isQuote": false,
        "author": {
          "username": "xaylibarclay",
          "displayName": "XayLi Barclay - Tech, Cameras, Life At 40 Yrs old",
          "verified": null
        },
        "engagement": {
          "views": null,
          "likes": 32,
          "replies": 7,
          "reposts": 3,
          "quotes": null
        },
        "media": []
      }
    ]
  }
}

Billing metadata (credits charged, cache hit/miss) is returned in the X-Captapi-Credits and X-Captapi-Cache response headers.

Request parameters

NameTypeRequiredDescription
urlstring YesThreads post URL, e.g. https://threads.net/@user/post/CODE. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
cachebooleanNoSet true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. Envelope includes cached + cachedAt on hits.

Frequently asked questions

What does the Threads Post Details API do?

The Threads Post Details API lets you fetch full metadata and key stats from a public Threads post using one GET request to /v1/threads/post-details. It returns clean JSON — no OAuth or infrastructure setup required.

How many credits does the Threads Post Details API cost?

Each successful call costs 1 credit. Pass cache=true to serve from the 24h cache (0 credits on hit); default is always fresh. Hits include cached + cachedAt. Selected profile endpoints also accept cacheMaxAge=1d|3d|7d|14d|30d. Failed or empty results are never charged.

Do I need a Threads API key or OAuth?

No. A single Captapi key works across every platform Captapi supports — YouTube, TikTok, Instagram, Facebook, Twitter/X, Reddit, Threads, Bluesky, Pinterest, LinkedIn, Rumble, Spotify, Kwai, and more. We handle proxies, rate limits, retries, and authentication for you.

Is this just user-posts for one URL?

No. post-details always returns comments[] and relatedPosts[] on top of the shared post card. relatedPosts comes from Meta's BarcelonaLoggedOutRelatedPosts module (other creators, no second request). comments is filled only when the permalink hydrate embeds same-thread replies — viral posts often return [] with the key still present.

Why is comments[] empty when the post has thousands of replies?

Logged-out Threads permalink HTML usually ships the main post + related posts, not the public reply tree. Captapi keeps comments: [] rather than omitting the key or inventing a separate comments endpoint that cannot be filled on this path. ScrapeCreators often populates comments via a deeper GraphQL session we do not use here.

Where are view counts?

engagement.views is always keyed. Meta often omits per-post view_counts on logged-out web hydrate (even when the app shows views), so the value is frequently null — same honesty as user-posts.

Is the Threads Post Details API suitable for production use?

Yes. It is a stable REST endpoint with predictable JSON and automatic retries. Pass cache=true to serve from the 24h cache (0 credits on hit); default is always fresh. Hits include cached + cachedAt. Selected profile endpoints also accept cacheMaxAge=1d|3d|7d|14d|30d. Use it for analytics, monitoring, and content automation.

Ready to get Threads post details?

Start free with 100 credits — no credit card required.

Get your free API key