Facebook · Ads

Facebook Company Ads Scraper API

The Facebook Company Ads endpoint is one API call: send either a page ID or a companyName with your HProxy key and get back a clean, structured JSON object. Pull every ad a company is running on Facebook right now, with creatives, copy, format, spend range and how long each has run. HProxy runs the proxies, sessions, anti-bot handling and parsing server-side, so there is no headless browser to babysit and no parser to keep fixing when Facebook changes its markup. You only ever touch the JSON. Longer result sets come back page by page with a cursor, so you can walk the whole set without holding it in memory.
  • 0.15¢ per call
  • $1.49 per 1,000
  • Takes either a page ID or a companyName
  • Errors and timeouts are not charged

The call

One GET, and the company ads comes back as JSON.

Your key goes in one header. 1 required parameter, and the answer is the object below it.

The full reference
curl "https://hproxy.com/api/v1/scrape/facebook/ad-company?pageId=1234567890" \
  -H "X-API-Key: hpx_your_key_here"
Response200 OK · JSON
{
  "advertiser": { "name": "Brand Inc", "pageId": "104..." },
  "creatives": [
    { "format": "video", "body": "Shop the new drop", "media": "https://.../ad.mp4" }
  ],
  "spend": { "min": 5000, "max": 10000, "currency": "USD" },
  "dates": { "firstSeen": "2026-06-30", "lastSeen": "2026-07-17" }
}

What comes back

The Facebook company ads object.

creatives[]
Each active ad's media, copy and format.
advertiser
The page or advertiser running the ad.
spend / impressions
Spend range and reach where disclosed.
dates
First-seen and last-seen run dates.

What it takes

Parameters.

Send any one of pageId, companyName. pageId or companyName required

pageIdstring1234567890

Identifier from a previous response.

companyNamestringvalue

The companyName parameter.

countrystringUS

Two-letter region/country code, e.g. US.

statusstringALL

The status parameter. Allowed values: `ALL`, `ACTIVE`, `INACTIVE`.

languagestringen

Two-letter language code, e.g. en.

cursorstring0

Pagination token from the previous response.

media_typestringALL

The media type parameter. Allowed values: `ALL`, `IMAGE`, `VIDEO`, `MEME`, `IMAGE_AND_MEME`, `NONE`.

sort_bystringtotal_impressions

Ordering to apply to the results. Allowed values: `total_impressions`, `relevancy_monthly_grouped`.

start_datestring2026-07-01

Filter by date, as YYYY-MM-DD.

end_datestring2026-07-01

Filter by date, as YYYY-MM-DD.

trimbooleantrue

Return a slimmed-down payload (drops verbose fields).

How it works

Scraping Facebook company ads, in three steps.

You write one line. Proxies, anti-bot walls, rendering and parsing happen on our side.

  1. 1

    Create a free account

    Sign up and top up any amount. The balance pays for every HProxy product.
  2. 2

    Grab your API key

    One key from the dashboard authenticates every scraper.
  3. 3

    Call the endpoint

    Send the GET you need and read the JSON. That is the entire integration.

What people build with it

Where the Facebook company ads endpoint earns its keep.

  • Spy on competitor ad creatives and messaging.
  • Track ad spend and campaign timing in your niche.
  • Build a swipe file of what is running right now.

Facebook company ads questions

Answered before you ask.

The reference

Send one authenticated HTTPS request to the Facebook Company Ads endpoint with either a page ID or a companyName and your HProxy API key. Pull every ad a company is running on Facebook right now, with creatives, copy, format, spend range and how long each has run. No proxies, no headless browser and no parsing on your side. The response is ready-to-use JSON.

This endpoint is 0.15¢ per successful call, which is $1.49 per 1,000. It bills from your HProxy balance with no subscription and no monthly minimum. Errors are retried and never charged; a lookup whose target does not exist counts as a call.

No. Every call runs on HProxy's own residential network behind the scenes, so requests look like real users. The proxy layer is already included in the per-call price.

A structured JSON object with the full company ads data Facebook exposes publicly. See the fields listed above. The schema is consistent across calls, so you integrate once and rely on it.

Yes. The response carries a cursor; pass it back on the next call to continue from where you stopped. Each page is one billable call, so you only pay for the depth you actually pull.

The API only accesses publicly available Facebook data, the same pages anyone can open in a browser. You are responsible for using the data in line with applicable laws and Facebook's terms for your use case.

Ads elsewhere

The same data on 2 other platforms.

One key, one JSON shape, one balance. Move sideways without learning a second API.

Ad Library API

More on the Facebook Company Ads API

What the Facebook Company Ads endpoint returns

Pull every ad a company is running on Facebook right now, with creatives, copy, format, spend range and how long each has run. The JSON object carries creatives[], advertiser, spend / impressions and dates. Nothing is summarised away on our side, so what you read in the response is what the Facebook company ads page itself holds.

What you send to the Facebook Company Ads API

The call takes either a page ID or a companyName, and any one of pageId and companyName satisfies it. Optional: pageId, companyName, country, status, language, cursor, media_type, sort_by, start_date, end_date and trim. Your key travels in the X-API-Key header, the response is JSON, and the call is billed at 0.15¢, $1.49 per 1,000.

Ads on other platforms

The same ads data is available on 2 other platforms: LinkedIn Ad Library Search and Google Ad Library Company Ads. They share this endpoint's JSON shape, its per-call billing and your one API key, so moving from Facebook to another network is a change of URL rather than a second integration.

Is scraping Facebook company ads allowed?

The endpoint reads publicly available Facebook data, the same pages anyone can open in a browser without logging in. It does not touch private accounts or anything behind a password. How you then use the data is yours to keep lawful, under the rules that apply to you and to Facebook.

Ready when you are.

Your dashboard is ten seconds away. No sales call, no subscription, no minimum.