{
  "openapi": "3.0.1",
  "info": {
    "title": "Google News Scraper",
    "description": "Scrape Google News articles from keyword searches, sections and topic URLs. Returns title, publisher, publication time, edition, position, Google News link and, for keyword searches, the resolved publisher URL. Supports date ranges and several editions. No login needed.",
    "version": "1.0",
    "x-build-id": "wshyzILllf6jEfs4Z"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/axiomworks~google-news-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-axiomworks-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/axiomworks~google-news-scraper/runs": {
      "post": {
        "operationId": "runs-sync-axiomworks-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/axiomworks~google-news-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-axiomworks-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": "Keyword searches, one per list item, e.g. [\"nvidia earnings\", \"climate change\"]. Google operators work: quotes, OR, -term, site:reuters.com, intitle:, when:7d, after:2026-01-01. Each query returns up to 100 articles per edition per feed window. Provide at least one of queries, topics or topicUrls. Empty or blocked targets produce no rows and the run continues.",
            "items": {
              "type": "string"
            }
          },
          "dateFrom": {
            "title": "Start date (YYYY-MM-DD)",
            "type": "string",
            "description": "First day of a date range for queries, e.g. 2026-09-01. Must be used together with dateTo. The range is searched in daily windows to get past the 100-articles-per-query cap. Overrides timeRange."
          },
          "dateTo": {
            "title": "End date (YYYY-MM-DD)",
            "type": "string",
            "description": "Last day (inclusive) of the date range, e.g. 2026-09-07. Must be on or after dateFrom and used together with it."
          },
          "timeRange": {
            "title": "Time range",
            "enum": [
              "any",
              "1h",
              "1d",
              "7d",
              "30d",
              "1y"
            ],
            "type": "string",
            "description": "Only return articles from a recent period: any, 1h, 1d, 7d, 30d or 1y (default any). Applies to queries only and is ignored when dateFrom/dateTo are set. Example: 7d.",
            "default": "any"
          },
          "topics": {
            "title": "Google News sections",
            "type": "array",
            "description": "Standard Google News sections to collect, e.g. [\"TECHNOLOGY\", \"BUSINESS\"]. Allowed: TOP_STORIES, WORLD, NATION, BUSINESS, TECHNOLOGY, ENTERTAINMENT, SPORTS, SCIENCE, HEALTH (case-insensitive). Returns up to ~200 articles per section per edition with publisher URLs.",
            "items": {
              "type": "string"
            },
            "default": []
          },
          "topicUrls": {
            "title": "Topic page URLs",
            "type": "array",
            "description": "Full Google News topic page URLs, including company, person and place topics, e.g. [\"https://news.google.com/topics/CAAqJggKIiBDQkFTRWdvSUwyMHZNRGRqTVhZU0FtVnVHZ0pWVXlnQVAB\"]. Must be https://news.google.com/topics/... links; copy them from the browser address bar.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "editions": {
            "title": "Editions (language-country)",
            "type": "array",
            "description": "Google News editions as language-COUNTRY codes, e.g. [\"en-US\", \"de-DE\"]. Allowed: en-US, en-GB, en-IN, en-AU, de-DE, fr-FR, es-ES, it-IT, pt-BR, ja-JP (default [\"en-US\"]). Each edition is fetched separately; the output field edition shows Google's form, e.g. US:en.",
            "items": {
              "type": "string",
              "enum": [
                "en-US",
                "en-GB",
                "en-IN",
                "en-AU",
                "de-DE",
                "fr-FR",
                "es-ES",
                "it-IT",
                "pt-BR",
                "ja-JP"
              ]
            },
            "default": [
              "en-US"
            ]
          },
          "resolveUrls": {
            "title": "Resolve publisher URLs",
            "type": "boolean",
            "description": "If true, keyword-search results get the real publisher article URL in url (otherwise url is null and only googleNewsUrl is set). Slower and billed at the higher per-result rate (see Pricing tab). Section and topic results always include url. Default false.",
            "default": false
          },
          "maxItemsPerQuery": {
            "title": "Max items per query or topic",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Maximum articles for each query or topic in each edition, 1-5000 (default 100). Example: 50. A single query returns at most 100 articles unless dateFrom/dateTo are set.",
            "default": 100
          },
          "maxItems": {
            "title": "Max items (total)",
            "minimum": 1,
            "maximum": 20000,
            "type": "integer",
            "description": "Hard cap on articles in the whole run across all queries, topics and editions, 1-20000 (default 100). Example: 20 for a quick test.",
            "default": 100
          },
          "dedupeBy": {
            "title": "Deduplicate by",
            "enum": [
              "url",
              "googleNewsId",
              "none"
            ],
            "type": "string",
            "description": "How to remove repeats: url (default), googleNewsId, or none. Stable Google News IDs are always unique within a run, including when none is selected.",
            "default": "url"
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Apify Proxy settings for requests to Google News. Default {\"useApifyProxy\": true} (datacenter) works for most runs; change it only if requests are blocked.",
            "default": {
              "useApifyProxy": true
            }
          },
          "topicIds": {
            "title": "Topic IDs",
            "type": "array",
            "description": "Google News topic IDs beginning CAA, copied from the final path component of a /topics/ URL. Alternative to topicUrls; results share maxItems with all other targets. Default empty.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "publishedAfter": {
            "title": "Published after",
            "type": "string",
            "description": "Only save articles published strictly after this ISO date or timestamp, e.g. 2026-10-01T12:00:00Z. Date-only values use midnight UTC. Applies to searches and topics after retrieval; does not expand Google coverage. Default empty (no cutoff).",
            "default": ""
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}