Docs
Log in
Use the JS token

Facebook scrapers work best with your JavaScript token.

API usage

Add &scraper=facebook-profile to a Crawling API request. URL-encode the target URL in the url parameter.

curl 'https://api.crawlbase.com/?token=YOUR_TOKEN' \
  --data-urlencode 'url=https://www.facebook.com/zuck' \
  --data-urlencode 'scraper=facebook-profile' -G
from crawlbase import CrawlingAPI

api = CrawlingAPI({'token': 'YOUR_TOKEN'})
res = api.get(
    'https://www.facebook.com/zuck',
    {'scraper': 'facebook-profile'}
)

import json
data = json.loads(res['body'])
const { CrawlingAPI } = require('crawlbase');
const api = new CrawlingAPI({ token: 'YOUR_TOKEN' });

const res = await api.get(
  'https://www.facebook.com/zuck',
  { scraper: 'facebook-profile' }
);
const data = JSON.parse(res.body);
require 'crawlbase'
api = Crawlbase::API.new(token: 'YOUR_TOKEN')

res = api.get('https://www.facebook.com/zuck', scraper: 'facebook-profile')
data = JSON.parse(res.body)

Example input URL

The URL passed in the url parameter (URL-decoded for readability):

https://www.facebook.com/zuck

Response shape

JSON response body. Field types may be null when the source page omits the value.

name
string
Profile owner display name.
profile_image
string
Profile image URL.
cover_image
string | null
Cover image URL.
intro
string | null
Bio / intro text from the profile.
work
array
Listed work entries.
work[].employer
string
Employer name.
work[].title
string
Job title.
work[].period
string | null
Date range (e.g. "2004 - present").
education
array
Education entries with school, degree, period.
similar_profiles
array<string>
Names of profiles Facebook surfaces as similar.

Sample response

{
  "name": "Mark Zuckerberg",
  "profile_image": "https://scontent.fbcd…/profile.jpg",
  "intro": "Founder and CEO of Meta.",
  "work": [
    {
      "employer": "Meta",
      "title": "Founder & CEO",
      "period": "Feb 2004 – present"
    }
  ]
}