> ## 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.

# OpenAI Web Search

> Ask a question and get an answer that an OpenAI model wrote after searching the live web. Send a Responses request — an `input` string (or message array) — and the endpoint injects a fixed, server-pinned model and the `web_search` tool for you; the model, tool and per-request search cap are server-controlled to keep cost bounded. The reply is a standard OpenAI Responses object: `output[]` contains `web_search_call` items (each a search that ran) and a `message` item with the answer text and URL citations, and the billed search count equals the number of `web_search_call` items. Billing is pay-as-you-go at exact cost: `web_search_calls × $0.01` plus the model's own token cost (fresh input = `input_tokens − cached`), with no markup. Use this when you want a written, cited answer grounded in current web content from an OpenAI model — for the Anthropic-model equivalent see [`post_anthropic_websearch_search`](/api-reference/search/post_anthropic-websearch-search), and for raw ranked links with extracted page text use [`post_tavily_search`](/api-reference/search/post_tavily-search).



## OpenAPI

````yaml openapi/zh/openai-web-search.json POST /apis/v1/openai-websearch/search
openapi: 3.1.0
info:
  description: ''
  title: OpenAI Web Search (GEO)
  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-configured-paths:
    - /apis/v1/openai-websearch/search
  x-aisa-document:
    facts_hash: c1d97f67687b6da5772cfc632b194d7c656654ee369b6ee6e176059c8212e94b
    generator_version: '2'
    protocol_version: '1'
    schema_version: '1'
    composer_version: '13'
    response_pending: []
    document_hash: sha256:af35d4bb94c9a4835cd81c03320b7e57e821a657621b57966da0090f13b450ae
  x-aisa-plans:
    builder: 1
    display_plan: payg
    payg: 1
    similarweb_payg: 1
    team: 1
    version: e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb
  x-aisa-provider: openai-web-search
  x-aisa-catalogs:
    openai-web-search:
      title: OpenAI Web Search (GEO)
      description: ''
      x-aisa-document:
        facts_hash: c1d97f67687b6da5772cfc632b194d7c656654ee369b6ee6e176059c8212e94b
        generator_version: '2'
        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-capabilities:
        idempotency: Idempotency-Key
        max_price: X-AISA-Max-Price-USD
        quote:
          header: X-AISA-Cost-Mode
          value: quote
servers:
  - url: https://api.aisa.one
security:
  - bearerAuth: []
paths:
  /apis/v1/openai-websearch/search:
    post:
      tags:
        - websearch
      summary: OpenAI Web Search
      description: >-
        Ask a question and get an answer that an OpenAI model wrote after
        searching the live web. Send a Responses request — an `input` string (or
        message array) — and the endpoint injects a fixed, server-pinned model
        and the `web_search` tool for you; the model, tool and per-request
        search cap are server-controlled to keep cost bounded. The reply is a
        standard OpenAI Responses object: `output[]` contains `web_search_call`
        items (each a search that ran) and a `message` item with the answer text
        and URL citations, and the billed search count equals the number of
        `web_search_call` items. Billing is pay-as-you-go at exact cost:
        `web_search_calls × $0.01` plus the model's own token cost (fresh input
        = `input_tokens − cached`), with no markup. Use this when you want a
        written, cited answer grounded in current web content from an OpenAI
        model — for the Anthropic-model equivalent see
        [`post_anthropic_websearch_search`](/api-reference/search/post_anthropic-websearch-search),
        and for raw ranked links with extracted page text use
        [`post_tavily_search`](/api-reference/search/post_tavily-search).
      operationId: post_openai_websearch_search
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - input
              properties:
                input:
                  type: string
                  description: >-
                    Your question or instruction, same format as the OpenAI
                    Responses API `input`. A message array is also accepted.
                  example: >-
                    What are the three biggest AI announcements this week? Give
                    one sentence each with sources.
                max_output_tokens:
                  type: integer
                  description: >-
                    Optional cap on the number of tokens generated in the
                    answer.
                  example: 1024
                instructions:
                  type: string
                  description: >-
                    Optional high-level instructions to steer the answer's tone
                    or format.
            example:
              input: >-
                What are the three biggest AI announcements this week? Give one
                sentence each with sources.
              max_output_tokens: 1024
      responses:
        '200':
          description: >-
            A standard OpenAI Responses object. `output[]` interleaves
            web_search_call items and the cited answer message; the number of
            web_search_call items is the billed search count.
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                  object:
                    type: string
                    example: response
                  status:
                    type: string
                    example: completed
                  output:
                    type: array
                    description: >-
                      Ordered items: web_search_call (searches performed) and
                      message (the cited answer).
                    items:
                      type: object
                  usage:
                    type: object
                    properties:
                      input_tokens:
                        type: integer
                      output_tokens:
                        type: integer
                      input_tokens_details:
                        type: object
                        properties:
                          cached_tokens:
                            type: integer
        default:
          content:
            application/json:
              schema: {}
          description: >-
            Error response; upstream passthrough responses may use provider
            formats
components:
  securitySchemes:
    bearerAuth:
      scheme: bearer
      type: http

````

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