> ## Documentation Index
> Fetch the complete documentation index at: https://aisa.one/docs/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> - Base URLs: models `https://api.aisa.one/v1` (Gemini GenerateContent: `https://api.aisa.one/v1beta`); data APIs `https://api.aisa.one/apis/v1`. The `servers` of each operation in https://aisa.one/openapi.yaml is authoritative.
> - Auth: `Authorization: Bearer $AISA_API_KEY`. Never print, log, or commit the key.
> - MCP (preferred for agents): `https://mcp.aisa.one/mcp`, signed in with OAuth, so there is no key to paste.
> - Agent Skill: `npx skills add AIsa-team/agent-skills --skill aisa`. Fallback with the AIsa CLI: `aisa skills install aisa`.
> - Spending: docs, https://aisa.one/models, https://aisa.one/api, `/v1/models`, and MCP `search`, `list_categories`, `get_details`, `batch_quote`, and the `account` operation are free. Quote the exact calls before running them (MCP `batch_quote`, CLI `aisa quote --json`). If the quote reports `auto_execute_eligible: true`, run it unless the user set a tighter limit or asked only for a quote. Otherwise, tell the user in one message the planned calls, the quoted price, and a total USD budget for the task, then wait for approval. Direct HTTP calls follow the stricter rule at https://aisa.one/docs/get-started/cli.md#direct-http-fallback. Do not make paid calls to test availability. Full rule: https://aisa.one/llms.txt

# News Search

> <!-- aisa-pricing:start -->
Published reference price: $0.005 USD per successful request. Account-specific pricing and final settlement may differ.
<!-- aisa-pricing:end -->

## Request contract

* **Method and path:** POST /apis/v1/brave/news/search
* **Availability:** enabled
* **Request URL template:** [https://api.aisa.one/apis/v1/brave/news/search](https://api.aisa.one/apis/v1/brave/news/search)
* **accept:** header; optional
* **api-version:** header; optional
* **cache-control:** header; optional
* **user-agent:** header; optional
* **Runtime facts:** 8627d7bc05db287888574873d586ce7dca25f9fa7b4a266cb71760e824597bfc

[Complete OpenAPI definition](https://aisa.one/docs/openapi/brave-search.json)

Effective request and pricing declaration (including authentication and referenced schemas):

```json theme={null}
{
  "operationId": "post_any_brave_search_apis_v1_brave_news_search",
  "method": "POST",
  "path": "/apis/v1/brave/news/search",
  "servers": [
    {
      "url": "https://api.aisa.one"
    }
  ],
  "parameters": [
    {
      "deprecated": false,
      "description": "The default supported media type is application/json.",
      "examples": {
        "0": {
          "value": "application/json"
        }
      },
      "in": "header",
      "name": "accept",
      "required": false,
      "schema": {
        "allOf": [
          {
            "enum": [
              "application/json",
              "*/*"
            ],
            "title": "Accept",
            "type": "string"
          },
          {
            "default": "application/json"
          }
        ],
        "description": "The default supported media type is application/json.",
        "examples": [
          "application/json"
        ],
        "title": "Media type"
      }
    },
    {
      "deprecated": false,
      "description": "The API version to use.                 This is denoted by the format <code>YYYY-MM-DD</code>.                 Default is the latest that is available. Read                 more about <a href=\"/documentation/guides/versioning\">API versioning</a>.",
      "in": "header",
      "name": "api-version",
      "required": false,
      "schema": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "description": "The API version to use.                 This is denoted by the format <code>YYYY-MM-DD</code>.                 Default is the latest that is available. Read                 more about <a href=\"/documentation/guides/versioning\">API versioning</a>.",
        "title": "API version"
      }
    },
    {
      "deprecated": false,
      "description": "Brave Search will return cached content by default.                 To prevent caching set the Cache-Control header to <code>no-cache</code>.                 This is currently done as best effort.",
      "in": "header",
      "name": "cache-control",
      "required": false,
      "schema": {
        "anyOf": [
          {
            "const": "no-cache",
            "enum": [
              "no-cache"
            ],
            "title": "CacheControl",
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "description": "Brave Search will return cached content by default.                 To prevent caching set the Cache-Control header to <code>no-cache</code>.                 This is currently done as best effort.",
        "title": "Cache control"
      }
    },
    {
      "deprecated": false,
      "description": "The user agent originating the request.                 Brave search can utilize the user agent to provide a different                 experience depending on the device as described by the string.                 The user agent should follow the commonly used browser agent                 strings on each platform. For more information on curating user agents,                 see <a href=\"https://www.rfc-editor.org/rfc/rfc9110.html#name-user-agent\">RFC 9110</a>.",
      "examples": {
        "Android": {
          "description": "Android",
          "value": "Mozilla/5.0 (Linux; Android 12) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.71 Mobile Safari/537.36"
        },
        "Windows": {
          "description": "Windows",
          "value": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36"
        },
        "iOS": {
          "description": "iOS",
          "value": "Mozilla/5.0 (iPhone; CPU iPhone OS 15_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/103.0.5060.63 Mobile/15E148 Safari/604.1"
        },
        "macOS": {
          "description": "macOS",
          "value": "Mozilla/5.0 (Macintosh; Intel Mac OS X 12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36"
        }
      },
      "in": "header",
      "name": "user-agent",
      "required": false,
      "schema": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "description": "The user agent originating the request.                 Brave search can utilize the user agent to provide a different                 experience depending on the device as described by the string.                 The user agent should follow the commonly used browser agent                 strings on each platform. For more information on curating user agents,                 see <a href=\"https://www.rfc-editor.org/rfc/rfc9110.html#name-user-agent\">RFC 9110</a>.",
        "title": "User agent"
      }
    }
  ],
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "properties": {
            "count": {
              "default": 20,
              "description": "The number of search results returned in response. The maximum is 50. The actual number delivered may be less than requested. Combine this parameter with offset to paginate search results.",
              "maximum": 50,
              "minimum": 1,
              "title": "Count",
              "type": "integer"
            },
            "country": {
              "allOf": [
                {
                  "enum": [
                    "AR",
                    "AU",
                    "AT",
                    "BE",
                    "BR",
                    "CA",
                    "CL",
                    "DK",
                    "FI",
                    "FR",
                    "DE",
                    "GR",
                    "HK",
                    "IN",
                    "ID",
                    "IT",
                    "JP",
                    "KR",
                    "MY",
                    "MX",
                    "NL",
                    "NZ",
                    "NO",
                    "CN",
                    "PL",
                    "PT",
                    "PH",
                    "RU",
                    "SA",
                    "ZA",
                    "ES",
                    "SE",
                    "CH",
                    "TW",
                    "TR",
                    "GB",
                    "US",
                    "ALL"
                  ],
                  "title": "SearchCountry",
                  "type": "string"
                },
                {
                  "default": "US"
                }
              ],
              "description": "The search query country, where the results come from. The country string is limited to 2 character country codes of supported countries or <code>ALL</code> for worldwide."
            },
            "extra_snippets": {
              "anyOf": [
                {
                  "type": "boolean"
                },
                {
                  "type": "null"
                }
              ],
              "description": "A snippet is an excerpt from a page you get as a result of the query, and extra_snippets allow you to get up to 5 additional, alternative excerpts.",
              "title": "Extra Snippets"
            },
            "freshness": {
              "default": "",
              "description": "<p>Filters search results by page age. The age of a page is determined by the most relevant date reported by the content, such as its published or last modified date. The following values are supported:</p>\n<ul>\n<li><strong>pd</strong> - Pages aged 24 hours or less.</li>\n<li><strong>pw</strong> - Pages aged 7 days or less.</li>\n<li><strong>pm</strong> - Pages aged 31 days or less.</li>\n<li><strong>py</strong> - Pages aged 365 days or less.</li>\n<li><strong>YYYY-MM-DDtoYYYY-MM-DD</strong> - A custom date range is also supported by specifying start and end dates e.g. <code>2022-04-01to2022-07-30</code>.</li>\n</ul>",
              "examples": [
                "",
                "pm",
                "2022-04-01to2022-07-30"
              ],
              "title": "Freshness",
              "type": "string"
            },
            "goggles": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "items": {
                    "type": "string"
                  },
                  "type": "array"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Goggles act as a custom re-ranking on top of Brave’s search index. The parameter supports both a url where the Goggle is hosted or the definition of the Goggle. For more details, see the <a href=\"/documentation/resources/goggles\">Goggles documentation</a>. The parameter can be a single Goggle or a list of up to 3 Goggles.",
              "title": "Goggles"
            },
            "include_fetch_metadata": {
              "default": false,
              "description": "Include fetch metadata.",
              "examples": [
                "",
                true,
                false
              ],
              "title": "Include Fetch Metadata",
              "type": "boolean"
            },
            "offset": {
              "default": 0,
              "description": "The zero based offset that indicates number of search results per page (count) to skip before returning the result. The maximum is 9. The actual number delivered may be less than requested based on the query. In order to paginate results use this parameter together with count. For example, if your user interface displays 20 search results per page, set count to 20 and offset to 0 to show the first page of results. To get subsequent pages, increment offset by 1 (e.g. 0, 1, 2). The results may overlap across multiple pages.",
              "maximum": 9,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            },
            "operators": {
              "default": true,
              "description": "Whether to apply search operators.",
              "examples": [
                "",
                true,
                false
              ],
              "title": "Operators",
              "type": "boolean"
            },
            "q": {
              "description": "The user’s search query term. Query can not be empty. Maximum of 400 characters and 50 words in the query.",
              "maxLength": 400,
              "minLength": 1,
              "title": "The user's search query term.",
              "type": "string"
            },
            "safesearch": {
              "allOf": [
                {
                  "enum": [
                    "off",
                    "moderate",
                    "strict"
                  ],
                  "title": "SafeSearch",
                  "type": "string"
                },
                {
                  "default": "strict"
                }
              ],
              "description": "<p>Filters search results for adult content. The following values are supported:</p>\n<ul>\n<li><strong>off</strong> - No filtering is done.</li>\n<li><strong>moderate</strong> - Filter out explicit content.</li>\n<li><strong>strict</strong> - Filter out explicit and suggestive content.</li>\n</ul>",
              "examples": [
                "",
                "off",
                "moderate",
                "strict"
              ],
              "title": "Safe search"
            },
            "search_lang": {
              "allOf": [
                {
                  "enum": [
                    "ar",
                    "eu",
                    "bn",
                    "bg",
                    "ca",
                    "zh-hans",
                    "zh-hant",
                    "hr",
                    "cs",
                    "da",
                    "nl",
                    "en",
                    "en-gb",
                    "et",
                    "fi",
                    "fr",
                    "gl",
                    "de",
                    "el",
                    "gu",
                    "he",
                    "hi",
                    "hu",
                    "is",
                    "it",
                    "ja",
                    "jp",
                    "kn",
                    "ko",
                    "lv",
                    "lt",
                    "ms",
                    "ml",
                    "mr",
                    "nb",
                    "pl",
                    "pt-br",
                    "pt-pt",
                    "pa",
                    "ro",
                    "ru",
                    "sr",
                    "sk",
                    "sl",
                    "es",
                    "sv",
                    "ta",
                    "te",
                    "th",
                    "tr",
                    "uk",
                    "vi"
                  ],
                  "title": "Language",
                  "type": "string"
                },
                {
                  "default": "en"
                }
              ],
              "description": "The search language preference. The 2 or more character language code for which the search results are provided."
            },
            "spellcheck": {
              "default": true,
              "description": "Whether to spell check the provided query. If the spellchecker is enabled, the modified query is always used for search. The modified query can be found in altered key from the query response model.",
              "examples": [
                "",
                true,
                false
              ],
              "title": "Spellcheck",
              "type": "boolean"
            },
            "ui_lang": {
              "allOf": [
                {
                  "enum": [
                    "es-AR",
                    "en-AU",
                    "de-AT",
                    "nl-BE",
                    "fr-BE",
                    "pt-BR",
                    "en-CA",
                    "fr-CA",
                    "es-CL",
                    "da-DK",
                    "fi-FI",
                    "fr-FR",
                    "de-DE",
                    "el-GR",
                    "zh-HK",
                    "en-IN",
                    "en-ID",
                    "it-IT",
                    "ja-JP",
                    "ko-KR",
                    "en-MY",
                    "es-MX",
                    "nl-NL",
                    "en-NZ",
                    "no-NO",
                    "zh-CN",
                    "pl-PL",
                    "en-PH",
                    "ru-RU",
                    "en-ZA",
                    "es-ES",
                    "sv-SE",
                    "fr-CH",
                    "de-CH",
                    "zh-TW",
                    "tr-TR",
                    "en-GB",
                    "en-US",
                    "es-US"
                  ],
                  "title": "MarketCodes",
                  "type": "string"
                },
                {
                  "default": "en-US"
                }
              ],
              "description": "User interface language preferred in response. Usually of the format <code>&lt;language_code&gt;-&lt;country_code&gt;</code>. For more, see <a href=\"https://www.rfc-editor.org/rfc/rfc9110.html#name-accept-language\">RFC 9110</a>."
            }
          },
          "required": [
            "q"
          ],
          "title": "NewsSearchParameters",
          "type": "object"
        }
      }
    },
    "description": "",
    "required": true
  },
  "x-aisa-status": "enabled",
  "x-aisa-pricing": {
    "cost_contract": "fixed_success",
    "customer_multiplier": 1.0,
    "customer_pricing": "provider_cost_multiplier",
    "default_request_estimate_usd": 0.005,
    "estimate_source": "profile_seed",
    "evidence_source": "request_snapshot"
  },
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "scheme": "bearer",
        "type": "http"
      }
    }
  }
}
```

## Cost and request rules

Published reference price: \$0.005 USD per successful request. Account-specific pricing and final settlement may differ.

Published reference values are not an account-specific quote or a settled charge. For endpoints supporting X-AISA-Cost-Mode: quote, obtain a free quote for your exact request before execution; reconcile the settled cost with response metadata and Usage Logs. USD amounts use 1,000,000 integer micro-USD per dollar.

* **Default request reference estimate (USD):** 0.005
* **Cost contract:** fixed\_success
* **Published reference multiplier:** 1.0
* **Settlement evidence source:** request\_snapshot


## OpenAPI

````yaml openapi/brave-search.json POST /apis/v1/brave/news/search
openapi: 3.1.0
info:
  description: ''
  title: Brave Search
  version: '1'
  x-aisa-capabilities:
    idempotency: Idempotency-Key
    max_price: X-AISA-Max-Price-USD
    quote:
      header: X-AISA-Cost-Mode
      value: quote
  x-aisa-catalogs:
    brave-search:
      description: ''
      title: Brave Search
      x-aisa-capabilities:
        idempotency: Idempotency-Key
        max_price: X-AISA-Max-Price-USD
        quote:
          header: X-AISA-Cost-Mode
          value: quote
      x-aisa-document:
        facts_hash: 8627d7bc05db287888574873d586ce7dca25f9fa7b4a266cb71760e824597bfc
        generator_version: '3'
        protocol_version: '1'
        schema_version: '1'
      x-aisa-plans:
        builder: 1
        display_plan: payg
        payg: 1
        similarweb_payg: 1
        team: 1
        version: e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb
  x-aisa-configured-paths:
    - /apis/v1/brave/images/search
    - /apis/v1/brave/llm/context
    - /apis/v1/brave/local/descriptions
    - /apis/v1/brave/local/place_search
    - /apis/v1/brave/local/pois
    - /apis/v1/brave/news/search
    - /apis/v1/brave/spellcheck/search
    - /apis/v1/brave/suggest/search
    - /apis/v1/brave/videos/search
    - /apis/v1/brave/web/rich
    - /apis/v1/brave/web/search
  x-aisa-document:
    composer_version: '20'
    document_hash: sha256:dd3bf51bf816c65187edaf986eabe02a048ea79407f7f5e64e18c08fd29983cf
    facts_hash: 8627d7bc05db287888574873d586ce7dca25f9fa7b4a266cb71760e824597bfc
    generator_version: '3'
    protocol_version: '1'
    response_pending: []
    schema_version: '1'
  x-aisa-plans:
    builder: 1
    display_plan: payg
    payg: 1
    similarweb_payg: 1
    team: 1
    version: e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb
  x-aisa-provider: brave-search
servers:
  - url: https://api.aisa.one
security:
  - bearerAuth: []
paths:
  /apis/v1/brave/news/search:
    post:
      tags:
        - default
      summary: News Search
      description: >-
        <!-- aisa-pricing:start -->

        Published reference price: $0.005 USD per successful request.
        Account-specific pricing and final settlement may differ.

        <!-- aisa-pricing:end -->
      operationId: post_any_brave_search_apis_v1_brave_news_search
      parameters:
        - deprecated: false
          description: The default supported media type is application/json.
          examples:
            '0':
              value: application/json
          in: header
          name: accept
          required: false
          schema:
            allOf:
              - enum:
                  - application/json
                  - '*/*'
                title: Accept
                type: string
              - default: application/json
            description: The default supported media type is application/json.
            examples:
              - application/json
            title: Media type
        - deprecated: false
          description: >-
            The API version to use.                 This is denoted by the
            format <code>YYYY-MM-DD</code>.                 Default is the
            latest that is available. Read                 more about <a
            href="/documentation/guides/versioning">API versioning</a>.
          in: header
          name: api-version
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              The API version to use.                 This is denoted by the
              format <code>YYYY-MM-DD</code>.                 Default is the
              latest that is available. Read                 more about <a
              href="/documentation/guides/versioning">API versioning</a>.
            title: API version
        - deprecated: false
          description: >-
            Brave Search will return cached content by default.                
            To prevent caching set the Cache-Control header to
            <code>no-cache</code>.                 This is currently done as
            best effort.
          in: header
          name: cache-control
          required: false
          schema:
            anyOf:
              - const: no-cache
                enum:
                  - no-cache
                title: CacheControl
                type: string
              - type: 'null'
            description: >-
              Brave Search will return cached content by
              default.                 To prevent caching set the Cache-Control
              header to <code>no-cache</code>.                 This is currently
              done as best effort.
            title: Cache control
        - deprecated: false
          description: >-
            The user agent originating the request.                 Brave search
            can utilize the user agent to provide a different                
            experience depending on the device as described by the
            string.                 The user agent should follow the commonly
            used browser agent                 strings on each platform. For
            more information on curating user agents,                 see <a
            href="https://www.rfc-editor.org/rfc/rfc9110.html#name-user-agent">RFC
            9110</a>.
          examples:
            Android:
              description: Android
              value: >-
                Mozilla/5.0 (Linux; Android 12) AppleWebKit/537.36 (KHTML, like
                Gecko) Chrome/103.0.5060.71 Mobile Safari/537.36
            Windows:
              description: Windows
              value: >-
                Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36
                (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36
            iOS:
              description: iOS
              value: >-
                Mozilla/5.0 (iPhone; CPU iPhone OS 15_5 like Mac OS X)
                AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/103.0.5060.63
                Mobile/15E148 Safari/604.1
            macOS:
              description: macOS
              value: >-
                Mozilla/5.0 (Macintosh; Intel Mac OS X 12_4) AppleWebKit/537.36
                (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36
          in: header
          name: user-agent
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              The user agent originating the request.                 Brave
              search can utilize the user agent to provide a
              different                 experience depending on the device as
              described by the string.                 The user agent should
              follow the commonly used browser agent                 strings on
              each platform. For more information on curating user
              agents,                 see <a
              href="https://www.rfc-editor.org/rfc/rfc9110.html#name-user-agent">RFC
              9110</a>.
            title: User agent
      requestBody:
        content:
          application/json:
            schema:
              properties:
                count:
                  default: 20
                  description: >-
                    The number of search results returned in response. The
                    maximum is 50. The actual number delivered may be less than
                    requested. Combine this parameter with offset to paginate
                    search results.
                  maximum: 50
                  minimum: 1
                  title: Count
                  type: integer
                country:
                  allOf:
                    - enum:
                        - AR
                        - AU
                        - AT
                        - BE
                        - BR
                        - CA
                        - CL
                        - DK
                        - FI
                        - FR
                        - DE
                        - GR
                        - HK
                        - IN
                        - ID
                        - IT
                        - JP
                        - KR
                        - MY
                        - MX
                        - NL
                        - NZ
                        - 'NO'
                        - CN
                        - PL
                        - PT
                        - PH
                        - RU
                        - SA
                        - ZA
                        - ES
                        - SE
                        - CH
                        - TW
                        - TR
                        - GB
                        - US
                        - ALL
                      title: SearchCountry
                      type: string
                    - default: US
                  description: >-
                    The search query country, where the results come from. The
                    country string is limited to 2 character country codes of
                    supported countries or <code>ALL</code> for worldwide.
                extra_snippets:
                  anyOf:
                    - type: boolean
                    - type: 'null'
                  description: >-
                    A snippet is an excerpt from a page you get as a result of
                    the query, and extra_snippets allow you to get up to 5
                    additional, alternative excerpts.
                  title: Extra Snippets
                freshness:
                  default: ''
                  description: >-
                    <p>Filters search results by page age. The age of a page is
                    determined by the most relevant date reported by the
                    content, such as its published or last modified date. The
                    following values are supported:</p>

                    <ul>

                    <li><strong>pd</strong> - Pages aged 24 hours or less.</li>

                    <li><strong>pw</strong> - Pages aged 7 days or less.</li>

                    <li><strong>pm</strong> - Pages aged 31 days or less.</li>

                    <li><strong>py</strong> - Pages aged 365 days or less.</li>

                    <li><strong>YYYY-MM-DDtoYYYY-MM-DD</strong> - A custom date
                    range is also supported by specifying start and end dates
                    e.g. <code>2022-04-01to2022-07-30</code>.</li>

                    </ul>
                  examples:
                    - ''
                    - pm
                    - 2022-04-01to2022-07-30
                  title: Freshness
                  type: string
                goggles:
                  anyOf:
                    - type: string
                    - items:
                        type: string
                      type: array
                    - type: 'null'
                  description: >-
                    Goggles act as a custom re-ranking on top of Brave’s search
                    index. The parameter supports both a url where the Goggle is
                    hosted or the definition of the Goggle. For more details,
                    see the <a href="/documentation/resources/goggles">Goggles
                    documentation</a>. The parameter can be a single Goggle or a
                    list of up to 3 Goggles.
                  title: Goggles
                include_fetch_metadata:
                  default: false
                  description: Include fetch metadata.
                  examples:
                    - ''
                    - true
                    - false
                  title: Include Fetch Metadata
                  type: boolean
                offset:
                  default: 0
                  description: >-
                    The zero based offset that indicates number of search
                    results per page (count) to skip before returning the
                    result. The maximum is 9. The actual number delivered may be
                    less than requested based on the query. In order to paginate
                    results use this parameter together with count. For example,
                    if your user interface displays 20 search results per page,
                    set count to 20 and offset to 0 to show the first page of
                    results. To get subsequent pages, increment offset by 1
                    (e.g. 0, 1, 2). The results may overlap across multiple
                    pages.
                  maximum: 9
                  minimum: 0
                  title: Offset
                  type: integer
                operators:
                  default: true
                  description: Whether to apply search operators.
                  examples:
                    - ''
                    - true
                    - false
                  title: Operators
                  type: boolean
                q:
                  description: >-
                    The user’s search query term. Query can not be empty.
                    Maximum of 400 characters and 50 words in the query.
                  maxLength: 400
                  minLength: 1
                  title: The user's search query term.
                  type: string
                safesearch:
                  allOf:
                    - enum:
                        - 'off'
                        - moderate
                        - strict
                      title: SafeSearch
                      type: string
                    - default: strict
                  description: >-
                    <p>Filters search results for adult content. The following
                    values are supported:</p>

                    <ul>

                    <li><strong>off</strong> - No filtering is done.</li>

                    <li><strong>moderate</strong> - Filter out explicit
                    content.</li>

                    <li><strong>strict</strong> - Filter out explicit and
                    suggestive content.</li>

                    </ul>
                  examples:
                    - ''
                    - 'off'
                    - moderate
                    - strict
                  title: Safe search
                search_lang:
                  allOf:
                    - enum:
                        - ar
                        - eu
                        - bn
                        - bg
                        - ca
                        - zh-hans
                        - zh-hant
                        - hr
                        - cs
                        - da
                        - nl
                        - en
                        - en-gb
                        - et
                        - fi
                        - fr
                        - gl
                        - de
                        - el
                        - gu
                        - he
                        - hi
                        - hu
                        - is
                        - it
                        - ja
                        - jp
                        - kn
                        - ko
                        - lv
                        - lt
                        - ms
                        - ml
                        - mr
                        - nb
                        - pl
                        - pt-br
                        - pt-pt
                        - pa
                        - ro
                        - ru
                        - sr
                        - sk
                        - sl
                        - es
                        - sv
                        - ta
                        - te
                        - th
                        - tr
                        - uk
                        - vi
                      title: Language
                      type: string
                    - default: en
                  description: >-
                    The search language preference. The 2 or more character
                    language code for which the search results are provided.
                spellcheck:
                  default: true
                  description: >-
                    Whether to spell check the provided query. If the
                    spellchecker is enabled, the modified query is always used
                    for search. The modified query can be found in altered key
                    from the query response model.
                  examples:
                    - ''
                    - true
                    - false
                  title: Spellcheck
                  type: boolean
                ui_lang:
                  allOf:
                    - enum:
                        - es-AR
                        - en-AU
                        - de-AT
                        - nl-BE
                        - fr-BE
                        - pt-BR
                        - en-CA
                        - fr-CA
                        - es-CL
                        - da-DK
                        - fi-FI
                        - fr-FR
                        - de-DE
                        - el-GR
                        - zh-HK
                        - en-IN
                        - en-ID
                        - it-IT
                        - ja-JP
                        - ko-KR
                        - en-MY
                        - es-MX
                        - nl-NL
                        - en-NZ
                        - no-NO
                        - zh-CN
                        - pl-PL
                        - en-PH
                        - ru-RU
                        - en-ZA
                        - es-ES
                        - sv-SE
                        - fr-CH
                        - de-CH
                        - zh-TW
                        - tr-TR
                        - en-GB
                        - en-US
                        - es-US
                      title: MarketCodes
                      type: string
                    - default: en-US
                  description: >-
                    User interface language preferred in response. Usually of
                    the format
                    <code>&lt;language_code&gt;-&lt;country_code&gt;</code>. For
                    more, see <a
                    href="https://www.rfc-editor.org/rfc/rfc9110.html#name-accept-language">RFC
                    9110</a>.
              required:
                - q
              title: NewsSearchParameters
              type: object
        description: ''
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseB91D37C29Ffe_NewsSearchApiResponse
          description: Successful Response
        default:
          content:
            application/json:
              schema: {}
          description: >-
            Error response; upstream passthrough responses may use provider
            formats
components:
  schemas:
    ResponseB91D37C29Ffe_NewsSearchApiResponse:
      properties:
        query:
          $ref: >-
            #/components/schemas/ResponseB91D37C29Ffe_app__models__products__search__v1__news__Query
          description: News search query string.
        results:
          default: []
          description: The list of news results for the given query.
          items:
            $ref: >-
              #/components/schemas/ResponseB91D37C29Ffe_app__models__products__search__v1__news__NewsResult
          title: Results
          type: array
        type:
          const: news
          default: news
          enum:
            - news
          title: Type
          type: string
      required:
        - query
      title: NewsSearchApiResponse
      type: object
    ResponseB91D37C29Ffe_app__models__products__search__v1__news__Query:
      properties:
        altered:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The altered query by the spellchecker. This is the query that is
            used to search if any.
          title: Altered
        cleaned:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The cleaned normalized query by the spellchecker. This is the query
            that is used to search if any.
          title: Cleaned
        original:
          description: The original query that was requested.
          title: Original
          type: string
        search_operators:
          anyOf:
            - $ref: '#/components/schemas/ResponseB91D37C29Ffe_SearchOperators'
            - type: 'null'
          description: Search operators applied to the query.
        show_strict_warning:
          anyOf:
            - type: boolean
            - type: 'null'
          description: >-
            The value is <code>true</code> if the lack of results is due to a
            <code>strict</code> safesearch setting. Adult content relevant to
            the query was found, but was blocked by safesearch.
          title: Show Strict Warning
        spellcheck_off:
          anyOf:
            - type: boolean
            - type: 'null'
          description: Whether the spellchecker is enabled or disabled.
          title: Spellcheck Off
      required:
        - original
      title: Query
      type: object
    ResponseB91D37C29Ffe_app__models__products__search__v1__news__NewsResult:
      properties:
        age:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            A human-readable representation of the news article’s age. For
            example, <code>2 days ago</code>.
          title: Age
        breaking:
          anyOf:
            - type: boolean
            - type: 'null'
          description: Whether the result includes breaking news.
          title: Breaking
        description:
          anyOf:
            - type: string
            - type: 'null'
          description: The description for the news article.
          title: Description
        extra_snippets:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          description: A list of extra alternate snippets for the news search result.
          title: Extra Snippets
        fetched_content_timestamp:
          anyOf:
            - type: integer
            - type: 'null'
          description: The timestamp when the content was fetched.
          title: Fetched Content Timestamp
        icons:
          anyOf:
            - items:
                $ref: '#/components/schemas/ResponseB91D37C29Ffe_PostprocessedIcon'
              type: array
            - type: 'null'
          description: Icons associated with the news result.
          title: Icons
        meta_url:
          anyOf:
            - $ref: >-
                #/components/schemas/ResponseB91D37C29Ffe_app__models__products__search__v1__news__MetaUrl
            - type: 'null'
          description: >-
            Aggregated information on the URL associated with the news search
            result.
        page_age:
          anyOf:
            - type: string
            - type: 'null'
          description: The page’s date, based on its published or last modified date.
          title: Page Age
        page_fetched:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The ISO date time when the page was last fetched. The format is
            <code>YYYY-MM-DDTHH:MM:SSZ</code>.
          title: Page Fetched
        profile:
          anyOf:
            - $ref: >-
                #/components/schemas/ResponseB91D37C29Ffe_app__models__products__search__v1__shared__Profile
            - type: 'null'
          description: A profile associated with the web page.
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/ResponseB91D37C29Ffe_app__models__products__search__v1__news__Thumbnail
            - type: 'null'
          description: The thumbnail for the news article.
        title:
          description: The title of the news article.
          title: Title
          type: string
        type:
          const: news_result
          default: news_result
          description: >-
            The type of news search API result. The value is always
            <code>news_result</code>.
          enum:
            - news_result
          title: Type
          type: string
        url:
          description: The source URL of the news article.
          title: Url
          type: string
      required:
        - title
        - url
      title: NewsResult
      type: object
    ResponseB91D37C29Ffe_SearchOperators:
      properties:
        applied:
          default: false
          description: Whether search operators were applied to the query.
          title: Applied
          type: boolean
        cleaned_query:
          anyOf:
            - type: string
            - type: 'null'
          description: The query after search operators have been processed.
          title: Cleaned Query
        sites:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          description: 'List of site domains extracted from site: operators.'
          title: Sites
      title: SearchOperators
      type: object
    ResponseB91D37C29Ffe_PostprocessedIcon:
      properties:
        ext:
          anyOf:
            - type: string
            - type: 'null'
          title: Ext
        href:
          title: Href
          type: string
        rel:
          anyOf:
            - type: string
            - type: 'null'
          title: Rel
        sizes:
          anyOf:
            - type: string
            - type: 'null'
          title: Sizes
        type:
          anyOf:
            - type: string
            - type: 'null'
          title: Type
      required:
        - href
        - sizes
        - rel
        - type
        - ext
      title: PostprocessedIcon
      type: object
    ResponseB91D37C29Ffe_app__models__products__search__v1__news__MetaUrl:
      properties:
        favicon:
          anyOf:
            - type: string
            - type: 'null'
          description: The favicon used for the URL.
          title: Favicon
        hostname:
          anyOf:
            - type: string
            - type: 'null'
          description: The lowercased domain name extracted from the URL.
          title: Hostname
        netloc:
          anyOf:
            - type: string
            - type: 'null'
          description: The network location part extracted from the URL.
          title: Netloc
        path:
          anyOf:
            - type: string
            - type: 'null'
          description: The hierarchical path of the URL useful as a display string.
          title: Path
        scheme:
          anyOf:
            - type: string
            - type: 'null'
          description: The protocol scheme extracted from the URL.
          title: Scheme
      title: MetaUrl
      type: object
    ResponseB91D37C29Ffe_app__models__products__search__v1__shared__Profile:
      description: A profile of an entity.
      properties:
        img:
          anyOf:
            - type: string
            - type: 'null'
          description: The served image URL representing the profile.
          title: Img
        long_name:
          anyOf:
            - type: string
            - type: 'null'
          description: The long name of the profile.
          title: Long Name
        name:
          description: The name of the profile.
          title: Name
          type: string
        url:
          description: The original URL where the profile is available.
          title: Url
          type: string
      required:
        - name
        - url
      title: Profile
      type: object
    ResponseB91D37C29Ffe_app__models__products__search__v1__news__Thumbnail:
      properties:
        original:
          anyOf:
            - type: string
            - type: 'null'
          description: The original URL of the thumbnail associated with the news article.
          title: Original
        src:
          description: The served URL of the thumbnail associated with the news article.
          title: Src
          type: string
      required:
        - src
      title: Thumbnail
      type: object
  securitySchemes:
    bearerAuth:
      scheme: bearer
      type: http

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.