Su API Documentation
  • Su Overview
    • Su API Introduction
  • Su Channel Manager
    • Getting Started
      • Certification
      • Authentication
    • Content
      • Property
      • Room Type
      • Rate Plan
      • Listing
        • Property Listing
        • Room Type Listing
        • Rate Plan Listing
        • Delete Property Listing
      • Image API
        • Create Images
        • Retrieve Images
        • Associate Images
    • Booking.com Content API
      • Booking.com
        • Contract - Introduction
          • Create Contract
          • Link/Retrieve Contract
          • Update Contract
          • Resend Contract
        • Property Management
          • Property Statuses
          • Property Detail
            • Create Property
            • Retrieve Property
            • Update Property
          • Contact Details
            • Set Contact
            • Retrieve Contact
            • Contact Profile Types
          • Property Settings
            • Retrieve Property Settings
            • Retrieve Property Settings Damage Programme
            • Retrieve City Tax Category For Property Settings
            • Create / Update Property Settings
            • Create / Update Property Settings - Specific Setting
          • Property Profile
            • Set Profile
            • Retrieve Property Profile
            • Set Hotelier Message
            • Retrieve Hotelier Message
            • Remove Hotelier-Message
          • Booking.com Property Status
            • Property Status Check
            • Property Status Open
            • Property Status Closed
          • Property Key Collection
            • Set CheckIn Methods
            • Retrieve CheckIn Method
            • Retrieve All Stream Variation
        • Images
          • Create Image
          • Retrieve All Images
          • Update Image Tags
          • Delete Image
          • Retrieve Associate Images
          • Associate Image
          • Unassociate Image
          • Ordering Image
          • Smart Ordering Image
          • Show Image
          • Retrieve Property Pending Photos based on photo-batch-id
          • Retrieve Image Tags
        • Facilities
          • Create/Update Facility
          • Retrieve Set Facility of Property and Room
          • Retrieve Supported Facilities
        • Property/Room Charges
          • Retrieve Property Charge Meta
          • Retrieve Property Charges
          • Retrieve Room Charges
          • Create Property Charges
        • Rate Plan
          • Set Rateplan
          • Retrieve Rateplan
      • Room API
        • Room Meta API
        • Room Set (Create/Update) API
        • Room Retrieve API
        • Room Deactivate API
      • Policies API
        • Create/Update Policies
        • Retrieve Policies
      • Bathroom API
        • Set Bathroom (Create and Update)
        • Remove/Disable Bathroom
        • Retrieve Bathroom
      • Product API
        • Product Meta
        • Product List
        • Product Create
        • Product Modify
        • Product Remove
        • Product Map Create (Room Based)
        • Product Map Modify (Room Based)
        • Product Map Create (Occupancy Based)
        • Product Map Modify (Occupancy Based)
        • Product Unmap
      • Property and Room License
        • Property License Retrieve All Rule (Without property id)
        • Property License Retrieve Rule (With property id)
        • Sending License Information of Property
        • Retrieve License Information of Property
        • Sending License Information of Room
        • Retrieve License Information of Room
      • BCIO (Booking.com Check-In / Check-Out Times)
      • PCT (Property Class Type Codes)
      • BCJT (Booking.com Job Titles)
      • PTT (Phone Technology Type Codes)
      • BCL (Booking.com Language Codes)
      • Currency Codes/Names
      • Country Codes/Names
      • BCPT (Booking.com Payment Type Codes)
    • Rates and Availability
    • Inventory Control
    • Reservations
      • New/Modified/Requested/Cancelled Retrievals
        • Request for Reservation Information
        • Response of Reservation Information
      • Reservation Using Push API
        • Reservations Notification Push
        • PUSH API Method
      • Reservation Notification
      • Request Booking
        • Accept/Confirm Request Booking
        • Deny/Cancel Request Booking
      • Booking Repull
        • List of Bookings
        • Refetch Booking
    • Logs
      • Update Logs
      • Failed Channel Logs
      • Rates & Inventory Logs (Future Date)
      • Bulk Rates & Inventory Logs (Future Date)
      • Resync OTA Updates (Failed)
      • OTA Rateplan Pull API
    • Users
      • Global Users
      • Chain Users
    • Channel Mapping Widget API
      • Generate a Token
      • Mapping Script
    • Reviews
    • Messaging
    • Reporting
      • Reporting - No Show (Booking.com & Goibibo)
      • Reporting - Invalid CC (Booking.com)
      • Reporting - Cancellation Due to Invalid CC (Booking.com)
      • Bulk ARI Update
      • Marketing Insight API - Booking.com
    • AirBnB
      • Cancel Reservation
        • Retrieve AirBnB Cancel Reservation Details API
        • Final AirBnB Cancel Reservation API
      • Notification
      • Trip Issue
    • My Booking Site
      • Confirm Reservation
      • Cancel Reservation
  • Su Token
    • Su Token - Introduction
    • Su Token - Authentication
    • Partner
    • Card
      • Card API
      • Card View API
      • Charge API
      • Card Collection
        • Get CC Collection (Generate Link)
        • Check Status of CC Collection
      • WIDGET
        • CC Collection Using Widget
  • Codes
    • Room Type Codes
    • Language Codes
    • Country Codes
    • Phone Technology Type Codes
    • Meal Plan Codes
    • Currency Codes
    • Channel or OTA Codes
    • Credit Card Type Codes
    • Time Zones
    • Error Codes
  • Versioning
  • Glossary of Terms
Powered by GitBook

STAAH Limited. 2024 © All Rights Reserved.

On this page
  • Endpoint
  • Sample Request
  • Response

Was this helpful?

Export as PDF
  1. Su Channel Manager
  2. Booking.com Content API
  3. Room API

Room Set (Create/Update) API

PreviousRoom Meta APINextRoom Retrieve API

Last updated 3 months ago

Was this helpful?

This endpoint is used to create or update room details within a property unit. When a request is made to this endpoint, it processes the provided room configuration data and either creates a new room unit or updates an existing one.


Endpoint

POST

https://connect-sandbox.su-api.com/SUAPI/jservice/bdc/room/set

Header

-app-id: YOUR_APP_ID
Authorization: YOUR_API_KEY
Content-Type:application/json
Header
Type
Required
Description

app-id

string

Yes

Your application ID. Required for authentication.

Authorization

string

Yes

Your API key. for authorization. Required for authentication.

Content-Type

string

Yes

Must be set to application/json.


Attributes

hotel_id string (Required)

Specifies the hotel ID for the property.


channel_hotel_id string (Required)

Specifies the channel-specific hotel ID for the property.


language_code string (Required)

The language_code parameter specifies the language in which the response should be provided or the language preference for the data.

The language_code must be a 2-letter ISO 639-1 language code (for example, "en" for English, "fr" for French, "de" for German).


room_request object (Required)

Contains the room-related configurations and details for the unit.

configuration object (Required)

Contains the configuration details for the unit type.

unit_type_id enumerated string (Required)

Specifies the unit type ID (for example, "1" for apartment).

rooms array (Required)

Contains details of the room types supported by the unit. An array of room objects.

type enumerated string (Required)

Specifies the room type supported by the unit.

Accepted values are:

  • BEDROOM_SUBROOM

  • LIVING_ROOM_SUBROOM

bed_configurations object (Conditional)

Contains details of the bed configuration for the room.

beds array (Required)

Contains the bed type and total number of beds available in the room.

bed_type_id enumerated integer (Required)

Specifies the bed type ID.

Accepted values are:

  • 1 for Single Bed

  • 2 for Double Bed

bed_count integer (Required)

Specifies the total number of beds of the specified type in the room.

is_default_configuration boolean (Required)

Specifies if the bed configuration is the default configuration for the room.


unit_name_id string (Required)

Specifies the unit name ID that is part of the unit type.

number_of_units integer (Optional)

Specifies the total number of units available at the property.

Default Value: 1


smoking_policy enumerated string (Optional)

Specifies the smoking policy in the unit.

Default Value: SMOKING_AND_NONSMOKING

Acceptable values include:

  • SMOKING_AND_NONSMOKING

  • NONSMOKING

  • SMOKING


size object (Optional)

Contains the unit size details.

Default Value: null

value integer (Required)

Specifies the unit size in the chosen unit.

unit enumerated string (Required)

Specifies the unit of measurement to represent the unit size.

partner_reference_name string (Optional)

Specifies a custom unit name visible in the extranet and API response.

Default Value: null

room_located_on_floors array (Optional) Specifies the floors where the unit is located. This is an array of integers representing the floor numbers.

Default Value: null

occupancy object (Optional)

Contains the occupancy details for the unit.

max_guests integer (Optional)

Specifies the maximum guest occupancy for the unit.

Default Value: 1

max_adults integer (Optional)

Specifies the maximum adult occupancy for the unit.

Default Value: 1

max_children integer (Optional)

Specifies the maximum child occupancy for the unit.

Default Value: 0

max_children_that_pay_children_rate integer (Optional)

Specifies the maximum number of children eligible for the child rate.

Default Value: 0

extra_beds_configuration object (Optional)

Contains details for extra bed configuration in the unit.

extra_beds integer (Optional)

Specifies the number of extra beds available on request per unit.

Default Value: 0

cribs integer (Optional)

Specifies the number of cribs available on request per unit.

Default Value: 0

is_crib_and_extra_bed_allowed boolean (Optional)

Specifies whether both cribs and extra beds are allowed to be requested simultaneously for the unit.

Default Value: false


Sample Request

Request Body to Create Room

{
   "hotel_id": "new1",
   "channel_hotel_id": "12915674",
   "language_code": "en",
   "room_request": {
       "configuration": {
           "unit_type_id": 1,
           "rooms": [
               {
                   "type": "BEDROOM_SUBROOM",
                   "bed_configurations": [
                       {
                           "beds": [
                               {
                                   "bed_type_id": 1,
                                   "bed_count": 255
                               }
                           ],
                           "is_default_configuration": true
                       }
                   ]
               },
               {
                   "type": "BEDROOM_SUBROOM",
                   "bed_configurations": [
                       {
                           "beds": [
                               {
                                   "bed_type_id": 1,
                                   "bed_count": 44
                               }
                           ],
                           "is_default_configuration": true
                       }
                   ]
               },
               {
                   "type": "LIVING_ROOM_SUBROOM",
                   "bed_configurations": [
                       {
                           "beds": [
                               {
                                   "bed_type_id": 1,
                                   "bed_count": 1
                               },
                               {
                                   "bed_type_id": 2,
                                   "bed_count": 2
                               }
                           ],
                           "is_default_configuration": true
                       }
                   ]
               }
           ]
       },
       "unit_name_id": 9,
       "number_of_units": 1,
       "smoking_policy": "SMOKING_AND_NONSMOKING",
       "size": {
           "value": 1,
           "unit": "SQM"
       },
       "partner_reference_name": "oijk",
       "floor_numbers_located_on": [
           0,1,2,3,5
       ],
       "occupancy": {
           "max_guests": 10,
           "max_adults": 5,
           "max_children": 5,
           "max_children_that_pay_children_rate": 5
       },
       "extra_beds_configuration": {
           "extra_beds": 1,
           "cribs": 1,
           "is_crib_and_extra_bed_allowed": true
       }
   }
}

Request Body to Update Room

channel_room_id is required when you update the unit.

{
   "hotel_id": "new1",
   "channel_hotel_id": "12915674",
   "channel_room_id": "1291567447",
   "language_code": "en",
   "room_request": {
       "configuration": {
           "unit_type_id": 1,
           "rooms": [
               {
                   "type": "BEDROOM_SUBROOM",
                   "bed_configurations": [
                       {
                           "beds": [
                               {
                                   "bed_type_id": 1,
                                   "bed_count": 255
                               }
                           ],
                           "is_default_configuration": true
                       }
                   ]
               },
               {
                   "type": "BEDROOM_SUBROOM",
                   "bed_configurations": [
                       {
                           "beds": [
                               {
                                   "bed_type_id": 1,
                                   "bed_count": 44
                               }
                           ],
                           "is_default_configuration": true
                       }
                   ]
               },
               {
                   "type": "LIVING_ROOM_SUBROOM",
                   "bed_configurations": [
                       {
                           "beds": [
                               {
                                   "bed_type_id": 1,
                                   "bed_count": 1
                               },
                               {
                                   "bed_type_id": 2,
                                   "bed_count": 2
                               }
                           ],
                           "is_default_configuration": true
                       }
                   ]
               }
           ]
       },
       "unit_name_id": 9,
       "number_of_units": 1,
       "smoking_policy": "SMOKING_AND_NONSMOKING",
       "size": {
           "value": 1,
           "unit": "SQM"
       },
       "partner_reference_name": "oijk",
       "floor_numbers_located_on": [
           0,1,2,3,5
       ],
       "occupancy": {
           "max_guests": 10,
           "max_adults": 5,
           "max_children": 5,
           "max_children_that_pay_children_rate": 5
       },
       "extra_beds_configuration": {
           "extra_beds": 1,
           "cribs": 1,
           "is_crib_and_extra_bed_allowed": true
       }
   }
}

Response

Sample Success Response

{
   "Status": "Success",
   "Data": {
       "channel_room_id": 1291567459,
       "configuration": {
           "unit_type_id": 1,
           "rooms": [
               {
                   "type": "BEDROOM_SUBROOM",
                   "bed_configurations": [
                       {
                           "beds": [
                               {
                                   "bed_type_id": 1,
                                   "bed_count": 255
                               }
                           ],
                           "is_default_configuration": true
                       }
                   ]
               },
               {
                   "type": "BEDROOM_SUBROOM",
                   "bed_configurations": [
                       {
                           "beds": [
                               {
                                   "bed_type_id": 1,
                                   "bed_count": 44
                               }
                           ],
                           "is_default_configuration": true
                       }
                   ]
               },
               {
                   "type": "LIVING_ROOM_SUBROOM",
                   "bed_configurations": [
                       {
                           "beds": [
                               {
                                   "bed_type_id": 1,
                                   "bed_count": 1
                               },
                               {
                                   "bed_type_id": 2,
                                   "bed_count": 2
                               }
                           ],
                           "is_default_configuration": true
                       }
                   ]
               }
           ]
       },
       "unit_name_id": 9,
       "number_of_units": 1,
       "smoking_policy": "SMOKING_AND_NONSMOKING",
       "size": {
           "value": 1,
           "unit": "SQM"
       },
       "partner_reference_name": "oijk",
       "floor_numbers_located_on": [
           0,
           1,
           2,
           3,
           5
       ],
       "occupancy": {
           "max_guests": 10,
           "max_adults": 5,
           "max_children": 5,
           "max_children_that_pay_children_rate": 5
       },
       "extra_beds_configuration": {
           "extra_beds": 1,
           "cribs": 1,
           "is_crib_and_extra_bed_allowed": true
       }
   },
   "Message": "Room Details Set Successfully",
   "Ruid": "d510fcce-6d2c-4cf4-87b6-4187800496b2"
}

Success Response Body Elements

data object

Contains details of the unit created.

channel_room_id integer

Specifies the channel-specific room ID for the unit.

This is the unique identifier for the room in the channel (for example, Booking.com) system.

unit_id string

Specifies the unit ID.

configuration object

Contains the unit configuration.

unit_type_id enumerated string

Specifies the unit type ID.

For example, to create an One-Bedroom Apartment unit, you must specify the unit type ID: 1.

rooms array

Contains the room details provided the unit type supports rooms (also known as subrooms).

type enumerated string

Specifies the room type supported by the unit type.

Supports the following values:

  • BEDROOM_SUBROOM

  • LIVING_ROOM_SUBROOM

  • GUEST_ROOM

bed_configurations object

Contains the details of the bed available in the room.

beds array

Contains the bed type and the total number of beds.

bed_type_id enumerated integer

Specifies the bed type ID that is supported by the unit type.

bed_count integer

Specifies the total number of beds available in the unit/room.

is_default_configuration boolean

Specifies whether the specified bed configuration is default for the unit/room.

unit_name_id string

Specifies the unit name ID that is part of the unit type.

number_of_units integer

Specifies the total number of rooms available at the property for the specified room type.

Default value: 1.

smoking_policy enumerated string

Specifies the smoking policy in the room.

Supports the following values:

  • SMOKING

  • NONSMOKING

  • SMOKING_AND_NONSMOKING

size object

Contains the unit size details.

value integer

Specifies the unit size in the chosen unit.

unit enumerated string

Specifies the unit of measurement to represent the unit size.

Supports the following values:

  • SQM

  • SQFT

partner_reference_name string

Specifies a custom unit name that is visible in the extranet and in the API response.

Default value: "" (an empty string).

floor_numbers_located_on array

Specifies the floor where the unit is located.

Default value: [] (an empty array).

occupancy object

Contains the occupancy details of the unit.

optional

max_guests integer

Specifies the maximum guest occupancy for the unit.

Maximum value: 50.

Default value: 1.

max_adults integer

Specifies the maximum adult occupancy for the unit.

Maximum value: 50.

Default value: 1.

The total occupancy (sum of adults and children) must not exceed the room's maximum guest occupancy (max_guests) limit.

max_children integer

Specifies the maximum child occupancy for the unit.

Maximum value: 49.

Default value: 0.

The total number of children should be less than the maximum number of guests.

max_children_that_pay_children_rate integer

Specifies the maximum number of children eligible for the child rate.

Maximum value: 49.

Default value: 0.

The number of children eligible for the child rate specified here cannot exceed the maximum child occupancy (max_children).

extra_beds_configuration object

Contains the extra beds details for the unit.

If not specified, the API specifies default values.

extra_beds integer

Specifies the total number of extra beds available on request per room/unit.

Default value: 0.

Maximum: 100.

cribs integer

Specifies the total number of extra cribs available on request per room/unit.

Default value: 0.

Maximum: 100.

is_crib_and_extra_bed_allowed integer

Specifies whether guests have the option of requesting both the extra bed and crib in the room/unit.

Default: false

Message string

A message receives within the response body. This will generally be an empty string if no additional information is needed.

Ruid string

Specifies the unique request ID.

You can share this ID with Booking.com customer support when you run into an issue. This can help in understanding what went wrong.

Errors

Sample Error Response 1

{
   "Errors": [
       {
           "Code": "400",
           "ShortText": "HotelCode: Invalid HotelCode ('NT711')"
       }
   ],
   "Status": "Fail"
}

Sample Error Response 2

{
   "Errors": [
       {
           "Code": "573",
           "ShortText": "channel-mapping not found for this property!"
       }
   ],
   "Status": "Fail"
}

Sample Error Response 3

When you pass invalid value for bedding type:

{
   "Status": "Fail",
   "Errors": [
       {
           "Code": "786",
           "ShortText": "rooms: type is invalid or not found at [0]"
       }
   ],
   "Message": "",
   "Ruid": ""
}

Error Response Body Elements

Status string

Indicates the result of the API call, which will be always "Fail" in case of an error response.


Error array

Array that contains details about any errors that occurred during the API call. Each object in the Errors array contains the following properties:

Code string

Specific error code that helps identify the type of error.

For example: "400" indicates a bad request.

ShortText string

A short description of the error.


Message string

A message providing more information about the error.


Ruid string

A unique identifier for tracking the request.