Docs
Get an API key
Hotel offers

Price your selected hotels

POST
/v1/hotel/offers

You price up to 10 hotels for the same stay and room occupancies; split a longer search page across several requests. You name them by the service's hotel_ids, or by supplier with that supplier's supplier_hotel_ids from search, never both. You request at most 250 offers in total, hotel IDs times max_offers_per_hotel, to bound the response. Request hotels from one supplier at a time. Each returned offer_reference binds the complete room selection, stay, source market and price to your organization. Pass it to prebook before expires_at. You receive every room in rooms, in your requested occupancy order, with its available display and cancellation terms. Top-level room_type and board remain first-room summaries; total and any offer-level policy cover the whole stay and are counted once. You review the confirmed terms again after prebook. Promotions list each promotion once with the room positions it applies to; the total already includes them. Amounts use major currency units.

Authorization

x-api-key<token>

Your API key. Issued and revoked from the TrustPixel dashboard; the gateway resolves it to an owning organization on every request.

In: header

Header Parameters

x-request-id?string

Correlation id echoed to the upstream service and returned on the response. Generated as req_<uuid> when omitted.

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/hotel/offers" \  -H "Content-Type: application/json" \  -d '{    "hotel_ids": [      "htl_example"    ],    "check_in": "2027-11-22",    "check_out": "2027-11-24",    "occupancy": [      {        "adults": 2,        "children": []      },      {        "adults": 2,        "children": []      }    ],    "guest_nationality": "GB",    "guest_residence": "GB",    "currency": "USD",    "max_offers_per_hotel": 5  }'
{  "data": [    {      "hotel_id": "htl_example",      "supplier_hotel_id": "lp1f2e3",      "offers": [        {          "offer_reference": "REPLACE_WITH_RETURNED_OFFER_REFERENCE",          "total": {            "amount": 600,            "currency": "USD"          },          "rooms": [            {              "position": 0,              "adults": 2,              "children": [],              "room_type": "Deluxe Twin",              "board": "Room Only",              "refundable": true,              "cancellation_policy": {                "version": 1,                "refundable": true,                "deadline": "2027-11-20T00:00:00Z",                "penalties": [                  {                    "from": "2027-11-20T00:00:00Z",                    "type": "AMOUNT",                    "amount": {                      "amount": 150,                      "currency": "USD"                    }                  }                ],                "restrictions": []              }            },            {              "position": 1,              "adults": 2,              "children": [],              "room_type": "Deluxe Double",              "board": "Room Only",              "refundable": true,              "cancellation_policy": {                "version": 1,                "refundable": true,                "deadline": "2027-11-20T00:00:00Z",                "penalties": [                  {                    "from": "2027-11-20T00:00:00Z",                    "type": "AMOUNT",                    "amount": {                      "amount": 150,                      "currency": "USD"                    }                  }                ],                "restrictions": []              }            }          ],          "room_type": "Deluxe Twin",          "board": "Room Only",          "refundable": true,          "cancellation_policy": {            "version": 1,            "refundable": true,            "deadline": "2027-11-20T00:00:00Z",            "penalties": [              {                "from": "2027-11-20T00:00:00Z",                "type": "AMOUNT",                "amount": {                  "amount": 300,                  "currency": "USD"                }              }            ],            "restrictions": []          },          "expires_at": "2027-10-01T10:15:00Z"        }      ]    }  ],  "meta": {    "supplier": "LITEAPI"  }}