Booking.com Manage bathrooms API

Use the GET and the PUT endpoints to: Retrieve room bathroom configuration Add, modify or delete room-level bathroom information

Operations 4

GET /facilities-api/properties/{propertyId}/rooms/{roomId}/bathrooms Retrieve room bathroom configuration #
PUT /facilities-api/properties/{propertyId}/rooms/{roomId}/bathrooms Manage bathrooms #
GET /properties/{propertyId}/rooms/{roomId}/bathrooms Retrieve room bathroom configuration #
PUT /properties/{propertyId}/rooms/{roomId}/bathrooms Manage bathrooms #

Documentation

📖
Documentation
https://developers.booking.com/demand/docs/open-api/3.2/demand-api
📖
GettingStarted
https://developers.booking.com/demand/docs/getting-started/overview
📖
RateLimits
https://raw.githubusercontent.com/api-evangelist/booking-com/refs/heads/main/rate-limits/booking-com-rate-limits.yml
📖
Documentation
https://developers.booking.com/metasearch/connect-api/open-api
📖
GettingStarted
https://developers.booking.com/metasearch/connect-api/getting-started/overview
📖
Documentation
https://developers.booking.com/connectivity/docs/openapispecs/charges-api/charges-api-specification
📖
Documentation
https://developers.booking.com/connectivity/docs/openapispecs/contracting-api/contracting-api-specificaion
📖
Documentation
https://developers.booking.com/connectivity/docs/openapispecs/facilities-api/facilities-api-specification
📖
Documentation
https://developers.booking.com/connectivity/docs/openapispecs/facilities-api/facilities-openspec-remote-sync
📖
Documentation
https://developers.booking.com/connectivity/docs/openapispecs/payments-api/payments-api-specification
📖
Documentation
https://developers.booking.com/connectivity/docs/openapispecs/payments-by-booking-onboarding-api/pbb-onboarding-api-specification
📖
Documentation
https://developers.booking.com/connectivity/docs/openapispecs/property-details-api/property-details-api-specification
📖
Documentation
https://developers.booking.com/connectivity/docs/openapispecs/reconciliation-api/reconciliation-api-specification
📖
Documentation
https://developers.booking.com/connectivity/docs/openapispecs/rooms-api/rooms-api-specification
📖
Documentation
https://developers.booking.com/connectivity/docs/openapispecs/rooms-api/rooms-api-specification-bulk
📖
Documentation
https://developers.booking.com/connectivity/docs/openapispecs/rooms-api/rooms-api-specification-generated-names
📖
Documentation
https://developers.booking.com/connectivity/docs/openapispecs/valueadds-api/valueadds-api-specification

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/booking-com-manage-bathrooms-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

booking-com-manage-bathrooms-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Booking Com Manage bathrooms API
  version: '1.0'
  contact:
    name: Connectivity Team
    url: https://connect.booking.com
    email: connectivity@booking.com
  description: 'Operations tagged Manage bathrooms across 2 of this provider''s published API definitions: booking-com-facilities-api-openapi.yml, booking-com-facilities-api-remote-sync-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://supply-xml.booking.com/
  description: Test using live endpoint
- url: https://supply-xml.booking.com/facilities-api/
tags:
- name: Manage bathrooms
  description: 'Use the GET and the PUT endpoints to:


    Retrieve room bathroom configuration


    Add, modify or delete room-level bathroom information'
paths:
  /facilities-api/properties/{propertyId}/rooms/{roomId}/bathrooms:
    get:
      tags:
      - Manage bathrooms
      summary: Retrieve room bathroom configuration
      description: Retrieve room bathroom configuration. Bathroom attached to rooms.
      operationId: getBathroomDetails
      parameters:
      - name: propertyId
        in: path
        required: true
        schema:
          type: integer
      - name: roomId
        in: path
        required: true
        schema:
          type: integer
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResponseBathroomDetails'
    put:
      tags:
      - Manage bathrooms
      summary: Manage bathrooms
      description: 'Add, modify or delete room-level bathroom information.


        **Important — overlay semantics:** This endpoint uses full-replace mode. Any bathroom definition absent from the request body is permanently deleted. Before updating existing bathroom configuration, call `GET /facilities-api/properties/{propertyId}/rooms/{roomId}/bathrooms` to retrieve the current state, then include all existing bathroom entries in your PUT body alongside any changes.'
      operationId: setBathroomDetails
      parameters:
      - name: propertyId
        in: path
        required: true
        schema:
          type: integer
      - name: roomId
        in: path
        required: true
        schema:
          type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BathroomDetailsRequest'
            examples:
              Enable hotel group bathrooms:
                description: Enable hotel group bathrooms
                value:
                  hotel_bathroom_details:
                    shared_bathroom_state: PRESENT
                    private_bathroom_state: PRESENT
                    number_of_bathrooms: 3
              Add hotel group bathroom details:
                description: Add hotel group bathroom details
                value:
                  hotel_bathroom_details:
                    shared_bathroom_state: MISSING
                    private_bathroom_state: PRESENT
                    private_bathroom_details:
                      type: EXTERNAL_BATHROOM
                      location_type: OTHER
                      location_other: outside of the room
                    number_of_bathrooms: 2
              Add homes group bathroom details:
                description: Add homes group bathroom details
                value:
                  property_bathroom_details:
                    bathrooms:
                    - bathroom_type: PRIVATE
                    - bathroom_type: SHARED
              Add homes group bathroom details with location:
                description: Add homes group bathroom details with location
                value:
                  property_bathroom_details:
                    bathrooms:
                    - bathroom_type: PRIVATE
                      bathroom_location: ENSUITE
                    - bathroom_type: SHARED
                      bathroom_location: OPPOSITE_THE_ROOM
              Add hostel bathroom details:
                description: Add hostel bathroom details
                value:
                  property_bathroom_details:
                    bathrooms:
                    - bathroom_type: PRIVATE
                      bathroom_location: DOWN_THE_HALL
                      hostel_bathroom_details:
                        bathroom_facilities:
                        - type: SHOWER
                          count: 98
                        - type: TOILET
                          count: 21
                        - type: SINK
                          count: 68
                        - type: BATH
                          count: 16
                        - type: TOILET_PAPER
                        - type: HAIR_DRYER
                        - type: SLIPPERS
                          is_paid: true
                        - type: BIDET
                        - type: TOOTHBRUSH
                          is_paid: true
                        - type: SHAMPOO
                          is_paid: false
                        - type: CONDITIONER
                          is_paid: false
                        - type: BODY_SOAP
                          is_paid: true
                        - type: TOWEL
                          is_paid: false
                        - type: HOT_WATER
                    - bathroom_type: SHARED
                      bathroom_location: DOWN_THE_HALL
                      hostel_bathroom_details:
                        gender: MIXED
                        num_guests_with_access_type: NUMBER_LESS_THAN_5
                        bathroom_facilities:
                        - type: SHOWER
                          count: 98
                        - type: TOILET
                          count: 21
                        - type: SINK
                          count: 68
                        - type: BATH
                          count: 16
                        - type: TOILET_PAPER
                        - type: HAIR_DRYER
                        - type: SLIPPERS
                          is_paid: true
                        - type: BIDET
                        - type: TOOTHBRUSH
                          is_paid: true
                        - type: SHAMPOO
                          is_paid: false
                        - type: CONDITIONER
                          is_paid: false
                        - type: BODY_SOAP
                          is_paid: true
                        - type: TOWEL
                          is_paid: true
                        - type: HOT_WATER
              Disable hotel group bathroom details:
                description: Disable hotel group bathroom details
                value:
                  hotel_bathroom_details:
                    shared_bathroom_state: MISSING
                    private_bathroom_state: MISSING
                    number_of_bathrooms: 0
              Remove bathroom details for homes and hostel group:
                description: Remove bathroom details for homes and hostel group
                value:
                  property_bathroom_details:
                    bathrooms: []
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResponseSuccess'
        '400':
          description: 'Invalid request payload. The `errors` array contains one or more entries with `code: 320`. The `details.fields` path identifies the exact field that failed validation.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResponseSuccessObject'
              examples:
                Hostel private bathroom limit exceeded:
                  description: A hostel property cannot have more than 1 private bathroom.
                  value:
                    warnings: []
                    errors:
                    - message: Invalid value
                      code: 320
                      details:
                        fields:
                        - property_bathroom_details.bathrooms
                      description: Hostel properties support a maximum of 1 private bathroom and 5 shared bathrooms.
                    meta:
                      ruid: X-RUID-EXAMPLE
                Shared hostel bathroom missing required fields:
                  description: A SHARED hostel bathroom must include `gender` and `num_guests_with_access_type`.
                  value:
                    warnings: []
                    errors:
                    - message: Invalid value
                      code: 320
                      details:
                        fields:
                        - property_bathroom_details.bathrooms[0].hostel_bathroom_details.gender
                      description: must not be null
                    meta:
                      ruid: X-RUID-EXAMPLE
                Hotel bathroom state and count inconsistency:
                  description: Both `private_bathroom_state` and `shared_bathroom_state` are MISSING but `number_of_bathrooms` is greater than 0.
                  value:
                    warnings: []
                    errors:
                    - message: Invalid value
                      code: 320
                      details:
                        fields:
                        - hotel_bathroom_details.number_of_bathrooms
                      description: number_of_bathrooms must be 0 when both private_bathroom_state and shared_bathroom_state are MISSING
                    meta:
                      ruid: X-RUID-EXAMPLE
    servers:
    - url: https://supply-xml.booking.com/
      description: Test using live endpoint
  /properties/{propertyId}/rooms/{roomId}/bathrooms:
    get:
      tags:
      - Manage bathrooms
      summary: Retrieve room bathroom configuration
      description: Retrieve room bathroom configuration. Bathroom attached to rooms.
      operationId: getPropertiesByPropertyIdRoomsByRoomIdBathrooms
      parameters:
      - name: propertyId
        in: path
        required: true
        schema:
          type: integer
          format: int32
      - name: roomId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ApiResponseBathroomDetails_2'
      x-operation-id-source: normalized
      x-operation-id-original: getBathroomDetails
    put:
      tags:
      - Manage bathrooms
      summary: Manage bathrooms
      description: Add, modify or delete room-level bathroom information
      operationId: putPropertiesByPropertyIdRoomsByRoomIdBathrooms
      parameters:
      - name: propertyId
        in: path
        required: true
        schema:
          type: integer
          format: int32
      - name: roomId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BathroomDetails'
            examples:
              Enable hotel group bathrooms:
                description: Enable hotel group bathrooms
                value:
                  hotel_bathroom_details:
                    shared_bathroom_state: PRESENT
                    private_bathroom_state: PRESENT
                    number_of_bathrooms: 3
              Add hotel group bathroom details:
                description: Add hotel group bathroom details
                value:
                  hotel_bathroom_details:
                    shared_bathroom_state: MISSING
                    private_bathroom_state: PRESENT
                    private_bathroom_details:
                      type: EXTERNAL_BATHROOM
                      location_type: OTHER
                      location_other: outside of the room
                    number_of_bathrooms: 2
              Add homes group bathroom details:
                description: Add homes group bathroom details
                value:
                  property_bathroom_details:
                    bathrooms:
                    - bathroom_type: PRIVATE
                    - bathroom_type: SHARED
              Add homes group bathroom details with location:
                description: Add homes group bathroom details with location
                value:
                  property_bathroom_details:
                    bathrooms:
                    - bathroom_type: PRIVATE
                      bathroom_location: ENSUITE
                    - bathroom_type: SHARED
                      bathroom_location: OPPOSITE_THE_ROOM
              Add hostel bathroom details:
                description: Add hostel bathroom details
                value:
                  property_bathroom_details:
                    bathrooms:
                    - bathroom_type: PRIVATE
                      bathroom_location: DOWN_THE_HALL
                      hostel_bathroom_details:
                        bathroom_facilities:
                        - type: SHOWER
                          count: 98
                        - type: TOILET
                          count: 21
                        - type: SINK
                          count: 68
                        - type: BATH
                          count: 16
                        - type: TOILET_PAPER
                        - type: HAIR_DRYER
                        - type: SLIPPERS
                          is_paid: true
                        - type: BIDET
                        - type: TOOTHBRUSH
                          is_paid: true
                        - type: SHAMPOO
                          is_paid: false
                        - type: CONDITIONER
                          is_paid: false
                        - type: BODY_SOAP
                          is_paid: true
                        - type: TOWEL
                          is_paid: false
                        - type: HOT_WATER
                    - bathroom_type: SHARED
                      bathroom_location: DOWN_THE_HALL
                      hostel_bathroom_details:
                        gender: MIXED
                        num_guests_with_access_type: NUMBER_LESS_THAN_5
                        bathroom_facilities:
                        - type: SHOWER
                          count: 98
                        - type: TOILET
                          count: 21
                        - type: SINK
                          count: 68
                        - type: BATH
                          count: 16
                        - type: TOILET_PAPER
                        - type: HAIR_DRYER
                        - type: SLIPPERS
                          is_paid: true
                        - type: BIDET
                        - type: TOOTHBRUSH
                          is_paid: true
                        - type: SHAMPOO
                          is_paid: false
                        - type: CONDITIONER
                          is_paid: false
                        - type: BODY_SOAP
                          is_paid: true
                        - type: TOWEL
                          is_paid: true
                        - type: HOT_WATER
              Disable hotel group bathroom details:
                description: Disable hotel group bathroom details
                value:
                  hotel_bathroom_details:
                    shared_bathroom_state: MISSING
                    private_bathroom_state: MISSING
                    number_of_bathrooms: 0
              Remove bathroom details for homes and hostel group:
                description: Remove bathroom details for homes and hostel group
                value:
                  property_bathroom_details:
                    bathrooms: []
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ApiResponseSuccessObject_2'
      x-operation-id-source: normalized
      x-operation-id-original: setBathroomDetails
    servers:
    - url: https://supply-xml.booking.com/facilities-api/
components:
  schemas:
    ApiError:
      type: object
      properties:
        message:
          type: string
        code:
          type: integer
          description: Error code
        description:
          type: string
          description: Detailed error description
        details:
          type: object
          description: Additional error context
    BathroomResponse:
      type: object
      properties:
        id:
          type: integer
          format: int32
        bathroom_type:
          type: string
          enum:
          - PRIVATE
          - SHARED
        bathroom_location:
          type: string
          enum:
          - ENSUITE
          - NEXT_DOOR
          - DOWN_THE_HALL
          - OPPOSITE_THE_ROOM
          - IN_THE_HALLWAY
          - OTHER
          - INSIDE_THE_UNIT
        hostel_bathroom_details:
          $ref: '#/components/schemas/HostelBathroomDetailsResponse'
    BathroomRequest:
      required:
      - bathroom_type
      type: object
      properties:
        id:
          type: integer
          format: int32
        bathroom_type:
          type: string
          enum:
          - PRIVATE
          - SHARED
        bathroom_location:
          type: string
          description: 'Location of the bathroom relative to the room. The set of allowed values differs by unit type — call `GET /facilities-api/meta` and inspect `bathroom_configurations[*].allowed_options` for the applicable `unit_type_id`. Submitting a location not in the allowed list for your unit type returns a 400 error. Note: BED_IN_DORMITORY (unit_type_id 26) does not allow a location for private bathrooms.'
          enum:
          - ENSUITE
          - NEXT_DOOR
          - DOWN_THE_HALL
          - OPPOSITE_THE_ROOM
          - IN_THE_HALLWAY
          - OTHER
          - INSIDE_THE_UNIT
        hostel_bathroom_details:
          $ref: '#/components/schemas/HostelBathroomDetailsRequest'
    HostelBathroomFacilityRequest:
      required:
      - type
      type: object
      properties:
        type:
          type: string
          enum:
          - SHOWER
          - TOILET
          - SINK
          - BATH
          - TOILET_PAPER
          - HAIR_DRYER
          - SLIPPERS
          - BIDET
          - TOOTHBRUSH
          - SHAMPOO
          - CONDITIONER
          - BODY_SOAP
          - TOWEL
          - HOT_WATER
        count:
          maximum: 100
          minimum: 1
          type: integer
          format: int32
          description: Number of units of this facility. Only applicable to SHOWER, TOILET, SINK, and BATH. Must not be provided for other facility types.
        is_paid:
          type: boolean
          description: Whether guests are charged for this amenity. Only applicable to SLIPPERS, TOOTHBRUSH, SHAMPOO, CONDITIONER, BODY_SOAP, and TOWEL. Must not be provided for other facility types.
    PropertyBathroomDetailsResponse:
      type: object
      properties:
        bathrooms:
          maxItems: 20
          minItems: 0
          type: array
          items:
            $ref: '#/components/schemas/BathroomResponse'
    BathroomDetailsRequest:
      type: object
      properties:
        property_bathroom_details:
          $ref: '#/components/schemas/PropertyBathroomDetailsRequest'
        hotel_bathroom_details:
          $ref: '#/components/schemas/HotelBathroomDetailsRequest'
    HotelBathroomDetailsResponse:
      type: object
      description: Bathroom details for hotel-group properties.
      properties:
        private_bathroom_state:
          type: string
          enum:
          - MISSING
          - PRESENT
        shared_bathroom_state:
          type: string
          enum:
          - MISSING
          - PRESENT
        private_bathroom_details:
          $ref: '#/components/schemas/PrivateBathroomDetails'
        number_of_bathrooms:
          maximum: 20
          minimum: 0
          type: integer
          format: int32
    ResponseMeta:
      type: object
      properties:
        ruid:
          type: string
    SuccessObject:
      type: object
      properties:
        success:
          type: boolean
    PropertyBathroomDetailsRequest:
      required:
      - bathrooms
      type: object
      properties:
        bathrooms:
          maxItems: 20
          minItems: 0
          type: array
          items:
            $ref: '#/components/schemas/BathroomRequest'
    BathroomDetailsResponse:
      type: object
      properties:
        property_bathroom_details:
          $ref: '#/components/schemas/PropertyBathroomDetailsResponse'
        hotel_bathroom_details:
          $ref: '#/components/schemas/HotelBathroomDetailsResponse'
    HostelBathroomDetailsResponse:
      type: object
      description: 'Bathroom details for hostel-group properties. Property-level limits apply: maximum 1 private bathroom and 5 shared bathrooms per property.'
      properties:
        gender:
          type: string
          enum:
          - FEMALE
          - MALE
          - MIXED
        num_guests_with_access_type:
          type: string
          enum:
          - NUMBER_LESS_THAN_5
          - NUMBER_5_TO_10
          - NUMBER_11_TO_20
          - NUMBER_21_TO_30
          - NUMBER_31_TO_40
          - NUMBER_41_TO_50
          - NUMBER_MORE_THAN_50
        bathroom_facilities:
          type: array
          items:
            $ref: '#/components/schemas/HostelBathroomFacilityResponse'
    PrivateBathroomDetails:
      type: object
      properties:
        type:
          type: string
          enum:
          - DEFAULT
          - EXTERNAL_BATHROOM
          - ATTACHED_BATHROOM
        location_type:
          type: string
          enum:
          - DEFAULT
          - NEXT_DOOR
          - DOWN_THE_HALL
          - ACROSS_FROM_THE_ROOM
          - IN_THE_LOBBY
          - OTHER
        location_other:
          type: string
    HostelBathroomDetailsRequest:
      required:
      - bathroom_facilities
      type: object
      description: 'Bathroom details for hostel-group properties. Property-level limits apply: maximum 1 private bathroom and 5 shared bathrooms per property. Rules for `gender` and `num_guests_with_access_type` differ by `bathroom_type`: required for SHARED bathrooms, prohibited for PRIVATE bathrooms.'
      properties:
        gender:
          type: string
          description: Gender access for this shared bathroom. Required when `bathroom_type` is SHARED. Must not be provided when `bathroom_type` is PRIVATE.
          enum:
          - FEMALE
          - MALE
          - MIXED
        num_guests_with_access_type:
          type: string
          description: Approximate number of guests with access to this shared bathroom. Required when `bathroom_type` is SHARED. Must not be provided when `bathroom_type` is PRIVATE.
          enum:
          - NUMBER_LESS_THAN_5
          - NUMBER_5_TO_10
          - NUMBER_11_TO_20
          - NUMBER_21_TO_30
          - NUMBER_31_TO_40
          - NUMBER_41_TO_50
          - NUMBER_MORE_THAN_50
        bathroom_facilities:
          type: array
          description: 'List of facilities in this bathroom. Must include at least one of: SHOWER, TOILET, SINK, BATH.'
          minItems: 1
          items:
            $ref: '#/components/schemas/HostelBathroomFacilityRequest'
    HostelBathroomFacilityResponse:
      type: object
      properties:
        type:
          type: string
          enum:
          - SHOWER
          - TOILET
          - SINK
          - BATH
          - TOILET_PAPER
          - HAIR_DRYER
          - SLIPPERS
          - BIDET
          - TOOTHBRUSH
          - SHAMPOO
          - CONDITIONER
          - BODY_SOAP
          - TOWEL
          - HOT_WATER
        count:
          maximum: 100
          minimum: 1
          type: integer
          format: int32
        is_paid:
          type: boolean
    ApiResponseSuccessObject:
      type: object
      properties:
        data:
          allOf:
          - $ref: '#/components/schemas/SuccessObject'
        warnings:
          type: array
          items:
            $ref: '#/components/schemas/ApiError'
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ApiError'
        meta:
          $ref: '#/components/schemas/ResponseMeta'
    HotelBathroomDetailsRequest:
      required:
      - number_of_bathrooms
      - private_bathroom_state
      - shared_bathroom_state
      type: object
      description: 'Bathroom details for hotel-group properties. Consistency rules: if both `private_bathroom_state` and `shared_bathroom_state` are MISSING, `number_of_bathrooms` must be 0. If either state is PRESENT, `number_of_bathrooms` must be greater than 0.'
      properties:
        private_bathroom_state:
          type: string
          description: Whether the property has private bathrooms. If PRESENT, `number_of_bathrooms` must be greater than 0.
          enum:
          - MISSING
          - PRESENT
        shared_bathroom_state:
          type: string
          description: Whether the property has shared bathrooms. If PRESENT, `number_of_bathrooms` must be greater than 0.
          enum:
          - MISSING
          - PRESENT
        private_bathroom_details:
          $ref: '#/components/schemas/PrivateBathroomDetails'
        number_of_bathrooms:
          maximum: 20
          minimum: 0
          type: integer
          format: int32
          description: Total number of bathrooms (private + shared combined). Must be 0 if both states are MISSING. Must be greater than 0 if either state is PRESENT.
    ApiResponseBathroomDetails:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/BathroomDetailsResponse'
        warnings:
          type: array
          items:
            $ref: '#/components/schemas/ApiError'
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ApiError'
        meta:
          $ref: '#/components/schemas/ResponseMeta'
    ApiResponseSuccess:
      type: object
      description: Successful response with empty warnings and errors
      properties:
        data:
          $ref: '#/components/schemas/SuccessObject'
        warnings:
          type: array
          maxItems: 0
        errors:
          type: array
          maxItems: 0
        meta:
          $ref: '#/components/schemas/ResponseMeta'
    ApiError_2:
      properties:
        message:
          type: string
        code:
          type: string
        details:
          type: object
    BathroomDetails:
      properties:
        property_bathroom_details:
          $ref: '#/components/schemas/PropertyBathroomDetails'
        hotel_bathroom_details:
          $ref: '#/components/schemas/HotelBathroomDetails'
    PrivateBathroomDetails_2:
      properties:
        type:
          type: string
          enum:
          - DEFAULT
          - EXTERNAL_BATHROOM
          - ATTACHED_BATHROOM
        location_type:
          type: string
          enum:
          - DEFAULT
          - NEXT_DOOR
          - DOWN_THE_HALL
          - ACROSS_FROM_THE_ROOM
          - IN_THE_LOBBY
          - OTHER
        location_other:
          type: string
    HotelBathroomDetails:
      properties:
        private_bathroom_state:
          type: string
          enum:
          - MISSING
          - PRESENT
        shared_bathroom_state:
          type: string
          enum:
          - MISSING
          - PRESENT
        private_bathroom_details:
          $ref: '#/components/schemas/PrivateBathroomDetails_2'
        number_of_bathrooms:
          type: integer
          format: int32
          maximum: 20
          minimum: 0
      required:
      - number_of_bathrooms
      - private_bathroom_state
      - shared_bathroom_state
    ApiResponseSuccessObject_2:
      properties:
        ruid:
          type: string
          writeOnly: true
        data:
          $ref: '#/components/schemas/SuccessObject_2'
        warnings:
          type: array
          items:
            $ref: '#/components/schemas/ApiError_2'
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ApiError_2'
        meta:
          $ref: '#/components/schemas/ResponseMeta_2'
    ResponseMeta_2:
      properties:
        ruid:
          type: string
    ApiResponseBathroomDetails_2:
      properties:
        ruid:
          type: string
          writeOnly: true
        data:
          $ref: '#/components/schemas/BathroomDetails'
        warnings:
          type: array
          items:
            $ref: '#/components/schemas/ApiError_2'
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ApiError_2'
        meta:
          $ref: '#/components/schemas/ResponseMeta_2'
    SuccessObject_2:
      properties:
        success:
          type: boolean
    HostelBathroomFacility:
      properties:
        type:
          type: string
          enum:
          - SHOWER
          - TOILET
          - SINK
          - BATH
          - TOILET_PAPER
          - HAIR_DRYER
          - SLIPPERS
          - BIDET
          - TOOTHBRUSH
          - SHAMPOO
          - CONDITIONER
          - BODY_SOAP
          - TOWEL
          - HOT_WATER
        count:
          type: integer
          format: int32
          maximum: 100
          minimum: 1
        is_paid:
          type: boolean
      required:
      - type
    Bathroom:
      properties:
        id:
          type: integer
          format: int32
        bathroom_type:
          type: string
          enum:
          - PRIVATE
          - SHARED
        bathroom_location:
          type: string
          enum:
          - ENSUITE
          - NEXT_DOOR
          - DOWN_THE_HALL
          - OPPOSITE_THE_ROOM
          - IN_THE_HALLWAY
          - OTHER
          - INSIDE_THE_UNIT
        hostel_bathroom_details:
          $ref: '#/components/schemas/HostelBathroomDetails'
      required:
      - bathroom_type
    HostelBathroomDetails:
      properties:
        gender:
          type: string
          enum:
          - FEMALE
          - MALE
          - MIXED
        num_guests_with_access_type:
          type: string
          enum:
          - NUMBER_LESS_THAN_5
          - NUMBER_5_TO_10
          - NUMBER_11_TO_20
          - NUMBER_21_TO_30
          - NUMBER_31_TO_40
          - NUMBER_41_TO_50
          - NUMBER_MORE_THAN_50
        bathroom_facilities:
          type: array
          items:
            $ref: '#/components/schemas/HostelBathroomFacility'
          minItems: 1
      required:
      - bathroom_facilities
    PropertyBathroomDetails:
      properties:
        bathrooms:
          type: array
          items:
            $ref: '#/components/schemas/Bathroom'
          maxItems: 20
          minItems: 0
      required:
      - bathrooms
x-refined-from:
- booking-com-facilities-api-openapi.yml
- booking-com-facilities-api-remote-sync-openapi.yml
x-tagGroups:
- name: API Endpoints
  tags:
  - Charges endpoint
  - Charges meta endpoint
- name: Documentation
  tags:
  - About Try it