Facebook comments API
Pull top-level comments on a public Facebook post or Reel — text, author, reactions, reply counts — with cursor pagination in the shared Social Fetch envelope.
GET /v1/facebook/posts/comments1 credit per successful request.
About this endpoint
`GET /v1/facebook/posts/comments` accepts a public post or Reel `url`, an optional `feedbackId`, or both (at least one is required). Optional `cursor` continues from a previous page. On a completed lookup, read `data.lookupStatus` (`found` or `not_found`), then `data.comments` and `data.page`. Each top-level comment can include `id`, `text`, `createdAt`, `replyCount`, `reactionCount`, `repliesCursor`, and an `author` with `name`, optional `platformUserId`, and `shortName`. When `data.page.hasMore` is true, pass `data.page.nextCursor` as `cursor` on the next call.
This route lists top-level comments only. Nested replies use `GET /v1/facebook/posts/comments/replies` with a comment's `repliesCursor`. Post or Reel metadata is `GET /v1/facebook/posts`. Bill from `meta.creditsCharged`.
Facebook comments API FAQ
How do I list Facebook post or Reel comments via API?
Call `GET /v1/facebook/posts/comments` with your Social Fetch API key (`x-api-key`) and either a public post/Reel `url`, a `feedbackId`, or both. Read `data.lookupStatus`, then `data.comments` and `data.page`. See the API docs for parameters and examples.
How much does the Facebook comments endpoint cost?
Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged — that field is the billing source of truth. Each paginated page is a separate billed request.
How does pagination work on Facebook post comments?
Each response includes `data.page.nextCursor` and `data.page.hasMore`. When `hasMore` is true, pass `nextCursor` as the `cursor` query param on the next request. The cursor is opaque.
What fields are in each Facebook comment?
Items can include id, text, createdAt (ISO-8601), replyCount, reactionCount, repliesCursor (string or null), and author with name, optional platformUserId, and shortName when Facebook exposes them.
When should I pass feedbackId instead of (or with) url?
Provide at least one of `url` or `feedbackId`. Use a post or Reel permalink when that is what you have. Pass `feedbackId` when an earlier Facebook response already gave you that identifier — it can speed up the lookup. You can send both on the same request.
Facebook comments vs replies vs post detail?
Use this route for top-level comments on one post or Reel. Use `GET /v1/facebook/posts/comments/replies` with a comment `repliesCursor` for nested replies. Use `GET /v1/facebook/posts` for the post or Reel card itself. See the Facebook platform hub for the full list.
Does a found lookup always return comments?
No. `lookupStatus` of `found` means the post or Reel resolved. `data.comments` can still be an empty array when there are no comments or none were returned for that page. You still pay the credit for a completed lookup. Missing or unresolved targets return `not_found` with an empty list.
Other Facebook endpoints
- ProfileGET /v1/facebook/profiles
- Profile postsGET /v1/facebook/profiles/posts
- Profile reelsGET /v1/facebook/profiles/reels
- Profile photosGET /v1/facebook/profiles/photos
- Post or reelGET /v1/facebook/posts
- RepliesGET /v1/facebook/posts/comments/replies
- TranscriptGET /v1/facebook/posts/transcript
- Group postsGET /v1/facebook/groups/posts