Update RTB request by ID

Use the /rtb/properties/{property_id}/requests/{id} endpoint to update the RTB request by ID.

Method and URL

POST https://supply-xml.booking.com/rtb/properties/{property_id}/requests/{id}

Request body parameters

Parameter Description Type Required
status Status that you want to move the RTB request to.

Can contain the following values:
- APPROVED: Request is approved by partner.
- REJECTED: Request is declined by partner.
Enum Yes
rejectionReason Specifies the rejection reason from one of the available options.

Can contain the following values:
Enum Required if status is REJECTED.
rejectionReasonText Free text about why the request is being denied in case of rejectionReason: NOT_COMFORTABLE. This information is private and is not shared with the guest.

This text is only allowed when rejectionReason is NOT_COMFORTABLE. For any other status the value is ignored.

Text limit is 255 characters. Longer text are trimmed without returning a warning.

String Required if rejectionReason is NOT_COMFORTABLE.

Ignored for any other status.

Request headers

Header Description Type Required
Authorization Your Base-64 encoded username and password. String Required

Sample request

curl --user username:password \
-H 'Content-Type: application/json' \
-X POST "https://supply-xml.booking.com/rtb/properties/2342343/requests/fc521d813a3423b2fc521d813a3423b2" \
--json '{"status": "REJECTED", "rejectionReason": "POLICY_DONT_FIT_NEEDS",}'


In case of a successful request, you'll receive an empty response with status code 200.

In case of an error, you'll receive the following:

  • an error code
  • a message explaining the error, and
  • an RUID in the metadata

Sample response — Success

    "warnings": [],
    "errors": [],
    "meta": {
        "ruid": "0000000000000000000000000000000000000000000000000000000000000000000000000000"

Sample response — Error

    "meta": {
        "ruid": "0000000000000000000000000000000000000000000000000000000000000000000000000000"
    "warnings": [],
    "errors": [
            "message": "The Rtb request is expired, so status cannot be updated.",
            "code": "RTB_STATUS_CAN_NOT_CHANGE"

Declining a reservation request

Connectivity providers must include an option for partners to select the reason for rejecting a request. If a partner chooses the reason NOT_COMFORTABLE, they must also provide an additional rejection reason text field for the partners to share any extra information. This information is kept private and is not shared with the guest.

This is how we show this option in the Booking.com Extranet.

Decline reason example from Extranet