{
  "openapi": "3.0.1",
  "info": {
    "title": "Google Trends Scraper — Unlimited Keywords & Trending Now",
    "description": "Google Trends: compare unlimited keywords on one scale, interest by region/city/metro, related queries, full Trending Now lists, spike alerts.",
    "version": "1.0",
    "x-build-id": "B9o3pPLbdGDA6Kw1s"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/vladased~google-trends-reliable/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-vladased-google-trends-reliable",
        "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/vladased~google-trends-reliable/runs": {
      "post": {
        "operationId": "runs-sync-vladased-google-trends-reliable",
        "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/vladased~google-trends-reliable/run-sync": {
      "post": {
        "operationId": "run-sync-vladased-google-trends-reliable",
        "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": {
          "mode": {
            "title": "Mode",
            "enum": [
              "explore",
              "trending_now"
            ],
            "type": "string",
            "description": "Trending Now needs no keywords.",
            "default": "explore"
          },
          "keywords": {
            "title": "Keywords",
            "type": "array",
            "description": "Search terms for explore mode (max 100 per job). More than 5 is fine: they're compared via the anchor keyword. Duplicates are removed. If you add Trends URLs or a sheet and leave these example terms untouched, they're ignored.",
            "default": [
              "chatgpt",
              "claude",
              "gemini"
            ],
            "items": {
              "type": "string"
            }
          },
          "trendsUrls": {
            "title": "Google Trends URLs",
            "type": "array",
            "description": "Paste Explore or Trending Now URLs straight from trends.google.com (max 20). Each URL runs as its own job with that page's terms, region, time range, category and property; 'Data to fetch' and 'Output format' below still apply. Topic entities (/m/…) aren't supported yet.",
            "items": {
              "type": "string"
            }
          },
          "keywordsSheetUrl": {
            "title": "Keyword sheet (Google Sheets or CSV URL)",
            "type": "string",
            "description": "Google Sheet shared as 'Anyone with the link', or any CSV URL. Keywords are read from the first column (a header row like 'keyword' is skipped) and added to the keywords above. Link a specific tab by copying its URL (with #gid=…)."
          },
          "anchor": {
            "title": "Anchor keyword",
            "type": "string",
            "description": "Keyword used to put batches of more than 5 keywords on one scale. Default: the first keyword. Pick one with steady, non-zero interest. If it isn't in your keyword list it's used only for scaling and not returned (you're not charged for it)."
          },
          "geos": {
            "title": "Countries / regions",
            "type": "array",
            "description": "Region codes, e.g. US, GB, DE or subregions like US-CA (max 50). Each is fetched separately. Empty = worldwide (Trending Now defaults to US).",
            "items": {
              "type": "string"
            }
          },
          "timeframe": {
            "title": "Timeframe",
            "type": "string",
            "description": "Google syntax: 'now 1-H', 'now 4-H', 'now 1-d', 'now 7-d', 'today 1-m', 'today 3-m', 'today 12-m', 'today 5-y', 'all', or 'YYYY-MM-DD YYYY-MM-DD'.",
            "default": "today 12-m"
          },
          "include": {
            "title": "Data to fetch",
            "type": "array",
            "description": "Which data to fetch for each keyword: timeline (time), regions (region), related queries (top + rising).",
            "items": {
              "type": "string",
              "enum": [
                "time",
                "region",
                "related_queries"
              ]
            },
            "default": [
              "time",
              "region",
              "related_queries"
            ]
          },
          "regionResolution": {
            "title": "Interest by area: level",
            "enum": [
              "region",
              "city",
              "metro"
            ],
            "type": "string",
            "description": "How fine the 'region' map is. Cities and metro areas need a country in Regions (metro: US only).",
            "default": "region"
          },
          "category": {
            "title": "Category ID",
            "type": "integer",
            "description": "Google Trends category (0 = all).",
            "default": 0
          },
          "property": {
            "title": "Search property",
            "enum": [
              "",
              "images",
              "news",
              "youtube",
              "froogle"
            ],
            "type": "string",
            "description": "Google property to search: Web (default), Images, News, YouTube or Shopping.",
            "default": ""
          },
          "language": {
            "title": "Language",
            "type": "string",
            "description": "Interface language for Google Trends (affects topic names), e.g. en-US.",
            "default": "en-US"
          },
          "outputFormat": {
            "title": "Output format",
            "enum": [
              "compact",
              "flat"
            ],
            "type": "string",
            "description": "Compact = one result per keyword and data type (cheapest). Flat = one row per data point.",
            "default": "compact"
          },
          "trendingHours": {
            "title": "Trending Now: time window",
            "enum": [
              "4",
              "24",
              "48",
              "168"
            ],
            "type": "string",
            "description": "Same windows as trends.google.com/trending. The 7-day list is the longest (often 1,000+ trends per country).",
            "default": "24"
          },
          "trendingCategories": {
            "title": "Trending Now: categories",
            "type": "array",
            "description": "Keep only trends in these categories: Autos and Vehicles, Beauty and Fashion, Business and Finance, Climate, Entertainment, Food and Drink, Games, Health, Hobbies and Leisure, Jobs and Education, Law and Government, Other, Pets and Animals, Politics, Science, Shopping, Sports, Technology, Travel and Transportation.",
            "items": {
              "type": "string"
            }
          },
          "activeOnly": {
            "title": "Trending Now: only trends still rising",
            "type": "boolean",
            "description": "Skip trends Google marks as ended.",
            "default": false
          },
          "maxTrends": {
            "title": "Trending Now: max trends per country",
            "minimum": 1,
            "maximum": 2000,
            "type": "integer",
            "description": "Biggest first. One country's list is ONE result (one charge), however many trends it holds.",
            "default": 100
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Leave as is: the Actor starts without a proxy (free) and escalates to datacenter, then residential proxies only if Google rate-limits. Pick a specific group (e.g. RESIDENTIAL) to force it.",
            "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}