FlightGPT.inPartner portalBecome a partner

Hotels integration

FlightGPT calls your API when a traveller searches a place and dates, matches your hotels to the ones we list, and shows your rates with a deeplink to book. Implement the format below or send us your existing API documentation.

Availability request

We search by location. We send a POST with a JSON body and your authentication header.

POST https://api.youragency.in/fgpt/hotels/search
X-API-Key: <the key you issue us>
Content-Type: application/json

{
  "location": { "city": "Goa", "country": "IN", "lat": 15.5527, "lng": 73.7517 },
  "check_in": "2026-11-14",
  "check_out": "2026-11-16",
  "rooms": 1,
  "adults": 2,
  "children": 1,
  "child_ages": [7],
  "currency": "INR",
  "locale": "en-IN"
}

lat and lng are sent when we know the area the traveller asked for; otherwise they are null and you should search the city.

Availability response

{
  "hotels": [
    {
      "id": "GOA-10482",
      "name": "Seaview Palms Resort",
      "address": "Calangute Beach Road, Calangute",
      "city": "Goa", "country": "IN",
      "lat": 15.5439, "lng": 73.7553,
      "stars": 4,
      "image": "https://cdn.youragency.in/h/10482.jpg",
      "rates": [
        {
          "room": "Deluxe King Room",
          "board": "breakfast",
          "refundable": true,
          "pay_at_hotel": false,
          "total": 14160,
          "base": 12000, "taxes": 2160, "fees": 0,
          "currency": "INR",
          "deeplink": "https://www.youragency.in/hotels/10482?rate=DLXKG-BB&in=2026-11-14&out=2026-11-16&rooms=1&ad=2&ch=1&ages=7"
        }
      ]
    }
  ]
}
FieldMeaning
idYour hotel id. Keep it stable.
name, address, lat, lngRequired for matching. We match your hotel to ours by name and by distance (within about 600 m). Without coordinates the name has to match almost exactly.
stars, imageOptional. Used when we show your hotel on its own card.
rates[].totalRequired. Total for the whole stay, all rooms and guests, all mandatory taxes and fees included.
rates[].base, taxes, feesRecommended price breakdown. fees covers any mandatory hotel charges.
rates[].roomRoom name as the traveller will see it.
rates[].boardroom_only, breakfast, half_board, full_board or all_inclusive.
rates[].refundabletrue if free cancellation is possible.
rates[].pay_at_hoteltrue if the traveller pays at the property.
rates[].deeplinkRequired. https link to your booking page for this rate, dates, rooms and guests.

Rates without a positive INR total or an https deeplink are not shown.

Static data (optional, improves matching)

If you send us your hotel list — id, name, address, city, country, latitude and longitude at minimum, as CSV or JSON, or a URL we can fetch monthly — we can match your hotels ahead of time instead of per search. Images of at least 1000 px on the long side, amenities, star rating and check-in times help us show your hotels well.

Speed, caching and deeplinks