Appearance
Search Ads
GET /v1/linkedin/ads/search
Searches the LinkedIn Ad Library by company name, keyword, or companyId with optional country and date filters. Each ad includes id, description, headline, adType, advertiser, targeting details, image or video URLs, totalImpressions, and impressionsByCountry. Supports pagination via paginationToken.
Authentication
All requests require the x-api-key header. Get your key at scrapecreators.com.
Query Parameters
| Name | Type | Required | Description | Example |
|---|---|---|---|---|
company | string | no | The company name to search for. 'Microsoft' for example | microsoft |
keyword | string | no | The keyword to search for | scraping |
companyId | string | no | The company id to search for | 157238 |
countries | string | no | Comma separated list of countries. Example: US,CA,MX | US,CA,MX |
startDate | string | no | Start date to search for. Format: YYYY-MM-DD | 2024-01-01 |
endDate | string | no | End date to search for. Format: YYYY-MM-DD | 2024-01-10 |
paginationToken | string | no | Pagination token to paginate through results | 640547184-1743616612000 |
Example Request
curl
bash
curl 'https://api.scrapecreators.com/v1/linkedin/ads/search' \
-H 'x-api-key: $SCRAPECREATORS_API_KEY'Node / TypeScript
js
const params = new URLSearchParams({ });
const res = await fetch(`https://api.scrapecreators.com/v1/linkedin/ads/search?${params}`, {
headers: { 'x-api-key': process.env.SCRAPECREATORS_API_KEY }
});
const data = await res.json();
console.log(data);Python
python
import os, requests
r = requests.get(
'https://api.scrapecreators.com/v1/linkedin/ads/search',
headers={'x-api-key': os.environ['SCRAPECREATORS_API_KEY']},
params={},
)
r.raise_for_status()
print(r.json())CLI
bash
scrapecreators linkedin-ads ads-search --helpExample Response
json
{
"success": true,
"ads": [
{
"id": "823975056",
"description": "The countdown has begun - grab your discounted tickets now for #FabConEurope in Vienna!\nJoin us for an unforgettable experience filled with deep learning, expert insights, and top-tier networking opportunities.\n\nRegister today and be part of the future of innovation: http://msft.it/6043sMFt3 \n\n#MicrosoftFabric",
"headline": null,
"poster": "Microsoft",
"posterTitle": "Promoted",
"promotedBy": null,
"targeting": {
"language": "Targeting includes English",
"location": "Targeting includes Netherlands",
"company": "Exclusion targeting applied"
},
"image": "https://media.licdn.com/dms/image/v2/D5610AQH8f223ANJdoQ/image-shrink_1280/B56ZiDa0MFHkAQ-/0/1754551502346?e=2147483647&v=beta&t=ZuZ0zUs1KInS8ysVO7FxzmlzxHP9B_JX2b6kdMU8GT4",
"video": null,
"carouselImages": [],
"adType": "Single Image Ad",
"advertiser": "Microsoft",
"advertiserLinkedinPage": "https://www.linkedin.com/company/1035",
"cta": null,
"destinationUrl": "http://msft.it/6043sMFt3?trk=ad_library_ad_preview_headline_content",
"adDuration": "Ran from Aug 10, 2025 to Aug 10, 2025",
"startDate": "2025-08-10T05:00:00.000Z",
"endDate": "2025-08-10T05:00:00.000Z",
"totalImpressions": "< 1k",
"impressionsByCountry": []
}
],
"paginationToken": "756412693-1754569518292",
"isLastPage": false,
"totalAds": 8699
}Credits
Most ScrapeCreators endpoints consume 1 credit per successful response. Some heavier endpoints (transcripts, AI-driven enrichment, ad detail lookups) may cost more. Check GET /v1/credit-balance for your remaining balance.
Errors
| Status | Meaning | Action |
|---|---|---|
| 200 | Success. | Use the JSON payload. |
| 400 | Invalid or missing parameter. | Verify required parameters and value format. |
| 401 | Missing or invalid x-api-key. | Pass a valid API key in the header. |
| 402 | Out of credits. | Top up at scrapecreators.com or wait for plan reset. |
| 404 | Resource not found or private. | Confirm the handle, URL, or id and that the resource is public. |
| 429 | Rate limited. | Backoff and retry with exponential delay. |
| 500 | Server error or upstream platform failure. | Retry with backoff; report persistent errors to support. |