LinkedIn Ad Library Search API
Search public LinkedIn Ad Library creatives by company name, keyword, or company id — structured ad rows in the shared Social Fetch envelope.
GET /v1/linkedin/ad-library/ads/search1 credit per successful request.
About this endpoint
B2B competitive intel often starts in LinkedIn's Ad Library: who is promoting what, which markets they buy, and how long a creative has been live. Clicking through the public UI is fine for a one-off check. It breaks down when you need recurring company sweeps, keyword watches, or rows that land next to Facebook and TikTok ads in the same warehouse.
`GET /v1/linkedin/ad-library/ads/search` requires at least one of `company`, `keyword`, or `companyId`. Optional filters: `countries` (comma-separated codes such as `US,CA,MX`), `startDate` / `endDate` as `YYYY-MM-DD`, and `cursor` for the next page. The response puts matching ads under `data.ads` and pagination under `data.page` (`hasMore`, `nextCursor`, `totalResults` when available). Each ad can include headline, description, advertiser, targeting summaries, creative assets, duration, and impressions when LinkedIn exposes them. Bill from `meta.creditsCharged`.
This route is Ad Library search. For one known ad id or Ad Library detail URL, use `GET /v1/linkedin/ad-library/ads`. Company page cards and person profiles are separate LinkedIn routes on the same API key.
LinkedIn Ad Library Search API FAQ
What does the LinkedIn Ad Library Search API return?
A page of matching Ad Library ads under data.ads, plus pagination under data.page (hasMore, nextCursor, and totalResults when available). Each ad may include id, url, headline, description, advertiser, targeting, creative, duration, and impressions when LinkedIn shows those fields. Responses use the shared Social Fetch envelope with meta.requestId and meta.creditsCharged.
How do I search LinkedIn Ad Library ads via API?
Call GET /v1/linkedin/ad-library/ads/search with your Social Fetch API key (x-api-key) and at least one of company, keyword, or companyId. Optionally add countries, startDate, endDate, and cursor. Read data.ads and data.page in the JSON response. Full parameters are in the API docs.
How much does LinkedIn Ad Library ads search cost?
Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged — that field is the billing source of truth. Each paginated page is a separate billed request.
Is this the same as getting one LinkedIn Ad Library ad by id?
No. GET /v1/linkedin/ad-library/ads/search finds ads by company, keyword, or company id with optional country and date filters. GET /v1/linkedin/ad-library/ads returns a single ad when you already have an ad id or Ad Library detail URL.
Can I filter LinkedIn Ad Library search by country or date?
Yes. Pass countries as a comma-separated list of country codes (for example US,CA,MX). Pass startDate and endDate as YYYY-MM-DD; endDate must be on or after startDate when both are set. Keep the same search filters when you paginate with cursor.
How does pagination work on LinkedIn Ad Library search?
When data.page.hasMore is true, pass data.page.nextCursor as the cursor query param on the next request. Do not treat totalResults alone as the end-of-results signal.
Do I need a LinkedIn ads account or Campaign Manager token to search?
No. You authenticate to Social Fetch with an API key. The route reads public Ad Library search results; it does not act on behalf of an ads account you manage.
Other LinkedIn endpoints
- ProfilesGET /v1/linkedin/profiles
- Profile postsGET /v1/linkedin/profiles/posts
- People searchGET /v1/linkedin/people/search
- Organization pageGET /v1/linkedin/organizations
- Company pageGET /v1/linkedin/companies
- Company postsGET /v1/linkedin/companies/posts
- Post or articleGET /v1/linkedin/posts
- TranscriptGET /v1/linkedin/posts/transcript