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

# Hotel Search

> <!-- aisa-pricing:start -->
按用量计费；默认请求预估费用：$0.0253 USD（不是固定价格）。 声明的单位费率：每 provider_credit $0.000001 USD。 最终费用以账户适用价格及实际结算为准。
<!-- aisa-pricing:end -->

## 请求规范

* **方法与路径:** POST /apis/v1/serpapi/hotel-search
* **可用状态:** enabled
* **请求 URL 模板:** `https://api.aisa.one/apis/v1/serpapi/hotel-search`
* **Runtime 事实版本:** 1d8d2010628130bd331b470b564dd1cd5784989899ccf3e384a8de02a69e0558

[完整 OpenAPI 定义](https://aisa.one/docs/reference-contracts/zh/serpapi.json)

有效请求与价格声明（包括认证和引用的 schema）：

```json theme={null}
{
  "operationId": "serpapi.hotel-search",
  "method": "POST",
  "path": "/apis/v1/serpapi/hotel-search",
  "servers": [
    {
      "url": "https://api.aisa.one"
    }
  ],
  "parameters": [],
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "examples": {
          "default": {
            "value": {
              "async": false,
              "check_in_date": "2026-10",
              "check_out_date": "2026-10",
              "output": "json",
              "q": "example"
            }
          },
          "minimal": {
            "value": {
              "check_in_date": "2026-10",
              "check_out_date": "2026-10",
              "q": "example"
            }
          }
        },
        "schema": {
          "additionalProperties": false,
          "properties": {
            "adults": {
              "maximum": 9223372036854775807,
              "minimum": 0,
              "type": "integer"
            },
            "amenities": {
              "maxLength": 4096,
              "type": "string"
            },
            "async": {
              "default": false,
              "enum": [
                false
              ],
              "type": "boolean"
            },
            "bathrooms": {
              "maximum": 9223372036854775807,
              "minimum": 0,
              "type": "integer"
            },
            "bedrooms": {
              "maximum": 9223372036854775807,
              "minimum": 0,
              "type": "integer"
            },
            "check_in_date": {
              "maxLength": 4096,
              "type": "string"
            },
            "check_out_date": {
              "maxLength": 4096,
              "type": "string"
            },
            "children": {
              "maximum": 9223372036854775807,
              "minimum": 0,
              "type": "integer"
            },
            "children_ages": {
              "maxLength": 4096,
              "type": "string"
            },
            "currency": {
              "maxLength": 4096,
              "type": "string"
            },
            "eco_certified": {
              "type": "boolean"
            },
            "free_cancellation": {
              "type": "boolean"
            },
            "gl": {
              "maxLength": 4096,
              "type": "string"
            },
            "hl": {
              "maxLength": 4096,
              "type": "string"
            },
            "max_price": {
              "maximum": 9223372036854775807,
              "minimum": 0,
              "type": "integer"
            },
            "min_price": {
              "maximum": 9223372036854775807,
              "minimum": 0,
              "type": "integer"
            },
            "next_page_token": {
              "maxLength": 4096,
              "type": "string"
            },
            "no_cache": {
              "type": "boolean"
            },
            "output": {
              "default": "json",
              "enum": [
                "json"
              ],
              "type": "string"
            },
            "property_token": {
              "maxLength": 4096,
              "type": "string"
            },
            "property_types": {
              "maxLength": 4096,
              "type": "string"
            },
            "q": {
              "maxLength": 4096,
              "type": "string"
            },
            "rating": {
              "maximum": 9223372036854775807,
              "minimum": 0,
              "type": "integer"
            },
            "sort_by": {
              "maxLength": 4096,
              "type": "string"
            },
            "special_offers": {
              "type": "boolean"
            },
            "vacation_rentals": {
              "type": "boolean"
            }
          },
          "required": [
            "check_in_date",
            "check_out_date",
            "q"
          ],
          "type": "object"
        }
      }
    },
    "required": true
  },
  "x-aisa-status": "enabled",
  "x-aisa-pricing": {
    "cost_contract": "response_units",
    "customer_multiplier": 1.0,
    "customer_pricing": "provider_cost_multiplier",
    "default_request_estimate_usd": 0.0253,
    "estimate_source": "profile_seed",
    "evidence_source": "response_body",
    "maximum_units": 10000000,
    "unit": "provider_credit",
    "unit_rate_usd": 1e-06
  },
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "scheme": "bearer",
        "type": "http"
      }
    }
  }
}
```

## 费用与请求规则

按用量计费；默认请求预估费用：\$0.0253 USD（不是固定价格）。 声明的单位费率：每 provider\_credit \$0.000001 USD。 最终费用以账户适用价格及实际结算为准。

公开参考值不是你的账户报价或最终扣费。对于支持 X-AISA-Cost-Mode: quote 的接口，执行前请针对完整请求获取免费报价；执行后通过响应费用元数据和 Usage Logs 核对结算费用。1 USD 等于 1,000,000 个整数 micro-USD。

* **默认请求参考估价（USD）:** 0.0253
* **声明的单位费率（USD）:** 1e-06
* **计费单位:** provider\_credit
* **计费依据:** response\_units
* **公开参考倍率:** 1.0
* **声明的最大计数或单位数:** 10000000
* **结算证据来源:** response\_body


## OpenAPI

````yaml reference-contracts/zh/serpapi.json POST /apis/v1/serpapi/hotel-search
openapi: 3.1.0
info:
  description: ''
  title: SerpApi
  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/serpapi/amazon-product
    - /apis/v1/serpapi/amazon-search
    - /apis/v1/serpapi/app-store-search-apps
    - /apis/v1/serpapi/baidu-news
    - /apis/v1/serpapi/baidu-search
    - /apis/v1/serpapi/bing-copilot
    - /apis/v1/serpapi/bing-images
    - /apis/v1/serpapi/bing-maps
    - /apis/v1/serpapi/bing-news
    - /apis/v1/serpapi/bing-search
    - /apis/v1/serpapi/bing-shopping
    - /apis/v1/serpapi/bing-videos
    - /apis/v1/serpapi/brave-ai-mode
    - /apis/v1/serpapi/duck-duck-go-light-search
    - /apis/v1/serpapi/duck-duck-go-maps
    - /apis/v1/serpapi/duck-duck-go-search
    - /apis/v1/serpapi/duckduckgo-light
    - /apis/v1/serpapi/duckduckgo-maps
    - /apis/v1/serpapi/duckduckgo-news
    - /apis/v1/serpapi/duckduckgo-search
    - /apis/v1/serpapi/ebay-product
    - /apis/v1/serpapi/ebay-search
    - /apis/v1/serpapi/event-search
    - /apis/v1/serpapi/facebook-profile
    - /apis/v1/serpapi/finance-search
    - /apis/v1/serpapi/get-facebook-profile
    - /apis/v1/serpapi/get-google-about-this-result
    - /apis/v1/serpapi/get-google-hotels-autocomplete-suggestions
    - /apis/v1/serpapi/get-google-images-related-content
    - /apis/v1/serpapi/get-google-patent-details
    - /apis/v1/serpapi/google-ads
    - /apis/v1/serpapi/google-ads-transparency
    - /apis/v1/serpapi/google-ai-mode
    - /apis/v1/serpapi/google-ai-overview
    - /apis/v1/serpapi/google-events
    - /apis/v1/serpapi/google-finance
    - /apis/v1/serpapi/google-flights
    - /apis/v1/serpapi/google-forums-search
    - /apis/v1/serpapi/google-hotels
    - /apis/v1/serpapi/google-images
    - /apis/v1/serpapi/google-jobs
    - /apis/v1/serpapi/google-jobs-search
    - /apis/v1/serpapi/google-keywords-ideas
    - /apis/v1/serpapi/google-lens
    - /apis/v1/serpapi/google-lens-search
    - /apis/v1/serpapi/google-light
    - /apis/v1/serpapi/google-light-search
    - /apis/v1/serpapi/google-local
    - /apis/v1/serpapi/google-maps
    - /apis/v1/serpapi/google-maps-search
    - /apis/v1/serpapi/google-news
    - /apis/v1/serpapi/google-patents
    - /apis/v1/serpapi/google-play-product
    - /apis/v1/serpapi/google-play-search-apps
    - /apis/v1/serpapi/google-scholar
    - /apis/v1/serpapi/google-scholar-author
    - /apis/v1/serpapi/google-scholar-cite
    - /apis/v1/serpapi/google-serp-organic
    - /apis/v1/serpapi/google-shopping
    - /apis/v1/serpapi/google-trends
    - /apis/v1/serpapi/google-videos
    - /apis/v1/serpapi/google-videos-light
    - /apis/v1/serpapi/home-depot-search
    - /apis/v1/serpapi/hotel-search
    - /apis/v1/serpapi/image-search
    - /apis/v1/serpapi/instagram-profile
    - /apis/v1/serpapi/naver-ai-overview
    - /apis/v1/serpapi/naver-search
    - /apis/v1/serpapi/news-search
    - /apis/v1/serpapi/open-table-reviews
    - /apis/v1/serpapi/play-search
    - /apis/v1/serpapi/scholar-search
    - /apis/v1/serpapi/search
    - /apis/v1/serpapi/search-apple-app-store
    - /apis/v1/serpapi/search-google-images-light
    - /apis/v1/serpapi/search-google-local-services
    - /apis/v1/serpapi/search-public-google-ads
    - /apis/v1/serpapi/search-yelp
    - /apis/v1/serpapi/shopping-search
    - /apis/v1/serpapi/trends-search
    - /apis/v1/serpapi/tripadvisor-search
    - /apis/v1/serpapi/walmart-product
    - /apis/v1/serpapi/walmart-search
    - /apis/v1/serpapi/yahoo-images
    - /apis/v1/serpapi/yahoo-search
    - /apis/v1/serpapi/yahoo-videos
    - /apis/v1/serpapi/yandex-images
    - /apis/v1/serpapi/yandex-images-search
    - /apis/v1/serpapi/yandex-search
    - /apis/v1/serpapi/yandex-videos
    - /apis/v1/serpapi/yelp-search
    - /apis/v1/serpapi/you-tube-search
    - /apis/v1/serpapi/youtube-search-videos
  x-aisa-document:
    facts_hash: 1d8d2010628130bd331b470b564dd1cd5784989899ccf3e384a8de02a69e0558
    generator_version: '3'
    protocol_version: '1'
    schema_version: '1'
    seed_month: 2026-10
    composer_version: '27'
    response_pending:
      - operation_id: serpapi.duck-duck-go-light-search
        path: /apis/v1/serpapi/duck-duck-go-light-search
        method: POST
        statuses:
          - '200'
        reason: public success response has no authoritative payload declaration
      - operation_id: serpapi.get-google-about-this-result
        path: /apis/v1/serpapi/get-google-about-this-result
        method: POST
        statuses:
          - '200'
        reason: public success response has no authoritative payload declaration
      - operation_id: serpapi.get-google-hotels-autocomplete-suggestions
        path: /apis/v1/serpapi/get-google-hotels-autocomplete-suggestions
        method: POST
        statuses:
          - '200'
        reason: public success response has no authoritative payload declaration
      - operation_id: serpapi.get-google-images-related-content
        path: /apis/v1/serpapi/get-google-images-related-content
        method: POST
        statuses:
          - '200'
        reason: public success response has no authoritative payload declaration
      - operation_id: serpapi.get-google-patent-details
        path: /apis/v1/serpapi/get-google-patent-details
        method: POST
        statuses:
          - '200'
        reason: public success response has no authoritative payload declaration
      - operation_id: serpapi.google-forums-search
        path: /apis/v1/serpapi/google-forums-search
        method: POST
        statuses:
          - '200'
        reason: public success response has no authoritative payload declaration
      - operation_id: serpapi.google-jobs-search
        path: /apis/v1/serpapi/google-jobs-search
        method: POST
        statuses:
          - '200'
        reason: public success response has no authoritative payload declaration
      - operation_id: serpapi.google-light-search
        path: /apis/v1/serpapi/google-light-search
        method: POST
        statuses:
          - '200'
        reason: public success response has no authoritative payload declaration
      - operation_id: serpapi.google-play-product
        path: /apis/v1/serpapi/google-play-product
        method: POST
        statuses:
          - '200'
        reason: public success response has no authoritative payload declaration
      - operation_id: serpapi.google-videos-light
        path: /apis/v1/serpapi/google-videos-light
        method: POST
        statuses:
          - '200'
        reason: public success response has no authoritative payload declaration
      - operation_id: serpapi.hotel-search
        path: /apis/v1/serpapi/hotel-search
        method: POST
        statuses:
          - '200'
        reason: public success response has no authoritative payload declaration
      - operation_id: serpapi.open-table-reviews
        path: /apis/v1/serpapi/open-table-reviews
        method: POST
        statuses:
          - '200'
        reason: public success response has no authoritative payload declaration
      - operation_id: serpapi.play-search
        path: /apis/v1/serpapi/play-search
        method: POST
        statuses:
          - '200'
        reason: public success response has no authoritative payload declaration
      - operation_id: serpapi.search-apple-app-store
        path: /apis/v1/serpapi/search-apple-app-store
        method: POST
        statuses:
          - '200'
        reason: public success response has no authoritative payload declaration
      - operation_id: serpapi.search-google-local-services
        path: /apis/v1/serpapi/search-google-local-services
        method: POST
        statuses:
          - '200'
        reason: public success response has no authoritative payload declaration
      - operation_id: serpapi.search-public-google-ads
        path: /apis/v1/serpapi/search-public-google-ads
        method: POST
        statuses:
          - '200'
        reason: public success response has no authoritative payload declaration
      - operation_id: serpapi.yandex-images-search
        path: /apis/v1/serpapi/yandex-images-search
        method: POST
        statuses:
          - '200'
        reason: public success response has no authoritative payload declaration
      - operation_id: serpapi.you-tube-search
        path: /apis/v1/serpapi/you-tube-search
        method: POST
        statuses:
          - '200'
        reason: public success response has no authoritative payload declaration
    document_hash: sha256:419ea2994fa4d65d79c2b9fc0374323a222458936e5495ead64fe4b2bffec6e6
  x-aisa-plans:
    builder: 1
    display_plan: payg
    payg: 1
    similarweb_payg: 1
    team: 1
    version: e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb
  x-aisa-provider: serpapi
  x-aisa-catalogs:
    serpapi:
      title: SerpApi
      description: ''
      x-aisa-document:
        facts_hash: 1d8d2010628130bd331b470b564dd1cd5784989899ccf3e384a8de02a69e0558
        generator_version: '3'
        protocol_version: '1'
        schema_version: '1'
        seed_month: 2026-10
      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/serpapi/hotel-search:
    post:
      tags:
        - SerpApi
      summary: Hotel Search
      description: >-
        <!-- aisa-pricing:start -->

        按用量计费；默认请求预估费用：$0.0253 USD（不是固定价格）。 声明的单位费率：每 provider_credit $0.000001
        USD。 最终费用以账户适用价格及实际结算为准。

        <!-- aisa-pricing:end -->
      operationId: serpapi.hotel-search
      requestBody:
        content:
          application/json:
            examples:
              default:
                value:
                  async: false
                  check_in_date: 2026-10
                  check_out_date: 2026-10
                  output: json
                  q: example
              minimal:
                value:
                  check_in_date: 2026-10
                  check_out_date: 2026-10
                  q: example
            schema:
              additionalProperties: false
              properties:
                adults:
                  maximum: 9223372036854776000
                  minimum: 0
                  type: integer
                amenities:
                  maxLength: 4096
                  type: string
                async:
                  default: false
                  enum:
                    - false
                  type: boolean
                bathrooms:
                  maximum: 9223372036854776000
                  minimum: 0
                  type: integer
                bedrooms:
                  maximum: 9223372036854776000
                  minimum: 0
                  type: integer
                check_in_date:
                  maxLength: 4096
                  type: string
                check_out_date:
                  maxLength: 4096
                  type: string
                children:
                  maximum: 9223372036854776000
                  minimum: 0
                  type: integer
                children_ages:
                  maxLength: 4096
                  type: string
                currency:
                  maxLength: 4096
                  type: string
                eco_certified:
                  type: boolean
                free_cancellation:
                  type: boolean
                gl:
                  maxLength: 4096
                  type: string
                hl:
                  maxLength: 4096
                  type: string
                max_price:
                  maximum: 9223372036854776000
                  minimum: 0
                  type: integer
                min_price:
                  maximum: 9223372036854776000
                  minimum: 0
                  type: integer
                next_page_token:
                  maxLength: 4096
                  type: string
                no_cache:
                  type: boolean
                output:
                  default: json
                  enum:
                    - json
                  type: string
                property_token:
                  maxLength: 4096
                  type: string
                property_types:
                  maxLength: 4096
                  type: string
                q:
                  maxLength: 4096
                  type: string
                rating:
                  maximum: 9223372036854776000
                  minimum: 0
                  type: integer
                sort_by:
                  maxLength: 4096
                  type: string
                special_offers:
                  type: boolean
                vacation_rentals:
                  type: boolean
              required:
                - check_in_date
                - check_out_date
                - q
              type: object
        required: true
      responses:
        '200':
          description: 成功响应
        default:
          content:
            application/json:
              schema: {}
          description: >-
            Error response; upstream passthrough responses may use provider
            formats
      x-codeSamples:
        - lang: text
          label: Reference example
          source: >-
            # Fixed reference example. Playground inputs do not update this
            sample.

            curl --request POST \
              --url https://api.aisa.one/apis/v1/serpapi/hotel-search \
              --header 'Authorization: Bearer <token>' \
              --header 'Content-Type: application/json' \
              --data '{
              "async": false,
              "check_in_date": "2026-10",
              "check_out_date": "2026-10",
              "output": "json",
              "q": "example"
            }'
components:
  securitySchemes:
    bearerAuth:
      scheme: bearer
      type: http

````

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