{
  "openapi": "3.0.1",
  "info": {
    "title": "Google Ads Metadata Scraper",
    "description": "Extract rich public advertiser and creative metadata from the official Google Ads Transparency Center with bounded rendered-page support and pure business dataset rows.",
    "version": "1.2",
    "x-build-id": "1gU6cZMj4Y6Hp3mdC"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/googleapi~google-ads-metadata-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-googleapi-google-ads-metadata-scraper",
        "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/googleapi~google-ads-metadata-scraper/runs": {
      "post": {
        "operationId": "runs-sync-googleapi-google-ads-metadata-scraper",
        "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/googleapi~google-ads-metadata-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-googleapi-google-ads-metadata-scraper",
        "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",
        "properties": {
          "searchQuery": {
            "title": "Advertiser search",
            "maxLength": 300,
            "type": "string",
            "description": "Public advertiser name or website to enter into the Center search when no custom source URL is supplied."
          },
          "advertiserName": {
            "title": "Advertiser search (alias)",
            "maxLength": 300,
            "type": "string",
            "description": "Compatibility alias for searchQuery."
          },
          "q": {
            "title": "Advertiser search (alias)",
            "maxLength": 300,
            "type": "string",
            "description": "Compatibility alias for searchQuery."
          },
          "queries": {
            "title": "Advertiser searches",
            "maxItems": 20,
            "type": "array",
            "description": "Up to 20 public advertiser searches. Ignored when custom source URLs are supplied.",
            "items": {
              "type": "string",
              "maxLength": 300
            }
          },
          "searchKeywords": {
            "title": "Searches (alias)",
            "maxItems": 20,
            "type": "array",
            "description": "Compatibility alias for queries; a single string is also accepted by the runtime.",
            "items": {
              "type": "string",
              "maxLength": 300
            }
          },
          "startUrls": {
            "title": "Ads Transparency URLs",
            "maxItems": 100,
            "type": "array",
            "description": "Public official Center home, search-results, advertiser, or creative URLs. Custom URLs override generated searches.",
            "items": {
              "type": "object",
              "properties": {
                "url": {
                  "title": "URL",
                  "type": "string",
                  "description": "Allowed public Google Ads Transparency Center URL."
                }
              },
              "required": [
                "url"
              ]
            },
            "default": []
          },
          "sourceUrls": {
            "title": "Source URLs (alias)",
            "maxItems": 100,
            "type": "array",
            "description": "Compatibility alias for startUrls.",
            "items": {
              "type": "string"
            }
          },
          "urls": {
            "title": "URLs (alias)",
            "maxItems": 100,
            "type": "array",
            "description": "Compatibility alias for startUrls.",
            "items": {
              "type": "string"
            }
          },
          "url": {
            "title": "Single URL (alias)",
            "maxLength": 2000,
            "type": "string",
            "description": "Compatibility alias for one public source URL."
          },
          "sourceUrl": {
            "title": "Single source URL",
            "maxLength": 2000,
            "type": "string",
            "description": "Compatibility alias for one public source URL."
          },
          "maxItems": {
            "title": "Maximum creative rows",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Global maximum of normal advertiser/creative rows. Diagnostics do not count.",
            "default": 25
          },
          "maxResults": {
            "title": "Maximum rows (alias)",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Compatibility alias for maxItems."
          },
          "maxPages": {
            "title": "Maximum scroll pages",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "Maximum bounded page-scroll rounds per source while public creative cards are collected.",
            "default": 5
          },
          "deduplicate": {
            "title": "Deduplicate creatives",
            "type": "boolean",
            "description": "Remove duplicate creative IDs across sources and scroll rounds.",
            "default": true
          },
          "platform": {
            "title": "Platform filter",
            "maxLength": 40,
            "type": "string",
            "description": "Optional exact public platform filter such as SEARCH, YOUTUBE, or DISPLAY."
          },
          "region": {
            "title": "Region filter",
            "maxLength": 80,
            "type": "string",
            "description": "Optional exact public region filter such as US."
          },
          "country": {
            "title": "Region filter (alias)",
            "maxLength": 80,
            "type": "string",
            "description": "Compatibility alias for region."
          },
          "adFormat": {
            "title": "Ad format filter",
            "maxLength": 40,
            "type": "string",
            "description": "Optional exact public format filter such as TEXT, IMAGE, or VIDEO. Selecting this filter automatically opens up to maxItems public creative detail pages so format can be read from the source."
          },
          "filterAdvertiserName": {
            "title": "Advertiser name filter",
            "maxLength": 300,
            "type": "string",
            "description": "Keep rows whose public advertiser name contains this case-insensitive text."
          },
          "advertiserNameFilter": {
            "title": "Advertiser filter (alias)",
            "maxLength": 300,
            "type": "string",
            "description": "Compatibility alias for filterAdvertiserName."
          },
          "verifiedOnly": {
            "title": "Verified advertisers only",
            "type": "boolean",
            "description": "Keep only cards that publicly expose the Center's verified advertiser marker.",
            "default": false
          },
          "sortBy": {
            "title": "Sort records",
            "enum": [
              "source",
              "advertiser_name_asc",
              "creative_id_asc",
              "format"
            ],
            "type": "string",
            "description": "Global stable order after collection and filtering. Selecting format sorting automatically opens up to maxItems public creative detail pages so source-reported formats are available.",
            "default": "source"
          },
          "includeMedia": {
            "title": "Include public creative media",
            "type": "boolean",
            "description": "Include approved Google-hosted image/video URLs and dimensions exposed by the public creative preview.",
            "default": true
          },
          "includeCreativeDetails": {
            "title": "Open creative detail pages",
            "type": "boolean",
            "description": "Visit public creative detail pages to enrich format, last-shown date, variation count, and media fields. Off by default; an adFormat filter or format sort still triggers the bounded detail reads needed for that choice.",
            "default": false
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Optional Apify proxy configuration for public Google requests."
          },
          "page": {
            "title": "Advertiser search page",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "One-based advertiser-results page used with a generated search. For a direct advertiser URL, use maxPages to scroll its creative listing.",
            "default": 1
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}