JustSERPDocs
Google

Google Ads Transparency Center Ad Details

One ad from the Ads Transparency Center: its format and topic, the regions it ran in (with impressions where Google gives them, mostly the EU), the audience selection, and the variations of the ad (headline, description, link, picture, video).

GET
/v1/google/ads-transparency/ad-details

One ad from the Ads Transparency Center: its format and topic, the regions it ran in (with impressions where Google gives them, mostly the EU), the audience selection, and the variations of the ad (headline, description, link, picture, video). Answered as the document: search_metadata, search_parameters, search_information (always {}), ad_information and variations. An ad the Center does not have for that advertiser is 404 profile_not_found. The engine fetches at most 6 variation scripts, one after another, so variations can hold fewer than the ad has (a variation refused by a 429 is left out); a video's playback address is never in an answer; ads Google renders as a picture have no text. No snapshot.

Authorization

headerX-API-Key<token>

Your API key.

Query Parameters

cancel_token?string

A name you make up for this request (a UUID is fine), so you can later GET /v1/cancel with it. Only you know it, so only you can cancel. Use a new one for every request, retries included: a cancelled token stays cancelled for a few minutes.

Length1 <= length <= 128
advertiser_id*string

The advertiser's id (AR and digits).

Match^AR\d+$
creative_id*string

The ad's id (CR and digits), from /v1/google/ads-transparency.

Match^CR\d+$

Response Body

The ad, as the document. When the answer could not be parsed, the usual envelope.

application/json
  1. response

The ad details document.

search_metadata?
search_parameters?

The request as sent.

search_information?

Always empty here.

ad_information?
variations?array<>

One per variation the engine read, in the Center's order.

[key: string]?any
Example Request
curl -X GET 'https://api.justserp.com/v1/google/ads-transparency/ad-details?advertiser_id=AR17828074650563772417&creative_id=CR02168147534524973057'
Example Response
{  "search_metadata": {    "id": "string",    "status": "string",    "created_at": "string",    "request_url": "string"  },  "search_parameters": {},  "search_information": {},  "ad_information": {    "format": "text",    "topic": "string",    "first_shown_date": "string",    "last_shown_date": "string",    "last_shown_datetime": "string",    "regions": [      {        "region_code": 0,        "code": "string",        "name": "string",        "first_shown_date": "string",        "last_shown_date": "string",        "impressions": {          "lower": 0,          "upper": 0        },        "platform_impressions": [          {            "platform": "string",            "lower": 0,            "upper": 0          }        ]      }    ],    "audience_selection": {      "demographic_info": "string",      "geographic_locations": "string",      "contextual_signals": "string",      "customer_lists": "string",      "topics_of_interest": "string"    }  },  "variations": [    {      "title": "string",      "link": "string",      "description": "string",      "long_headline": "string",      "call_to_action": "string",      "displayed_link": "string",      "snippet": "string",      "sitelinks": [        {          "title": "string"        }      ],      "advertiser": "string",      "thumbnail": "string",      "video_id": "string",      "video_link": "string",      "duration": "string",      "channel": "string",      "domain": "string",      "product_id": "string",      "app_name": "string",      "short_name": "string",      "logo": "string",      "cover_image": "string",      "screenshots": [        "string"      ],      "price": "string",      "rating": 0,      "installs": "string",      "is_playable": true,      "html5_link": "string",      "image": "string",      "width": 0,      "height": 0    }  ]}