Tools / Ad libraries / API
RouterGrowth is independent of Meta and is not its official Ad Library API. It gives your code or agent one REST call instead: POST capability ads.search with an advertiser or keyword, and get the ads back as JSON with advertiser, headline, body text, start date, format and preview URL fields. No Meta developer app to register.
Ask your agent
Write a script that calls RouterGrowth ads.search for each competitor name in a list and saves the ads to JSON files.
Connect RouterGrowth once, then ask in plain words. New workspaces start with $1 of credit. Get a key or read the setup guide.
A real run
One call to ads.search (competitor ad creatives), run through RouterGrowth on October 19, 2026. These are the first rows it returned; fields that name a person are masked.
| advertiser | headline | text | started |
|---|---|---|---|
| The Ridge | All Wallets - In Aluminum, Titanium, & Carbon Fiber // The Ridge | Upgrade your wallet to Ridge. Metal, RFID-blocking wallets designed to carry cards and cash safely and securely. | 2026-09-17 |
| The Ridge | {{product.name}} | Smarter essentials - power, protection, connection, and security. Shop 5-in-1 Ridge Power Banks, Tracker Cards, Fast Wall Chargers. and mor… | 2026-09-30 |
Five ads for a wallet brand's name: two from the brand itself, shown here, and three from other pages whose ads mention it, which a script should filter by advertiser.
Step by step
Create a RouterGrowth API key in the dashboard. There is no Meta app review or identity check on your side.
Send capability ads.search with input query, platform meta and limit, plus a max_cost.
result.ads is a list of objects with advertiser, headline, text, url, started_at as a Unix timestamp, format and preview_url.
A brand name query also returns other pages that mention it. Keep the rows whose advertiser matches.
Price
List prices on Meta Ad Library, read from the catalog when this page was built. The exact figure is quoted before every run, and a monthly plan lowers it.
In practice
You describe the job; the agent picks the calls, shows the price and runs them.
Write a script that calls RouterGrowth ads.search for each competitor name in a list and saves the ads to JSON files.
Every Monday, pull the new Meta ads of these five brands and post the ones started this week to our channel.
Connect
One MCP server for Claude, ChatGPT, Claude Code, Codex and Cursor, or the same call over the CLI and REST with the input above.
claude mcp add --transport http routergrowth https://api.routergrowth.com/mcp
npm install -g routergrowth && routergrowth setup
routergrowth run -c ads.search -i '{"query": "Ridge Wallet", "platform": "meta", "limit": 5}'curl -X POST https://api.routergrowth.com/v1/run \
-H "Authorization: Bearer $ROUTERGROWTH_API_KEY" \
-d '{"capability": "ads.search", "input": {"query": "Ridge Wallet", "platform": "meta", "limit": 5}}'Worth knowing
This is an independent route to public Ad Library data, with its own response shape. It is not affiliated with Meta.
started_at is a Unix timestamp. Convert it to a date in your code.
Agents and scripts call the same capability, so a prompt you test in Claude maps to one request.
FAQ
No. The request uses your RouterGrowth key only.
No. The records cover the creative and its start date. Spend estimates are a separate capability.
Yes. The query field takes an advertiser name or a keyword.
Per search, with a quote before the run. A search with no ads is not charged.
Ads shown in the public Meta Ad Library for the query, across Meta's apps.
More on Ad libraries
Reading this as an agent? This page as markdown: /tools/ad-library/facebook-ads-library-api.md
Connect your agent once. The first calls run on the $1 that comes with signup.