GET

Hotel Facilities API

Extract comprehensive property-wide facilities and amenities from Booking.com hotels by hotel ID.

Overview

Fast & Reliable

Powered by Booking.com's mobile GraphQL API. Typical response time: 1–2 seconds.

The Hotel Facilities endpoint returns a detailed breakdown of property-wide facilities for a Booking.com hotel, organized by category (Bathroom, Bedroom, Food & Drink, Spa, Services, etc.), along with popular highlights and curated accommodation highlights.

Endpoint URL

GET https://api.stayapi.com/v1/booking/hotel/facilities

Need a hotel ID?

Use /v1/booking/hotel/url-to-id to convert a Booking.com URL or slug to a numeric hotel ID.

Query Parameters

Parameter Type Required Description
hotel_id integer (> 0) Required Numeric Booking.com hotel ID (for example, 91703 for Bellagio Las Vegas).

Response Structure

Top-level fields

  • success — boolean, always true for 2xx responses.
  • hotel_id — the numeric ID that was queried.
  • data.hotel_id — stringified hotel ID, echoed from the upstream response.
  • data.facilities — object keyed by category name (see below).
  • data.highlights — array of the top popular facility titles (de-duplicated, up to ~10).
  • data.accommodation_highlights — curated hero amenities with icons.
  • data.metadata.scraped_at — ISO-8601 UTC timestamp.
  • retrieved_at — same timestamp at the envelope level.

Facility categories

Category keys are human-readable strings provided by Booking.com. Typical categories include:

  • General, Internet, Services, Front Desk Services
  • Bathroom, Bedroom, Living Area, Room amenities
  • Food & Drink, Kitchen, Media & Technology
  • Spa, Activities, Outdoors, View
  • Business Facilities, Cleaning Services
  • Entertainment & Family Services, Accessibility, Safety & security, Transportation

The exact set of categories returned depends on the hotel. Small properties may return only a handful; large resorts can return 20+.

Accommodation highlights

Each entry has title, icon, and type. The type field identifies the highlight kind (for example, WifiFacilityHighlight, RestaurantFacilityHighlight, BarFacilityHighlight, GenericFacilityHighlight).

Usage Tips

Display Strategy

Group facilities by category for better UX. Use accommodation_highlights for hero badges and highlights for a short bullet list.

Best Practices

  • Use the icon field from accommodation_highlights to render matching glyphs.
  • Cache the response — facility data rarely changes. A 24-hour TTL is usually safe.
  • If you only have a URL, call /v1/booking/hotel/url-to-id once and store the resulting hotel_id.
  • Expect empty highlights and accommodation_highlights for very small properties.

Error handling and status codes

Status codes: 200 on success; errors use non-2xx responses with RFC 7807 Problem Details.

  • 422: Missing or invalid hotel_id (not a positive integer).
  • 404 NOT_FOUND: Upstream reports the hotel does not exist.
  • 502 UPSTREAM_ERROR: Upstream non-2xx or GraphQL errors.
  • 503 SERVICE_UNAVAILABLE: Upstream WAF challenge or maintenance.
  • 500 INTERNAL_ERROR: Unexpected processing error.

Error responses (Problem Details)

All Booking.com hotel endpoints return errors using RFC 7807 Problem Details.

{
  "type": "https://api.stayapi.com/errors/invalid-url",
  "title": "Invalid URL",
  "status": 400,
  "detail": "Parameter 'url' must be a full Booking.com hotel URL of the form https://www.booking.com/hotel/{cc}/{slug}.html.",
  "error_code": "INVALID_URL",
  "provided": "baan-coconut"
}

Media type: application/problem+json

Standard fields: type, title, status, detail

Extensions: error_code and any endpoint-specific fields

2xx policy: 2xx is returned only when data extraction succeeds.

Request
curl -X GET "https://api.stayapi.com/v1/booking/hotel/facilities?hotel_id=91703" \
  -H "x-api-key: YOUR_API_KEY"
Response
{
  "success": true,
  "hotel_id": 91703,
  "data": {
    "hotel_id": "91703",
    "facilities": {
      "Bathroom": [
        "Bathtub or shower",
        "Free toiletries",
        "Private bathroom",
        "Toilet"
      ],
      "Bedroom": ["Wardrobe or closet"],
      "Food & Drink": ["Bar"],
      "General": ["Hardwood or parquet floors", "Heating"],
      "Internet": ["Internet"],
      "Living Area": ["Desk"],
      "Media & Technology": ["Radio", "TV", "Telephone"],
      "Services": [
        "24-hour front desk",
        "Baggage storage",
        "Daily housekeeping",
        "Fax/Photocopying"
      ]
    },
    "highlights": ["Internet", "24-hour front desk", "Bar"],
    "accommodation_highlights": [
      { "title": "Private bathroom", "icon": "shower", "type": "GenericFacilityHighlight" },
      { "title": "Free Wifi", "icon": "internet", "type": "WifiFacilityHighlight" },
      { "title": "Bathtub or shower", "icon": "shower", "type": "GenericFacilityHighlight" },
      { "title": "Baggage storage", "icon": "luggage_storage", "type": "GenericFacilityHighlight" },
      { "title": "Bar", "icon": "bar", "type": "BarFacilityHighlight" }
    ],
    "metadata": { "scraped_at": "2026-04-17T15:53:57Z" }
  },
  "message": "Success",
  "retrieved_at": "2026-04-17T15:53:57Z"
}