Product Map Modify (Occupancy Based)

This endpoint modifies an existing rate plan mapping for a hotel, adjusting pricing and availability for multiple guest occupancy levels.


Endpoint

POST

https://connect-sandbox.su-api.com/SUAPI/jservice/bdc/product/map
-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

action string (Required)

The type of operation to be performed.

In this case, the action is "modify", which indicates that a new room rate plan is being created for the specified hotel and room.


rmid integer (Required)

A unique identifier for the modification request. This ID helps in tracking the modification.


hotel_id string (Required)

The unique identifier for the hotel. This field associates the request with a specific hotel in the system, linking the room rate to the right hotel.


room_id string (Required)

The identifier for the specific room type. This links the rate plan to a particular room type in the hotel.


rate_id string (Required)

The identifier for the rate plan associated with the room. It specifies the pricing rules and conditions for booking the room.


channel_hotel_id string (Required)

The identifier for the hotel in the distribution channel’s system. This links the hotel to the respective channel (for example, OTA, GDS).


channel_room_id string (Required)

The identifier for the specific room type in the channel’s system. It associates the room in the channel with the rate plan.


channel_rate_id string (Required)

The identifier for the rate plan in the channel’s system. It defines the pricing and availability for the room in the channel.


channel_id integer (Required)

The identifier for the distribution channel. This links the room rate plan to a specific external platform, such as an online travel agency or global distribution system.


pricing array (Required)

An array that defines pricing rules based on the number of guests. Each entry in the array includes:

applicable_no_of_guest integer (Required)

The number of guests the pricing applies to.

multiplier string (Required)

The multiplier applied to the base rate for the specified number of guests. For example, if the base rate is $100 and the multiplier is 8, the price would be $800 for that number of guests.

surcharge string (Required)

An additional surcharge for the specified number of guests. This adds extra cost to the base rate based on the number of guests.

For example, a surcharge of $5 for 2 guests.

Example:

  • For 1 guest, no surcharge and the base rate applies.

  • For 2 guests, the multiplier is 8, and there’s a surcharge of $5.

  • For 3 guests, the multiplier is 4, and a surcharge of $1 applies


disable_availability boolean (Required)

Indicates whether the room’s availability is disabled.

When set to false, the room is available for booking.

disable_rate boolean (Required)

Indicates whether the rate plan is disabled.

When set to false, the rate plan is active and available for booking.


fixed_minstay object (Required)

Defines the fixed minimum stay requirement for the room:

fixed boolean (Required)

Specifies whether the minimum stay is fixed.

In this case, it’s set to true, indicating the minimum stay requirement cannot be adjusted.

minstay integer (Required)

The minimum number of nights required for booking the room.

In this case, it’s set to 2, meaning guests must book at least 2 nights.


Sample Request

{
    "action": "modify",
    "rmid": 2853,
    "hotel_id": "AWSTEST",
    "room_id": "1000202",
    "rate_id": "BAR",
    "channel_hotel_id": "12962495",
    "channel_room_id": "1296249501",
    "channel_rate_id": "49681540",
    "channel_id": 19,
    "pricing": [
        {
            "applicable_no_of_guest": 1,
            "multiplier": "1",
            "surcharge": "0"
        },
        {
            "applicable_no_of_guest": 2,
            "multiplier": "8",
            "surcharge": "5"
        },
        {
            "applicable_no_of_guest": 3,
            "multiplier": "4",
            "surcharge": "1"
        },
        {
            "applicable_no_of_guest": 4,
            "multiplier": "9",
            "surcharge": "2"
        },
        {
            "applicable_no_of_guest": 5,
            "multiplier": "7",
            "surcharge": "6"
        }
    ],
    "disable_availability": false,
    "disable_rate": false,
    "fixed_minstay": {
        "fixed": true,
        "minstay": 2
    }
}

Response

Sample Success Response

{
    "Status": "Success",
    "Data": [],
    "Message": "Rateplan Mapping updated successfully",
    "Ruid": ""
}

Success Response Body Elements

Status string

Indicates the result of the API call.

Will be "Success" for successful operations.


Data object

An object containing data related to the successful image creation. This typically includes identifiers for the created images.


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 - Validation Error Response

{
    "Status": "Fail",
    "Errors": [
        {
            "Code": "496",
            "ShortText": "action attribute is required"
        },
        {
            "Code": "400",
            "ShortText": "hotel_id: Invalid HotelCode ('')"
        },
        {
            "Code": "852",
            "ShortText": "Product: room_id - is invalid or not found!"
        },
        {
            "Code": "856",
            "ShortText": "Product: rate_id - is invalid or not found!"
        }
    ],
    "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.

Last updated

Was this helpful?