Discover/Google API
live

Google APIadstransparency.google.com

Search Google Ads Transparency Center for advertisers and ad creatives. Extract ad copy, formats, date ranges, regions, and direct ad links via 3 endpoints.

Endpoint health
verified 3h ago
search_advertisers
search_ads
get_ad_details
2/3 passing latest checkself-healing
Endpoints
3
Updated
22d ago

What is the Google API?

This API provides structured access to Google Ads Transparency Center data across 3 endpoints, letting you search advertisers by name, retrieve their ad creatives with text and image URLs, and fetch per-creative detail including regions served and date ranges. The search_ads endpoint resolves an advertiser name to an ID automatically and returns paginated results with fields like ad_text, first_shown, last_shown, format, and ad_link — no manual lookup required.

Try it
Maximum number of advertiser suggestions to return (max 20)
Advertiser name to search for
2-letter country code (e.g. US, GB, DE, FR, IT, ES, JP, BR, IN, CA, AU)
api.parse.bot/scraper/d6e80fcd-e869-4af2-a31b-71a4ce7ca355/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/d6e80fcd-e869-4af2-a31b-71a4ce7ca355/search_advertisers?limit=5&query=Nike&region=US' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace adstransparency-google-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Google Ads Transparency Center — discover advertisers and inspect their ad creatives."""
from parse_apis.google_ads_transparency_center_api import (
    GoogleAdsTransparency, AdFormat, AdNotFound
)

client = GoogleAdsTransparency()

# Search for advertisers by name — single-page result, capped by limit.
for advertiser in client.advertisers.search(query="Nike", limit=5):
    print(advertiser.name, advertiser.ad_count, advertiser.country)

# Drill into one advertiser's ads via the sub-resource.
advertiser = client.advertisers.search(query="Apple", limit=1).first()
if advertiser:
    for ad in advertiser.ads.list(region="US", limit=3):
        print(ad.creative_id, ad.format, ad.last_shown)

    # Get full details on the first ad.
    ad = advertiser.ads.list(limit=1).first()
    if ad:
        try:
            detail = ad.details()
            print(detail.advertiser_legal_name, detail.regions, detail.ad_link)
        except AdNotFound as exc:
            print(f"Ad removed: {exc.creative_id}")

print("exercised: advertisers.search / advertiser.ads.list / ad.details")
All endpoints · 3 totalmissing one? ·

Search for advertisers by name. Returns a list of matching advertisers with their IDs, countries, and ad counts. Use the advertiser_id from results to navigate to their ads via the ads sub-resource.

Input
ParamTypeDescription
limitintegerMaximum number of advertiser suggestions to return (max 20)
queryrequiredstringAdvertiser name to search for
regionstring2-letter country code (e.g. US, GB, DE, FR, IT, ES, JP, BR, IN, CA, AU)
Response
{
  "type": "object",
  "fields": {
    "query": "string - the search query used",
    "total": "integer - number of advertisers returned",
    "region": "string - 2-letter country code used for filtering",
    "advertisers": "array of advertiser objects with name, advertiser_id, country, and ad_count"
  },
  "sample": {
    "data": {
      "query": "Nike",
      "total": 1,
      "region": "US",
      "advertisers": [
        {
          "name": "Nike, Inc.",
          "country": "US",
          "ad_count": "10000",
          "advertiser_id": "AR16735076323512287233"
        }
      ]
    },
    "status": "success"
  }
}

About the Google API

Advertiser Search

The search_advertisers endpoint accepts a query string and an optional region (2-letter country code) to return up to 20 matching advertiser records. Each result includes advertiser_id, country, ad_count, and the canonical name. The advertiser_id values returned here are the inputs that power the other two endpoints, so this is the natural starting point when you know only a brand name.

Ad Creative Search and Pagination

The search_ads endpoint accepts either a query string or a direct advertiser_id. When given a name, it selects the best match by highest ad_count, so you can skip a manual search_advertisers call for common cases. Each ad record in the ads array includes creative_id, format (image, text, or video), ad_text, ad_image_url, first_shown, last_shown, and ad_link. Pages are controlled by limit (up to 40) and cursor-based page_token / next_page_token — iterate through next_page_token values until it returns null to exhaust a full advertiser history.

Ad Detail

The get_ad_details endpoint takes a creative_id and advertiser_id and returns the full record for a single creative: all ad variants via ad_preview_urls, every regions country code where the ad ran, the advertiser's legal name, and both first_shown and last_shown dates. This is the right call when you need geographic distribution or variant previews beyond what the search listing provides.

Reliability & maintenanceVerified

The Google API is a managed, monitored endpoint for adstransparency.google.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when adstransparency.google.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official adstransparency.google.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
3h ago
Latest check
2/3 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Track competitor ad copy changes over time using first_shown and last_shown date fields from search_ads.
  • Map geographic ad distribution for a brand by collecting regions arrays from get_ad_details.
  • Build an advertiser directory by iterating search_advertisers across multiple markets with different region values.
  • Monitor when specific creatives go live or stop running by polling last_shown for a fixed creative_id.
  • Audit ad formats (image, text, video) used by a category of advertisers via the format field in search_ads results.
  • Collect direct ad preview links using ad_link and ad_preview_urls for manual review workflows.
  • Research political or sensitive-category advertisers by querying known brand names and paginating their full creative history.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Google Ads Transparency Center have an official developer API?+
Google does not publish an official public API for the Ads Transparency Center at adstransparency.google.com. The center is a consumer-facing web interface. This Parse API surfaces the same data programmatically.
How does pagination work in the `search_ads` endpoint?+
Each response includes a next_page_token field. Pass that value as the page_token parameter on your next request, keeping the same advertiser_id or query and region. When next_page_token is null, you have reached the last page. The limit parameter controls page size up to a maximum of 40 ads per call.
Does `search_ads` cover all regions, or is filtering required?+
The region parameter is optional. Omitting it returns ads without regional filtering, but the transparency center's coverage varies — some advertisers have ads only in specific markets. Passing a region code narrows results to ads shown in that country. If an advertiser ran ads in multiple regions, you may see different creative sets by querying each region separately.
Does the API expose spend data, impression counts, or demographic targeting breakdowns?+
Not currently. The API covers advertiser identity, creative content, ad formats, date ranges, and geographic regions. Spend amounts, impression volumes, and audience targeting segments are not included in any of the three endpoints. You can fork this API on Parse and revise it to add an endpoint if that data becomes available from the source.
Can I retrieve ads for an advertiser I find only by partial name?+
Yes. The search_advertisers endpoint performs a name search and returns multiple candidates with their ad_count values, so you can inspect matches before committing to one advertiser_id. Alternatively, passing a partial name directly to search_ads will automatically select the candidate with the highest ad_count, which is often the intended advertiser but may not always be the right one for uncommon brand names.
Page content last updated . Spec covers 3 endpoints from adstransparency.google.com.
Related APIs in B2b DirectorySee all →
facebook.com Ad Library API
Search and retrieve detailed information about ads running on Facebook, including creative content, audience targeting parameters, and transparency metrics. Access comprehensive ad data across multiple campaigns to monitor advertising trends and competitive activity.
library.tiktok.com API
Search TikTok's Commercial Content Library to discover ads by company name or keyword, then view detailed information like creative format, scheduling dates, audience targeting, and video thumbnails. Monitor competitor advertising strategies and track ad campaigns across supported regions.
binance.com API
Search and browse peer-to-peer cryptocurrency trading offers on Binance's marketplace to find the best prices, payment methods, and seller information for buying or selling crypto directly. Get real-time details on available quantities, rates, and advertiser profiles to make informed trading decisions.
adb.org API
Search and retrieve detailed information about Asian Development Bank projects, including project listings, descriptions, status, and financial details. Access comprehensive project data to research ADB-funded initiatives across different regions and sectors.
agencyspotter.com API
Search and discover agencies with detailed information including their locations, staff profiles, and client reviews. Find the right agency partner by browsing comprehensive directory listings and accessing insights into their team and reputation.
trademo.com API
Access comprehensive global trade data to search companies, find manufacturers by country, and review detailed trade profiles, sanctions lists, and politically exposed persons (PEP) lists. Monitor global trade indices and build a complete directory of international trading partners and compliance information.
olx.ro API
Search OLX Romania listings and access detailed ad information including seller contact details. Get real-time access to product listings, pricing, and phone numbers for sellers across the platform.
kleinanzeigen.de API
Search and retrieve classified ad listings from kleinanzeigen.de. Filter by keyword, category, price range, and sorting order. Supports vehicles, real estate, jobs, electronics, and general products, with full listing details including title, price, description, location, and seller information.