Docs / API reference

POST/v1/data/google-ads/transparency/creatives

Google Ads Creatives

Fetch public Google Ads Transparency creatives for one advertiser.

Execution model

Live request

Runtime depends on endpoint, target, pagination, rendering mode, and active plan limits.

Credit weight

Live catalog

Current weights are managed from the Data API Weights admin table and shown on pricing before use.

Fetch creatives by advertiser ID or Transparency Center URL.

Getting Started

Send your API key as a bearer token. Start with the smallest request below.

Fetch Advertiser Creatives

Send one advertiser_id and the matching region.

curl -X POST "https://api.datablue.dev/v1/data/google-ads/transparency/creatives" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "advertiser_id": "AR08888592736429539329",
  "region": "IN",
  "limit": 10
}'
Example response
{
  "success": true,
  "source": "google_ads_transparency",
  "operation": "creatives",
  "advertiser_id": "AR08888592736429539329",
  "region": "IN",
  "total_results": 1,
  "time_taken": 1.8,
  "creatives": [
    {
      "position": 1,
      "advertiser_id": "AR08888592736429539329",
      "creative_id": "CR123",
      "preview_url": "https://adstransparency.google.com/advertiser/..."
    }
  ]
}

Advertiser Source

Use a Transparency URL

Send url instead of an ID; startUrls is an accepted alias.

curl -X POST "https://api.datablue.dev/v1/data/google-ads/transparency/creatives" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "url": "https://adstransparency.google.com/advertiser/AR08888592736429539329",
  "region": "IN",
  "limit": 10
}'
Example response
{
  "success": true,
  "source": "google_ads_transparency",
  "operation": "creatives",
  "advertiser_id": "AR08888592736429539329",
  "region": "IN",
  "total_results": 1,
  "time_taken": 1.8,
  "creatives": [
    {
      "position": 1,
      "advertiser_id": "AR08888592736429539329",
      "creative_id": "CR123",
      "preview_url": "https://adstransparency.google.com/advertiser/..."
    }
  ]
}

Pagination and Date

Continue with a Cursor

Send the previous cursor, set limit from 1 to 40, and optionally use date_range=last_30_days.

curl -X POST "https://api.datablue.dev/v1/data/google-ads/transparency/creatives" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "advertiser_id": "AR08888592736429539329",
  "region": "IN",
  "limit": 40,
  "cursor": "NEXT_CURSOR",
  "date_range": "last_30_days"
}'
Example response
{
  "success": true,
  "source": "google_ads_transparency",
  "operation": "creatives",
  "advertiser_id": "AR08888592736429539329",
  "region": "IN",
  "total_results": 1,
  "time_taken": 1.8,
  "creatives": [
    {
      "position": 1,
      "advertiser_id": "AR08888592736429539329",
      "creative_id": "CR123",
      "preview_url": "https://adstransparency.google.com/advertiser/..."
    }
  ]
}

Creative Details

Choose Detail and Assets

Use skip_details, should_download_assets, should_download_previews, and ocr to control enrichment.

curl -X POST "https://api.datablue.dev/v1/data/google-ads/transparency/creatives" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "advertiser_id": "AR08888592736429539329",
  "region": "IN",
  "skip_details": false,
  "should_download_assets": true,
  "should_download_previews": true,
  "ocr": true
}'
Example response
{
  "success": true,
  "source": "google_ads_transparency",
  "operation": "creatives",
  "advertiser_id": "AR08888592736429539329",
  "region": "IN",
  "total_results": 1,
  "time_taken": 1.8,
  "creatives": [
    {
      "position": 1,
      "advertiser_id": "AR08888592736429539329",
      "creative_id": "CR123",
      "preview_url": "https://adstransparency.google.com/advertiser/..."
    }
  ]
}

Request Controls

Set Provider Timeout

Set timeout_ms from 5,000 to 90,000 milliseconds.

curl -X POST "https://api.datablue.dev/v1/data/google-ads/transparency/creatives" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "advertiser_id": "AR08888592736429539329",
  "timeout_ms": 45000
}'
Example response
{
  "success": true,
  "source": "google_ads_transparency",
  "operation": "creatives",
  "advertiser_id": "AR08888592736429539329",
  "region": "IN",
  "total_results": 1,
  "time_taken": 1.8,
  "creatives": [
    {
      "position": 1,
      "advertiser_id": "AR08888592736429539329",
      "creative_id": "CR123",
      "preview_url": "https://adstransparency.google.com/advertiser/..."
    }
  ]
}

Response

Consume creative rows from creatives and reuse cursor when another page is available.

Error Handling

Handle 401 for authentication, 422 for invalid input, 429 for limits, and retry only transient failures.

Parameters

NameTypeRequirementDescription
advertiser_idstringOptionalGoogle Ads Transparency advertiser ID, e.g. AR08888592736429539329. Required unless url is supplied.
url / startUrlsstring | arrayOptionalGoogle Ads Transparency advertiser URL. Required unless advertiser_id is supplied.
regionstringOptionalTwo-letter transparency region code.
limit / resultsLimitnumberOptionalMaximum creative rows to return (1-40).
cursorstringOptionalPagination cursor from a previous response.
date_rangestringOptionalSupported value: last_30_days.
skip_details / skipDetailsbooleanOptionalSkip detail fetch where supported.
should_download_assets / shouldDownloadAssetsbooleanOptionalDownload or include asset metadata when available.
should_download_previews / shouldDownloadPreviewsbooleanOptionalDownload or include preview metadata when available.
ocrbooleanOptionalInclude OCR text when available.
timeout_msnumberOptionalProvider timeout in milliseconds (5000-90000).

Response fields

FieldTypeDescription
successbooleanWhether the request completed successfully.
creativesarrayCreative rows with creative_id, preview_url, format, first/last seen dates, served days, advertiser name, regions, library URL, assets, and OCR text when requested.
cursorstringPagination cursor when available.
time_takennumberAPI response time in seconds.

Request and response

curl -X POST "https://api.datablue.dev/v1/data/google-ads/transparency/creatives" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "advertiser_id": "AR08888592736429539329",
  "region": "IN",
  "resultsLimit": 10
}'
Example response
{
  "success": true,
  "source": "google_ads_transparency",
  "operation": "creatives",
  "advertiser_id": "AR08888592736429539329",
  "region": "IN",
  "total_results": 1,
  "time_taken": 1.8,
  "creatives": [
    {
      "position": 1,
      "advertiser_id": "AR08888592736429539329",
      "creative_id": "CR123",
      "preview_url": "https://adstransparency.google.com/advertiser/..."
    }
  ]
}