Skip to main content

Bundleport API Documentation

Connect to multiple hotel suppliers through a single, unified API. Build faster with comprehensive documentation, code samples, and developer tools.

Get started in 5 minutes with our Quickstart guide
Enterprise-grade reliability and security
REST and MCP on the same booking contract

Quick Integration

Get started in minutes with our Quickstart guide. Copy-paste code samples in JavaScript, Python, or cURL. Sandbox environment included.

Start building

Connect Hotels API

Complete hotel booking API with search, quote, book, and management operations. REST endpoints, Content API, and comprehensive documentation.

Explore API

Use with AI

Contract card, OpenAPI YAML, Cursor / ChatGPT / Claude, and booking MCP. Generate a client that matches the wire.

Open the kit

Everything you need to integrate

OpenAPI, a contract card for assistants, and booking MCP on the same identifiers. No published HTTP SDK packages.

Use with AI

Cursor, ChatGPT, Claude, llms.txt, and AGENTS.md so generated clients match the wire.

Booking MCP

Five tools over Streamable HTTP. For agents that call search and book — not for codegen.

Path to a working integration

Six steps, same wire as production. Copy identifiers literally. Do not invent fields.

  1. 1

    Create a sandbox key

    sk_test_* from the Connect console. Never send it as X-API-Key.

  2. 2

    Resolve hotels, then search

    Content API for catalog codes. Availability has no destination field — send criteria.hotels.

  3. 3

    Quote first; skip only without RECHECK

    Quote by default. Book from search only when no RATE_TYPE remark contains RECHECK and that connection allows it. Handoff search options[].id → quote optionRefId.

  4. 4

    Book and persist bookingID

    Book with optionQuote.optionRefId. Read booking.reference.bookingID. Status is BOOK_STATUS_TYPE_*.

  5. 5

    Treat HTTP 200 as maybe-failed

    Inspect errors[] (ERR_CODE_* / ERR_TYPE_*). Gateway 401/403/429 is a different envelope.

  6. 6

    Point the IDE at the contract

    AGENTS.md + OpenAPI YAML. Optional booking MCP for agents that call the funnel live.

Authenticate once

Buyer header is Authorization with an ApiKey prefix. Sandbox keys only work on the test host.

HeaderAuthorization: ApiKey sk_test_*