TABLE OF CONTENTS


Introduction

  • Get Guestroom: This API retrieves a list of guest rooms for a specified property within the system, providing detailed room information.
  • Get Guestroom Content with {guestRoomCode}: This API retrieves the content details of a specific guest room using the provided {guestroomCode}, allowing users to query a single room's information within a specified property.
  • POST Guestroom Content: This API performs a full update of guest room content in the system, replacing all existing data with the new submission for a specified property.



Get Guestroom

This API retrieves a list of guest rooms for a specified property within the system, providing detailed room information.



API Endpoints & Methods

Base URL: https://contentsolutions-supplier.derbysoftsec.com

HTTP method

URL

GET

/api/content/guest_rooms



Headers

Name

Type

Required

Description

Example

Authorization

String

required

Basic Authentication token for API access.

Basic Vz********MTI= 

Content-Type


String

required

Specifies the media type of the request.

application/json;charset=UTF-8



Query Parameters

Parameter

Type

Required

Description

Example

contextCode

String(query)

Yes

Context Code in DerbySoft's system.

DERBYDEMO

propertyCode

String(query)

Yes

Property code provided by content suppliers, only the following characters are allowed.

1. Digits (0-9) 

2. Uppercase letters (A-Z) 

3. Hyphen ('-')

BONITAPROPERTY



Response Parameters

ParameterTypeDescriptionExample
contextCodeStringContext Code in DerbySoft's system.DERBYDEMO
supplierCodeStringSupplier Code in DerbySoft's system.DERBYDEMO
propertyCodeStringProperty code provided by content suppliers, only the following characters are allowed.
1. Digits (0-9)
2. Uppercase letters (A-Z)
 3. Hyphen ('-')
BONITAPROPERTY
operateStatusStringIndicates the operational status of the property.
 Enum: [ ENABLED, PAUSED ]
ENABLED
guestRoomsList<RoomType>List of property room types.
guestRooms.codeStringUnique code identifying the room type.
guestRooms.quantityIntegerRoom quantity
guestRooms.sort
Room sort
guestRooms.roomTypeNameLangsList<I18N>Multilingual name of the room type name.
guestRooms.descriptionLangsList<I18N>Multilingual description of the room type.
guestRooms.areaIntegerRoom size in square units (feet/meters).
guestRooms.nameLangsList<I18N>Multilingual name of the type room name.
guestRooms.unitStringNumber of square units (feet or meters) that defines the size of a room type.
guestRooms.roomCategoryCodeStringRoom category (e.g., Moderate, Standard, Deluxe). Refer to OpenTravel Segment Category Code (SEG).
guestRooms.roomLocationCodeStringRoom location within the property (e.g., Near Exit, Low Floor). Refer to OpenTravel Room Location Type (RLT).
guestRooms.roomViewCodeStringRoom view type (e.g., Ocean View, Garden View). Refer to OpenTravel Room View Type (RVT).
guestRooms.windowBooleanIf true, the room has a window.
guestRooms.nonsmokingBooleanIf true, the room is non-smoking.
guestRooms.accessibleRoomBooleanIf true, the room is accessible.
guestRooms.occupancyObject<Occupancy>Maximum and minimum occupancy details.
guestRooms.occupancy.maxOccupancyIntegerMaximum guests allowed.
guestRooms.occupancy.minOccupancyIntegerMinimum guests required.
guestRooms.occupancy.maxAdultOccupancyIntegerMaximum number of adults allowed.
guestRooms.occupancy.maxChildOccupancyIntegerMaximum number of children allowed.
guestRooms.numberOfRoomObject
<NumberOfRoom>
Breakdown of room composition.
guestRooms.numberOfRoom.bedroomsIntegerNumber of bedrooms.
guestRooms.numberOfRoom.bathroomsIntegerNumber of bathrooms.
guestRooms.numberOfRoom.livingRoomsIntegerNumber of living rooms.
guestRooms.bedInformationObject
<BedInformation>
Details on bed types and availability.
guestRooms.bedInformation.maxRollawaysIntegerMaximum rollaway beds allowed.
guestRooms.bedInformation.maxCribsIntegerMaximum cribs allowed.
guestRooms.bedInformation.bedTypesList<BedType>List of available bed types.
guestRooms.bedInformation.bedTypes.codeStringBed type (e.g., Double, Queen, King). Refer to OpenTravel Bed Type Code (BED).
guestRooms.bedInformation.bedTypes.countIntegerNumber of beds of this type.
guestRooms.amenitiesList<Amenity>List of room amenities.
guestRooms.amenities.idStringUnique ID for the amenity.
guestRooms.amenities.codeStringAmenity type. Refer to OpenTravel Room Amenity Type (RMA).
guestRooms.amenities.detailLangsList<I18N>Multilingual details of the amenity.
guestRooms.amenities.descriptionLangsList<I18N>Multilingual description of the amenity.
guestRooms.amenities.includedBooleanIf true, the amenity is included in the room rate.
guestRooms.amenities.proximityCodeStringAmenity availability (onsite/offsite). Refer to OpenTravel Proximity Code (PRX).
guestRooms.amenities.quantityIntegerNumber of this amenity in the room.
guestRooms.amenities.operationSchedulesList
<OperationScheduleDate>
Amenity operating times and charges.
guestRooms.amenities.operationSchedules.
start
StringStart date.
 Must follow the format yyyy-MM-dd (Year-Month-Day), e.g., 2023-11-22.

guestRooms.amenities.operationSchedules.
end
StringEnd date.
 Must follow the format yyyy-MM-dd (Year-Month-Day), e.g., 2023-11-22.

guestRooms.amenities.operationSchedules.
operationTimes
List
<OperationScheduleTime>
List of operation times.
guestRooms.amenities.operationSchedules.
operationTimes.weekDays
List<String>Day of operation.
 Enum: [ MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY ]

guestRooms.amenities.operationSchedules.
operationTimes.start
StringStart time.
 Must follow the format HH:mm (Hour:Minute, 24-hour format), e.g., 10:22.

guestRooms.amenities.operationSchedules.
operationTimes.end
StringEnd time.
 Must follow the format HH:mm (Hour:Minute, 24-hour format), e.g., 10:22.

guestRooms.amenities.operationSchedules.
operationTimes.descriptionLangs
List<I18N>
OperationTime descriptions

guestRooms.amenities.operationSchedules.
charges
List<ServiceCharge>Charges for the amenity.
guestRooms.amenities.operationSchedules.
charges.amount
DoubleFixed fee amount.
guestRooms.amenities.operationSchedules.
charges.percent
DoubleFee percentage of total stay.
guestRooms.amenities.operationSchedules.
charges.currencyCode
StringCurrency code for the charge.
guestRooms.amenities.operationSchedules.
charges.unitCode
StringCharge unit. Refer to OpenTravel Charge Type (CHG).
guestRooms.amenities.operationSchedules.
charges.frequencyCode
StringFrequency of charge (e.g., Daily, Stay).
guestRooms.accessibleFeaturesList<Feature>Accessibility features of the room.
guestRooms.accessibleFeatures.idStringUnique ID.
guestRooms.accessibleFeatures.codeStringAccessibility feature. Refer to OpenTravel Disability Feature Code (PHY).
guestRooms.accessibleFeatures.detailLangsList<I18N>Multilingual details of accessibility features.
guestRooms.accessibleFeatures.quantityIntegerNumber of accessible units.
guestRooms.accessibleFeatures.unitStringUnit of measure (e.g., meters, feet).
guestRooms.accessibleFeatures.
chargeCurrencyCode
StringCurrency for accessibility-related charges.
guestRooms.accessibleFeatures.chargeAmountDoubleFixed charge amount.
guestRooms.accessibleFeatures.
descriptionLangs
List<I18N>Multilingual description of accessibility features.
guestRooms.securityFeaturesList<Feature>Security features available in the room.
guestRooms.securityFeatures.idStringUnique ID.
guestRooms.securityFeatures.codeStringSecurity feature type. Refer to OpenTravel Proximity Code (PRX).
guestRooms.securityFeatures.detailLangsList<I18N>Multilingual details of security features.
guestRooms.securityFeatures.quantityIntegerNumber of security features in the room.
guestRooms.securityFeatures.unitStringUnit of measure (e.g., meters, feet).
guestRooms.securityFeatures.
chargeCurrencyCode
StringCurrency for security-related charges.
guestRooms.securityFeatures.chargeAmountDoubleFixed charge amount.
guestRooms.securityFeatures.descriptionLangsList<I18N>Multilingual description of security features.
guestRooms.imagesList<Image>Collection of multimedia images.
guestRooms.images.categoryCodeStringImage category. Refer to OpenTravel Picture Category Code (PIC).
guestRooms.images.sortIntegerDisplay order of images.
guestRooms.images.sourceIdStringUnique ID of the image source (e.g., original file identifier).
guestRooms.images.captionLangsList<I18N>Multilingual image captions.
guestRooms.images.applicableStartDate
Format: yyyy-MM-dd
Start date or recurring start period when the image is relevant (e.g., season start).
guestRooms.images.applicableEndDate
Format: yyyy-MM-dd
End date or recurring end period when the image is relevant (e.g., season end).
guestRooms.images.mainUrl
The main image url is required.
guestRooms.images.itemsList<ImageItem>List of image file variations.
guestRooms.images.items.urlStringURL of the image.
guestRooms.images.items.widthIntegerImage width (unit defined by UOM).
guestRooms.images.items.heightIntegerImage height (unit defined by UOM).
guestRooms.images.items.sizeStringImage file size (e.g., MB, KB).
guestRooms.images.items.unitStringUnit of measurement. Refer to OpenTravel Unit of Measure (UOM).
guestRooms.images.items.fileSizeIntegerFile size in bytes.
guestRooms.images.items.formatCodeStringImage format (e.g., JPEG, PNG). Refer to OpenTravel Content Format Code (CFC).
guestRooms.images.items.resolutionIntegerImage resolution in DPI (Dots Per Inch).
guestRooms.images.items.recordIdStringUnique identifier for this image record.



Example Response

Success Response (HTTP Status 200)
{
  "data": {
    "contextCode": "derbydemo",
    "supplierCode": "DERBYHOTEL",
    "propertyCode": "derbydemo001",
    "operateStatus": "ENABLED",
    "guestRooms": [
      {
        "code": "STD-KING",
        "roomId": "DSDH-STD-001",
        "codeContext": "ROOM_TYPE",
        "roomTypeNameLangs": [
          {
            "languageCode": "EN-US",
            "value": "Standard King Room"
          }
        ],
        "nameLangs": [
          {
            "languageCode": "EN-US",
            "value": "Standard King Room - City View"
          }
        ],
        "descriptionLangs": [
          {
            "languageCode": "EN-US",
            "value": "30 sqm room with king-size bed, free Wi-Fi, flat-screen TV, and rain shower. Non-smoking."
          }
        ],
        "quantity": 50,
        "accessibleIndicator": false,
        "area": 30,
        "sort": 1,
        "unit": "SQUARE_METER",
        "roomCategoryCode": "STANDARD",
        "roomLocationCode": "MID_FLOOR",
        "roomViewCode": "CITY",
        "window": true,
        "nonsmoking": true,
        "accessibleRoom": false,
        "occupancy": {
          "maxOccupancy": 2,
          "minOccupancy": 1,
          "maxAdultOccupancy": 2,
          "maxChildOccupancy": 1
        },
        "numberOfRoom": {
          "bedrooms": 1,
          "bathrooms": 1,
          "livingRooms": 0
        },
        "bedInformation": {
          "bedTypes": [
            {
              "code": "KING",
              "count": 1
            }
          ],
          "maxRollaways": 0,
          "maxCribs": 1
        },
        "amenities": [
          {
            "id": "RM-AM-001",
            "code": "WIFI",
            "detailLangs": [
              {
                "languageCode": "EN-US",
                "value": "Free High-Speed Wi-Fi"
              }
            ],
            "descriptionLangs": [
              {
                "languageCode": "EN-US",
                "value": "Complimentary 1Gbps wireless internet"
              }
            ],
            "included": true,
            "proximityCode": "IN_ROOM",
            "quantity": 0,
            "operationSchedules": [],
            "features": []
          }
        ],
        "accessibleFeatures": [],
        "securityFeatures": [
          {
            "id": "RM-SEC-001",
            "code": "SAFE",
            "detailLangs": [
              {
                "languageCode": "EN-US",
                "value": "In-Room Safe"
              }
            ],
            "descriptionLangs": [
              {
                "languageCode": "EN-US",
                "value": "Laptop-sized safe for valuables"
              }
            ],
            "quantity": 1,
            "unit": "PIECE",
            "chargeCurrencyCode": "",
            "chargeAmount": 0
          }
        ],
        "images": [
          {
            "mainUrl": "https://www.derbysoftdemohotel.com/images/rooms/standard-king.jpg",
            "richMediaUrl": "",
            "categoryCode": "ROOM_INTERIOR",
            "sort": 1,
            "sourceId": "RM-IMG-001",
            "captionLangs": [
              {
                "languageCode": "EN-US",
                "value": "Standard King Room"
              }
            ],
            "applicableStart": "2024-01-01",
            "applicableEnd": "2024-12-31",
            "items": [
              {
                "url": "https://www.derbysoftdemohotel.com/images/rooms/standard-king-1.jpg",
                "width": 1920,
                "height": 1080,
                "size": "LARGE",
                "unit": "PIXEL",
                "fileSize": 1800,
                "resolution": 300,
                "recordId": "RM-IMG-ITEM-001",
                "formatCode": "JPG"
              }
            ],
            "lastUpdated": "2023-12-01"
          }
        ],
        "extensions": {
          "additionalProp1": "Coffee/Tea Maker",
          "additionalProp2": "",
          "additionalProp3": ""
        }
      }
    ]
  }
}

Error Response (HTTP Status 403)
{
    "error": {
        "code": "FORBIDDEN",
        "message": "Lack of permissions, please configure permissions."
    }
}


Error Response (HTTP Status 400)
{
    "error": {
        "code": "MissingField",
        "message": "Required request parameter 'contextCode' for method parameter type String is not present"
    }
}

Get Guestroom Content with {guestRoomCode}

This API retrieves the content details of a specific guest room using the provided {guestroomCode}, allowing users to query a single room's information within a specified property.



API Endpoints & Methods

Base URL: https://contentsolutions-supplier.derbysoftsec.com

HTTP method

URL

GET

/api/content/guest_rooms/{guestRoomCode}



Headers

NameTypeRequiredDescriptionExample

Authorization

String

required

Basic Authentication token for API access.

Basic Vz********MTI= 

Content-Type


String

required

Specifies the media type of the request.

application/json;charset=UTF-8



Query Parameters

ParameterTypeRequiredDescriptionExample

guestRoomCode

String(path)

Yes

Unique code identifying the room type.

DLX-KING

contextCode

String(query)

Yes

Context Code in DerbySoft's system.

DERBYDEMO

propertyCode

String(query)

Yes

Property code provided by content suppliers, only the following characters are allowed.

1. Digits (0-9) 

2. Uppercase letters (A-Z) 

3. Hyphen ('-')

BONITAPROPERTY



Response Parameters

Refers to [GET Guestroom] Response Parameters.

 


Example Response

Success Response (HTTP Status 200)

{
  "data": {
    "contextCode": "derbydemo",
    "supplierCode": "DERBYHOTEL",
    "propertyCode": "derbydemo001",
    "operateStatus": "ENABLED",
    "guestRooms": [
      {
        "code": "STD-KING",
        "roomId": "DSDH-STD-001",
        "codeContext": "ROOM_TYPE",
        "roomTypeNameLangs": [
          {
            "languageCode": "EN-US",
            "value": "Standard King Room"
          }
        ],
        "nameLangs": [
          {
            "languageCode": "EN-US",
            "value": "Standard King Room - City View"
          }
        ],
        "descriptionLangs": [
          {
            "languageCode": "EN-US",
            "value": "30 sqm room with king-size bed, free Wi-Fi, flat-screen TV, and rain shower. Non-smoking."
          }
        ],
        "quantity": 50,
        "accessibleIndicator": false,
        "area": 30,
        "sort": 1,
        "unit": "SQUARE_METER",
        "roomCategoryCode": "STANDARD",
        "roomLocationCode": "MID_FLOOR",
        "roomViewCode": "CITY",
        "window": true,
        "nonsmoking": true,
        "accessibleRoom": false,
        "occupancy": {
          "maxOccupancy": 2,
          "minOccupancy": 1,
          "maxAdultOccupancy": 2,
          "maxChildOccupancy": 1
        },
        "numberOfRoom": {
          "bedrooms": 1,
          "bathrooms": 1,
          "livingRooms": 0
        },
        "bedInformation": {
          "bedTypes": [
            {
              "code": "KING",
              "count": 1
            }
          ],
          "maxRollaways": 0,
          "maxCribs": 1
        },
        "amenities": [
          {
            "id": "RM-AM-001",
            "code": "WIFI",
            "detailLangs": [
              {
                "languageCode": "EN-US",
                "value": "Free High-Speed Wi-Fi"
              }
            ],
            "descriptionLangs": [
              {
                "languageCode": "EN-US",
                "value": "Complimentary 1Gbps wireless internet"
              }
            ],
            "included": true,
            "proximityCode": "IN_ROOM",
            "quantity": 0,
            "operationSchedules": [],
            "features": []
          }
        ],
        "accessibleFeatures": [],
        "securityFeatures": [
          {
            "id": "RM-SEC-001",
            "code": "SAFE",
            "detailLangs": [
              {
                "languageCode": "EN-US",
                "value": "In-Room Safe"
              }
            ],
            "descriptionLangs": [
              {
                "languageCode": "EN-US",
                "value": "Laptop-sized safe for valuables"
              }
            ],
            "quantity": 1,
            "unit": "PIECE",
            "chargeCurrencyCode": "",
            "chargeAmount": 0
          }
        ],
        "images": [
          {
            "mainUrl": "https://www.derbysoftdemohotel.com/images/rooms/standard-king.jpg",
            "richMediaUrl": "",
            "categoryCode": "ROOM_INTERIOR",
            "sort": 1,
            "sourceId": "RM-IMG-001",
            "captionLangs": [
              {
                "languageCode": "EN-US",
                "value": "Standard King Room"
              }
            ],
            "applicableStart": "2024-01-01",
            "applicableEnd": "2024-12-31",
            "items": [
              {
                "url": "https://www.derbysoftdemohotel.com/images/rooms/standard-king-1.jpg",
                "width": 1920,
                "height": 1080,
                "size": "LARGE",
                "unit": "PIXEL",
                "fileSize": 1800,
                "resolution": 300,
                "recordId": "RM-IMG-ITEM-001",
                "formatCode": "JPG"
              }
            ],
            "lastUpdated": "2023-12-01"
          }
        ],
        "extensions": {
          "additionalProp1": "Coffee/Tea Maker",
          "additionalProp2": "",
          "additionalProp3": ""
        }
      }
    ]
  }
}

Error Response (HTTP Status 403)

{
    "error": {
        "code": "FORBIDDEN",
        "message": "Lack of permissions, please configure permissions."
    }
}

Error Response (HTTP Status 400)

{
    "error": {
        "code": "MissingField",
        "message": "Required request parameter 'contextCode' for method parameter type String is not present"
    }
}



POST Guestroom Content

This API performs a full update of guest room content in the system, replacing all existing data with the new submission for a specified property.



API Endpoints & Methods

Base URL: https://contentsolutions-supplier.derbysoftsec.com

HTTP method

URL

POST

/api/content/guest_rooms/batch_save



Headers

NameTypeRequiredDescriptionExample

Authorization

String

required

Basic Authentication token for API access.

Basic Vz********MTI= 

Content-Type


String

required

Specifies the media type of the request.

application/json;charset=UTF-8



Query Parameters

ParameterTypeDescriptionExample
contextCodeStringContext Code in DerbySoft's system.DERBYDEMO
propertyCodeStringProperty code provided by content suppliers, only the following characters are allowed.
1. Digits (0-9)
2. Uppercase letters (A-Z)
 3. Hyphen ('-')
BONITAPROPERTY
guestRoomsList<RoomType>List of property room types.
guestRooms.codeStringUnique code identifying the room type.
guestRooms.quantityIntegerRoom quantity
guestRooms.sort
Room sort
guestRooms.roomTypeNameLangsList<I18N>Multilingual name of the room type name.
guestRooms.descriptionLangsList<I18N>Multilingual description of the room type.
guestRooms.areaIntegerRoom size in square units (feet/meters).
guestRooms.nameLangsList<I18N>Multilingual name of the type room name.
guestRooms.unitStringNumber of square units (feet or meters) that defines the size of a room type.
guestRooms.roomCategoryCodeStringRoom category (e.g., Moderate, Standard, Deluxe). Refer to OpenTravel Segment Category Code (SEG).
guestRooms.roomLocationCodeStringRoom location within the property (e.g., Near Exit, Low Floor). Refer to OpenTravel Room Location Type (RLT).
guestRooms.roomViewCodeStringRoom view type (e.g., Ocean View, Garden View). Refer to OpenTravel Room View Type (RVT).
guestRooms.windowBooleanIf true, the room has a window.
guestRooms.nonsmokingBooleanIf true, the room is non-smoking.
guestRooms.accessibleRoomBooleanIf true, the room is accessible.
guestRooms.occupancyObject<Occupancy>Maximum and minimum occupancy details.
guestRooms.occupancy.maxOccupancyIntegerMaximum guests allowed.
guestRooms.occupancy.minOccupancyIntegerMinimum guests required.
guestRooms.occupancy.maxAdultOccupancyIntegerMaximum number of adults allowed.
guestRooms.occupancy.maxChildOccupancyIntegerMaximum number of children allowed.
guestRooms.numberOfRoomObject<NumberOfRoom>Breakdown of room composition.
guestRooms.numberOfRoom.bedroomsIntegerNumber of bedrooms.
guestRooms.numberOfRoom.bathroomsIntegerNumber of bathrooms.
guestRooms.numberOfRoom.livingRoomsIntegerNumber of living rooms.
guestRooms.bedInformationObject<BedInformation>Details on bed types and availability.
guestRooms.bedInformation.maxRollawaysIntegerMaximum rollaway beds allowed.
guestRooms.bedInformation.maxCribsIntegerMaximum cribs allowed.
guestRooms.bedInformation.bedTypesList<BedType>List of available bed types.
guestRooms.bedInformation.bedTypes.codeStringBed type (e.g., Double, Queen, King). Refer to OpenTravel Bed Type Code (BED).
guestRooms.bedInformation.bedTypes.countIntegerNumber of beds of this type.
guestRooms.amenitiesList<Amenity>List of room amenities.
guestRooms.amenities.idStringUnique ID for the amenity.
guestRooms.amenities.codeStringAmenity type. Refer to OpenTravel Room Amenity Type (RMA).
guestRooms.amenities.detailLangsList<I18N>Multilingual details of the amenity.
guestRooms.amenities.descriptionLangsList<I18N>Multilingual description of the amenity.
guestRooms.amenities.includedBooleanIf true, the amenity is included in the room rate.
guestRooms.amenities.proximityCodeStringAmenity availability (onsite/offsite). Refer to OpenTravel Proximity Code (PRX).
guestRooms.amenities.quantityIntegerNumber of this amenity in the room.
guestRooms.amenities.operationSchedulesList
<OperationScheduleDate>
Amenity operating times and charges.
guestRooms.amenities.operationSchedules.startStringStart date.
 Must follow the format yyyy-MM-dd (Year-Month-Day), e.g., 2023-11-22.

guestRooms.amenities.operationSchedules.endStringEnd date.
 Must follow the format yyyy-MM-dd (Year-Month-Day), e.g., 2023-11-22.

guestRooms.amenities.operationSchedules.
operationTimes
List
<OperationScheduleTime>
List of operation times.
guestRooms.amenities.operationSchedules.
operationTimes.weekDays
List<String>Day of operation.
 Enum: [ MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY ]

guestRooms.amenities.operationSchedules.
operationTimes.start
StringStart time.
 Must follow the format HH:mm (Hour:Minute, 24-hour format), e.g., 10:22.

guestRooms.amenities.operationSchedules.
operationTimes.end
StringEnd time.
 Must follow the format HH:mm (Hour:Minute, 24-hour format), e.g., 10:22.

guestRooms.amenities.operationSchedules.chargesList<ServiceCharge>Charges for the amenity.
guestRooms.amenities.operationSchedules.
charges.amount
DoubleFixed fee amount.
guestRooms.amenities.operationSchedules.
charges.percent
DoubleFee percentage of total stay.
guestRooms.amenities.operationSchedules.
charges.currencyCode
StringCurrency code for the charge.
guestRooms.amenities.operationSchedules.
charges.unitCode
StringCharge unit. Refer to OpenTravel Charge Type (CHG).
guestRooms.amenities.operationSchedules.
charges.frequencyCode
StringFrequency of charge (e.g., Daily, Stay).
guestRooms.accessibleFeaturesList<Feature>Accessibility features of the room.
guestRooms.accessibleFeatures.idStringUnique ID.
guestRooms.accessibleFeatures.codeStringAccessibility feature. Refer to OpenTravel Disability Feature Code (PHY).
guestRooms.accessibleFeatures.detailLangsList<I18N>Multilingual details of accessibility features.
guestRooms.accessibleFeatures.quantityIntegerNumber of accessible units.
guestRooms.accessibleFeatures.unitStringUnit of measure (e.g., meters, feet).
guestRooms.accessibleFeatures.chargeCurrencyCodeStringCurrency for accessibility-related charges.
guestRooms.accessibleFeatures.chargeAmountDoubleFixed charge amount.
guestRooms.accessibleFeatures.descriptionLangsList<I18N>Multilingual description of accessibility features.
guestRooms.securityFeaturesList<Feature>Security features available in the room.
guestRooms.securityFeatures.idStringUnique ID.
guestRooms.securityFeatures.codeStringSecurity feature type. Refer to OpenTravel Proximity Code (PRX).
guestRooms.securityFeatures.detailLangsList<I18N>Multilingual details of security features.
guestRooms.securityFeatures.quantityIntegerNumber of security features in the room.
guestRooms.securityFeatures.unitStringUnit of measure (e.g., meters, feet).
guestRooms.securityFeatures.chargeCurrencyCodeStringCurrency for security-related charges.
guestRooms.securityFeatures.chargeAmountDoubleFixed charge amount.
guestRooms.securityFeatures.descriptionLangsList<I18N>Multilingual description of security features.
guestRooms.imagesList<Image>Collection of multimedia images.
guestRooms.images.categoryCodeStringImage category. Refer to OpenTravel Picture Category Code (PIC).
guestRooms.images.sortIntegerDisplay order of images.
guestRooms.images.sourceIdStringUnique ID of the image source (e.g., original file identifier).
guestRooms.images.captionLangsList<I18N>Multilingual image captions.
guestRooms.images.applicableStartDate
Format: yyyy-MM-dd
Start date or recurring start period when the image is relevant (e.g., season start).
guestRooms.images.applicableEndDate
Format: yyyy-MM-dd
End date or recurring end period when the image is relevant (e.g., season end).
guestRooms.images.mainUrl
The main image url is required.
guestRooms.images.itemsList<ImageItem>List of image file variations.
guestRooms.images.items.urlStringURL of the image.
guestRooms.images.items.widthIntegerImage width (unit defined by UOM).
guestRooms.images.items.heightIntegerImage height (unit defined by UOM).
guestRooms.images.items.sizeStringImage file size (e.g., MB, KB).
guestRooms.images.items.unitStringUnit of measurement. Refer to OpenTravel Unit of Measure (UOM).
guestRooms.images.items.fileSizeIntegerFile size in bytes.
guestRooms.images.items.formatCodeStringImage format (e.g., JPEG, PNG). Refer to OpenTravel Content Format Code (CFC).
guestRooms.images.items.resolutionIntegerImage resolution in DPI (Dots Per Inch).
guestRooms.images.items.recordIdStringUnique identifier for this image record.



Example Request

{
  "contextCode": "HOTEL",
  "propertyCode": "DSDH001",
  "guestRooms": [
    {
      "code": "STD-KING",
      "roomId": "DSDH-STD-001",
      "codeContext": "ROOM_TYPE",
      "roomTypeNameLangs": [
        {
          "languageCode": "EN-US",
          "value": "Standard King Room"
        }
      ],
      "nameLangs": [
        {
          "languageCode": "EN-US",
          "value": "Standard King Room - City View"
        }
      ],
      "descriptionLangs": [
        {
          "languageCode": "EN-US",
          "value": "30 sqm room with king-size bed, free Wi-Fi, flat-screen TV, and rain shower. Non-smoking."
        }
      ],
      "quantity": 50,
      "accessibleIndicator": false,
      "area": 30,
      "sort": 1,
      "unit": "SQUARE_METER",
      "roomCategoryCode": "STANDARD",
      "roomLocationCode": "MID_FLOOR",
      "roomViewCode": "CITY",
      "window": true,
      "nonsmoking": true,
      "accessibleRoom": false,
      "occupancy": {
        "maxOccupancy": 2,
        "minOccupancy": 1,
        "maxAdultOccupancy": 2,
        "maxChildOccupancy": 1
      },
      "numberOfRoom": {
        "bedrooms": 1,
        "bathrooms": 1,
        "livingRooms": 0
      },
      "bedInformation": {
        "bedTypes": [
          {
            "code": "KING",
            "count": 1
          }
        ],
        "maxRollaways": 0,
        "maxCribs": 1
      },
      "amenities": [
        {
          "id": "RM-AM-001",
          "code": "WIFI",
          "detailLangs": [
            {
              "languageCode": "EN-US",
              "value": "Free High-Speed Wi-Fi"
            }
          ],
          "descriptionLangs": [
            {
              "languageCode": "EN-US",
              "value": "Complimentary 1Gbps wireless internet"
            }
          ],
          "included": true,
          "proximityCode": "IN_ROOM",
          "quantity": 0,
          "operationSchedules": [],
          "features": []
        }
      ],
      "accessibleFeatures": [],
      "securityFeatures": [
        {
          "id": "RM-SEC-001",
          "code": "SAFE",
          "detailLangs": [
            {
              "languageCode": "EN-US",
              "value": "In-Room Safe"
            }
          ],
          "descriptionLangs": [
            {
              "languageCode": "EN-US",
              "value": "Laptop-sized safe for valuables"
            }
          ],
          "quantity": 1,
          "unit": "PIECE",
          "chargeCurrencyCode": "",
          "chargeAmount": 0
        }
      ],
      "images": [
        {
          "mainUrl": "https://www.derbysoftdemohotel.com/images/rooms/standard-king.jpg",
          "richMediaUrl": "",
          "categoryCode": "ROOM_INTERIOR",
          "sort": 1,
          "sourceId": "RM-IMG-001",
          "captionLangs": [
            {
              "languageCode": "EN-US",
              "value": "Standard King Room"
            }
          ],
          "applicableStart": "2024-01-01",
          "applicableEnd": "2024-12-31",
          "items": [
            {
              "url": "https://www.derbysoftdemohotel.com/images/rooms/standard-king-1.jpg",
              "width": 1920,
              "height": 1080,
              "size": "LARGE",
              "unit": "PIXEL",
              "fileSize": 1800,
              "resolution": 300,
              "recordId": "RM-IMG-ITEM-001",
              "formatCode": "JPG"
            }
          ],
          "lastUpdated": "2023-12-01"
        }
      ],
      "extensions": {
        "additionalProp1": "Coffee/Tea Maker",
        "additionalProp2": "",
        "additionalProp3": ""
      }
    }
  ]
}


Response Parameters

ParameterTypeDescriptionExample

contextCode

String

Context Code in DerbySoft's system.

DERBYDEMO

supplierCode

String

Supplier Code in DerbySoft's system.

DERBYDEMO

propertyCode

String

Property code provided by content suppliers, only the following characters are allowed.

1. Digits (0-9) 

2. Uppercase letters (A-Z) 

3. Hyphen ('-')

BONITAPROPERTY

operateStatus

String

Indicates the operational status of the property.

Enum: [ ENABLED, PAUSED ]

ENABLED



Example Response

Success Response (HTTP Status 200)

{
    "data": {
        "contextCode": "derbydemo",
        "supplierCode": "DERBYHOTEL",
        "propertyCode": "derbydemo001",
        "operateStatus": "ENABLED"
    }
}


Error Response (HTTP Status 403)

{
    "error": {
        "code": "FORBIDDEN",
        "message": "Lack of permissions, please configure permissions."
    }
}

Error Response (HTTP Status 400)

{
    "error": {
        "code": "MissingField",
        "message": "Required request parameter 'contextCode' for method parameter type String is not present"
    }
}