GET

Accor Rooms API

Get bookable room offers and rate plans for a single Accor property.

Overview

Returns the bookable offers for a property and stay window, grouped by accommodation code into room types. Each rate plan carries its price (per-night and total), meal plan, cancellation and guarantee policy, an optional member/loyalty alternative price, and reward points when present. Take the id from a Search result and pass it as hotel_id.

Endpoint URL

GET https://api.stayapi.com/v1/accor/hotel/rooms

Parameters

Parameter Type Required Description
hotel_id string Required Accor hotel id from the Search endpoint (e.g., "C5U9" or "2185")
check_in date Optional Check-in date (YYYY-MM-DD). Default: today
check_out date Optional Check-out date (YYYY-MM-DD). Default: check-in + 1 night
adults integer Optional Number of adults (1-8). Default: 2
currency string Optional ISO-4217 currency code. Default: USD
country_market string Optional ISO-3166 alpha-2 market country. Default: US

Response Format

Response Structure

  • success: Boolean indicating request success
  • hotel_id: The property id you requested
  • currency: Currency of the returned prices
  • availability_status: "AVAILABLE" or "UNAVAILABLE" for the dates
  • room_types: Array of room types, each with an accommodation_code and a rates array
  • total_offers: Total number of rate plans across all room types

Rate Fields

Field Type Description
rate_code string Rate plan code (also rate_label for the human name)
per_night / total float Per-night and whole-stay price. aggregation_type tells you which the upstream amount is.
reference_formatted string Strikethrough "was" price when the rate is discounted
meal_plan string Meal plan code (e.g., "EUROPEAN_PLAN")
cancellation_code / label string Cancellation policy (e.g., "FREE_CANCELLATION", "NO_CANCELLATION")
guarantee_code / label string Payment/guarantee policy (e.g., "PREPAID", "NO_PREPAY")
points integer Loyalty reward points for the stay, when offered
alternative object Second price variant (member/loyalty or special offer): amount, formatted, label, bookable

Room codes, not names

Accor exposes only the accommodation code on this surface (e.g., "KGD"), not a human-readable room name. Use the code to group and compare rates; a friendly room name is not available from this endpoint.

Error Responses

Errors follow the RFC 7807 Problem Details format with provider: "accor" and product: "rooms".

404 Not Found

No Accor property matches that hotel_id.

{
  "type": "https://api.stayapi.com/errors/hotel-not-found",
  "title": "Hotel Not Found",
  "status": 404,
  "detail": "No Accor property matches that hotel id",
  "provider": "accor",
  "product": "rooms",
  "error_code": "HOTEL_NOT_FOUND"
}

400 / 502

Invalid or past dates (400), or an upstream service error from Accor (502).

Related Endpoints

Accor Search

Find properties and their best offer; get a hotel id

View Documentation →

Accor Price Calendar

See the cheapest offer per date across a window

View Documentation →
Request
curl -X GET "https://api.stayapi.com/v1/accor/hotel/rooms?hotel_id=C5U9&check_in=2026-06-20&check_out=2026-06-22&adults=2" \
  -H "X-API-Key: YOUR_API_KEY"
Response
{
  "success": true,
  "hotel_id": "C5U9",
  "currency": "USD",
  "availability_status": "AVAILABLE",
  "total_offers": 21,
  "room_types": [
    {
      "accommodation_code": "KGD",
      "rates": [
        {
          "offer_id": "W8es3KiP5A91y5OkR9",
          "rate_code": "1RA4",
          "rate_label": "ADVANCE SAVER RATE",
          "meal_plan": "EUROPEAN_PLAN",
          "currency": "USD",
          "per_night": 513.78,
          "total": 1027.55,
          "aggregation_type": "TOTAL_STAY",
          "formatted": "$1,027.55",
          "reference_formatted": null,
          "cancellation_code": "NO_CANCELLATION",
          "cancellation_label": "Non-refundable",
          "guarantee_code": "PREPAID",
          "guarantee_label": "Online payment",
          "points": null,
          "alternative": {
            "amount": 1076.8,
            "formatted": "$1,076.80",
            "label": null,
            "bookable": true
          },
          "nights": 2
        }
      ]
    }
  ]
}