{
  "openapi": "3.0.1",
  "info": {
    "title": "Google News Scraper: Real URLs, 60+ Countries & Alerts",
    "description": "Google News scraper and API: search Google News in 60+ countries and languages in one run and get real publisher URLs, dates, sources and optional full text. Goes past the 100-results limit, merges duplicates, and returns only new articles for news alerts.",
    "version": "1.0",
    "x-build-id": "I3xy9qUQcMgfZsL0v"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/clearfeed-data~google-news-monitor/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-clearfeed-data-google-news-monitor",
        "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/clearfeed-data~google-news-monitor/runs": {
      "post": {
        "operationId": "runs-sync-clearfeed-data-google-news-monitor",
        "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/clearfeed-data~google-news-monitor/run-sync": {
      "post": {
        "operationId": "run-sync-clearfeed-data-google-news-monitor",
        "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": {
          "queries": {
            "title": "Search queries",
            "type": "array",
            "description": "Keywords, company or brand names to search on Google News. Google operators work: \"exact phrase\", OR, -exclude, site:lemonde.fr, intitle:. Leave empty if you only want topic headlines.",
            "items": {
              "type": "string"
            }
          },
          "topics": {
            "title": "Topic headlines",
            "type": "array",
            "description": "Optional: also get the top stories of these Google News sections in each edition. TOP = the edition's front page.",
            "items": {
              "type": "string",
              "enum": [
                "TOP",
                "WORLD",
                "NATION",
                "BUSINESS",
                "TECHNOLOGY",
                "ENTERTAINMENT",
                "SPORTS",
                "SCIENCE",
                "HEALTH"
              ],
              "enumTitles": [
                "Top stories",
                "World",
                "Nation (local news)",
                "Business",
                "Technology",
                "Entertainment",
                "Sports",
                "Science",
                "Health"
              ]
            }
          },
          "editions": {
            "title": "Countries and languages (editions)",
            "type": "array",
            "description": "Google News editions to search, all in one run. The same story found in several editions is returned once, with all its editions listed.",
            "items": {
              "type": "string",
              "enum": [
                "US:en",
                "GB:en",
                "IE:en",
                "CA:en",
                "AU:en",
                "NZ:en",
                "IN:en",
                "SG:en",
                "ZA:en",
                "NG:en",
                "KE:en",
                "PH:en",
                "MY:en",
                "PK:en",
                "FR:fr",
                "BE:fr",
                "CH:fr",
                "CA:fr",
                "MA:fr",
                "SN:fr",
                "DE:de",
                "AT:de",
                "CH:de",
                "ES:es",
                "MX:es-419",
                "AR:es-419",
                "CO:es-419",
                "CL:es-419",
                "PE:es-419",
                "US:es-419",
                "IT:it",
                "PT:pt-150",
                "BR:pt-419",
                "NL:nl",
                "BE:nl",
                "PL:pl",
                "SE:sv",
                "NO:no",
                "DK:da",
                "FI:fi",
                "CZ:cs",
                "SK:sk",
                "HU:hu",
                "RO:ro",
                "BG:bg",
                "GR:el",
                "SI:sl",
                "LT:lt",
                "LV:lv",
                "RS:sr",
                "TR:tr",
                "UA:uk",
                "RU:ru",
                "IL:he",
                "AE:ar",
                "SA:ar",
                "EG:ar",
                "LB:ar",
                "JP:ja",
                "KR:ko",
                "CN:zh-Hans",
                "TW:zh-Hant",
                "HK:zh-Hant",
                "ID:id",
                "TH:th",
                "VN:vi"
              ],
              "enumTitles": [
                "United States (English)",
                "United Kingdom (English)",
                "Ireland (English)",
                "Canada (English)",
                "Australia (English)",
                "New Zealand (English)",
                "India (English)",
                "Singapore (English)",
                "South Africa (English)",
                "Nigeria (English)",
                "Kenya (English)",
                "Philippines (English)",
                "Malaysia (English)",
                "Pakistan (English)",
                "France (French)",
                "Belgium (French)",
                "Switzerland (French)",
                "Canada (French)",
                "Morocco (French)",
                "Senegal (French)",
                "Germany (German)",
                "Austria (German)",
                "Switzerland (German)",
                "Spain (Spanish)",
                "Mexico (Spanish)",
                "Argentina (Spanish)",
                "Colombia (Spanish)",
                "Chile (Spanish)",
                "Peru (Spanish)",
                "United States (Spanish)",
                "Italy (Italian)",
                "Portugal (Portuguese)",
                "Brazil (Portuguese)",
                "Netherlands (Dutch)",
                "Belgium (Dutch)",
                "Poland (Polish)",
                "Sweden (Swedish)",
                "Norway (Norwegian)",
                "Denmark (Danish)",
                "Finland (Finnish)",
                "Czechia (Czech)",
                "Slovakia (Slovak)",
                "Hungary (Hungarian)",
                "Romania (Romanian)",
                "Bulgaria (Bulgarian)",
                "Greece (Greek)",
                "Slovenia (Slovenian)",
                "Lithuania (Lithuanian)",
                "Latvia (Latvian)",
                "Serbia (Serbian)",
                "Turkey (Turkish)",
                "Ukraine (Ukrainian)",
                "Russia (Russian)",
                "Israel (Hebrew)",
                "United Arab Emirates (Arabic)",
                "Saudi Arabia (Arabic)",
                "Egypt (Arabic)",
                "Lebanon (Arabic)",
                "Japan (Japanese)",
                "South Korea (Korean)",
                "China (Chinese (Simplified))",
                "Taiwan (Chinese (Traditional))",
                "Hong Kong (Chinese (Traditional))",
                "Indonesia (Indonesian)",
                "Thailand (Thai)",
                "Vietnam (Vietnamese)"
              ]
            },
            "default": [
              "US:en"
            ]
          },
          "timeRange": {
            "title": "Time range",
            "enum": [
              "1h",
              "12h",
              "1d",
              "7d",
              "30d",
              "1y",
              "any"
            ],
            "type": "string",
            "description": "How recent the articles must be. Ignored if you set a date range below.",
            "default": "7d"
          },
          "dateFrom": {
            "title": "Or from date",
            "type": "string",
            "description": "Optional start date (YYYY-MM-DD). Use with 'To date' to get historical news. Overrides 'Time range'."
          },
          "dateTo": {
            "title": "To date",
            "type": "string",
            "description": "Optional end date (YYYY-MM-DD), included. Empty = today."
          },
          "splitDateRange": {
            "title": "Go past Google's 100-results limit",
            "type": "boolean",
            "description": "Google News returns at most 100 articles per search. When a search is full, split the period into smaller date windows to collect more, up to 'Max articles per query'.",
            "default": true
          },
          "maxArticlesPerQuery": {
            "title": "Max articles per query and edition",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Cap for each search query in each edition. Raise it (with the 100-results option on) for big historical exports.",
            "default": 100
          },
          "maxResults": {
            "title": "Max articles per run",
            "minimum": 0,
            "type": "integer",
            "description": "Total cap for the run, after duplicates are merged. 0 = no cap. You are only charged for articles returned.",
            "default": 1000
          },
          "onlyNew": {
            "title": "Only new articles (monitoring)",
            "type": "boolean",
            "description": "Return only articles not returned by previous runs with the same monitor name. Schedule the actor hourly or daily for news alerts: runs with nothing new cost almost nothing.",
            "default": false
          },
          "monitorName": {
            "title": "Monitor name",
            "type": "string",
            "description": "Keeps separate memories for different monitors (for example one per client or brand).",
            "default": "default"
          },
          "decodeUrls": {
            "title": "Return real publisher URLs",
            "type": "boolean",
            "description": "Decode news.google.com links to the original article URL (lemonde.fr/..., reuters.com/...). Included in the article price.",
            "default": true
          },
          "fetchArticleText": {
            "title": "Add full article text",
            "type": "boolean",
            "description": "Open each publisher page and extract the article text, description, author and main image. Charged as an extra add-on per article with text found; paywalled pages return no text and are not charged for it.",
            "default": false
          },
          "titleMustContain": {
            "title": "Title must contain (optional)",
            "type": "array",
            "description": "Keep only articles whose title contains at least one of these words (accents and case ignored). Useful to drop loose matches.",
            "items": {
              "type": "string"
            }
          },
          "excludePublishers": {
            "title": "Exclude publishers",
            "type": "array",
            "description": "Publisher names or domains to drop, for example yahoo.com or MSN.",
            "items": {
              "type": "string"
            }
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Not needed in most cases: the actor switches to Apify Proxy by itself if Google starts rate limiting.",
            "default": {
              "useApifyProxy": false
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}