{
  "openapi": "3.0.1",
  "info": {
    "title": "Google News Scraper API: Real Article URLs & History",
    "description": "Scrape Google News by keyword, topic or city in 60 editions. Get headline, publisher, date and the real article URL (decoded), up to 1,000 articles per search and years of history. No browser, failed searches free.",
    "version": "1.0",
    "x-build-id": "l12XP9T6OXR5TRDgk"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/inter974~google-news-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-inter974-google-news-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/inter974~google-news-scraper/runs": {
      "post": {
        "operationId": "runs-sync-inter974-google-news-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/inter974~google-news-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-inter974-google-news-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": {
          "queries": {
            "title": "Search queries",
            "type": "array",
            "description": "Keywords to search in Google News, one per line. Google News operators work: \"exact phrase\", OR, -exclude, site:reuters.com, intitle:word.",
            "default": [
              "artificial intelligence"
            ],
            "items": {
              "type": "string"
            }
          },
          "topics": {
            "title": "Topics (headlines)",
            "type": "array",
            "description": "Today's headlines of the edition, by section. Each article comes with the other outlets covering the same story.",
            "items": {
              "type": "string",
              "enum": [
                "TOP_STORIES",
                "WORLD",
                "NATION",
                "BUSINESS",
                "TECHNOLOGY",
                "ENTERTAINMENT",
                "SPORTS",
                "SCIENCE",
                "HEALTH"
              ],
              "enumTitles": [
                "Top stories",
                "World",
                "Nation",
                "Business",
                "Technology",
                "Entertainment",
                "Sports",
                "Science",
                "Health"
              ]
            }
          },
          "locations": {
            "title": "Local news",
            "type": "array",
            "description": "Local headlines for a city, region or country, e.g. 'Austin, Texas', 'Lyon', 'Bavaria'.",
            "items": {
              "type": "string"
            }
          },
          "edition": {
            "title": "Edition (country & language)",
            "enum": [
              "US:en",
              "GB:en",
              "CA:en",
              "AU:en",
              "IN:en",
              "IE:en",
              "NZ:en",
              "SG:en",
              "ZA:en",
              "NG:en",
              "PH:en",
              "PK:en",
              "KE:en",
              "MY:en",
              "FR:fr",
              "BE:fr",
              "CA:fr",
              "CH: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",
              "FI:fi",
              "CZ:cs",
              "HU:hu",
              "RO:ro",
              "GR:el",
              "RU:ru",
              "UA:uk",
              "TR:tr",
              "IL:he",
              "AE:ar",
              "SA:ar",
              "EG:ar",
              "IN:hi",
              "BD:bn",
              "ID:id",
              "VN:vi",
              "TH:th",
              "JP:ja",
              "KR:ko",
              "TW:zh-Hant",
              "HK:zh-Hant",
              "CN:zh-Hans"
            ],
            "type": "string",
            "description": "The Google News edition to use: it sets the country and the language of the results.",
            "default": "US:en"
          },
          "timeRange": {
            "title": "Time range (search queries)",
            "enum": [
              "1h",
              "1d",
              "7d",
              "30d",
              "1y",
              "any"
            ],
            "type": "string",
            "description": "How far back to search. Ignored when you set dates below. Topics and local news are always today's headlines.",
            "default": "7d"
          },
          "dateFrom": {
            "title": "From date",
            "pattern": "^(\\d{4}-\\d{2}-\\d{2})?$",
            "type": "string",
            "description": "Optional, YYYY-MM-DD (UTC). Search articles published from this day, years back if you want."
          },
          "dateTo": {
            "title": "To date",
            "pattern": "^(\\d{4}-\\d{2}-\\d{2})?$",
            "type": "string",
            "description": "Optional, YYYY-MM-DD (UTC), included. Defaults to today."
          },
          "maxArticles": {
            "title": "Max articles per input",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Google returns at most 100 articles per feed. For search queries with a time range of 7 days or more (or with dates), the Actor goes day by day to collect up to 1,000.",
            "default": 50
          },
          "resolveUrls": {
            "title": "Get the real article URL",
            "type": "boolean",
            "description": "Google News links are redirects (news.google.com/rss/articles/...). When enabled, each article also gets its publisher URL in 'url'.",
            "default": true
          },
          "includeRelatedCoverage": {
            "title": "Include related coverage",
            "type": "boolean",
            "description": "For topics and local news: the other outlets covering the same story (title, source, Google News link).",
            "default": true
          },
          "deduplicate": {
            "title": "Remove duplicates",
            "type": "boolean",
            "description": "If the same article is found by several inputs, keep (and pay for) it only once.",
            "default": true
          },
          "maxConcurrency": {
            "title": "Parallel requests",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "Inputs processed at the same time.",
            "default": 3
          },
          "maxRetries": {
            "title": "Max retries per request",
            "minimum": 0,
            "maximum": 15,
            "type": "integer",
            "description": "Retries on a fresh IP when Google rate-limits.",
            "default": 10
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Proxies used to reach Google News.",
            "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}