{
  "openapi": "3.0.1",
  "info": {
    "title": "Google Trends Scraper: Compare & Bulk",
    "description": "Google Trends interest over time, by region and related queries for any number of keywords. Compare up to 5 on one scale or bulk-scale hundreds. $0.002 per keyword, add-ons $0.001, no start fee. Never billed for empty or suspect data. AI-agent friendly: summary rows come first.",
    "version": "0.1",
    "x-build-id": "Nss1B5H9gArHjNn1l"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/otterfetch~google-trends/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-otterfetch-google-trends",
        "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/otterfetch~google-trends/runs": {
      "post": {
        "operationId": "runs-sync-otterfetch-google-trends",
        "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/otterfetch~google-trends/run-sync": {
      "post": {
        "operationId": "run-sync-otterfetch-google-trends",
        "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": {
          "searchTerms": {
            "title": "Search terms",
            "type": "array",
            "description": "Keywords to look up, one per entry, for example \"coffee\" or \"iphone 17\". You can also paste a Google Trends explore link (for example https://trends.google.com/trends/explore?q=coffee&geo=US). A pasted link is used exactly as Google showed it, with Google's defaults for anything it leaves out (worldwide, past 12 months, all categories, web search), so the country, time range, category and search type below do not apply to it. Required unless you give an import link.",
            "items": {
              "type": "string"
            }
          },
          "importUrl": {
            "title": "Import terms from a link",
            "type": "string",
            "description": "Optional https link to a CSV file or a Google Sheets link (shared as \"anyone with the link\", or a \"Publish to web\" link). One keyword per row in the first column; a header row named keyword, term or query is skipped. Example: https://docs.google.com/spreadsheets/d/YOUR_SHEET_ID/edit"
          },
          "mode": {
            "title": "Mode",
            "enum": [
              "single",
              "compare",
              "bulk"
            ],
            "type": "string",
            "description": "How keywords are scaled. Single gives each keyword Google's own 0 to 100 scale. Compare puts up to 5 keywords on one shared scale so you can see which is bigger. Bulk does the same for any number of keywords by comparing them through an anchor keyword.",
            "default": "single"
          },
          "anchorTerm": {
            "title": "Anchor term (bulk mode only)",
            "type": "string",
            "description": "Bulk mode only. The keyword every other keyword is compared against. Leave empty to let the Actor pick a steady one automatically. Example: \"weather\"."
          },
          "geo": {
            "title": "Country",
            "enum": [
              "",
              "AF",
              "AL",
              "DZ",
              "AS",
              "AD",
              "AO",
              "AI",
              "AQ",
              "AG",
              "AR",
              "AM",
              "AW",
              "AU",
              "AT",
              "AZ",
              "BS",
              "BH",
              "BD",
              "BB",
              "BY",
              "BE",
              "BZ",
              "BJ",
              "BM",
              "BT",
              "BO",
              "BA",
              "BW",
              "BV",
              "BR",
              "IO",
              "VG",
              "BN",
              "BG",
              "BF",
              "BI",
              "KH",
              "CM",
              "CA",
              "CV",
              "BQ",
              "KY",
              "CF",
              "TD",
              "CL",
              "CN",
              "CX",
              "CC",
              "CO",
              "KM",
              "CG",
              "CD",
              "CK",
              "CR",
              "HR",
              "CU",
              "CW",
              "CY",
              "CZ",
              "CI",
              "DK",
              "DJ",
              "DM",
              "DO",
              "EC",
              "EG",
              "SV",
              "GQ",
              "ER",
              "EE",
              "SZ",
              "ET",
              "FK",
              "FO",
              "FJ",
              "FI",
              "FR",
              "GF",
              "PF",
              "TF",
              "GA",
              "GM",
              "GE",
              "DE",
              "GH",
              "GI",
              "GR",
              "GL",
              "GD",
              "GP",
              "GU",
              "GT",
              "GG",
              "GN",
              "GW",
              "GY",
              "HT",
              "HM",
              "HN",
              "HK",
              "HU",
              "IS",
              "IN",
              "ID",
              "IR",
              "IQ",
              "IE",
              "IM",
              "IL",
              "IT",
              "JM",
              "JP",
              "JE",
              "JO",
              "KZ",
              "KE",
              "KI",
              "XK",
              "KW",
              "KG",
              "LA",
              "LV",
              "LB",
              "LS",
              "LR",
              "LY",
              "LI",
              "LT",
              "LU",
              "MO",
              "MG",
              "MW",
              "MY",
              "MV",
              "ML",
              "MT",
              "MH",
              "MQ",
              "MR",
              "MU",
              "YT",
              "MX",
              "FM",
              "MD",
              "MC",
              "MN",
              "ME",
              "MS",
              "MA",
              "MZ",
              "MM",
              "NA",
              "NR",
              "NP",
              "NL",
              "NC",
              "NZ",
              "NI",
              "NE",
              "NG",
              "NU",
              "NF",
              "KP",
              "MK",
              "MP",
              "NO",
              "OM",
              "PK",
              "PW",
              "PS",
              "PA",
              "PG",
              "PY",
              "PE",
              "PH",
              "PN",
              "PL",
              "PT",
              "PR",
              "QA",
              "RO",
              "RU",
              "RW",
              "RE",
              "WS",
              "SM",
              "SA",
              "SN",
              "RS",
              "SC",
              "SL",
              "SG",
              "SX",
              "SK",
              "SI",
              "SB",
              "SO",
              "ZA",
              "GS",
              "KR",
              "SS",
              "ES",
              "LK",
              "BL",
              "SH",
              "KN",
              "LC",
              "MF",
              "PM",
              "VC",
              "SD",
              "SR",
              "SJ",
              "SE",
              "CH",
              "SY",
              "ST",
              "TW",
              "TJ",
              "TZ",
              "TH",
              "TL",
              "TG",
              "TK",
              "TO",
              "TT",
              "TN",
              "TM",
              "TC",
              "TV",
              "TR",
              "UM",
              "VI",
              "UG",
              "UA",
              "AE",
              "GB",
              "US",
              "UY",
              "UZ",
              "VU",
              "VA",
              "VE",
              "VN",
              "WF",
              "EH",
              "YE",
              "ZM",
              "ZW",
              "AX"
            ],
            "type": "string",
            "description": "The country the searches came from. Pick a country by name, or leave it on Worldwide. Example: United States. Pasted Google Trends links keep their own country.",
            "default": ""
          },
          "subregion": {
            "title": "Subregion (optional)",
            "pattern": "^[A-Za-z]{2}(-[A-Za-z0-9]{1,3}){1,2}$",
            "type": "string",
            "description": "Narrow the search to a state or region inside the country you picked, using Google's code. It must start with the country code. Example: US-CA for California when the country is United States. Leave empty for the whole country."
          },
          "timeRange": {
            "title": "Time range",
            "enum": [
              "past_hour",
              "past_4_hours",
              "past_day",
              "past_7_days",
              "past_30_days",
              "past_90_days",
              "past_12_months",
              "past_5_years",
              "all_time",
              "custom"
            ],
            "type": "string",
            "description": "How far back to look. Shorter ranges give finer detail (hourly or daily points), longer ranges give weekly or monthly points. Choose Custom to use the start and end date below.",
            "default": "past_12_months"
          },
          "startDate": {
            "title": "Start date",
            "type": "string",
            "description": "First day of a custom range, as YYYY-MM-DD, for example 2024-01-01. Only used when Time range is Custom."
          },
          "endDate": {
            "title": "End date",
            "type": "string",
            "description": "Last day of a custom range, as YYYY-MM-DD, for example 2024-06-30. Only used when Time range is Custom."
          },
          "category": {
            "title": "Category",
            "enum": [
              "0",
              "3",
              "47",
              "44",
              "22",
              "12",
              "5",
              "7",
              "71",
              "8",
              "45",
              "65",
              "11",
              "13",
              "958",
              "19",
              "16",
              "299",
              "14",
              "66",
              "29",
              "533",
              "174",
              "18",
              "20",
              "67"
            ],
            "type": "string",
            "description": "Limit results to one top-level Google Trends category, for example Health. This helps with ambiguous words such as \"apple\". For a subcategory, paste a Google Trends explore link that already has the category set into Search terms.",
            "default": "0"
          },
          "searchType": {
            "title": "Search type",
            "enum": [
              "web",
              "youtube",
              "news",
              "images",
              "shopping"
            ],
            "type": "string",
            "description": "Which Google search the interest data comes from. Web search is the usual choice.",
            "default": "web"
          },
          "includeRegions": {
            "title": "Include interest by region",
            "type": "boolean",
            "description": "Add rows showing which regions search for each keyword the most. Billed as an extra event per keyword when region data is returned.",
            "default": false
          },
          "regionLevel": {
            "title": "Region detail",
            "enum": [
              "auto",
              "city"
            ],
            "type": "string",
            "description": "How detailed the region rows are. Automatic follows Google's default level for the area: countries for a worldwide search, subregions (states) for a country, and metro areas for a US state. Cities works best for popular keywords. Only used when interest by region is on.",
            "default": "auto"
          },
          "includeRelatedQueries": {
            "title": "Include related queries",
            "type": "boolean",
            "description": "Add rows with the top and rising related searches for each keyword, for example \"coffee beans\" or \"coffee maker\". Billed as an extra event per keyword when queries are returned.",
            "default": false
          },
          "includeSummary": {
            "title": "Include summary row",
            "type": "boolean",
            "description": "Add one row per keyword with its average, peak, latest value, change and trend. Keywords with no data always get a summary row so you can see why.",
            "default": true
          },
          "timezone": {
            "title": "Timezone",
            "type": "string",
            "description": "Timezone used for dates in the output, as an IANA name, for example Asia/Manila or America/New_York.",
            "default": "UTC"
          },
          "dateFormat": {
            "title": "Date format",
            "enum": [
              "iso",
              "plain"
            ],
            "type": "string",
            "description": "How dates are written in the output rows.",
            "default": "iso"
          },
          "maxKeywords": {
            "title": "Maximum keywords",
            "minimum": 1,
            "type": "integer",
            "description": "Safety limit for scheduled runs. Keywords beyond this number are skipped and listed in the run summary. Example: 100. Leave empty for no limit."
          },
          "healthCheck": {
            "title": "Health check run",
            "type": "boolean",
            "description": "For the Actor owner only. Makes the run fail when the built-in data check fails or fake data is detected, so a scheduled run can raise an alert. Leave off."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}