HotelContent API Documentation

Endpoint

POST https://hotelcontentconnect.withinearth.com/api/Static/HotelContent

Headers

KeyValue
Content-Typeapplication/json

Request Body

Common Structure

{
  "Token": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
  "Request": {
    // Request parameters
  }
}

Option 1: Filter by Country & Rating

{
  "Token": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
  "Request": { "CountryId": 13063, "Rating": 5 }
}

Request Fields

KeyValueRequiredAllowed ValuesDescription
CountryId int Yes For CountryId Use End Point: https://hotelcontentconnect.withinearth.com/api/Static/Countries
Request:
{
   "Token": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX"
 }
Country ID (e.g., 13063 = United Arab Emirates)
RatingintYes0,1,2,3,4,5Minimum hotel rating (e.g., 5)

Option 2: Top Selling Hotels


    {
    "Token": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
    "Request": {
    "TopSelling": "10K"
    "PageSize": 1000, //optional
    "PageNumber": 1 //optional
    }
    }

Request Fields

KeyValueRequiredAllowed ValuesDescription
TopSellingstringYes1,10,20,50,100,500,1K,5K,10K, 15K 20K, 30K … Up to 100K Returns a list of top-selling hotels, sorted by production volume.
PageSizeintNo1000,2000,3000,5000 Specifies the number of hotel records to return per page.
PageNumber int No 1,2,3,… etc Indicates which “page” of results to return.
The first page starts at 1. Used in combination with PageSize to determine the range of data to return based on the TopSelling.

⚠️ When TopSelling is used, CountryId and Rating must not be passed.

Response

The API returns an array of hotel objects.

Sample Response


    [
    {
    "hotelId": 10,
    "hotelName": "Swissotel Al Ghurair",
    "latitude": "25.26926",
    "longitude": "55.31705",
    "address": "Omar Bin Al Khattab Street, Dubai, Dubai, AE, 185051",
    "rating": 5,
    "countryId": 13063,
    "countryName": "United Arab Emirates",
    "iso2": "AE",
    "cityId": 13668,
    "cityName": "Dubai City",
    "vervoId": 39969111,
    "gimmonixID": 6846794,
    "propertyType": "Hotel",
    "chainName": "Accor",
    "agoda_V1": "406978",
    "bookingDotCom": "452354",
    "ean": "4595744",
    "hotelBedsV1": "187892",
    "we_TGX": "13063#10"
    }
    ]

Response Fields

FieldTypeDescription
hotelIdintUnique hotel ID
hotelNamestringHotel name
latitudestringLatitude (nullable)
longitudestringLongitude (nullable)
addressstringFull address (nullable)
ratingintHotel rating
countryIdintCountry ID
countryNamestringCountry name
iso2stringISO-2 country code
cityIdintCity ID
cityNamestringCity name
vervoIdintVervo mapping ID (nullable)
gimmonixIDintGimmonix mapping ID (nullable)
propertyTypestringProperty type (nullable)
chainNamestringHotel chain name (nullable)
agoda_V1stringAgoda mapping ID (nullable)
bookingDotComstringBooking.com mapping ID (nullable)
eanstringExpedia mapping ID (nullable)
hotelBedsV1stringHotelBeds mapping ID (nullable)
we_TGXstringWithinearth mapping ID for TGX client (countryId#hotelId)

Option 3: Get Data using RequestedSupplier ID

(1) RequestedSupplier Using TopSelling Hotels

{
  "Token": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
  "Request": { "TopSelling": "10K" , "RequestedSupplier": "XYZ"}
}
Or

(2) RequestedSupplier Using CountryId and Rating


    {
    "Token": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
    "Request": { "CountryId": 13063, "Rating": 5, "RequestedSupplier": "XYZ"}
    }

Request Fields

KeyValueRequiredAllowed ValuesDescription
TopSellingstringYes1,10,20,50,100,500,1K,5K,10K, 15K 20K, 30K … Up to 100K Returns a list of top-selling hotels, sorted by production volume.
RequestedSupplier string Yes For Get RequestedSupplier Use End Point: https://hotelcontentconnect.withinearth.com/api/Static/RequestedSupplier
Request:
{
   "Token": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX"
}
Returns a list of Suppliers
CountryId int Yes For CountryId Use End Point: https://hotelcontentconnect.withinearth.com/api/Static/Countries
Request:
{
  "Token": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX"
}
Country ID (e.g., 13063 = United Arab Emirates)
RatingintYes0,1,2,3,4,5Minimum hotel rating (e.g., 3)

⚠️ When TopSelling is used, CountryId and Rating must not be passed.

Response

The API returns an array of hotel objects.

Sample Response


    [
    {
    "hotelId": 10,
    "hotelName": "Swissotel Al Ghurair",
    "latitude": "25.26926",
    "longitude": "55.31705",
    "address": "Omar Bin Al Khattab Street, Dubai, Dubai, AE, 185051",
    "rating": 5,
    "countryId": 13063,
    "countryName": "United Arab Emirates",
    "iso2": "AE",
    "cityId": 13668,
    "cityName": "Dubai City",
    "vervoId": 39969111,
    "gimmonixID": 6846794,
    "propertyType": "Hotel",
    "chainName": "Accor",
    "agoda_V1": "406978",
    "bookingDotCom": "452354",
    "ean": "4595744",
    "hotelBedsV1": "187892",
    "we_TGX": "13063#10",
    "requestedSupplierID": "11913"
    }
    ]

Response Fields

FieldTypeDescription
hotelIdintUnique hotel ID
hotelNamestringHotel name
latitudestringLatitude (nullable)
longitudestringLongitude (nullable)
addressstringFull address (nullable)
ratingintHotel rating
countryIdintCountry ID
countryNamestringCountry name
iso2stringISO-2 country code
cityIdintCity ID
cityNamestringCity name
vervoIdintVervo mapping ID (nullable)
gimmonixIDintGimmonix mapping ID (nullable)
propertyTypestringProperty type (nullable)
chainNamestringHotel chain name (nullable)
agoda_V1stringAgoda mapping ID (nullable)
bookingDotComstringBooking.com mapping ID (nullable)
eanstringExpedia mapping ID (nullable)
hotelBedsV1stringHotelBeds mapping ID (nullable)
we_TGXstringWithinearth mapping ID for TGX client (countryId#hotelId)
requestedSupplierIDstringRequestedSupplier mapping ID (If not available then return "N/A")

Room Mapping Content API Documentation

Endpoint

POST https://hotelcontentconnect.withinearth.com/api/Static/RoomMapping

Headers

KeyValue
Content-Typeapplication/json

Request Structure

{
"Token": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
"Request": {
"HotelIds": "5,46"
}
}

Request Fields

FieldTypeDescription
HotelIdsstringComma-separated list of hotel IDs for which room content should be returned. (Max. 100 HotelID)

Sample Response


    [ 
      {
        "hotelId": 5,
        "roomId": "4021036-115",
        "roomName": "Double Room  Double OR Twin",
        "roomMaxOccupancy": 0,
        "roomSizeSqm": "25",
        "isSmoking": false,
        "roomType": "ROOM",
        "roomClass": "",
        "balcony": "",
        "bedTypes": "",
        "roomView": "",
        "roomDescriptions": "",
        "roomAmenities": [],
        "roomImages": []
        },
        {
        "hotelId": 46,
        "roomId": "4020950-9",
        "roomName": "Regal Club Suite With BALCONY KING",
        "roomMaxOccupancy": 3,
        "roomSizeSqm": "164",
        "isSmoking": false,
        "roomType": "SUITE",
        "roomClass": "REGAL",
        "balcony": "BALCONY",
        "bedTypes": "KING",
        "roomView": "",
        "roomDescriptions": "The suite and overlooks the sea or Dubai skyline. It includes a work desk with a leather seat, a 6-seater dining table, a living room with a flat-screen TV and a balcony with 2 sunbeds. The bedroom offers a seating area, a walk-in closet and a king size bed. The bathroom features a his and her separate walk-in shower, toiletries and a spa bath placed in the middle of the bathroom.\n\nThis suite includes: \n- Imperial Club Lounge access with complimentary daily continental breakfast, afternoon tea and evening canapes \n- Complimentary airport transfers to and from Dubai Airport \n- Complimentary access to Aquaventure Waterpark and The Lost Chambers Aquarium \n- Access to the private Imperial Club Beach \n- Access to the Kids Club & The Zone \n- Daily room service breakfast or enjoy our buffet \n- Complimentary access to the Fitness Centre and wet facilities \n- AED 50 gaming credit at Wavehouse for children \n- Preferential rates on marine animal experiences.",
        "roomAmenities": [
                {
                    "roomAmenitiesType": "Others",
                    "roomAmenitieName": "Furnished balcony or patio"
                },
                {
                    "roomAmenitiesType": "Others",
                    "roomAmenitieName": "Premium bedding"
                },
                {
                    "roomAmenitiesType": "Others",
                    "roomAmenitieName": "TV"
                }
        ],
        "roomImages": [
                {
                    "image": "https://i.travelapi.com/lodging/3000000/2240000/2235400/2235336/2f790297_z.jpg"
                }
         ]
       }
    ]

Response Fields

FieldTypeDescription
hotelIdintHotel ID to which the room belongs.
roomIdstringUnique room identifier mapped from suppliers.
roomNamestringName of the room.
roomMaxOccupancyintMaximum allowed occupancy for the room.
roomSizeSqmstringRoom size in square meters.
isSmokingboolTrue/False whether the room allows smoking.
roomTypestringType of the room (ROOM / SUITE / VILLA etc.).
roomClassstringClass/Category of room such as STANDARD, SUPERIOR, DELUXE.
balconystringIndicates if balcony is present.
bedTypesstringBed type(s) e.g., KING, QUEEN, TWIN.
roomViewstringView type such as SEA, CITY, GARDEN.
roomDescriptionsstringFull descriptive text provided by the property.
roomAmenitiesarrayList of amenities with type and name.
roomImagesarrayList of image URLs.