curl --request POST \
--url https://api.scrapeunblocker.com/ads/google-ads-transparency \
--header 'x-scrapeunblocker-key: <api-key>'import requests
url = "https://api.scrapeunblocker.com/ads/google-ads-transparency"
headers = {"x-scrapeunblocker-key": "<api-key>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'x-scrapeunblocker-key': '<api-key>'}};
fetch('https://api.scrapeunblocker.com/ads/google-ads-transparency', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Scrape Google ads (Ads Transparency Center)
Returns an advertiser’s Google ads (Search, YouTube, Display, Shopping, Maps, Play) from the Google Ads Transparency Center for competitor analysis: per ad creativeId, advertiserId/advertiserName, format (text/image/video), firstShown, lastShown, daysShown, matchedDomain, the preview (imageUrl with size, or previewUrl), googleCreativeId, googleCustomerId, adGroupId and adUrl. Pick ads by advertiser (name or id) or domain; filter with region, platform, format and date_from/date_to. include_details adds per-region reach and targeting, include_preview the ad’s texts and YouTube video. Collects up to max_results (continue with page_token); billed one unit per page of up to 100 ads, plus one per detail and per preview fetched (callUnits).
curl --request POST \
--url https://api.scrapeunblocker.com/ads/google-ads-transparency \
--header 'x-scrapeunblocker-key: <api-key>'import requests
url = "https://api.scrapeunblocker.com/ads/google-ads-transparency"
headers = {"x-scrapeunblocker-key": "<api-key>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'x-scrapeunblocker-key': '<api-key>'}};
fetch('https://api.scrapeunblocker.com/ads/google-ads-transparency', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
Your ScrapeUnblocker API key. Apply on every request.
Query Parameters
Advertiser to pull ads for: a name (e.g. 'Nike') - resolved to the best-matching advertiser, reported in advertisersUsed (a single brand name no advertiser is named like falls back to its domain) - or an advertiser id ('AR16735076323512287233'). Comma-separate up to 10. Pass advertiser or domain.
Website the ads point to, e.g. 'nike.com' (ads of every advertiser for that domain).
Where the ads were shown: a 2-letter country code ('US', 'DE'), a comma list of them, or 'anywhere' (default).
Only ads shown on these platforms (comma list): search, youtube, maps, play, shopping.
Only one ad format: text, image or video.
Only ads shown on or after this date (YYYY-MM-DD).
Only ads shown on or before this date (YYYY-MM-DD).
Order of the ads: 'last_shown' (most recently shown first).
Ads to collect, 1-1000. Pages of up to 100 are fetched as needed; each page is billed one unit.
Continue a previous call: its nextPageToken.
Add details per ad: regions shown with first/last date (plus impressions per platform for EU regions), EU reach, disclosed targeting and all preview variations. One unit per ad, for up to 300 ads per call.
Add preview per ad: what it shows - headline, description and display URL of text ads, product title and merchant of shopping ads, image URLs, the YouTube video of video ads. One unit per ad that has a preview script, for up to 40 ads per call. Search text ads often exist only as an image (imageUrl).
Response
JSON with a creatives array.

