---
title: "Google Ads Transparency"
method: POST
path: "/v1/google/ads/transparency"
tags: ["Google"]
---

# Google Ads Transparency

`POST /v1/google/ads/transparency`

## Request

- Base URL: `https://api.prismcrawl.com`
- URL: `https://api.prismcrawl.com/v1/google/ads/transparency`
- Auth: API key in header `x-api-key`

Find ad creatives by search text or one or more advertiser IDs. Filter by platform, region, date, format or political advertising; optionally retrieve advertiser details.

## Request body

- union: Find ad creatives by search text or one or more advertiser IDs. Filter by platform, region, date, format or political advertising; optionally retrieve advertiser details.
  - object
    - `query` string, required: Text to search for on the selected service. At most 8,192 UTF-8 bytes.
    - `country` 'ad' | 'ae' | 'af' | 'ag' | 'ai' | 'al' | 'am' | 'ao' | 'aq' | 'ar' | 'as' | 'at' | 'au' | 'aw' | 'az' | 'ba' | 'bb' | 'bd' | 'be' | 'bf' | 'bg' | 'bh' | 'bi' | 'bj' | 'bm' | 'bn' | 'bo' | 'bq' | 'br' | 'bs' | 'bt' | 'bv' | 'bw' | 'by' | 'bz' | 'ca' | 'cc' | 'cd' | 'cf' | 'cg' | 'ch' | 'ci' | 'ck' | 'cl' | 'cm' | 'cn' | 'co' | 'cr' | 'cv' | 'cw' | 'cx' | 'cy' | 'cz' | 'de' | 'dj' | 'dk' | 'dm' | 'do' | 'dz' | 'ec' | 'ee' | 'eg' | 'eh' | 'er' | 'es' | 'et' | 'fi' | 'fj' | 'fk' | 'fm' | 'fo' | 'fr' | 'ga' | 'gb' | 'gd' | 'ge' | 'gf' | 'gg' | 'gh' | 'gi' | 'gl' | 'gm' | 'gn' | 'gp' | 'gq' | 'gr' | 'gs' | 'gt' | 'gu' | 'gw' | 'gy' | 'hk' | 'hm' | 'hn' | 'hr' | 'ht' | 'hu' | 'ic' | 'id' | 'ie' | 'il' | 'im' | 'in' | 'io' | 'iq' | 'is' | 'it' | 'je' | 'jm' | 'jo' | 'jp' | 'ke' | 'kg' | 'kh' | 'ki' | 'km' | 'kn' | 'kr' | 'kw' | 'ky' | 'kz' | 'la' | 'lb' | 'lc' | 'li' | 'lk' | 'lr' | 'ls' | 'lt' | 'lu' | 'lv' | 'ly' | 'ma' | 'mc' | 'md' | 'me' | 'mf' | 'mg' | 'mh' | 'mk' | 'ml' | 'mm' | 'mn' | 'mo' | 'mp' | 'mq' | 'mr' | 'ms' | 'mt' | 'mu' | 'mv' | 'mw' | 'mx' | 'my' | 'mz' | 'na' | 'nc' | 'ne' | 'nf' | 'ng' | 'ni' | 'nl' | 'no' | 'np' | 'nr' | 'nu' | 'nz' | 'om' | 'pa' | 'pe' | 'pf' | 'pg' | 'ph' | 'pk' | 'pl' | 'pm' | 'pn' | 'pr' | 'ps' | 'pt' | 'pw' | 'py' | 'qa' | 're' | 'ro' | 'rs' | 'rw' | 'sa' | 'sb' | 'sc' | 'sd' | 'se' | 'sg' | 'sh' | 'si' | 'sj' | 'sk' | 'sl' | 'sm' | 'sn' | 'so' | 'sr' | 'ss' | 'st' | 'sv' | 'sx' | 'sz' | 'tc' | 'td' | 'tf' | 'tg' | 'th' | 'tj' | 'tk' | 'tl' | 'tm' | 'tn' | 'to' | 'tr' | 'tt' | 'tv' | 'tw' | 'tz' | 'ua' | 'ug' | 'um' | 'us' | 'uy' | 'uz' | 'va' | 'vc' | 've' | 'vg' | 'vi' | 'vn' | 'vu' | 'wf' | 'ws' | 'xk' | 'ye' | 'yt' | 'za' | 'zm' | 'zw': Two-letter country or storefront code, such as us or gb.
    - `language` string: Provider-supported language code, such as en.
    - `limit` integer: Maximum number of items to return. The provider may return fewer.
    - `id` string: The provider's identifier, as returned by its search results.
    - `category` 'image' | 'text' | 'video': A category identifier supported by this operation.
    - `next_page_token` string: Copy the opaque next_page_token from the previous response using the same account, search parameters, device, and result limit. Tokens expire after one hour; restart pagination if rejected or expired.
    - `device` 'desktop' | 'mobile' | 'tablet': Device presentation for the source request.
    - `html` boolean: Return the encoded original response rather than parsed JSON.
    - `zero_trace` boolean: Do not archive source or parsed response artifacts.
    - `advertiser_id` string: One advertiser ID or a comma-separated list. Alternative to id and query.
    - `platform` 'PLAY' | 'MAPS' | 'SEARCH' | 'SHOPPING' | 'YOUTUBE'
    - `political_ads` boolean: Search political advertisements; requires a specific region.
    - `get_advertiser` boolean: Include details for a single requested advertiser.
    - `region` 'anywhere' | '2004' | '2008' | '2010' | '2012' | '2016' | '2020' | '2024' | '2028' | '2031' | '2032' | '2036' | '2040' | '2044' | '2048' | '2050' | '2051' | '2052' | '2056' | '2060' | '2064' | '2068' | '2070' | '2072' | '2074' | '2076' | '2084' | '2086' | '2090' | '2092' | '2096' | '2100' | '2104' | '2108' | '2112' | '2116' | '2120' | '2124' | '2132' | '2136' | '2140' | '2144' | '2148' | '2152' | '2156' | '2158' | '2162' | '2166' | '2170' | '2174' | '2175' | '2178' | '2180' | '2184' | '2188' | '2191' | '2196' | '2203' | '2204' | '2208' | '2212' | '2214' | '2218' | '2222' | '2226' | '2231' | '2232' | '2233' | '2234' | '2238' | '2239' | '2242' | '2246' | '2250' | '2254' | '2258' | '2260' | '2262' | '2266' | '2268' | '2270' | '2275' | '2276' | '2288' | '2292' | '2296' | '2300' | '2304' | '2308' | '2312' | '2316' | '2320' | '2324' | '2328' | '2332' | '2334' | '2336' | '2340' | '2344' | '2348' | '2352' | '2356' | '2360' | '2368' | '2372' | '2376' | '2380' | '2384' | '2388' | '2392' | '2398' | '2400' | '2404' | '2410' | '2414' | '2417' | '2418' | '2422' | '2426' | '2428' | '2430' | '2434' | '2438' | '2440' | '2442' | '2446' | '2450' | '2454' | '2458' | '2462' | '2466' | '2470' | '2474' | '2478' | '2480' | '2484' | '2492' | '2496' | '2498' | '2499' | '2500' | '2504' | '2508' | '2512' | '2516' | '2520' | '2524' | '2528' | '2531' | '2533' | '2534' | '2535' | '2540' | '2548' | '2554' | '2558' | '2562' | '2566' | '2570' | '2574' | '2578' | '2580' | '2581' | '2583' | '2584' | '2585' | '2586' | '2591' | '2598' | '2600' | '2604' | '2608' | '2612' | '2616' | '2620' | '2624' | '2626' | '2630' | '2634' | '2638' | '2642' | '2646' | '2654' | '2659' | '2660' | '2662' | '2663' | '2666' | '2670' | '2674' | '2678' | '2682' | '2686' | '2688' | '2690' | '2694' | '2702' | '2703' | '2704' | '2705' | '2706' | '2710' | '2716' | '2724' | '2728' | '2732' | '2736' | '2740' | '2744' | '2748' | '2752' | '2756' | '2762' | '2764' | '2768' | '2772' | '2776' | '2780' | '2784' | '2788' | '2792' | '2795' | '2796' | '2798' | '2800' | '2804' | '2807' | '2818' | '2826' | '2831' | '2832' | '2833' | '2834' | '2840' | '2850' | '2854' | '2858' | '2860' | '2862' | '2876' | '2882' | '2887' | '2894' | '2900' | '20277': Ads geographic criterion, such as 2840 for the US, or anywhere. Overrides country.
    - `start_date` string: Inclusive starting date in YYYYMMDD format.
    - `end_date` string: Exclusive ending date in YYYYMMDD format.
    - `creative_format` 'image' | 'text' | 'video': Creative format. Alternative to category.
    - `output` 'json' | 'html' | 'md' | 'null', nullable: Response content format. md returns Markdown in data.content with data.format=md; the JSON success/request envelope remains. Accept: text/markdown also selects Markdown unless output or html=true is explicit. html is an alias for html=true and retains the existing Brotli/Base64 source format.
    - `json_restrictor` string, nullable: Select fields within data.content for JSON or Markdown. Supports comma-separated paths, non-negative array indices, half-open slices [0:3] (either bound may be omitted), [] and .{nested,subqueries}. Up to128 selections and16 levels. Missing fields are omitted; selected declared fields retain their zero defaults. The request envelope and credit headers remain. Include next_page_token when pagination is needed. Incompatible with HTML output. This changes response presentation only; tracing-enabled history retains the complete JSON result.
    - `no_cache` boolean, nullable: Accepted for compatibility. Searches are always fetched without a result cache for either value; normal successful-request billing applies.
  - object
    - `query` string: Text to search for on the selected service. At most 8,192 UTF-8 bytes.
    - `country` 'ad' | 'ae' | 'af' | 'ag' | 'ai' | 'al' | 'am' | 'ao' | 'aq' | 'ar' | 'as' | 'at' | 'au' | 'aw' | 'az' | 'ba' | 'bb' | 'bd' | 'be' | 'bf' | 'bg' | 'bh' | 'bi' | 'bj' | 'bm' | 'bn' | 'bo' | 'bq' | 'br' | 'bs' | 'bt' | 'bv' | 'bw' | 'by' | 'bz' | 'ca' | 'cc' | 'cd' | 'cf' | 'cg' | 'ch' | 'ci' | 'ck' | 'cl' | 'cm' | 'cn' | 'co' | 'cr' | 'cv' | 'cw' | 'cx' | 'cy' | 'cz' | 'de' | 'dj' | 'dk' | 'dm' | 'do' | 'dz' | 'ec' | 'ee' | 'eg' | 'eh' | 'er' | 'es' | 'et' | 'fi' | 'fj' | 'fk' | 'fm' | 'fo' | 'fr' | 'ga' | 'gb' | 'gd' | 'ge' | 'gf' | 'gg' | 'gh' | 'gi' | 'gl' | 'gm' | 'gn' | 'gp' | 'gq' | 'gr' | 'gs' | 'gt' | 'gu' | 'gw' | 'gy' | 'hk' | 'hm' | 'hn' | 'hr' | 'ht' | 'hu' | 'ic' | 'id' | 'ie' | 'il' | 'im' | 'in' | 'io' | 'iq' | 'is' | 'it' | 'je' | 'jm' | 'jo' | 'jp' | 'ke' | 'kg' | 'kh' | 'ki' | 'km' | 'kn' | 'kr' | 'kw' | 'ky' | 'kz' | 'la' | 'lb' | 'lc' | 'li' | 'lk' | 'lr' | 'ls' | 'lt' | 'lu' | 'lv' | 'ly' | 'ma' | 'mc' | 'md' | 'me' | 'mf' | 'mg' | 'mh' | 'mk' | 'ml' | 'mm' | 'mn' | 'mo' | 'mp' | 'mq' | 'mr' | 'ms' | 'mt' | 'mu' | 'mv' | 'mw' | 'mx' | 'my' | 'mz' | 'na' | 'nc' | 'ne' | 'nf' | 'ng' | 'ni' | 'nl' | 'no' | 'np' | 'nr' | 'nu' | 'nz' | 'om' | 'pa' | 'pe' | 'pf' | 'pg' | 'ph' | 'pk' | 'pl' | 'pm' | 'pn' | 'pr' | 'ps' | 'pt' | 'pw' | 'py' | 'qa' | 're' | 'ro' | 'rs' | 'rw' | 'sa' | 'sb' | 'sc' | 'sd' | 'se' | 'sg' | 'sh' | 'si' | 'sj' | 'sk' | 'sl' | 'sm' | 'sn' | 'so' | 'sr' | 'ss' | 'st' | 'sv' | 'sx' | 'sz' | 'tc' | 'td' | 'tf' | 'tg' | 'th' | 'tj' | 'tk' | 'tl' | 'tm' | 'tn' | 'to' | 'tr' | 'tt' | 'tv' | 'tw' | 'tz' | 'ua' | 'ug' | 'um' | 'us' | 'uy' | 'uz' | 'va' | 'vc' | 've' | 'vg' | 'vi' | 'vn' | 'vu' | 'wf' | 'ws' | 'xk' | 'ye' | 'yt' | 'za' | 'zm' | 'zw': Two-letter country or storefront code, such as us or gb.
    - `language` string: Provider-supported language code, such as en.
    - `limit` integer: Maximum number of items to return. The provider may return fewer.
    - `id` string, required: The provider's identifier, as returned by its search results.
    - `category` 'image' | 'text' | 'video': A category identifier supported by this operation.
    - `next_page_token` string: Copy the opaque next_page_token from the previous response using the same account, search parameters, device, and result limit. Tokens expire after one hour; restart pagination if rejected or expired.
    - `device` 'desktop' | 'mobile' | 'tablet': Device presentation for the source request.
    - `html` boolean: Return the encoded original response rather than parsed JSON.
    - `zero_trace` boolean: Do not archive source or parsed response artifacts.
    - `advertiser_id` string: One advertiser ID or a comma-separated list. Alternative to id and query.
    - `platform` 'PLAY' | 'MAPS' | 'SEARCH' | 'SHOPPING' | 'YOUTUBE'
    - `political_ads` boolean: Search political advertisements; requires a specific region.
    - `get_advertiser` boolean: Include details for a single requested advertiser.
    - `region` 'anywhere' | '2004' | '2008' | '2010' | '2012' | '2016' | '2020' | '2024' | '2028' | '2031' | '2032' | '2036' | '2040' | '2044' | '2048' | '2050' | '2051' | '2052' | '2056' | '2060' | '2064' | '2068' | '2070' | '2072' | '2074' | '2076' | '2084' | '2086' | '2090' | '2092' | '2096' | '2100' | '2104' | '2108' | '2112' | '2116' | '2120' | '2124' | '2132' | '2136' | '2140' | '2144' | '2148' | '2152' | '2156' | '2158' | '2162' | '2166' | '2170' | '2174' | '2175' | '2178' | '2180' | '2184' | '2188' | '2191' | '2196' | '2203' | '2204' | '2208' | '2212' | '2214' | '2218' | '2222' | '2226' | '2231' | '2232' | '2233' | '2234' | '2238' | '2239' | '2242' | '2246' | '2250' | '2254' | '2258' | '2260' | '2262' | '2266' | '2268' | '2270' | '2275' | '2276' | '2288' | '2292' | '2296' | '2300' | '2304' | '2308' | '2312' | '2316' | '2320' | '2324' | '2328' | '2332' | '2334' | '2336' | '2340' | '2344' | '2348' | '2352' | '2356' | '2360' | '2368' | '2372' | '2376' | '2380' | '2384' | '2388' | '2392' | '2398' | '2400' | '2404' | '2410' | '2414' | '2417' | '2418' | '2422' | '2426' | '2428' | '2430' | '2434' | '2438' | '2440' | '2442' | '2446' | '2450' | '2454' | '2458' | '2462' | '2466' | '2470' | '2474' | '2478' | '2480' | '2484' | '2492' | '2496' | '2498' | '2499' | '2500' | '2504' | '2508' | '2512' | '2516' | '2520' | '2524' | '2528' | '2531' | '2533' | '2534' | '2535' | '2540' | '2548' | '2554' | '2558' | '2562' | '2566' | '2570' | '2574' | '2578' | '2580' | '2581' | '2583' | '2584' | '2585' | '2586' | '2591' | '2598' | '2600' | '2604' | '2608' | '2612' | '2616' | '2620' | '2624' | '2626' | '2630' | '2634' | '2638' | '2642' | '2646' | '2654' | '2659' | '2660' | '2662' | '2663' | '2666' | '2670' | '2674' | '2678' | '2682' | '2686' | '2688' | '2690' | '2694' | '2702' | '2703' | '2704' | '2705' | '2706' | '2710' | '2716' | '2724' | '2728' | '2732' | '2736' | '2740' | '2744' | '2748' | '2752' | '2756' | '2762' | '2764' | '2768' | '2772' | '2776' | '2780' | '2784' | '2788' | '2792' | '2795' | '2796' | '2798' | '2800' | '2804' | '2807' | '2818' | '2826' | '2831' | '2832' | '2833' | '2834' | '2840' | '2850' | '2854' | '2858' | '2860' | '2862' | '2876' | '2882' | '2887' | '2894' | '2900' | '20277': Ads geographic criterion, such as 2840 for the US, or anywhere. Overrides country.
    - `start_date` string: Inclusive starting date in YYYYMMDD format.
    - `end_date` string: Exclusive ending date in YYYYMMDD format.
    - `creative_format` 'image' | 'text' | 'video': Creative format. Alternative to category.
    - `output` 'json' | 'html' | 'md' | 'null', nullable: Response content format. md returns Markdown in data.content with data.format=md; the JSON success/request envelope remains. Accept: text/markdown also selects Markdown unless output or html=true is explicit. html is an alias for html=true and retains the existing Brotli/Base64 source format.
    - `json_restrictor` string, nullable: Select fields within data.content for JSON or Markdown. Supports comma-separated paths, non-negative array indices, half-open slices [0:3] (either bound may be omitted), [] and .{nested,subqueries}. Up to128 selections and16 levels. Missing fields are omitted; selected declared fields retain their zero defaults. The request envelope and credit headers remain. Include next_page_token when pagination is needed. Incompatible with HTML output. This changes response presentation only; tracing-enabled history retains the complete JSON result.
    - `no_cache` boolean, nullable: Accepted for compatibility. Searches are always fetched without a result cache for either value; normal successful-request billing applies.

## Response `200`

Request completed. One credit is charged, including recognized empty or unavailable source results and source inventory changes discovered after a valid continuation is fetched. These completed responses may preserve verified partial results; operational failures remain errors.

- CatalogGoogleAdsTransparencyResponse
  - `success` true, required
  - `request_id` string, uuid, required
  - `data` union, required
    - MarkdownSearchData
      - `format` union, required
        - ''
        - 'md'
      - `content` string, required: Markdown derived from the parsed result, after any json_restrictor selection.
    - ProjectedSearchData
      - `format` union, required
        - ''
        - 'json'
      - `content` object, required: Only fields selected by json_restrictor. Selected fields retain their declared types and zero defaults.
    - object
      - `format` 'json', required
      - `content` object, required
        - `advertiser` object, required
          - `country_code` string, required
          - `id` string, required
          - `is_verified` boolean, required
          - `legal_name` string, required
          - `name` string, required
        - `has_next_page` boolean, required
        - `next_page_token` string, required: Opaque continuation token valid for one hour and the same account. Retain search parameters, device, and result limit. Restart pagination if the token is expired or rejected; tokens from before the authenticated-token rollout cannot be reused.
        - `results` object[], required
          - `address` union, required
            - string
            - object
            - string[]
          - `advertiser_id` string, required
          - `advertiser_name` string, required
          - `category` string, required
          - `coordinates` object, required
            - `latitude` number, required
            - `longitude` number, required
          - `description` string, required
          - `domain` string, required
          - `first_shown` string, required
          - `format` number, required
          - `id` string, required
          - `image` string, required
          - `last_shown` string, required
          - `latitude` number, required
          - `longitude` number, required
          - `name` string, required
          - `phone` string, required
          - `position` integer, required
          - `preview_url` string, required
          - `rank` integer, required
          - `rating` union, required
            - number
            - string
          - `rating_max` number, required
          - `rating_source` string, required
          - `review_count` union, required
            - number
            - string
          - `served_days` number, required
          - `snippet` string, required
          - `thumbnail` string, required
          - `title` string, required
          - `type` string, required
          - `url` string, required
          - `website` string, required
        - `search_parameters` object, required
          - `advertiser_id` string, required
          - `category` string, required
          - `country` string, required
          - `creative_format` string, required
          - `device` string, required
          - `end_date` string, required
          - `engine` string, required
          - `get_advertiser` boolean, required
          - `id` string, required
          - `language` string, required
          - `limit` integer, required
          - `no_results` boolean, required
          - `operation` string, required
          - `pagination_limited` boolean, required: True when further pagination is unavailable. A completed source-stale request can contain verified results or an empty array; next_page_token is an empty string.
          - `pagination_reason` string, required: stale_cursor means a valid continuation was fetched but its source inventory changed. The HTTP 200 response is billable; keep any verified results and restart pagination.
          - `platform` string, required
          - `political_ads` boolean, required
          - `query` string, required
          - `region` string, required
          - `start_date` string, required
          - `total_results_max` integer, required
          - `total_results_min` integer, required
          - `type` string, required
          - `url` string, required
        - `serp_features` object[], required
          - `confidence` number, required
          - `engine` string, required
          - `extracted_at` string, required
          - `id` string, required
          - `items` object[], required
            - `link` string, required
            - `product_id` string, required
            - `text` string, required
            - `thumbnail` string, required
            - `title` string, required
          - `links` object[], required
            - `title` string, required
            - `url` string, required
          - `position` object, required
            - `absolute` integer, required
          - `source_result_ids` string[], required
          - `text` string, required
          - `title` string, required
          - `type` string, required
    - GoogleHtmlSearchData
      - `format` union, required
        - ''
        - 'html+br+base64'
      - `content` string, byte, required: Base64-encoded bytes. Decode Base64 first, then decompress the result with Brotli. Available deferred or lazy-loaded thumbnail sources are placed in image src attributes, within size limits; image and video files are not downloaded. When rewrite_links is true, already-resolved opaque Google anchor links use their destination URLs. Unresolved links are preserved.

## Other responses

- `400`: The JSON body, source selection, or continuation is invalid. Locally malformed, forged, expired, or mismatched tokens are rejected before source work and require restarting pagination. A source may also reject an otherwise well-formed selector after acquisition. These errors do not spend a search credit. Source inventory changes discovered during a valid request return a completed response instead.
- `401`: The API token is missing, invalid, expired, or revoked.
- `402`: No credits remain.
- `429`: Account rate limit exceeded.
- `500`: The request could not be completed.

---

[API](https://skmtc.dev/prismcrawl/apis/prismcrawl-api.md) · [All operations](https://skmtc.dev/prismcrawl/apis/prismcrawl-api/llms.txt) · [OpenAPI document](https://skmtc.dev/prismcrawl/apis/prismcrawl-api/revisions/eef17f6c02a5?raw)
