Property API's status endpoint
Use the Property API status
endpoint to check if your property can be made open
/ bookable and then set it to Open/Bookable or use the endpoint to close a property that is already set to open
/ bookable on Booking.com with a reason.
This topic helps you:
- Check if a property can be set to open/bookable.
- Change or set the status of a property to open/bookable.
- Set a property that is already open/bookable to Closed.
Preparing a property to be open / bookable
To prepare a property to be open so that it is ready for guests to book involves multiple steps. You cannot open a property for stays unless the property has all the minimum requirements defined.
Use the property-api's status
endpoint to check whether the property created in Booking.com has all the necessary content ready to accept reservations from guests. If the property clears all the checks, then you can set the property to open
and bookable.
You can perform the following tasks using the property-api's status
endpoint:
- Check whether the property has all the necessary content required to become open and bookable.
- Change the status of the property to Open and bookable.
- Change the status of the property to be Closed.
Getting ready to open a property for stays
Depending on the property type you want to create, you must use multiple endpoints to define all the information before you can set the property Open
/ bookable. To see the minimum requirements when creating a property, see Minimum requirements to create a property.
Minimum requirements to open a property
For a property to be open and bookable, you need to make sure that you have configured the following content:
Using licence API (licenses
):
- You may need a licence for the room or property depending on the rules. Check if the property needs a license before creating it, using the licence API. The licence requirement can be at the room-level or property-level.
Using Contracting API
- The accommodation partner needs to have a signed contract with Booking.com for the countries in which the properties are located. The contract can be specific to the country the property is located in.
You can retrieve the contract status to check whether the accommodation partner has signed the contract using the Contracting API.
Using Property Details API
- Provide the property name with only Latin characters.
- Provide Physical location (
physical_address
) with the following details:- Address line 1 - only latin characters are allowed.
- City.
- Postcode.
- Provide the latitude and longitude details of the property's physical location.
- Specify the check-in and check-out timing.
- Specify the number of sellable units.
- Specify the property's accommodation type.
- Specify at least one language code for the property.
Using Policies API
- Specify at least one cancellation policy.
Use Facilities API
- To specify whether the property has a kitchen or a kitchenette. You must specify if the property has a kitchen or a kitchenette if the property is one of the following types:
APARTHOTEL
,APARTMENT
, orCONDO
.
Using Contacts API
- Provide General (
General
) contact type with the following details:- Contact person name (Given name and surname).
- Email address, and
- Phone number.
Using Photo API
- Set the property's main photo. Note: If you do not set the property's main photo, then the API selects the first photo in the property-level photo gallery as the main photo.
- Specify a photo for each room type. This applies to all property types excluding:
VILLA
,CHALET
,APARTMENT
,HOLIDAY_HOME
,APART_HOTEL
.
Using Room and Rate Plan Management API:
- Specify at least one roomtype using the Room API and specify the following:
- The occupancy based on the roomtype.
- Specify a Room name.
- Specify at least one amenity per room for the property using the Facilities API.
- Specify at least one rate plan using the OTA_HotelRatePlanNotif endpoint.
- Specify at least one roomrate using the OTA_HotelProductNotif endpoint.
Using Rates and Availability API
- Create inventory with a price for at least 1 date of stay within the next 18 months.
High-level steps to set a property to Open/bookable
To prepare a property to be open and bookable on Booking.com, you must perform the following steps:
- Verify whether the property fulfils all the necessary requirements to become open and bookable.
- If all the requirements are not met, make sure to fix at least the issues mentioned in the errors. For more information on all the possible errors and their resolutions, see the Handling errors and warnings section.
- Set the property to open and bookable.
Property Statuses and Transitions
The property transitions between these states when an open or a close operation is performed. For more information, see property statuses.
Transitions with Open
Current state of the property | Request | Next state |
---|---|---|
HOTEL_XML_BEING_BUILT | Open | HOTEL_OPEN |
HOTEL_XML_READY_TO_OPEN | Open | HOTEL_OPEN |
HOTEL_XML_AUTOCLOSED_CONTENT | Open | HOTEL_OPEN |
HOTEL_CLOSED_REQ_BY_HOTEL | Open | HOTEL_OPEN |
HOTEL_AUTOCLOSED_CONTENT | Open | HOTEL_OPEN |
HOTEL_AUTOCLOSED_GEO | Open | HOTEL_OPEN |
HOTEL_AUTOCLOSED_NO_AVAILABILITY | Open | HOTEL_OPEN |
HOTEL_OPEN | Open | HOTEL_OPEN |
HOTEL_CLOSED_READY_TO_REOPEN | Open | HOTEL_OPEN |
HOTEL_READY_TO_OPEN | Open | HOTEL_OPEN |
HOTEL_CLOSED_OPERATIONS_TEMP | Open | HOTEL_OPEN |
HOTEL_XML_READY_TO_CHECK | Open | HOTEL_OPEN |
Transitions with Close
Current state of the property | Request | Next state |
---|---|---|
HOTEL_XML_READY_TO_CHECK | Close | HOTEL_XML_BEING_BUILT |
HOTEL_XML_READY_TO_OPEN | Close | HOTEL_CLOSED_REQ_BY_HOTEL |
HOTEL_OPEN | Close | HOTEL_CLOSED_REQ_BY_HOTEL |
HOTEL_AUTOCLOSED_NO_AVAILABILITY | Close | HOTEL_CLOSED_REQ_BY_HOTEL |
HOTEL_CLOSED_REQ_BY_HOTEL | Close | HOTEL_CLOSED_REQ_BY_HOTEL |
HOTEL_CLOSED_READY_TO_REOPEN | Close | HOTEL_CLOSED_REQ_BY_HOTEL |
HOTEL_XML_AUTOCLOSED_CONTENT | Close | HOTEL_XML_AUTOCLOSED_CONTENT |
Verifying, opening, and closing a property
POST
https://supply-xml.booking.com/property-api/properties/{propertyId}/status
This section covers the endpoint and lists the request body and response parameters.
Header parameter
The following table describes the elements you can add in the header:
Header | Description | Type | Required/ Optional | Notes |
---|---|---|---|---|
Content-Type: application/json | Specifies the expected content type. | string | Required |
Path parameter
The following table describes the elements you can add in the path:
Value | Description | Type | Required/ Optional | Notes |
---|---|---|---|---|
{property ID } | Specify the unique ID of the property to check or update state. | integer | Required |
Body parameters
The following table describes what elements you must add in the request body:
Parameter | Description | Type | Required/Optional | Notes |
---|---|---|---|---|
operation | Contains the operation to perform on the property that is provided in the path parameter of the call. Supports the following values: - Check - Open - Close | enumerated string | required | - |
>reason | Provided only for the operation close | object | required only for reason | see options under type |
>>type | Specify the reason for closing from an enumerated list of reasons for closure. | enumerated string | required | Supports the following values: - Season - Renovation - Property_Not_Available - Fully_Booked - Issues_Guests - Issues_Booking - Strategy - Other For more information on the reasons, see Request body example: Close. |
>>description | Provided only with reason Other | string | required only if reason is set to Other |
Request body example: Check
The following is a request body example where you verify whether a property fulfills all the necessary requirements to become open and bookable (with StatusType
="Check"):
{ "operation" : "Check" }
Sample response: Check
1. When there are no errors or warnings during Check
This sample provides a response when the property has no errors or warnings and can be Opened or made Bookable using the status
endpoint.
{ "data": { "status": "Hotel ... is in Open / bookable status " }, "warnings": [], "errors": [], "meta": { "ruid": "..." } }
2. When there are errors during Check
The sample below provides an example of a property that has an error that has to be corrected to make the property Open/Bookable.
{ "data": { "status": "Property is not ready to Open. Refer to the documentation to resolve and try again" }, "warnings": [], "errors": [ { "message": "Invalid value", "code": 320, "description": "Main photo is not enabled" } ], "meta": { "ruid": "..." } }
3. When there are warnings during Check
The sample below provides an example of a property that has warnings during Check. The property can still be made Open/Bookable but it is good to understand the warnings and take corrective or suggested action.
{ "data": { "status": "The Property is ready to Open but there are warnings" }, "warnings": [ { "message": "Invalid value", "code": 320, "description": "Room 1008112302 (Holiday Home) does not have kitchen or kitchenette" } ], "errors": [], "meta": { "ruid": "..." } }
4. When there are both warnings and errors during Check
The sample below provides an example of a response for a property that has both warnings and errors when being built. In such cases it is required to correct the error to go ahead with building the property. The correction of the warnings is desirable but not required for the property to be built.
{ "data": { "status": "Property is not ready to Open. Refer to the documentation to resolve and try again" }, "warnings": [ { "message": "Invalid value", "code": 320, "description": "Room 1008112302 (Holiday Home) does not have kitchen or kitchenette" } ], "errors": [ { "message": "Data not found", "code": 635, "description": "No availability pushed" } ], "meta": { "ruid": "..." } }
If the response contains errors, make sure to fix the specified errors before you can set the property to open
. For more information on all the possible errors and their resolutions, see the Error guidelines section.
Warnings do not prevent you from opening the property, but may point out issues that are worth fixing. Ignore warnings at your own risk.
Request body example: Open
{ "operation" : "Open" }
Sample response: Open
{ "data": { "status": "Hotel ... is in Open / bookable status " }, "warnings": [], "errors": [], "meta": { "ruid": "..." } }
Request body example: Close
You can temporarily close a property and prevent it from appearing on Booking.com. Booking.com recommends that you add a reason and closure type for closing a property. You can select from one of the following reasons:
Season
: The property is closed during certain months of the year. For example, during winter.Renovation
: The property is under renovation.Property_Not_Available
: The property is closing the business indefinitely due to public crisis/government regulations.Fully_Booked
: The property is sold out through Booking.com, other websites or direct booking.Issues_Guests
: Select this option for any of the following reasons:- The property can't review guests,
- Guests caused property damages,
- Guests from Booking.com cancel too often,
- Guests don't pay.
Issues_Booking
: Select this option for any of the following reasons:- The property lacks support from Booking.com,
- The property feels that the commission is too high,
- The property faces issues with payments,
- The property faces issues with Extranet or other tools,
- The property prefers direct selling.
Strategy
: Select this option for any of the following reasons:- The property is not sure about the price in the long term,
- The property wants to avoid cancellations,
- The property is planning to switch to a new property management company,
- The property's staff are on holiday.
Other
To change or update a property content, you do not need to close the property. You can make the necessary changes when the property is in open
status with a few exceptions that you can only perform when the property is in XML: Being built
status. For more information, see property statuses.
{ "operation" : "Close", "reason": { "type": "Other", "description" : "Example" } }
Sample response: Closed
{ "data": { "status": "Hotel ... is in Closed (requested by hotel) status " }, "warnings": [], "errors": [], "meta": { "ruid": "..." } }
Response body
The following table describes the elements of the response body:
Element | Description | Type | Notes |
---|---|---|---|
data | Main response object that contains other elements of the response | object | |
> status | Provides the status of the request. | string | This element only appears when you receive no errors. It provides the status of the property in the response. |
warnings | It is an array that contains 3 keys in each element, message , code and description . Each key specifies information about one warning for the operation that was requested on the property | array | |
> message | Provides information about the warnings. | string | This element only appears when you receive no errors. |
> code | Provides the status of the request. | string | This element only appears when you receive no errors. |
> description | Provides the status of the request. | string | This element only appears when you receive no errors. |
errors | It is an array that contains 3 keys in each element, message , code and description . Each key specifies information about one warning for the operation that was requested on the property | array | |
> message | Provides the status of the request. | string | This element only appears when you receive no errors. |
> code | Provides the status of the request. | string | This element only appears when you receive no errors. |
> description | Provides the status of the request. | string | This element only appears when you receive no errors. |
meta | Contains the ruid of the response. | string | |
> ruid | Provides a unique identifier for the specific request and response that can be used with communication about the transaction with Booking.com. | string |
Handling errors and warnings guidelines
Before your property can become Open
/ bookable on Booking.com, it needs to pass some validations. For more information, see Handling errors and warnings in status endpoint.
This page contains a list of errors with Error Message
they produce on status
Endpoint, their descriptions and possible resolution steps.
Please note the message type for each message:
A message under
errors
means this is a blocker and you can't proceed with going toOpen
status.A message under
warnings
means that something is uncertain, but you can still proceed.