{
  "openapi": "3.0.1",
  "info": {
    "title": "Google Ads Transparency Scraper - Competitor Ads",
    "description": "Scrape Google Ads Transparency Center by domain, advertiser, brand or keyword: every ad on Google Search, YouTube, Shopping, Maps and Play with format, first and last shown, days running, countries, image and preview. Filter by country, platform, format and date. No login.",
    "version": "0.1",
    "x-build-id": "eSQDNEwvfP5MecS2f"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapewise~google-ads-transparency/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapewise-google-ads-transparency",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/scrapewise~google-ads-transparency/runs": {
      "post": {
        "operationId": "runs-sync-scrapewise-google-ads-transparency",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/scrapewise~google-ads-transparency/run-sync": {
      "post": {
        "operationId": "run-sync-scrapewise-google-ads-transparency",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "required": [
          "searchQuery"
        ],
        "properties": {
          "searchQuery": {
            "title": "Advertiser, domain or keyword",
            "type": "string",
            "description": "One target, in any of four forms: a domain (nike.com) returns every advertiser account whose ads point to it; an advertiser id (AR16735076323512287233) returns that account only; a Transparency Center URL is read for its advertiser id or domain; a brand name (Nike) is resolved to its top matching advertiser accounts (see 'Advertisers per brand name'). Default: nike.com.",
            "default": "nike.com"
          },
          "queries": {
            "title": "More advertisers, domains or keywords",
            "type": "array",
            "description": "More targets for the same run, one per line, in the same four forms: adidas.com, AR16735076323512287233, Nike. Duplicated targets are read once, and an ad found by two targets is charged once. Lists sent by API as domains, advertiserIds or startUrls are merged here.",
            "items": {
              "type": "string"
            }
          },
          "region": {
            "title": "Region",
            "enum": [
              "",
              "US",
              "CA",
              "MX",
              "BZ",
              "GT",
              "SV",
              "HN",
              "NI",
              "CR",
              "PA",
              "CU",
              "JM",
              "HT",
              "DO",
              "TT",
              "BB",
              "BS",
              "GD",
              "LC",
              "VC",
              "KN",
              "DM",
              "CO",
              "VE",
              "GY",
              "SR",
              "BR",
              "EC",
              "PE",
              "BO",
              "PY",
              "UY",
              "AR",
              "CL",
              "GB",
              "IE",
              "FR",
              "MC",
              "BE",
              "NL",
              "LU",
              "DE",
              "AT",
              "CH",
              "LI",
              "NO",
              "SE",
              "DK",
              "FI",
              "IS",
              "EE",
              "LV",
              "LT",
              "ES",
              "PT",
              "IT",
              "MT",
              "GR",
              "CY",
              "AL",
              "SI",
              "HR",
              "BA",
              "ME",
              "RS",
              "MK",
              "PL",
              "CZ",
              "SK",
              "HU",
              "RO",
              "BG",
              "MD",
              "UA",
              "BY",
              "RU",
              "GE",
              "AM",
              "AZ",
              "KZ",
              "UZ",
              "TM",
              "TJ",
              "KG",
              "TR",
              "IL",
              "LB",
              "JO",
              "IQ",
              "KW",
              "SA",
              "AE",
              "QA",
              "BH",
              "OM",
              "YE",
              "AF",
              "PK",
              "IN",
              "BD",
              "NP",
              "BT",
              "LK",
              "MV",
              "CN",
              "TW",
              "HK",
              "MO",
              "JP",
              "KR",
              "MN",
              "TH",
              "VN",
              "KH",
              "LA",
              "MM",
              "MY",
              "SG",
              "ID",
              "PH",
              "BN",
              "TL",
              "AU",
              "NZ",
              "PG",
              "FJ",
              "MA",
              "DZ",
              "TN",
              "LY",
              "EG",
              "SD",
              "MR",
              "ML",
              "NE",
              "SN",
              "GM",
              "CV",
              "GW",
              "GN",
              "SL",
              "LR",
              "CI",
              "GH",
              "BF",
              "TG",
              "BJ",
              "NG",
              "CM",
              "CF",
              "TD",
              "CD",
              "CG",
              "GA",
              "GQ",
              "ET",
              "ER",
              "DJ",
              "SO",
              "SS",
              "KE",
              "UG",
              "TZ",
              "RW",
              "BI",
              "AO",
              "ZM",
              "MW",
              "MZ",
              "ZW",
              "NA",
              "BW",
              "ZA",
              "LS",
              "SZ",
              "MG",
              "MU",
              "SC"
            ],
            "type": "string",
            "description": "Only ads shown in this country, as a two-letter ISO code in upper case (US, GB, DE, BR), filtered by Google itself, so the run only pays for ads that match. Anywhere (default) returns ads from all countries. The country list per ad comes with 'Include countries and variations'.",
            "default": ""
          },
          "platform": {
            "title": "Platform",
            "enum": [
              "",
              "google_search",
              "youtube",
              "google_shopping",
              "google_maps",
              "google_play"
            ],
            "type": "string",
            "description": "Only ads shown on this Google surface: google_search, youtube, google_shopping, google_maps or google_play. All platforms (default) returns every one. Google applies this filter only to ads shown from 2023-09-04 onwards, so older ads are not returned when it is set.",
            "default": ""
          },
          "format": {
            "title": "Ad format",
            "enum": [
              "",
              "text",
              "image",
              "video"
            ],
            "type": "string",
            "description": "Keep only one creative format: text (search ads, usually the large majority), image or video. All formats (default) returns every ad the advertiser runs. Filtered by Google, so you pay only for matching ads.",
            "default": ""
          },
          "dateRange": {
            "title": "Shown in the last",
            "enum": [
              "",
              "last_7_days",
              "last_30_days",
              "last_90_days",
              "last_365_days"
            ],
            "type": "string",
            "description": "Quick window: only ads shown in the last 7, 30, 90 or 365 days. Any time (default) has no limit. Ignored when 'Shown from' is filled. A weekly run with 7 days returns what a competitor ran that week.",
            "default": ""
          },
          "dateFrom": {
            "title": "Shown from (YYYY-MM-DD)",
            "type": "string",
            "description": "Exact start of the window, as YYYY-MM-DD (2026-01-01): only ads shown on or after this date. Overrides 'Shown in the last'. Empty = no start limit."
          },
          "dateTo": {
            "title": "Shown until (YYYY-MM-DD)",
            "type": "string",
            "description": "Exact end of the window, as YYYY-MM-DD (2026-06-30): only ads shown on or before this date. Empty = up to today."
          },
          "maxItems": {
            "title": "Max ads",
            "minimum": 1,
            "maximum": 50000,
            "type": "integer",
            "description": "Hard cap of ad creatives for the whole run, across every target, from 1 to 50,000. Default 30 (US$ 0.045 on the Free plan, at US$ 0.0015 per ad). The run also ends when Google's pagination ends, so it can return fewer.",
            "default": 30
          },
          "onlyNew": {
            "title": "Only new ads (for schedules)",
            "type": "boolean",
            "description": "For scheduled alerts. Remembers the ads already delivered for each target with these filters (Key-Value Store 'google-ads-transparency-only-new' in your account). The first run delivers up to 'Max ads'; later runs deliver, and charge, only creatives never delivered before that started running after the first run. Skipped ads are free and do not count toward 'Max ads'. Delete the store to start over. Default off.",
            "default": false
          },
          "maxAdvertisersPerQuery": {
            "title": "Advertisers per brand name",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "When a target is a brand name, how many matching advertiser accounts to read, from 1 to 20: best name match first, then by ad volume. Default 3. Raise it for brands that advertise through many regional or agency accounts. Ignored for domains and advertiser ids.",
            "default": 3
          },
          "includeDetails": {
            "title": "Include countries and variations",
            "type": "boolean",
            "description": "On: one extra request per ad adds every country it ran in (with the last date shown in each), the number of creative variations and any missing image or preview. Same price per ad, but the run is several times slower. Off (default): the creative list and dates only.",
            "default": false
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "The Apify datacenter proxy (default) works and is included in the price. When Google answers with a captcha, the Actor retries on its own at no extra price. Change only to route through your own proxy.",
            "default": {
              "useApifyProxy": true
            }
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}