# Meta Ad Library API for your agent

Meta Ad Library API for an agent: it sends a company domain, a Facebook page or a keyword to a catalog endpoint and reads ad creative text, images and video back. Several providers sell the call, so the agent tries the cheapest first. You pay per call, and a failed call costs nothing.

## What this does

Meta publishes every ad that runs on Facebook and Instagram in its Ad Library. Your agent reads that library for you. Send a company domain or a page and see the ads it has live, with the copy, the format and when each one started. That is the fastest way to see how a competitor sells.

The providers split two ways. Some start from a company and list its ads. Others start from a keyword and return the ads that match, which finds firms you had not named. One covers Facebook, Instagram, Audience Network, Messenger and Threads together, and filters by platform, media type and active status.

You give: a company domain, a Facebook page or a keyword. Example: nike.com.

## What differs between providers

- Scrape Creators API (scrapecreators-facebook-adlibrary-company-ads-get): lists all ads currently running for a company by name or page ID, with filters for country, media type, date range and language.
- Adyntel (adyntel-facebook): lists a company's ads on Facebook and Instagram from its domain or Facebook URL, with a country code.
- Scrape Creators API (scrapecreators-facebook-adlibrary-search-ads-get): searches the library by keyword and returns matching ads with the creative, the platform and the call to action.
- SearchApi (searchapi-io-meta-ad-library): searches across Facebook, Instagram, Audience Network, Messenger and Threads, with filters for country, ad type, active status, media type and platform.
- Adyntel (adyntel-facebook-ad-search): finds ads by keyword and returns the number of ads, the ad type, the media types, the platform and the active status.

## Before you start

- Filter by country. The library is searchable per country, and a global pull returns a pile you cannot read.
- Ask for active ads when you want what runs now. Ended ads stay in the library, and they tell a different story about what the company tried.
- Use the ad id to go deeper. One provider returns an ad's details and its video transcript, and both start from the id a search returns.

## Prompt

Use looot to list the ads nike.com runs on Facebook and Instagram in the United States right now, with the creative text, the format and the start date. 1. Set up https://looot.ai/skill.md. 2. Search the catalog for each step and check its price before you call. 3. Run the cheapest endpoint that fits. 4. Show the results as a table and the total cost.

## Steps and providers

- Fetch the ads: scrapecreators, adyntel, searchapi-io. 1 call per company.

## What comes back

- Ad creative text, images and video
- Active or ended status
- Platforms the ad runs on
- Start date
- Advertiser page

## The request and what comes back

Each run is one POST to /v1/runs with an endpoint id and an input. These are illustrative calls with generic values. The run's result holds the provider's own fields.

- Scrape Creators API: {"endpointId":"scrapecreators-facebook-adlibrary-company-ads-get","input":{"companyName":"Nike","country":"US"},"wait":30}
- Adyntel: {"endpointId":"adyntel-facebook","input":{"company_domain":"nike.com","country_code":"US"},"wait":30}

## How do I see the ads a competitor is running?

Send the competitor's domain or Facebook page to an ad-library endpoint. Your agent returns the ads that are live, with the copy, the format and the start date.

## Can I search ads by keyword?

Yes. Two of the providers here take a keyword and return the matching ads across advertisers. That is how you find who else sells in your space.

## Does it cover Instagram?

Yes. Meta's Ad Library covers Facebook and Instagram, and one provider here also covers Audience Network, Messenger and Threads.

## Can I see how long an ad has been running?

Each ad carries a start date, and ended ads show an end date. An ad that has run for months is usually one that works.

## Is the Ad Library public?

Yes. It is Meta's own public record of ads. looot returns what the providers read from it, and it does not show targeting or spend for ordinary commercial ads.

## How much does one company cost?

You pay per call, and the price depends on the provider your agent picks. This page reads the cheapest live price from the catalog and shows no number when the catalog is unreachable.

## Do I pay when a meta ad library call fails?

No. A call that fails at the provider costs nothing, and your agent can retry it or send it to another provider.

## Do I need an account with each meta ad library provider?

No. One looot key reaches every provider in the catalog. You top up once, and each call is billed at the price shown before it runs.

## How do I call meta ad library from code?

Send a POST to /v1/runs with the endpoint id, the input and a new idempotency key, and your looot token in the Authorization header. With wait set to 30, the answer comes back in the response when the run ends within 30 seconds. Otherwise poll GET /v1/runs/<runId>.

## Can I run meta ad library on a schedule?

That needs scheduled runs, not available yet. Run it by hand whenever you want fresh results.

## Do I pay while my agent is idle?

No. looot bills per call, and nothing runs while your agent is idle.

## Related pages

- /use-cases/google-ads-transparency-api
- /use-cases/linkedin-ad-library-api
- /use-cases/tiktok-ads-library-api

## Last reviewed

2026-10-04. The cost per 1,000 company runs is read live from the catalog on the web page.
