Wire it up. See the schema.
- 50 free requests on signup
- Every endpoint included
- No credit card required
- Same schema as paid
A quick demo might save your team weeks of engineering work.
Resources
Free Tools
Pull hotel search, property details, amenities, guest reviews, room offers, price calendars, and media across Accor brands like Sofitel, Fairmont, Pullman, Novotel, Mercure, and Ibis as clean JSON.
curl "https://api.stayapi.com/v1/accor/search" \ -G \ -H "x-api-key: $STAYAPI_KEY" \ -d "latitude=40.758" \ -d "longitude=-73.985" \ -d "radius_km=15" \ -d "currency=USD" \ -d "limit=3"
curl "https://api.stayapi.com/v1/accor/hotel/rooms" \ -G \ -H "x-api-key: $STAYAPI_KEY" \ -d "hotel_id=C5U9" \ -d "check_in=2026-06-20" \ -d "check_out=2026-06-22" \ -d "adults=2"
curl "https://api.stayapi.com/v1/accor/hotel/price-calendar" \ -G \ -H "x-api-key: $STAYAPI_KEY" \ -d "hotel_id=2185" \ -d "date_from=2026-06-20" \ -d "date_to=2026-06-27"
curl "https://api.stayapi.com/v1/accor/hotel/photos" \ -G \ -H "x-api-key: $STAYAPI_KEY" \ -d "hotel_id=2185" \ -d "categories=BEDROOM,POOL"
{
"success": true,
"total": 3,
"price_range": {
"min": 36,
"max": 1620
},
"hotels": [
{
"id": "C5U9",
"name": "Hard Rock Hotel New York - Partner of ALL Accor",
"brand": {
"code": "HAR",
"name": "Hard Rock"
},
"stars": 4.5,
"rating": null,
"amenities": [
"PARKING",
"PET",
"RESTAURANT"
],
"address": {
"street": "159 W 48 Street",
"city": "New York",
"postal_code": "10036",
"country_code": "US"
},
"distance_meters": 304,
"availability_status": "AVAILABLE",
"best_offer": {
"currency": "USD",
"per_night": 405,
"total": 405,
"formatted": "$405",
"meal_plan": "EUROPEAN_PLAN",
"nights": 1
}
}
]
}
{
"success": true,
"hotel_id": "C5U9",
"currency": "USD",
"availability_status": "AVAILABLE",
"total_offers": 21,
"room_types": [
{
"accommodation_code": "KGD",
"rates": [
{
"rate_code": "1RA4",
"rate_label": "ADVANCE SAVER RATE",
"meal_plan": "EUROPEAN_PLAN",
"per_night": 513.78,
"total": 1027.55,
"formatted": "$1,027.55",
"cancellation_label": "Non-refundable",
"guarantee_label": "Online payment",
"points": null,
"alternative": {
"amount": 1076.8,
"formatted": "$1,076.80",
"bookable": true
},
"nights": 2
}
]
}
]
}
{
"success": true,
"hotel_id": "2185",
"name": "Sofitel New York",
"brand": {
"code": "SOF",
"name": "Sofitel"
},
"currency": "USD",
"total": 8,
"calendar": [
{
"date": "2026-06-20",
"status": "AVAILABLE",
"amount": 479,
"formatted": "$479",
"aggregation_type": "TOTAL_STAY",
"nights": 1
},
{
"date": "2026-06-22",
"status": "UNAVAILABLE",
"amount": null,
"formatted": null,
"nights": null
}
]
}
{
"success": true,
"hotel_id": "2185",
"name": "Sofitel New York",
"total": 6,
"photos": [
{
"category": "BEDROOM",
"type": "IMAGE",
"url": "https://www.ahstatic.com/photos/2185_ro_00_p_3000x2250.jpg",
"formats": [
{
"url": "https://www.ahstatic.com/photos/2185_ro_00_p_3000x2250.jpg",
"width": 3000,
"height": 2250
},
{
"url": "https://www.ahstatic.com/photos/2185_ro_00_p_1024x768.jpg",
"width": 1024,
"height": 768
}
],
"video": null
}
],
"categories": [
{
"code": "BEDROOM",
"label": "Rooms"
}
]
}
Trusted by hospitality teams at
Accor runs ALL, Accor Live Limitless, across dozens of brands from Raffles and Sofitel down to Ibis, but there is no public self-serve API for the property content, reviews, brand.com rates, room offers, and availability that product and revenue teams track. The usual answer is a scraping stack: headless browsers, rotating proxies, and a parser that breaks every time the booking flow changes.
StayAPI is that layer, run for you. Send a destination, a public Accor URL, or a hotel_id and get structured JSON back: hotel content and amenities, guest reviews and property responses, live room rate plans, a cheapest-price-per-date calendar, and the full media gallery. The same data, the same shape, on every call.
X-API-Key in, JSON out. Search, details, amenities, reviews, rooms, price calendar, and photos behind one base URL, covering Sofitel, Fairmont, Pullman, Novotel, Mercure, Ibis, and partner properties. No SDK to install.
Fetching, parsing, proxy rotation, and source uptime are ours. Take the id from search, or resolve it from an Accor URL, then use it across every property endpoint.
Every call hits Accor live, so brand.com rates, member pricing, and availability are current to the request and to the currency and country_market you ask for.
Each returns normalized JSON in the same shape. Click any endpoint for parameters, an example response, and a live playground.
The same endpoints, pointed at different jobs. These are the ones we see most.
Pull Accor's own brand.com rate per room and date, then compare it against what the OTAs show for the same property to catch parity gaps.
Poll rooms for a property across dates and occupancy to watch rate plans, member prices, and cancellation terms move over time.
Use the per-date cheapest offer to map a property's seasonality, find the best dates to stay, and chart how a 60-day window prices out.
Benchmark the brand.com member rate against third-party channels to quantify the gap a guest sees on the official site versus an OTA.
Keep property descriptions, named room types, amenities, facilities, and photo galleries current in your own database from normalized responses.
Track Accor guest ratings, review text, trip types, and hotel responses alongside the property's aggregate score.
The same endpoints are exposed as MCP tools. Connect Claude, Cursor, or Claude Code, ask in plain English, and the agent calls the tool and answers from live Accor data.
Flat monthly plans, every endpoint included on every plan. 1 request = 1 credit. No per-endpoint multipliers, no surprise overages.
Wire it up. See the schema.
Kick the tires in production.
Small prod workloads and growing apps.
Daily pulls in production.
Above 100k / month, annual terms, white-glove onboarding.
Every plan ships every endpoint. Same uptime, same schema, same response time.
Don't see your question? Email us at info@stayapi.com.
Accor has connectivity programs for distribution partners, but no public, self-serve data API for the brand.com rates, rooms, and availability that revenue and product teams need. StayAPI gives you that data over plain REST with a key you get in 30 seconds.
Yes. Call /v1/accor/search to find properties with each one's best offer, then pass the id to /v1/accor/hotel/rooms for full rate plans: per-night and total price, meal plan, cancellation terms, and member or loyalty pricing. It works across Accor brands like Sofitel, Pullman, Novotel, and Ibis. See the rooms endpoint docs.
Call /v1/accor/hotel/price-calendar with a hotel_id, date_from, and date_to. For each date in the window it returns the cheapest available offer for a stay starting that day, with a null price on unavailable dates. The window can span up to 60 days. See the price calendar docs.
Yes. Pass the public hotel URL to /v1/accor/hotel/url-to-id, then use the returned hotel_id with the details, amenities, reviews, rooms, photos, or price-calendar endpoint. URL resolution is local and does not make an upstream request.
You get 50 free requests on signup, every endpoint included, no credit card. After that it is flat monthly plans. One request equals one credit, with no per-endpoint multipliers.
JSON over HTTPS, the same shape on every call. REST works in any language with no SDK to install. Prices respect the currency and country_market you pass, since both affect Accor's brand.com pricing. Examples live in the docs.
Both end with live Accor data in your stack. The fast path is on the left.
50 free requests after sign up. Fastest way to see if the schema fits.
Start free15 minutes. Volume + endpoint mix. Walk out with a quote.
Book a demo