{
  "openapi": "3.0.1",
  "info": {
    "title": "Google News Scraper With Full Article Text",
    "description": "Pull fresh news coverage from Google News with reliable scraping. Extract article metadata, summaries, sources, and URLs for trend analysis or reporting workflows. Designed for content teams, researchers, and automation pipelines.",
    "version": "0.1",
    "x-build-id": "Rbe4OyMMhF3v7nFxz"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapier~google-news-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapier-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/scrapier~google-news-scraper/runs": {
      "post": {
        "operationId": "runs-sync-scrapier-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/scrapier~google-news-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-scrapier-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",
        "required": [
          "maxItems",
          "query"
        ],
        "properties": {
          "maxItems": {
            "title": "🔢 Maximum Articles",
            "minimum": 1,
            "maximum": 50000,
            "type": "integer",
            "description": "How many Google News articles to return. Google News RSS serves roughly 100 items per query, so values above ~100 return everything the feed has and stop there. Every returned row is one billable result.",
            "default": 10
          },
          "query": {
            "title": "🔍 Search Query",
            "type": "string",
            "description": "The Google News search term. Google News query operators work here: \"exact phrase\", site:bbc.com, intitle:tesla, -exclude, when:1d, after:2026-01-01 before:2026-01-31.",
            "default": "Elon Musk"
          },
          "gl": {
            "title": "🌍 Country Edition",
            "enum": [
              "Ascension Island",
              "Andorra",
              "United Arab Emirates",
              "Antigua & Barbuda",
              "Anguilla",
              "Albania",
              "Armenia",
              "Angola",
              "Antarctica",
              "Argentina",
              "American Samoa",
              "Austria",
              "Australia",
              "Aruba",
              "Åland Islands",
              "Azerbaijan",
              "Bosnia & Herzegovina",
              "Barbados",
              "Bangladesh",
              "Belgium",
              "Burkina Faso",
              "Bulgaria",
              "Bahrain",
              "Burundi",
              "Benin",
              "St. Barthélemy",
              "Bermuda",
              "Brunei",
              "Bolivia",
              "Caribbean Netherlands",
              "Brazil",
              "Bahamas",
              "Bhutan",
              "Bouvet Island",
              "Botswana",
              "Belarus",
              "Belize",
              "Canada",
              "Cocos (Keeling) Islands",
              "Congo (DRC)",
              "Central African Republic",
              "Congo (Republic)",
              "Switzerland",
              "Côte d'Ivoire",
              "Cook Islands",
              "Chile",
              "Cameroon",
              "Colombia",
              "Costa Rica",
              "Cape Verde",
              "Curaçao",
              "Christmas Island",
              "Cyprus",
              "Czech Republic",
              "Germany",
              "Djibouti",
              "Denmark",
              "Dominica",
              "Dominican Republic",
              "Algeria",
              "Ecuador",
              "Estonia",
              "Egypt",
              "Western Sahara",
              "Eritrea",
              "Spain",
              "Ethiopia",
              "Finland",
              "Fiji",
              "Falkland Islands (Islas Malvinas)",
              "Micronesia",
              "Faroe Islands",
              "France",
              "Gabon",
              "United Kingdom",
              "Grenada",
              "Georgia",
              "French Guiana",
              "Guernsey",
              "Ghana",
              "Gibraltar",
              "Greenland",
              "Gambia",
              "Guinea",
              "Guadeloupe",
              "Equatorial Guinea",
              "Greece",
              "South Georgia & South Sandwich Islands",
              "Guatemala",
              "Guam",
              "Guinea-Bissau",
              "Guyana",
              "Hong Kong",
              "Heard & McDonald Islands",
              "Honduras",
              "Croatia",
              "Haiti",
              "Hungary",
              "Indonesia",
              "Ireland",
              "Israel",
              "Isle of Man",
              "India",
              "British Indian Ocean Territory",
              "Iraq",
              "Iceland",
              "Italy",
              "Jersey",
              "Jamaica",
              "Jordan",
              "Japan",
              "Kenya",
              "Kyrgyzstan",
              "Cambodia",
              "Kiribati",
              "Comoros",
              "St. Kitts & Nevis",
              "South Korea",
              "Kuwait",
              "Cayman Islands",
              "Kazakhstan",
              "Laos",
              "Lebanon",
              "St. Lucia",
              "Liechtenstein",
              "Sri Lanka",
              "Liberia",
              "Lesotho",
              "Lithuania",
              "Luxembourg",
              "Latvia",
              "Libya",
              "Morocco",
              "Monaco",
              "Moldova",
              "Montenegro",
              "St. Martin",
              "Madagascar",
              "Marshall Islands",
              "Macedonia (FYROM)",
              "Mali",
              "Myanmar (Burma)",
              "Mongolia",
              "Macau",
              "Northern Mariana Islands",
              "Martinique",
              "Mauritania",
              "Montserrat",
              "Malta",
              "Mauritius",
              "Maldives",
              "Malawi",
              "Mexico",
              "Malaysia",
              "Mozambique",
              "Namibia",
              "New Caledonia",
              "Niger",
              "Norfolk Island",
              "Nigeria",
              "Nicaragua",
              "Netherlands",
              "Norway",
              "Nepal",
              "Nauru",
              "Niue",
              "New Zealand",
              "Oman",
              "Panama",
              "Peru",
              "French Polynesia",
              "Papua New Guinea",
              "Philippines",
              "Pakistan",
              "Poland",
              "St. Pierre & Miquelon",
              "Pitcairn Islands",
              "Puerto Rico",
              "Palestine",
              "Portugal",
              "Palau",
              "Paraguay",
              "Qatar",
              "Réunion",
              "Romania",
              "Serbia",
              "Russia",
              "Rwanda",
              "Saudi Arabia",
              "Solomon Islands",
              "Seychelles",
              "Sweden",
              "Singapore",
              "St. Helena",
              "Slovenia",
              "Svalbard & Jan Mayen",
              "Slovakia",
              "Sierra Leone",
              "San Marino",
              "Senegal",
              "Somalia",
              "Suriname",
              "South Sudan",
              "São Tomé & Príncipe",
              "El Salvador",
              "Sint Maarten",
              "Swaziland",
              "Tristan da Cunha",
              "Turks & Caicos Islands",
              "Chad",
              "French Southern Territories",
              "Togo",
              "Thailand",
              "Tajikistan",
              "Tokelau",
              "Timor-Leste",
              "Turkmenistan",
              "Tunisia",
              "Tonga",
              "Turkey",
              "Trinidad & Tobago",
              "Tuvalu",
              "Taiwan",
              "Tanzania",
              "Ukraine",
              "Uganda",
              "U.S. Outlying Islands",
              "United States",
              "Uruguay",
              "Uzbekistan",
              "Vatican City",
              "St. Vincent & Grenadines",
              "Venezuela",
              "British Virgin Islands",
              "U.S. Virgin Islands",
              "Vietnam",
              "Vanuatu",
              "Wallis & Futuna",
              "Samoa",
              "Kosovo",
              "Yemen",
              "Mayotte",
              "South Africa",
              "Zambia",
              "Zimbabwe"
            ],
            "type": "string",
            "description": "Google News country edition (honoured by the feed)."
          },
          "hl": {
            "title": "🗣️ Language",
            "enum": [
              "Afrikaans",
              "Akan",
              "Albanian",
              "Amharic",
              "Arabic",
              "Armenian",
              "Azerbaijani",
              "Basque",
              "Belarusian",
              "Bemba",
              "Bengali",
              "Bihari",
              "Bosnian",
              "Breton",
              "Bulgarian",
              "Catalan",
              "Cherokee",
              "Chichewa",
              "Chinese (Simplified)",
              "Chinese (Traditional)",
              "Corsican",
              "Croatian",
              "Czech",
              "Danish",
              "Dutch",
              "English",
              "Esperanto",
              "Estonian",
              "Ewe",
              "Filipino",
              "Finnish",
              "French",
              "Frisian",
              "Ga",
              "Galician",
              "Georgian",
              "German",
              "Greek",
              "Guarani",
              "Gujarati",
              "Haitian Creole",
              "Hausa",
              "Hawaiian",
              "Hebrew",
              "Hindi",
              "Hungarian",
              "Icelandic",
              "Igbo",
              "Indonesian",
              "Interlingua",
              "Irish",
              "Italian",
              "Japanese",
              "Javanese",
              "Kannada",
              "Kazakh",
              "Khmer",
              "Korean",
              "Krio",
              "Kurdish",
              "Kurdish (Sorani)",
              "Kyrgyz",
              "Lao",
              "Latin",
              "Latvian",
              "Lingala",
              "Lithuanian",
              "Lozi",
              "Luganda",
              "Acholi",
              "Macedonian",
              "Malagasy",
              "Malay",
              "Malayalam",
              "Maltese",
              "Maori",
              "Marathi",
              "Mauritian Creole",
              "Moldovan",
              "Mongolian",
              "Montenegrin",
              "Nepali",
              "Nigerian Pidgin",
              "Northern Sotho",
              "Norwegian",
              "Norwegian (Nynorsk)",
              "Occitan",
              "Oromo",
              "Pashto",
              "Persian",
              "Polish",
              "Portuguese",
              "Portuguese (Brazil)",
              "Portuguese (Portugal)",
              "Punjabi",
              "Quechua",
              "Romanian",
              "Romansh",
              "Runyankole",
              "Russian",
              "Scots Gaelic",
              "Serbian",
              "Serbo-Croatian",
              "Sesotho",
              "Shona",
              "Sindhi",
              "Sinhala",
              "Slovak",
              "Slovenian",
              "Somali",
              "Spanish",
              "Spanish (Latin America)",
              "Sundanese",
              "Swahili",
              "Swedish",
              "Tajik",
              "Tamil",
              "Telugu",
              "Thai",
              "Tigrinya",
              "Tonga",
              "Tumbuka",
              "Turkish",
              "Turkmen",
              "Twi",
              "Ukrainian",
              "Urdu",
              "Uzbek",
              "Vietnamese",
              "Welsh",
              "Wolof",
              "Xhosa",
              "Yiddish",
              "Yoruba",
              "Zulu"
            ],
            "type": "string",
            "description": "Google News interface/results language (honoured by the feed)."
          },
          "lr": {
            "title": "📰 Result Language (legacy, no effect)",
            "enum": [
              "Arabic",
              "Armenian",
              "Belarusian",
              "Bulgarian",
              "Catalan",
              "Chinese (Simplified)",
              "Chinese (Traditional)",
              "Croatian",
              "Czech",
              "Danish",
              "Dutch",
              "English",
              "Esperanto",
              "Estonian",
              "Filipino",
              "Finnish",
              "French",
              "German",
              "Greek",
              "Hebrew",
              "Hungarian",
              "Icelandic",
              "Indonesian",
              "Italian",
              "Japanese",
              "Korean",
              "Latvian",
              "Lithuanian",
              "Norwegian",
              "Persian",
              "Polish",
              "Portuguese",
              "Romanian",
              "Russian",
              "Serbian",
              "Slovak",
              "Slovenian",
              "Spanish",
              "Swedish",
              "Thai",
              "Turkish",
              "Ukrainian",
              "Vietnamese"
            ],
            "type": "string",
            "description": "Kept for backward compatibility with the original actor. The Google News RSS surface ignores this parameter - use Language instead. A warning is written to the log when it is set."
          },
          "cr": {
            "title": "📍 Result Country (legacy, no effect)",
            "enum": [
              "Ascension Island",
              "Andorra",
              "United Arab Emirates",
              "Antigua & Barbuda",
              "Anguilla",
              "Albania",
              "Armenia",
              "Angola",
              "Antarctica",
              "Argentina",
              "American Samoa",
              "Austria",
              "Australia",
              "Aruba",
              "Åland Islands",
              "Azerbaijan",
              "Bosnia & Herzegovina",
              "Barbados",
              "Bangladesh",
              "Belgium",
              "Burkina Faso",
              "Bulgaria",
              "Bahrain",
              "Burundi",
              "Benin",
              "St. Barthélemy",
              "Bermuda",
              "Brunei",
              "Bolivia",
              "Caribbean Netherlands",
              "Brazil",
              "Bahamas",
              "Bhutan",
              "Bouvet Island",
              "Botswana",
              "Belarus",
              "Belize",
              "Canada",
              "Cocos (Keeling) Islands",
              "Congo (DRC)",
              "Central African Republic",
              "Congo (Republic)",
              "Switzerland",
              "Côte d'Ivoire",
              "Cook Islands",
              "Chile",
              "Cameroon",
              "Colombia",
              "Costa Rica",
              "Cape Verde",
              "Curaçao",
              "Christmas Island",
              "Cyprus",
              "Czech Republic",
              "Germany",
              "Djibouti",
              "Denmark",
              "Dominica",
              "Dominican Republic",
              "Algeria",
              "Ecuador",
              "Estonia",
              "Egypt",
              "Western Sahara",
              "Eritrea",
              "Spain",
              "Ethiopia",
              "Finland",
              "Fiji",
              "Falkland Islands (Islas Malvinas)",
              "Micronesia",
              "Faroe Islands",
              "France",
              "Gabon",
              "United Kingdom",
              "Grenada",
              "Georgia",
              "French Guiana",
              "Guernsey",
              "Ghana",
              "Gibraltar",
              "Greenland",
              "Gambia",
              "Guinea",
              "Guadeloupe",
              "Equatorial Guinea",
              "Greece",
              "South Georgia & South Sandwich Islands",
              "Guatemala",
              "Guam",
              "Guinea-Bissau",
              "Guyana",
              "Hong Kong",
              "Heard & McDonald Islands",
              "Honduras",
              "Croatia",
              "Haiti",
              "Hungary",
              "Indonesia",
              "Ireland",
              "Israel",
              "Isle of Man",
              "India",
              "British Indian Ocean Territory",
              "Iraq",
              "Iceland",
              "Italy",
              "Jersey",
              "Jamaica",
              "Jordan",
              "Japan",
              "Kenya",
              "Kyrgyzstan",
              "Cambodia",
              "Kiribati",
              "Comoros",
              "St. Kitts & Nevis",
              "South Korea",
              "Kuwait",
              "Cayman Islands",
              "Kazakhstan",
              "Laos",
              "Lebanon",
              "St. Lucia",
              "Liechtenstein",
              "Sri Lanka",
              "Liberia",
              "Lesotho",
              "Lithuania",
              "Luxembourg",
              "Latvia",
              "Libya",
              "Morocco",
              "Monaco",
              "Moldova",
              "Montenegro",
              "St. Martin",
              "Madagascar",
              "Marshall Islands",
              "Macedonia (FYROM)",
              "Mali",
              "Myanmar (Burma)",
              "Mongolia",
              "Macau",
              "Northern Mariana Islands",
              "Martinique",
              "Mauritania",
              "Montserrat",
              "Malta",
              "Mauritius",
              "Maldives",
              "Malawi",
              "Mexico",
              "Malaysia",
              "Mozambique",
              "Namibia",
              "New Caledonia",
              "Niger",
              "Norfolk Island",
              "Nigeria",
              "Nicaragua",
              "Netherlands",
              "Norway",
              "Nepal",
              "Nauru",
              "Niue",
              "New Zealand",
              "Oman",
              "Panama",
              "Peru",
              "French Polynesia",
              "Papua New Guinea",
              "Philippines",
              "Pakistan",
              "Poland",
              "St. Pierre & Miquelon",
              "Pitcairn Islands",
              "Puerto Rico",
              "Palestine",
              "Portugal",
              "Palau",
              "Paraguay",
              "Qatar",
              "Réunion",
              "Romania",
              "Serbia",
              "Russia",
              "Rwanda",
              "Saudi Arabia",
              "Solomon Islands",
              "Seychelles",
              "Sweden",
              "Singapore",
              "St. Helena",
              "Slovenia",
              "Svalbard & Jan Mayen",
              "Slovakia",
              "Sierra Leone",
              "San Marino",
              "Senegal",
              "Somalia",
              "Suriname",
              "South Sudan",
              "São Tomé & Príncipe",
              "El Salvador",
              "Sint Maarten",
              "Swaziland",
              "Tristan da Cunha",
              "Turks & Caicos Islands",
              "Chad",
              "French Southern Territories",
              "Togo",
              "Thailand",
              "Tajikistan",
              "Tokelau",
              "Timor-Leste",
              "Turkmenistan",
              "Tunisia",
              "Tonga",
              "Turkey",
              "Trinidad & Tobago",
              "Tuvalu",
              "Taiwan",
              "Tanzania",
              "Ukraine",
              "Uganda",
              "U.S. Outlying Islands",
              "United States",
              "Uruguay",
              "Uzbekistan",
              "Vatican City",
              "St. Vincent & Grenadines",
              "Venezuela",
              "British Virgin Islands",
              "U.S. Virgin Islands",
              "Vietnam",
              "Vanuatu",
              "Wallis & Futuna",
              "Samoa",
              "Kosovo",
              "Yemen",
              "Mayotte",
              "South Africa",
              "Zambia",
              "Zimbabwe"
            ],
            "type": "string",
            "description": "Kept for backward compatibility. The Google News RSS surface ignores this parameter - use Country Edition instead."
          },
          "time_period": {
            "title": "⏱️ Time Period",
            "enum": [
              "last_hour",
              "last_day",
              "last_week",
              "last_month",
              "last_year",
              "custom"
            ],
            "type": "string",
            "description": "Restrict results by age. Applied as a real Google News query operator (when:1h / when:1d / when:7d / when:30d / when:1y), so unlike the original actor it actually filters. Choose 'custom' to use the two date fields below."
          },
          "time_period_min": {
            "title": "📅 Custom Range Start (MM/DD/YYYY)",
            "pattern": "^\\d{2}/\\d{2}/\\d{4}$",
            "type": "string",
            "description": "Start date, used only when Time Period is 'custom'. Applied as after:YYYY-MM-DD."
          },
          "time_period_max": {
            "title": "📅 Custom Range End (MM/DD/YYYY)",
            "pattern": "^\\d{2}/\\d{2}/\\d{4}$",
            "type": "string",
            "description": "End date, used only when Time Period is 'custom'. Applied as before:YYYY-MM-DD."
          },
          "nfpr": {
            "title": "✍️ No Autocorrect (legacy, no effect)",
            "minimum": 0,
            "maximum": 1,
            "type": "integer",
            "description": "Kept for backward compatibility. The Google News RSS surface ignores it.",
            "default": 0
          },
          "filter": {
            "title": "🧹 Similar/Omitted Filter (legacy, no effect)",
            "minimum": 0,
            "maximum": 1,
            "type": "integer",
            "description": "Kept for backward compatibility. The Google News RSS surface ignores it.",
            "default": 1
          },
          "proxyConfiguration": {
            "title": "🛡️ Proxy Configuration",
            "type": "object",
            "description": "Optional. The Google News feed works with no proxy at all. A proxy is used as an escalation rung when a publisher page blocks the direct fetch."
          },
          "resolveArticleUrl": {
            "title": "🔗 Resolve Real Article URL",
            "type": "boolean",
            "description": "Turn every news.google.com/rss/articles/... redirect into the publisher's real URL (articleUrl). Required for full article text. Measured 60/60 = 100% on live runs.",
            "default": true
          },
          "fetchArticleText": {
            "title": "📄 Fetch Full Article Text",
            "type": "boolean",
            "description": "Download each publisher page and extract the article body, byline, publish time, language and lead image. Measured readable rate: about 2 of 3 articles (see the README for the exact live fractions).",
            "default": true
          },
          "minArticleChars": {
            "title": "📏 Minimum Body Length For \"ok\"",
            "minimum": 100,
            "maximum": 50000,
            "type": "integer",
            "description": "An article counts as extractionStatus = ok only when at least this many characters of body text were recovered. Raise it if short paywall teasers are slipping through.",
            "default": 800
          },
          "articleTextMaxChars": {
            "title": "✂️ Article Text Cap",
            "minimum": 500,
            "maximum": 200000,
            "type": "integer",
            "description": "Truncate articleText to this many characters to keep dataset rows small.",
            "default": 20000
          },
          "skipUnreadable": {
            "title": "🚮 Skip Unreadable Articles",
            "type": "boolean",
            "description": "Drop rows whose body could not be extracted (paywalled, blocked or thin) instead of returning them with a null articleText. Skipped rows are not billed.",
            "default": false
          },
          "retryFailuresWithProxy": {
            "title": "🔁 Retry Blocked Pages Through A Proxy",
            "type": "boolean",
            "description": "Re-fetch only the articles that failed the direct attempt through a residential and then a datacenter proxy rung. Costs nothing on articles that already worked.",
            "default": true
          },
          "articleFetchConcurrency": {
            "title": "⚡ Concurrency",
            "minimum": 1,
            "maximum": 16,
            "type": "integer",
            "description": "How many article pages to resolve and download in parallel.",
            "default": 8
          },
          "inlineThumbnailBase64": {
            "title": "🖼️ Inline Base64 Thumbnail (slow, legacy)",
            "type": "boolean",
            "description": "Original-actor behaviour: download the lead image and embed it in every row as a base64 data URL. Off by default because it adds two requests and a large blob per row - the plain image URL is always returned in imageUrl.",
            "default": false
          },
          "enableAiEnrichment": {
            "title": "🤖 AI Enrichment (bring your own key)",
            "type": "boolean",
            "description": "Run an LLM over articles whose body was successfully extracted to add sentiment, a short summary and named entities. Off by default; requires your own provider API key.",
            "default": false
          },
          "aiProvider": {
            "title": "🧠 AI Provider",
            "enum": [
              "openai",
              "anthropic",
              "google",
              "openrouter"
            ],
            "type": "string",
            "description": "Which LLM API to call when AI enrichment is on.",
            "default": "openai"
          },
          "aiApiKey": {
            "title": "🔑 AI API Key",
            "type": "string",
            "description": "Your own API key for the selected provider. Stored as a secret input."
          },
          "aiModel": {
            "title": "🏷️ AI Model",
            "type": "string",
            "description": "Model id to use. Leave empty for the provider default (gpt-4o-mini / claude-3-5-haiku-latest / gemini-2.0-flash)."
          },
          "aiTasks": {
            "title": "🧪 AI Tasks",
            "type": "array",
            "description": "Which enrichment fields to request.",
            "items": {
              "type": "string",
              "enum": [
                "sentiment",
                "summary",
                "entities"
              ]
            },
            "default": [
              "sentiment",
              "summary"
            ]
          },
          "aiMaxChars": {
            "title": "📐 AI Input Character Limit",
            "minimum": 500,
            "maximum": 60000,
            "type": "integer",
            "description": "How much of the article body to send to the model per article.",
            "default": 6000
          }
        }
      },
      "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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}