Google Ads Transparency ads by advertiser API
  1. Docs
  2. Google
  3. Google Ads Transparency ads by advertiser API

Google Ads Transparency ads by advertiser API

An advertiser's public ads by advertiser id or website domain: ids, previews and first and last shown dates when Google gives them.

GET /v1/google/ad-library/company/ads

GET /v1/google/ad-library/company/ads

An advertiser's public ads by advertiser id or website domain: ids, previews and first and last shown dates when Google gives them.

  • Cost: 1 credit
  • Cache: Results are kept up to 30 days; send max_age_days to reuse them for free.
  • Timeout: A request still running after about 25 seconds answers 202 with a job to poll (Batch and jobs).

Parameters#

NameTypeRequiredDescription
idstringone ofAdvertiser id (AR...). Also accepted as advertiser_id, advertiserId.
domainstringone ofAdvertiser's website domain.
topicstringnoAll ads or political ads. Political needs a region. One of all, political.
platformstringnoWhere the ad ran. One of google_maps, google_play, google_search, google_shopping, youtube.
formatstringnoCreative format. One of all, text, image, video.
start_datestringnoAds shown from this date, YYYY-MM-DD.
end_datestringnoAds shown up to this date, YYYY-MM-DD.

Send at least one of id, domain. If you send several, the first listed is used and the rest are ignored.

Every request also accepts:

  • cursor: the cursor from the previous page (Pagination).
  • region: two-letter country code for results that vary by country. Changing it restarts the cursor chain.
  • trim: true for a smaller response without null fields and extra.
  • raw: true to also get the platform's original object as raw.
  • max_age_days: accept a cached result up to this many days old, for 0 credits (Caching).

Example request#

Set your key in the environment first (see Authentication).

1curl -G "https://api.socialscrape.dev/v1/google/ad-library/company/ads" \2  -H "x-api-key: $SOCIALSCRAPE_API_KEY" \3  --data-urlencode "id=AR16735076323512287233" \4  --data-urlencode "platform=youtube" \5  --data-urlencode "region=US"

Example response#

This is a sample from a recorded response, lists and long text are shortened. Status 200.

200 OKSample response
1{2  "ok": true,3  "credits_charged": 1,4  "credits_remaining": 4999,5  "cached": false,6  "cached_at": null,7  "request_id": "req_54daf7d2f10a025e49047c46",8  "data": {9    "object": "list",10    "items": [11      {12        "object": "ad",13        "platform": "google",14        "id": "CR15282208055438082049",15        "url": "https://adstransparency.google.com/advertiser/AR16735076323512287233/creative/CR15282208055438082049",16        "advertiser": {17          "object": "advertiser",18          "platform": "google",19          "id": "AR16735076323512287233",20          "name": "Nike, Inc.",21          "url": "https://adstransparency.google.com/advertiser/AR16735076323512287233",22          "page_id": null,23          "country": null,24          "verified": null,25          "ad_count": null,26          "extra": null27        },28        "status": "unknown",29        "started_at": "2026-02-16T22:01:29Z",30        "ended_at": null,31        "title": null,32        "body": null,33        "cta_text": null,34        "landing_url": null,35        "format": "video",36        "media": {37          "thumbnail_url": null,38          "video_url": null,39          "audio_url": null,40          "image_urls": null,41          "width": null,42          "height": null43        },44        "regions": null,45        "publisher_platforms": null,46        "impressions": null,47        "spend": null,48        "extra": {49          "last_shown_at": "2026-08-11T20:43:40Z",50          "preview_url": "https://displayads-formats.googleusercontent.com/ads/preview/content.js?client=ads-integrity-transparency&obfuscatedCustomerId=8804020668&creativeId=797296816243&uiFeatures=12,54&versionId=29&assets=%3DH4sIAAAAAAAAAOPi5uLkOLbjectuJgFGANEYnf...",51          "region_count": 17752        }53      },54      {55        "object": "ad",56        "platform": "google",57        "id": "CR12425799991778344961",58        "url": "https://adstransparency.google.com/advertiser/AR16735076323512287233/creative/CR12425799991778344961",59        "advertiser": {60          "object": "advertiser",61          "platform": "google",62          "id": "AR16735076323512287233",63          "name": "Nike, Inc.",64          "url": "https://adstransparency.google.com/advertiser/AR16735076323512287233",65          "page_id": null,66          "country": null,67          "verified": null,68          "ad_count": null,69          "extra": null70        },71        "status": "unknown",72        "started_at": "2026-02-16T22:02:36Z",73        "ended_at": null,74        "title": null,75        "body": null,76        "cta_text": null,77        "landing_url": null,78        "format": "video",79        "media": {80          "thumbnail_url": null,81          "video_url": null,82          "audio_url": null,83          "image_urls": null,84          "width": null,85          "height": null86        },87        "regions": null,88        "publisher_platforms": null,89        "impressions": null,90        "spend": null,91        "extra": {92          "last_shown_at": "2026-08-11T20:43:40Z",93          "preview_url": "https://displayads-formats.googleusercontent.com/ads/preview/content.js?client=ads-integrity-transparency&obfuscatedCustomerId=8804020668&creativeId=797296784374&uiFeatures=12,54&versionId=32&assets=%3DH4sIAAAAAAAAAOPi5uLkOLbjectuJgFGANEYnf...",94          "region_count": 17795        }96      }97    ],98    "cursor": null,99    "has_more": false,100    "parent": {101      "object": "advertiser",102      "platform": "google",103      "id": "AR16735076323512287233",104      "name": "Nike, Inc.",105      "url": "https://adstransparency.google.com/advertiser/AR16735076323512287233",106      "page_id": null,107      "country": null,108      "verified": null,109      "ad_count": 12,110      "extra": null111    }112  },113  "cursor": null,114  "has_more": false115}

Response#

A list of Ad objects in data.items, with data.cursor and data.has_more.

See Data models for every field. The envelope around data is described in Responses.

Errors#

Failures are free: credits_charged is 0. Branch on error.code, never on the message.

CodeHTTPRetryMeaning
invalid_params400noA parameter is missing, unknown or has the wrong type.
not_found404noThe platform says this profile, post or item does not exist.

Every request can also fail with the account and platform errors listed on the Errors page.

Also served at#

These paths answer the same request, so code written for other APIs keeps working: /v1/google/company/ads. See Switching from ScrapeCreators.