Google Ads API

Google Ads Company ads API

List the ads a company is running from the Google Ads Transparency Center by domain or advertiser ID (creative ID, format, ad URL, and first/last shown dates) with cursor pagination.

$0.85/1k req, pay per request, no subscription.

What the API returnedads[0]
{
"advertiserId": "AR01823741950283776002",
"creativeId": "CR11238475619283746501",
"advertiserName": "Nike, Inc.",
"format": "Text",
"adUrl": "https://adstransparency.google.com/advertiser/AR01823741950283776002/creative/CR11238475619283746501",
"imageUrl": "https://tpc.googlesyndication.com/simgad/8823461950283776123",
"firstShown": "2025-08-14",
"lastShown": "2025-10-20",
... 1 more field
}
Uptime
100.00%
30d · 129,952 calls
Requests
129,955
30d · weekly, last 12 wks
Response
5.1s
median · 30d

Pricing and providers

Google Ads Company ads API pricing: one API, 3 interchangeable providers

The cheapest provider serves first. If it fails, the next one takes over in the same call.

You pay
$8.50
$0.85/1k req, only for what you use. No monthly plan.
Your first 117 requests are free with the $0.10 starting balance.

Try it

Get Google Ads company ads in one request

Open in
Get a free key
Sample response
Free runs return only the first 3 results. Fund a key to get the full response.

This sample shows 14 of 15 fields. See every field

{
  "found": true,
  "data": {
    "nextCursor": "EhkKB25pa2UuY29tEAAYASABKgIIAQ==",
    "adsEstimate": 9100,
    "ads": [
      {
        "advertiserId": "AR01823741950283776002",
        "creativeId": "CR11238475619283746501",
        "advertiserName": "Nike, Inc.",
        "format": "Text",
        "adUrl": "https://adstransparency.google.com/advertiser/AR01823741950283776002/creative/CR11238475619283746501",
        "imageUrl": "https://tpc.googlesyndication.com/simgad/8823461950283776123",
        "firstShown": "2025-08-14",
        "lastShown": "2025-10-20",
        "domain": "nike.com"
      },
      {
        "advertiserId": "AR01823741950283776002",
        "creativeId": "CR11238475619283746588",
        "advertiserName": "Nike, Inc.",
        "format": "Image",
        "adUrl": "https://adstransparency.google.com/advertiser/AR01823741950283776002/creative/CR11238475619283746588",
        "imageUrl": "https://tpc.googlesyndication.com/simgad/8823461950283776201",
        "firstShown": "2025-09-01",
        "lastShown": "2025-10-25",
        "domain": "nike.com"
      },
      {
        "advertiserId": "AR01823741950283776002",
        "creativeId": "CR11238475619283746620",
        "advertiserName": "Nike, Inc.",
        "format": "Text",
        "adUrl": "https://adstransparency.google.com/advertiser/AR01823741950283776002/creative/CR11238475619283746620",
        "imageUrl": "https://tpc.googlesyndication.com/simgad/8823461950283776340",
        "firstShown": "2025-07-22",
        "lastShown": "2025-09-30",
        "domain": "nike.com"
      }
    ]
  }
}

Full parameter and response reference - every field, type, and example for this endpoint.

Reference

One request, one response shape.

Every field you send and every field you get back, each with a real example.

Last verified 2026-10-31 · uptime and latency measured over 30d

Request body

JSON, posted to this endpoint.

  • advertiserIdstring

    Advertiser ID. Provide either domain or advertiserId.

  • cursorstring

    Opaque pagination cursor from a previous response's nextCursor.

  • domainstring

    nike.com

    Company domain (e.g. "lululemon.com"). Provide either domain or advertiserId.

  • endDatestring

    2025-12-31

    Only return ads first shown on or before this date, format YYYY-MM-DD (e.g. 2024-12-31).

  • formatenum

    text

    Ad format filter.

  • platformenum

    google_search

    Platform filter.

  • regionstring

    US

    Two-letter country code to scope results (e.g. "US", "AU").

  • startDatestring

    2025-01-01

    Only return ads first shown on or after this date, format YYYY-MM-DD (e.g. 2024-01-01).

  • topicenum

    all

    Search topic. "political" requires a region.

You send. A small JSON body. The values shown are examples to replace with your own.

Response

JSON, one example value per field.

each addata.ads[]

Populated whenever the provider has data for the entity.

  • adUrlstring

    https://adstransparency.google.com/advertiser/AR01823741950283776002/creative/CR11238475619283746501

    Populated whenever the provider has data for the entity.

  • advertiserIdstring

    AR01823741950283776002

    Populated whenever the provider has data for the entity.

  • advertiserNamestring

    Nike, Inc.

    Populated whenever the provider has data for the entity.

  • creativeIdstring

    CR11238475619283746501

    Populated whenever the provider has data for the entity.

  • domainstring

    nike.com

    Registrable domain the ad links to.

  • firstShownstring

    2025-08-14

    ISO 8601 date.

  • formatstring

    Text

    Populated whenever the provider has data for the entity.

  • imageUrlstring

    https://tpc.googlesyndication.com/simgad/8823461950283776123

  • lastShownstring

    2025-10-20

    ISO 8601 date.

datadata
  • adsEstimateinteger

    9100

    Estimated total number of ads.

  • nextCursorstring

    EhkKB25pa2UuY29tEAAYASABKgIIAQ==

    Opaque cursor for the next page of ads, or null when this lane has no more. Pass it back as cursor to continue.

top level
  • foundboolean

    true

  • reason"not_found"

    Present only when `found` is false, and says why there is no result. `not_found`: the source states the target does not exist, or returned nothing for it. A `found: false` answer is a successful call, not an error, and `costUsd` is what it actually cost.

You get back. Named, typed fields in the same shape whichever source answers.

FAQ

About the Google Ads Company ads API

The AnyAPI Google Ads Company ads API returns Google Ads company ads data as normalized JSON from one POST call to /v1/run/google_ads.company_ads. List the ads a company is running from the Google Ads Transparency Center by domain or advertiser ID (creative ID, format, ad URL, and first/last shown dates) with cursor pagination. AnyAPI routes each request across 3 sources and falls back automatically when one fails. It costs from $0.85 per 1,000 requests, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 100.0% of Google Ads company ads calls through AnyAPI succeeded, with a median response time of 5.1 seconds across 129,952 measured calls.

It costs from $0.85 per 1,000 requests, in US dollars with no subscription and no monthly minimum. You fund one USD wallet and each call draws it down. Some failed wallet-funded requests incur processing charges that we pass through at cost, with no markup; the error response shows the amount charged.

List the ads a company is running from the Google Ads Transparency Center by domain or advertiser ID (creative ID, format, ad URL, and first/last shown dates) with cursor pagination. The response is normalized JSON with the same envelope every AnyAPI endpoint returns, so parsing a second endpoint is a change of URL and nothing else.

Over the last 30 days, 100.0% of Google Ads company ads calls through AnyAPI succeeded, with a median response time of 5.1 seconds across 129,952 measured calls. These are AnyAPI's own measurements of traffic through the gateway, recomputed continuously, not a published service-level target.

Yes. A new AnyAPI account starts with $0.10 of free balance and no card required, which covers 117 Google Ads Company ads calls at $0.00085 each.

AnyAPI asks the next of its 3 sources in the same request, cheapest first, so one source going down does not fail your call.

Send a POST request to https://api.getanyapi.com/v1/run/google_ads.company_ads with your AnyAPI key in an "Authorization: Bearer" header and the input as a JSON body. The same key and the same wallet work on every AnyAPI endpoint.

No. You add US dollars to one prepaid AnyAPI balance and each request draws it down. There is no monthly plan and no minimum, and the same balance pays for every AnyAPI endpoint.

Yes. Install @getanyapi/sdk from npm for TypeScript or getanyapi from pip for Python. Both call every AnyAPI endpoint with the same key, and any HTTP client works too.

Yes. An agent can connect to the AnyAPI MCP server at https://api.getanyapi.com/mcp, or create its own free-trial key with one unauthenticated POST to https://api.getanyapi.com/agent/signup and call this endpoint over HTTP.