Quote - Hybrid

Adding a new Quote - Hybrid (GraphQL) end-point that allows Push Clients to perform a price check before sending in a reservation request. This model eliminates the need for repeated search requests while ensuring price accuracy before booking.

How it works

  • Receive real-time availability and rates through XML Push APIs
  • Verify prices using our GraphQL based Quote- Hybrid endpoint
  • Complete bookings, and modifications, and retrieve reservations through dedicated GraphQL endpoints or existing XML based integration.

Get Started

Explore the latest Hotel Trader Hybrid API specifications with our updated Postman collection for seamless integration.

Postman Collection:  Hotel Trader Hybrid API Postman Collection

See below for queries and samples for both single and multi-room quote requests.

All fields in the Quote request are mandatory fields. If any fields are missing, an error and an error code will be returned in the response. For more information on the list of error codes, see the Error Codes page.

Schema

query quote($Quote: [QuoteRequestInput]) {
  quote(quoteRequest: $Quote) {
    aggregateGrossPrice
    aggregateNetPrice
    aggregateTax
    aggregatePayAtProperty
    consolidatedComments
    rooms {
      htIdentifier
      grossPriceChanged
      message
      cancellationPolicies {
        startWindowTime
        endWindowTime
        currency
        cancellationCharge
        timeZone
      }
      mealplanOptions {
        mealplanDescription
        mealplanCode
        mealplanName
        }
      rates {
        bar
        binding
        commissionable
        commissionAmount
        currency
        netPrice
        tax
        grossPrice
        payAtProperty
        dailyPrice
        dailyTax
        aggregateTaxInfo {
          payAtBooking {
            description
            name
            value
            currency
          }
          payAtProperty {
            description
            name
            value
            currency
          }
        }
      }
    }
  }
}

Sample Requests

Single Room Request Sample

{
    "Quote": [
        {
            "propertyCode": "DG00001", 
            "ratePlanCode": "HTFIT-FB",
            "roomTypeCode": "R1", 
            "checkInDate": "2024-08-20",
            "checkOutDate": "2024-08-21",
            "occupancy": {
                "guestAges": "30,30" 
            },
            "rates": {
                "netPrice": 108.00,
                "tax": 88.00, 
                "grossPrice": 196.00,
                "payAtProperty": 10.00,
                "dailyPrice": [
                    108.00
                ],
                "dailyTax": [
                    88.00
                ]
            }
        }
    ]
}

Multi Room Request Sample

{
  "Quote": [
    {
      "propertyCode": "29847",
      "ratePlanCode": "RP1",
      "roomTypeCode": "TPL",
      "checkInDate": "2025-07-30",
      "checkOutDate": "2025-07-31",
      "occupancy": {
        "guestAges": "30,30" 
      },
      "rates": {
        "netPrice": 150.70,
        "tax": 10.00,
        "grossPrice": 160.70,
        "payAtProperty": 10.00,
        "dailyPrice": [
          150.7
        ],
        "dailyTax": [
          10
        ]
      }
    },
    {
      "propertyCode": "29847",
      "ratePlanCode": "RP1",
      "roomTypeCode": "TPL",
      "checkInDate": "2025-07-30",
      "checkOutDate": "2025-07-31",
      "occupancy": {
        "guestAges": "30,30" 
      },
      "rates": {
        "netPrice": 150.70,
        "tax": 10.00,
        "grossPrice": 160.70,
        "payAtProperty": 10.00,
        "dailyPrice": [
          150.7
        ],
        "dailyTax": [
          10
        ]
      }
    }
  ]
}

Sample Response

Single Room Success Response

{
    "quote": {
        "aggregateGrossPrice": 330.18,
        "aggregateNetPrice": 300.17,
        "aggregateTax": 30.01,
        "aggregatePayAtProperty": 50,
        "consolidatedComments": "Free Breakfast. A Resort Fee totaling EUR50.00 will be charged for the stay. Mandatory Charge. Plus applicable taxes.. Hotel Check In Policy: Major credit card required at check-in for deposit and incidentals. Any additional fees such as parking, pet fees, etc. are solely at the discretion of the hotel, are subject to change at any point and should be paid directly by the guest.. Minimum adult age at check in is 21 years.",
        "rooms": [
            {
                "htIdentifier": "6131514161|1312101315121|1419131812141|121012131-112-11101|121012131-112-112|1816101c121e16131-1e1816131-141d1f131-191a16191-131416191715191d1b13201|1116192315111814131113191|1O1D1C22131|1K111",
                "grossPriceChanged": false,
                "message": "Confirm Price Success. Please proceed to Book stage.",
                "cancellationPolicies": [
                    {
                        "startWindowTime": "2023-11-09 23:59:00",
                        "endWindowTime": "2023-11-10 16:00:00",
                        "currency": "EUR",
                        "cancellationCharge": 330.18,
                        "timeZone": "Europe/Istanbul"
                    }
                ],
                "mealplanOptions" : {
                    "mealplanDescription": "Free Breakfast",
                    "mealplanCode": "BBF",
                    "mealplanName": "Free Breakfast"
                },
                "rates": {
                    "bar": null,
                    "binding": null,
                    "commissionable": false,
                    "commissionAmount": null,
                    "currency": "EUR",
                    "netPrice": 300.17,
                    "tax": 30.01,
                    "grossPrice": 330.18,
                    "payAtProperty": 50,
                    "dailyPrice": [
                        300.17
                    ],
                    "dailyTax": [
                        30.01
                    ],
                    "aggregateTaxInfo": {
                        "payAtBooking": [
                            {
                                "description": null,
                                "name": "percent",
                                "currency": "EUR",
                                "value": 30.01
                            }
                        ],
                        "payAtProperty": [
                            {
                                "description": "Mandatory Charge. Plus applicable taxes.",
                                "name": "Mandatory Charge",
                                "currency": "EUR",
                                "value": 50
                            }
                        ]
                    }
                }
            }
        ]
    }
}

Multi-Room Success Response

{
    "data": {
        "quote": {
            "aggregateGrossPrice": 321.4,
            "aggregateNetPrice": 301.4,
            "aggregateTax": 20,
            "aggregatePayAtProperty": 46.6,
            "consolidatedComments": " Room#1: A Resort Fee totaling USD23.30 will be charged at the hotel, for the stay.  .  Room#2: A Resort Fee totaling USD23.30 will be charged at the hotel, for the stay.  . Hotel Check In Policy: Major credit card required at check-in for deposit and incidentals. Any additional fees such as parking, pet fees, etc. are solely at the discretion of the hotel, are subject to change at any point and should be paid directly by the guest.. Minimum adult age at check in is 18 years.",
            "rooms": [
                {
                    "htIdentifier": "6151112151|13241118121|1510131917161|121012151-10171-13101|121012151-10171-13111|1c1e191b1c101b161-131814171-14131d191-1a1c1f151-1b1715111c27141516111a1|111715131816121413151218101|111|XR8s8zYSJlhOBtb6KQsjvw==|RvyNmvpK5kegJHZaK2TYkw==",
                    "grossPriceChanged": false,
                    "message": "Confirm Price Success. Please proceed to Book stage.",
                    "cancellationPolicies": [
                        {
                            "currency": "USD",
                            "startWindowTime": "2025-07-29 10:00:00",
                            "endWindowTime": "2025-07-30 10:00:00",
                            "cancellationCharge": 160.7,
                            "timeZone": "Europe/Berlin"
                        }
                    ],
                    "mealplanOptions": {
                        "mealplanDescription": "Room Only",
                        "mealplanCode": "RO",
                        "mealplanName": "Room Only"
                    },
                    "rates": {
                        "currency": "USD",
                        "dailyPrice": [
                            150.7
                        ],
                        "dailyTax": [
                            10
                        ],
                        "currencyCode": "USD",
                        "grossPrice": 160.7,
                        "netPrice": 150.7,
                        "tax": 10,
                        "aggregateTaxInfo": {
                            "payAtBooking": [
                                {
                                    "name": "CITY TAX",
                                    "value": 10,
                                    "currency": "USD",
                                    "description": ""
                                }
                            ],
                            "payAtProperty": [
                                {
                                    "name": "Tax2",
                                    "currency": "USD",
                                    "value": 13.3,
                                    "description": ""
                                },
                                {
                                    "name": "Resort Fee",
                                    "currency": "USD",
                                    "value": 10,
                                    "description": " "
                                }
                            ]
                        },
                        "payAtProperty": 23.3,
                        "taxInfo": {
                            "payAtBooking": [
                                {
                                    "date": "2025-07-30",
                                    "currency": "USD",
                                    "name": "CITY TAX",
                                    "description": "",
                                    "value": 10
                                }
                            ],
                            "payAtProperty": [
                                {
                                    "date": "2025-07-30",
                                    "currency": "USD",
                                    "name": "Resort Fee",
                                    "description": " ",
                                    "value": 10
                                },
                                {
                                    "date": "2025-07-30",
                                    "currency": "USD",
                                    "name": "Tax2",
                                    "description": "",
                                    "value": 13.3
                                }
                            ]
                        }
                    }
                },
                {
                    "htIdentifier": "6151112151|13241118121|1510131917161|121012151-10171-13101|121012151-10171-13111|1c1e191b1c101b161-131814171-14131d191-1a1c1f151-1b1715111c27141516111a1|1117151318161214131512192|121|XR8s8zYSJlhOBtb6KQsjvw==|RvyNmvpK5kegJHZaK2TYkw==",
                    "grossPriceChanged": false,
                    "message": "Confirm Price Success. Please proceed to Book stage.",
                    "cancellationPolicies": [
                        {
                            "currency": "USD",
                            "startWindowTime": "2025-07-29 10:00:00",
                            "endWindowTime": "2025-07-30 10:00:00",
                            "cancellationCharge": 160.7,
                            "timeZone": "Europe/Berlin"
                        }
                    ],
                    "mealplanOptions": {
                        "mealplanDescription": "Room Only",
                        "mealplanCode": "RO",
                        "mealplanName": "Room Only"
                    },
                    "rates": {
                        "currency": "USD",
                        "dailyPrice": [
                            150.7
                        ],
                        "dailyTax": [
                            10
                        ],
                        "currencyCode": "USD",
                        "grossPrice": 160.7,
                        "netPrice": 150.7,
                        "tax": 10,
                        "aggregateTaxInfo": {
                            "payAtBooking": [
                                {
                                    "name": "CITY TAX",
                                    "value": 10,
                                    "currency": "USD",
                                    "description": ""
                                }
                            ],
                            "payAtProperty": [
                                {
                                    "name": "Tax2",
                                    "currency": "USD",
                                    "value": 13.3,
                                    "description": ""
                                },
                                {
                                    "name": "Resort Fee",
                                    "currency": "USD",
                                    "value": 10,
                                    "description": " "
                                }
                            ]
                        },
                        "payAtProperty": 23.3,
                        "taxInfo": {
                            "payAtBooking": [
                                {
                                    "date": "2025-07-30",
                                    "currency": "USD",
                                    "name": "CITY TAX",
                                    "description": "",
                                    "value": 10
                                }
                            ],
                            "payAtProperty": [
                                {
                                    "date": "2025-07-30",
                                    "currency": "USD",
                                    "name": "Resort Fee",
                                    "description": " ",
                                    "value": 10
                                },
                                {
                                    "date": "2025-07-30",
                                    "currency": "USD",
                                    "name": "Tax2",
                                    "description": "",
                                    "value": 13.3
                                }
                            ]
                        }
                    }
                }
            ]
        }
    }
}

Sample Error Response

{
    "errors": [
        {
            "message": "Property not found",
            "extensions": {
                "errorCode": 1117
            }
        }
    ],
    "data": {
        "quote": null
    }
}