Irmu
Social

Meta Ads Library API

Every active ad creative, spend range and targeting signal from Facebook and Instagram.

Start freePOST https://app.irmu.com/api/extract20 credits
Why

Why teams scrape the Meta Ads Library

the Meta Ads Library holds some of the most commercially useful public data on the web, and almost none of it is available through a stable official feed at the volume real products need. Rate limits, partner-only access and shifting page structures mean teams either give up on the source or maintain a fragile scraper that breaks every few weeks.

The Ads Library is a public record of what every advertiser is running right now — creatives, copy, run dates and, for political ads, spend and reach ranges. It is the single richest competitive-intelligence source on the open web, and the official access path is slow, partial and awkward to automate.

Irmu removes the infrastructure question entirely. One authenticated request handles proxy selection, browser rendering, anti-bot challenges and retries, and AI Extract turns the resulting page into validated JSON against a schema you define. You get ad_id, page_name, ad_creative_body, ad_creative_link_title, media_urls, start_date, platforms, spend_range, impressions_range, landing_url without writing or maintaining a single selector, and the same endpoint, quota and observability model you already use for every other source.

Use cases

What it powers

  • Creative intelligence

    Track which hooks and formats competitors keep running — longevity signals performance.

  • Launch detection

    Spot new positioning or products the moment ads go live.

  • Funnel teardown

    Follow landing URLs to map competitor offers and page structure.

  • Category benchmarking

    Measure advertiser volume and creative churn across a whole vertical.

Data

Fields available

Everything below comes back typed and validated against your schema.

ad_id

Library identifier for the creative

page_name

Advertiser page running the ad

ad_creative_body

Primary ad copy

ad_creative_link_title

Headline of the linked destination

media_urls

Image and video creative URLs

start_date

First date the ad ran

platforms

Facebook, Instagram, Messenger, Audience Network

spend_range

Reported spend band where disclosed

impressions_range

Reported impression band where disclosed

landing_url

Destination URL including UTM parameters

Request

One call, no selectors

request.sh
curl -X POST https://app.irmu.com/api/extract \
  -H "Authorization: Bearer irmu_sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://www.facebook.com/ads/library/?active_status=active&ad_type=all&q=crm",
    "schema": {
      "ad_id": "string",
      "page_name": "string",
      "ad_creative_body": "string",
      "ad_creative_link_title": "string",
      "media_urls": "string",
      "start_date": "string"
    }
  }'
Response

Validated JSON

response.json
{
  "data": {
    "ad_id": "902114558273991",
    "page_name": "Northwind CRM",
    "ad_creative_body": "Stop paying for seats you don't use.",
    "start_date": "2026-07-14",
    "platforms": [
      "facebook",
      "instagram"
    ],
    "landing_url": "https://northwind.example/pricing?utm_source=fb"
  },
  "credits_used": 20,
  "status": 200
}
SDKs

Copy, paste, ship

import requests

res = requests.post(
    "https://app.irmu.com/api/extract",
    headers={"Authorization": "Bearer irmu_sk_live_..."},
    json={
        "url": "https://www.facebook.com/ads/library/?active_status=active&ad_type=all&q=crm",
        "schema": {
            "ad_id": "string",
            "page_name": "string",
            "ad_creative_body": "string",
            "ad_creative_link_title": "string"
        },
    },
)

data = res.json()["data"]
print(data)
Pricing

Simple credits

Per ad page

20 credits

Failed requests are retried automatically and never billed.

See full pricing →
FAQ

Meta Ads Library API questions

Start extracting the Meta Ads Library data today

1,000 free credits every month. No card, no sales call.