Last updated

Self-certification tutorial: Property API

In this tutorial, you will use the Property API to:

  • Create a property
  • Read back the property details
  • Update the property details
  • Contact connectivity support to validate your integration and enable live/production property access

Who is this for

You should follow this if you are a developer who has completed the integration of Property API’s details endpoints and is looking to start using this with live properties in production.

Before you start

As a part of this guide, you will be creating a test property. Therefore, if you have reached your limit of test properties you will need to contact support at connectivity@booking.com.

Step 1 - Create a property

With your new Property API integration, create a property within your system that will trigger a request to the create property endpoint listed below. Save the RUID to include in your report to connectivity support (see below).

Sample request:

POST
https://supply-xml.booking.com/property-api/properties
Header parameter

The following table describes the elements you can add in the header:

HeaderDescriptionTypeRequired/
Optional
Notes
Content-Type: application/jsonSpecifies the expected content type.stringrequired
Accept-VersionSpecify the version number to get the API functionality specific to that version.stringoptionalCurrently supports the value: 1.0
Request body

The following is a request body example:

{
  "position": {
    "latitude": 52.388418,
    "longitude": 4.619941
  },
  "check_in": {
    "from": "12:30"
  },
  "check_out": {
    "from": "10:00",
    "until": "10:30"
  },
  "property_name": "Floating hotel",
  "property_category": 30,
  "primary_language": "en-gb",
  "languages_spoken": [
    "en-gb",
    "nl",
    "ms"
  ],
  "room_count": 8,
  "floor_count": 1,
  "provider_property_id": "flotella003",
  "stars": "4",
  "target": "test",
  "physical_address": {
    "city_name": "Overveen",
    "country_code": "NL",
    "postal_code": "2051",
    "address_line": "Zandvoort",
    "display_address": true
  },
  "translations": [
    {
      "city_name": "Overveen",
      "address_line": "Zandvoort",
      "language_code": "es",
      "property_name": "Floating hotel"
    }
  ],
  "legal_entity_id": "78775"
}

Response body

The following is a response body example:

{
  "data": {
    "property_id": 10664256
  },
  "warnings": [],
  "meta": {
    "ruid": "08240512-21g4-4575-p94g-e76me888fwq4"
  }
}

Step 2 - Read the property

Using your system, trigger a read request of the property you have just created. Save the RUID to include in your report to connectivity support.

Sample request:

GET
https://supply-xml.booking.com/property-api/properties/{propertyID}
Header parameter

The following table describes the elements you can add in the header:

HeaderDescriptionTypeRequired/
Optional
Notes
Accept-VersionSpecify the version number to get the API functionality specific to that version.stringoptionalCurrently supports the value: 1.0
Response body
{
  "data": {
    "position": {
      "latitude": 52.388418,
      "longitude": 4.619941
    },
    "check_in": {
      "from": "12:00"
    },
    "check_out": {
      "from": "09:30",
      "until": "10:30"
    },
    "property_name": "Floating hotel",
    "property_category": 30,
    "primary_language": "en-gb",
    "languages_spoken": [
      "en-gb",
      "ms",
      "nl"
    ],
    "room_count": 8,
    "floor_count": 1,
    "provider_property_id": "flotella003",
    "stars": "4",
    "target": "test",
    "currency_code": "EUR",
    "property_id": 10664256,
    "status": "Test Hotel",
    "physical_address": {
      "city_name": "Overveen",
      "country_code": "nl",
      "postal_code": "2051",
      "address_line": "Zandvoort",
      "display_address": true
    },
    "translations": [
      {
        "city_name": "Overveen",
        "address_line": "Zandvoort",
        "language_code": "es",
        "property_name": "Floating hotel"
      }
    ],
    "legal_entity_id": "78775"
  },
  "meta": {
    "ruid": "2ccea0cc-9a0b-4179-9c20-9436e50cc070"
  }
}

Step 3 - Update the property

Using your system, trigger an update request using the endpoint listed below. Save the RUID to include in your report to connectivity support.

Sample Request:
PATCH
https://supply-xml.booking.com/property-api/properties/{propertyID}
Header parameter

The following table describes the elements you can add in the header:

HeaderDescriptionTypeRequired/
Optional
Notes
Accept-VersionSpecify the version number to get the API functionality specific to that version.stringoptionalCurrently supports the value: 1.0
Request body:

The following is a request body example:

{
  "check_in": {
    "from": "12:00"
  },
  "check_out": {
    "from": "09:30"
  },
  "languages_spoken": [
    "en-gb",
    "nl",
    "ms",
    "de",
    "fr",
    "pl"
  ]
}

Response body
{
  "data": {
    "property_id": 10664256
  },
  "warnings": [],
  "meta": {
    "ruid": "1c9bff15-h4742-9l08-2ew3-df4fd1f1166b"
  }
}

Step 4 - Send the RUIDs to Booking.com

Send via your organization’s domain email the RUID values obtained in the response bodies of the POST, GET, and PATCH requests to connectivity@booking.com for validation and certification.

Email template

I would like to be certified for production use of Property Details endpoint. Please find the RUIDs for all of the steps in the tutorial.

I look forward to hearing from you.