# Threads Post Comments API (https://www.socialcrawl.dev/platforms/threads/post-comments) > Returns the replies on a Threads post. By default you get the window Threads bundles with the post itself, typically about 20 replies, for 1 credit. Each comment carries its text, like count, direct reply count, author handle, display name, avatar and verification status, and creation timestamp. Send `limit` above 25 to collect more than that window holds, up to 50: measured 07/09/2026 on a post with 1,141 replies, the default call returned 24 and `limit=50` returned 50. The deeper read is metered at 1 credit per 5 replies returned. It comes from a different source, but every field is normalised to the same shape and the same id space before it reaches you, so a comment carries the identical `comment.id` and `comment.post_id` whatever `limit` you sent, and raising `limit` returns more of the same objects rather than a different shape. `comment.parent_id` stays null on both lanes: nothing upstream says which comment a nested reply answers. A response is still a single page with no cursor. Same upstream call as `/v1/threads/post` on the default lane, so a post and its replies cost one call each. TL;DR: `GET /v1/threads/post/comments` costs 1 credit for the bundled window of about 20 replies, which is what a call with no `limit`, or `limit` at 25 or below, costs. Above 25 the deeper lane is metered at 1 credit per 5 replies RETURNED: the call holds `ceil(limit / 5)` up front (the 50 maximum holds 10) and refunds down to what came back, so a post with 12 replies settles at 3 credits however high `limit` was set and returns SocialCrawl's unified JSON schema. Single x-api-key auth, 100 free credits on signup. ## Parameters | Parameter | Required | Description | | --- | --- | --- | | `url` | yes | Full URL of the Threads post whose replies you want, for example https://www.threads.com/@zuck/post/DZpPDXbCeTt. Both threads.com and threads.net are accepted. | | `trim` | no | Ask the upstream for a stripped record. This is a real shape change, not just less whitespace: a trimmed row carries only the id, text, shortcode, like count, timestamp and author, so media, reply count, share count, view count, topic tag, pinned flag and quoted post all come back null. Same 1 credit either way, so send it only when the text and the like count are all you need. Ignored when `limit` is above 25, because the deeper source has no trimmed mode. | | `limit` | no | How many replies to collect, 1 to 50. Leave it off, or send 25 or less, and nothing changes: you get the bundled window for exactly 1 credit. Above 25 the replies come from a deeper source and the call is metered at 1 credit per 5 replies actually returned, so a post with only 12 replies costs 3 credits however high you set this. Threads publishes only part of a large conversation without a login, so a post declaring a thousand replies will still return about 50. | | `since` | no | Only rows published on or after this date: YYYY-MM-DD (midnight UTC) or an ISO 8601 timestamp. Rows older than it are left off each page. This list is not in date order, so the walk does not stop at the date: keep following `next_cursor`, and each page costs what a page costs even when every row on it is filtered out. A row with no date is kept. `published_after`, `start_date`, `from_date`, `publish_time` (`yesterday`, `this-week`, `this-month`, `last-3-months`, `last-6-months`) and `max_age_days` are accepted and applied as `since`. | | `until` | no | Only rows published on or before this date: YYYY-MM-DD (that whole UTC day is included) or an ISO 8601 timestamp. Newer rows are left off each page and the walk does not stop, so older pages follow. A row with no date is kept. `published_before`, `end_date` and `to_date` are accepted and applied as `until`. | ## Code example ```bash curl -G "https://www.socialcrawl.dev/v1/threads/post/comments" \ --data-urlencode "url=https://www.threads.com/@zuck/post/DZpPDXbCeTt" \ -H "x-api-key: sc_YOUR_API_KEY" ``` ## FAQ ### How do I get comments on a Threads post with an API? Send a GET request to /v1/threads/post/comments with the post URL in url; threads.com and threads.net links both work. By default you get the replies Threads bundles with the post, usually about 20, for 1 credit. ### What fields does each Threads reply include? Each comment carries its text, like count, direct reply count, author handle, display name, avatar and verification status, and creation timestamp. comment.parent_id stays null, because nothing upstream says which comment a nested reply answers. ### Can the Threads comments API return more than 20 replies? Yes. Send limit above 25, up to 50, and the replies come from a deeper source in the same shape and the same id space. Threads shows only part of a large conversation without a login, so a post with a thousand replies still returns about 50. ### How much does the Threads comments API cost? A call without limit, or with limit at 25 or below, costs 1 credit. Above 25 the call is metered by the replies actually returned, up to 10 credits at limit=50, so a post with only a few replies costs less however high you set limit. ### Is there a cursor to page through Threads replies? No. Neither source exposes a cursor, so each response is one page with nothing to resume from, and limit is a collection target rather than a page size. On the default call, trim=true returns only the text, like count, author and timestamp at the same price. See the full Threads API: https://www.socialcrawl.dev/platforms/threads ## Pricing - Standard endpoints: 1 credit per call - Advanced endpoints: 5 credits per call - Premium endpoints: 10 credits per call - 100 free credits on signup, no credit card required. Cached responses cost 0 credits. Credit packs never expire. - Full pricing: https://www.socialcrawl.dev/pricing ## Explore with AI Questions this API answers, phrased for an AI assistant: - How do I scrape replies to a Threads post with SocialCrawl? - Can the SocialCrawl Threads comments API return more than 20 replies?