Facebook scraper API
Public Facebook pages, posts, reels, groups, Marketplace, transcripts, and Ad Library — one API key, shared envelope.
Why teams use Social Fetch for Facebook
Facebook still has surfaces Instagram and TikTok don't: business Pages, public groups, Marketplace, and Meta Ad Library. Social Fetch's Facebook tag is sixteen REST GETs behind one API key, all returning `{ data, meta }`.
`GET /v1/facebook/profiles` resolves a public page or profile URL to a card with `profileType`, likes, followers, and business fields. `GET /v1/facebook/profiles/posts`, `.../reels`, and `.../photos` page a Page's feed, Reels tab, and Photos tab with cursor pagination. `GET /v1/facebook/posts` hydrates a single post or Reel permalink, with optional `includeComments` and `includeTranscript`; `GET /v1/facebook/posts/comments` and `.../comments/replies` page the full thread; `GET /v1/facebook/posts/transcript` returns spoken text on its own. `GET /v1/facebook/groups/posts` pages a public group's feed by URL with `sortBy` options for Buy/Sell groups. Three Marketplace routes cover city-to-coordinates, keyword search near lat/lng, and single-listing lookup. Four Ad Library routes cover keyword ad search, single-ad detail, advertiser name-to-page-id search, and full ad listings for one page.
Every response uses `data.lookupStatus` (`found` / `not_found`, and `private` on profiles). List routes add `data.page.hasMore` and `data.page.nextCursor`. Every call reports `meta.requestId` and `meta.creditsCharged`.
What Facebook data can you get?
- Public profile and Page cards — profileType, likes, followers, contact fields, business hours (`GET /v1/facebook/profiles`).
- Page and profile feed, Reels tab, and Photos tab with cursor pagination (`profiles/posts`, `profiles/reels`, `profiles/photos`).
- Single post or Reel by permalink with optional inline comments and transcript (`GET /v1/facebook/posts`).
- Full comment threads and nested replies via cursor (`posts/comments`, `posts/comments/replies`).
- Standalone video transcript for posts and Reels (`GET /v1/facebook/posts/transcript`).
- Public group feed by URL, with a `sortBy` mode for Buy/Sell marketplace groups (`GET /v1/facebook/groups/posts`).
- Marketplace: city/place to coordinates, keyword listing search near a lat/lng, and single-listing detail by item id or URL.
- Ad Library: keyword ad search, single-ad detail with optional transcript, advertiser name-to-pageId search, and full ad lists for one page.
Facebook API endpoints
Routes from the live API catalog. Open an endpoint for parameters and examples — credit notes come from OpenAPI pricing extensions.
Profiles & channels
Lists & graphs
Content
Comments
Transcripts
Marketplace
Ads
How to call the Facebook API
1. Create an API key
Sign up at Social Fetch and copy a key (`sfk_…`). New accounts get 100 free credits — enough to resolve a Page profile, page a few posts, and run one Ad Library search against live data.
2. Call a Facebook route
Start with `GET /v1/facebook/profiles?url=…` for a Page or profile card, then move to `profiles/posts`, `profiles/reels`, `groups/posts`, `marketplace/search`, or the Ad Library routes depending on what you need. Send `x-api-key` on every request — the playground works for one-off checks, the TypeScript SDK or curl for production jobs.
3. Read the shared envelope
Branch on `data.lookupStatus` before writing rows — `found`, `not_found`, or `private`. Page list routes with `data.page.nextCursor` while `hasMore` is true. Log `meta.requestId` for support and bill from `meta.creditsCharged`, the source of truth for what a call cost.
How much does the Facebook API cost?
Every Facebook operation bills a flat 1 credit per completed lookup. Paginated routes (`profiles/posts`, `profiles/reels`, `profiles/photos`, `groups/posts`, `posts/comments`, `posts/comments/replies`, `marketplace/search`, and the three Ad Library list/search routes) bill each page separately. Credits never expire on pay-as-you-go packs. Always trust `meta.creditsCharged`.
Social Fetch vs the official Facebook API
Meta Graph API and Marketing API manage Pages and ad accounts you own — posting, Insights, campaigns. They require app review, access tokens, and (for Marketing API) an active ads account. Social Fetch looks up publicly visible pages, posts, groups, Marketplace listings, and Ad Library entries with a Social Fetch API key only — no Meta app review, no page token, no ads account.
Facebook API FAQ
Is there a Facebook scraper API that doesn't need Graph API access?
Yes. Social Fetch's Facebook routes read public pages, posts, groups, Marketplace, and Ad Library data over REST with a Social Fetch API key. You never connect a Meta app, request a page access token, or need admin rights on the Page, group, or ad account you're looking up.
How do I look up a Facebook page or profile by URL?
Call `GET /v1/facebook/profiles` with a public Facebook `url` query param. Check `data.lookupStatus` (`found`, `private`, or `not_found`) before reading `data.profile`, which can include `profileType` (`person` or `business`), likes, followers, contact fields, and business hours when `includeBusinessHours=true` is set.
How do I list posts, Reels, or photos for a Facebook Page?
Page the feed with `GET /v1/facebook/profiles/posts`, the Reels tab with `GET /v1/facebook/profiles/reels`, or the Photos tab with `GET /v1/facebook/profiles/photos`. Each takes a public `url` (posts also accepts `pageId`) and pages with `data.page.nextCursor` while `hasMore` is true.
Can I get comments and a transcript on the same post call?
Yes. `GET /v1/facebook/posts` accepts `includeComments=true` for a sample of top-level comments and `includeTranscript=true` for plain-text speech, alongside the caption, author, and media fields. For a full paginated thread instead of a sample, call `GET /v1/facebook/posts/comments` and, for nested replies, `GET /v1/facebook/posts/comments/replies` with a comment's `repliesCursor`.
Do you support Facebook groups?
Public groups only, via `GET /v1/facebook/groups/posts` with a group URL like `facebook.com/groups/{id-or-slug}/…`. Use `sortBy=chronologicalListings` for Buy/Sell marketplace groups. Private groups are not accessible — there is no public lookup path for them.
Does Facebook Marketplace search work via API?
Yes, in three steps: resolve a city or place name to coordinates with `GET /v1/facebook/marketplace/locations/search`, search listings by keyword near that `lat`/`lng` with `GET /v1/facebook/marketplace/search` (filterable by price, radius, condition, and delivery method), and fetch one known listing by `itemId` or `url` with `GET /v1/facebook/marketplace/items`.
Can I access Facebook Ad Library via API?
Yes — four routes under the Facebook tag. `GET /v1/facebook/ad-library/ads/search` finds ads by keyword with country, status, media-type, and date filters. `GET /v1/facebook/ad-library/ads` fetches one ad by archive id or URL, with an optional video transcript. `GET /v1/facebook/ad-library/companies/search` turns a brand name into a `pageId`, and `GET /v1/facebook/ad-library/companies/ads` lists every ad for that page.
How much does the Facebook API 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.
Facebook Graph API vs Social Fetch — what's the difference?
Graph API and Marketing API manage Pages and ad accounts you control — posting, Insights, campaign reporting — and require app review plus access tokens. Social Fetch is public-data enrichment: URL or search query in, structured JSON out, one Social Fetch API key.
Can I pull Facebook Reels and their transcripts?
Yes. List a Page's Reels with `GET /v1/facebook/profiles/reels`, then hydrate one Reel with `GET /v1/facebook/posts?url=…&includeTranscript=true`, or call `GET /v1/facebook/posts/transcript` for transcript text on its own. A `found` lookup does not guarantee non-null transcript text — some clips have no detectable speech.
Is scraping Facebook data legal?
Social Fetch returns publicly visible pages, posts, groups, Marketplace listings, and Ad Library entries — the same data a signed-out browser can see. You're responsible for how you use it under Meta's terms, applicable law, and your own compliance review. We don't give legal advice.
Start with Facebook data
Create an account, spend the 100 free credits on live Facebook routes, then buy a pack when the JSON fits your pipeline. Credits do not expire on pay-as-you-go packs.