Apify Store
AS
Apify Store
/apivault_labs/facebook-profile-scraper

Facebook Profile & Posts Scraper | No Login | Bulk

Scrape public Facebook profiles, pages and recent posts in bulk. Extract contacts, audience and engagement data or discover pages by keyword — no login, cookies or API key.

liveasyncunknown~30s typical
social medialead generationmarketingfacebookprofile
$0.0050
per result + $0.005 call
plus $0.001 platform fee per run
Actor charges $0.004 per result; Cracked adds 25% plus a $0.005 call fee
Bring your own Apify Store key: provider portion drops to $0.
$Set up https://cracked-ai-pearl.vercel.app/SKILL.md, then use Cracked to run apify /apivault_labs/facebook-profile-scraper for me.

Input

FieldTypeDescription
modestring (profiles | profilesAndPosts | search)Profiles extracts profile/page details. Profiles + posts also emits recent posts. Search discovers pages by keyword and extracts their profiles. default "profiles"
profileUrlsarrayPublic Facebook URLs, usernames, profile.php URLs or bare numeric Facebook IDs. Add as many as needed for bulk scraping.
searchKeywordsarrayFor Search mode: discover matching public Facebook pages, then scrape their profiles.
searchLocationstringOptional city, region or country appended to every keyword search.
maxResultsPerKeywordintegerMaximum number of discovered Facebook pages scraped for each keyword. default 20
maxPostsintegerMaximum number of matching public posts saved for each profile or page. default 25
postsSincestringOptional inclusive start date in YYYY-MM-DD format.
postsUntilstringOptional inclusive end date in YYYY-MM-DD format.
postKeywordstringOptional case-insensitive keyword filter for post text. default ""
scrapePostsbooleanBackward-compatible API input. Prefer mode=profilesAndPosts for new integrations. default false
sinceDaysintegerBackward-compatible relative filter. postsSince takes precedence when supplied. default 0
enrichEmailViaGooglebooleanWhen Facebook exposes no email or phone, visit the linked public website and check its contact/about pages. default true
emailDomainsarrayKeep only emails from these domains. Leave empty to keep every public email. default []
maxConcurrencyintegerNumber of profiles processed in parallel. default 15
timeoutintegerMaximum time in seconds for one fetch attempt. default 20
maxRetriesintegerRetry temporarily failed or blocked profiles. default 2
dedupebooleanAvoid scraping or saving the same Facebook profile twice. default true
fastModebooleanPrioritize speed and core fields; some secondary business fields may be absent. default false
notifyWebhookUrlstringPOST every successful profile and post as JSON to an n8n, Make, Zapier or custom webhook. default ""

Call it

curl
curl https://cracked-ai-pearl.vercel.app/v1/run \
  -H "Authorization: Bearer ck_live_..." -H "content-type: application/json" \
  -d '{"provider":"apify","endpoint":"/apivault_labs/facebook-profile-scraper","input":{"profileUrls":["https://www.facebook.com/NASA"],"searchKeywords":["dentist miami"],"searchLocation":"Miami, Florida","maxPosts":3,"postsSince":"2026-08-01","postsUntil":"2026-08-31","maxConcurrency":3},"wait":false}'
poll
curl "https://cracked-ai-pearl.vercel.app/v1/runs/<runId>?wait=30" -H "Authorization: Bearer ck_live_..."
cli
npx cracked-ai run -p apify -e /apivault_labs/facebook-profile-scraper -i '{"profileUrls":["https://www.facebook.com/NASA"],"searchKeywords":["dentist miami"],"searchLocation":"Miami, Florida","maxPosts":3,"postsSince":"2026-08-01","postsUntil":"2026-08-31","maxConcurrency":3}' -w 120
mcp
run_tool({ provider: "apify", endpoint: "/apivault_labs/facebook-profile-scraper", input: {"profileUrls":["https://www.facebook.com/NASA"],"searchKeywords":["dentist miami"],"searchLocation":"Miami, Florida","maxPosts":3,"postsSince":"2026-08-01","postsUntil":"2026-08-31","maxConcurrency":3}, wait: false })

Try it

Runs against your signed-in workspace balance. Sign in if you have not.