# Changelog of Google Ads Transparency Scraper — Bulk CSV API (`apivault_labs/google-ads-transparency-scraper`) Actor

- **URL**: https://apify.com/apivault_labs/google-ads-transparency-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/apivault_labs/google-ads-transparency-scraper.md

### \[0.2.1] - 2026-07-13

#### Fixed

- **Zero-results bug**: Google now blocks Apify datacenter IPs on the Transparency Center with a captcha 429, so every run returned 0 results. Default proxy switched to Apify Residential, which works. The `X-Same-Domain` header alone is enough to be accepted — no cookie bootstrap needed.
- Blocking is now logged (captcha/HTTP status) instead of failing silently as "no advertiser found".
- Fixed a potential `NameError` when proxy configuration setup raised an exception.

#### Changed

- **DUNS number is now opt-in** (`includeDunsNumber`, default off). It downloads the full advertiser→DUNS table (~3900 rows) on every run; niche EU field, off by default to keep runs lean.

#### Cost

- Residential transfer is ~0.1 MB/run (≈$0.00076), about $0.00014 total per creative — well under typical per-result pricing.

### \[0.2.0] - 2026-07-12

#### Added

- Overlay protobuf decoding: extracts headline, description, visibleUrl, destinationDomain from previewUrl overlay parameter (no Puppeteer needed)
- New output fields: `headline`, `description`, `visibleUrl`, `targetDomain` (enriched from overlay when available)

## Changelog

### \[0.1] — 2026-07-12

#### Added

- Initial release
- Scrape ad creatives from Google Ads Transparency Center
- Input by advertiser ID (AR format), domain, or keyword search
- Full pagination with next_page_token (40 ads/page)
- Format detection (text/image/video)
- Timestamps (firstShown, lastShown) in ISO-8601
- totalDaysShown per creative
- Advertiser info enrichment (name, country)
- Preview URLs for image and video creatives
- Details link to Transparency Center page
- Bulk input support (multiple domains/IDs)
- Deduplication by creative ID
- Retry with exponential backoff (429/5xx)
- Apify datacenter proxy support
- Error handling: invalid input → SUCCEEDED with 0 results

\##0.2 —13October2026

Source domain filter replaces wrong advertiser suggestion resolution. Exact-name/suggestions provenance, source count ranges and region criteria, bounded pagination/budget/continuation, strict inputs, optional detail failure isolation, safe errors, identity-preserving projection, API/MCP docs and contract tests. No inferred impressions or guessed headlines; rich format remains rich until text overlay is observed.
