{
  "openapi": "3.0.1",
  "info": {
    "title": "Google News Search & Autocomplete Scraper",
    "description": "Collect Google News RSS story details or Google Suggest phrases, with optional bounded Google News RSS results nested under autocomplete suggestions. Google News RSS states feed use is limited to personal, non-commercial feed readers; review the live notice before use.",
    "version": "2.0",
    "x-build-id": "DcO8GwiX1OakPrSwi"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/googleapi~google-news-autocomplete-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-googleapi-google-news-autocomplete-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/googleapi~google-news-autocomplete-scraper/runs": {
      "post": {
        "operationId": "runs-sync-googleapi-google-news-autocomplete-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/googleapi~google-news-autocomplete-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-googleapi-google-news-autocomplete-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": {
          "query": {
            "title": "Search query",
            "maxLength": 300,
            "type": "string",
            "description": "One public news or autocomplete query. If no query field is supplied, the runtime uses OpenAI as its single-query default."
          },
          "queries": {
            "title": "Search queries",
            "maxItems": 50,
            "type": "array",
            "description": "Multiple public news or autocomplete queries.",
            "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 300
            }
          },
          "keywords": {
            "title": "Search queries alias",
            "maxItems": 50,
            "type": "array",
            "description": "Compatibility alias for the queries array.",
            "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 300
            }
          },
          "searchQuery": {
            "title": "Search query alias",
            "maxLength": 300,
            "type": "string",
            "description": "Compatibility alias for one public query."
          },
          "mode": {
            "title": "Search mode",
            "enum": [
              "news",
              "autocomplete"
            ],
            "type": "string",
            "description": "Use news for Google News RSS (whose live notice limits feed use to personal, non-commercial feed readers) or autocomplete for the separate Google Suggest endpoint.",
            "default": "news"
          },
          "includeNewsResults": {
            "title": "Include related Google News results",
            "type": "boolean",
            "description": "Autocomplete mode only. When enabled, search the same-target Google News RSS endpoint for returned suggestions and nest its source-backed rich story records. Disabled by default; publisher destinations are never fetched.",
            "default": false
          },
          "maxNewsFollowUpRequests": {
            "title": "Maximum news follow-up searches",
            "minimum": 0,
            "maximum": 10,
            "type": "integer",
            "description": "Maximum number of unique autocomplete suggestions to search on Google News RSS across the run. Each search uses the configured timeout, byte limit, and retry limit; total HTTP attempts are bounded by this value multiplied by (maxRetries plus one).",
            "default": 3
          },
          "maxNewsResultsPerSuggestion": {
            "title": "Maximum stories per suggestion",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "Maximum number of parsed Google News RSS stories nested under each enriched autocomplete suggestion.",
            "default": 5
          },
          "searchUrl": {
            "title": "Approved source URL",
            "maxLength": 2000,
            "type": "string",
            "description": "Optional public Google News RSS search or Google Suggest complete/search URL containing a non-empty q parameter; applies to one query."
          },
          "page": {
            "title": "Starting page",
            "minimum": 1,
            "maximum": 1,
            "type": "integer",
            "description": "Google News RSS and Google Suggest each return a single response without a supported page cursor; only page 1 is available.",
            "default": 1
          },
          "maxPages": {
            "title": "Maximum pages",
            "minimum": 1,
            "maximum": 1,
            "type": "integer",
            "description": "These public endpoints do not expose reliable page navigation; the Actor requests one page per query.",
            "default": 1
          },
          "maxItems": {
            "title": "Maximum results",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "Global maximum normal records emitted across all queries.",
            "default": 10
          },
          "language": {
            "title": "Language",
            "maxLength": 20,
            "type": "string",
            "description": "Google language or language-region code, such as en-US.",
            "default": "en-US"
          },
          "country": {
            "title": "Country",
            "pattern": "^(ALL|[A-Za-z]{2})$",
            "maxLength": 5,
            "type": "string",
            "description": "Two-letter Google country code, or ALL.",
            "default": "US"
          },
          "timeoutSecs": {
            "title": "Request timeout in seconds",
            "minimum": 5,
            "maximum": 120,
            "type": "integer",
            "description": "Bounded timeout for a public endpoint request.",
            "default": 30
          },
          "timeoutMs": {
            "title": "Request timeout in milliseconds (compatibility alias)",
            "minimum": 5000,
            "maximum": 120000,
            "type": "integer",
            "description": "Compatibility alias for timeoutSecs; takes precedence when supplied. New inputs should use timeoutSecs."
          },
          "requestDelayMs": {
            "title": "Delay between requests",
            "minimum": 0,
            "maximum": 5000,
            "type": "integer",
            "description": "Polite delay in milliseconds between public queries.",
            "default": 200
          },
          "maxRetries": {
            "title": "Retries",
            "minimum": 0,
            "maximum": 3,
            "type": "integer",
            "description": "Retries for transient public request failures.",
            "default": 1
          },
          "maxResponseBytes": {
            "title": "Maximum response bytes",
            "minimum": 100000,
            "maximum": 10000000,
            "type": "integer",
            "description": "Bound the public response body read by the Actor.",
            "default": 2000000
          },
          "userAgent": {
            "title": "User agent",
            "maxLength": 300,
            "type": "string",
            "description": "Optional transparent HTTP user-agent string."
          },
          "acceptLanguage": {
            "title": "Accept-Language",
            "maxLength": 120,
            "type": "string",
            "description": "Optional HTTP language preference."
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Optional Apify Proxy configuration for public endpoint requests. Residential proxies are recommended when permitted; this does not bypass CAPTCHAs or access controls."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}