A quick demo might save your team weeks of engineering work.
Products
Solutions
Resources
Free Tools
Real endpoint paths, request parameters, response fields, and implementation notes for production integrations.
Best We room pricing is dated and property-specific, so every request needs a property_id plus check-in and check-out dates. The response groups live offers under normalized room types and keeps the native CNY per-night price, calculated stay total, visible inventory, breakfast inclusion, prepayment flag, cancellation text, free-cancellation deadline, and member-rate signal together. This makes the endpoint suitable for direct-brand rate shopping without implying that a static room catalogue is available for a particular stay. Send the exact occupancy, including one age for every child, and compare like-for-like refundable or breakfast-inclusive plans rather than choosing the lowest number alone. Store the request dates and retrieval time with each observation because rates and remaining inventory can change between calls.
{
"request": {
"path": "/v1/bestwe/hotel/rooms",
"params": {
"property_id": "JJ1089",
"check_in": "2026-08-10",
"check_out": "2026-08-11",
"adults": 2,
"rooms": 1
}
},
"response": {
"success": true,
"property_id": "JJ1089",
"currency": "CNY",
"room_types": [
{
"code": "DBL",
"name": "Deluxe Room",
"rates": [
{
"name": "Flexible Rate",
"per_night": 610.0,
"stay_total": 610.0,
"bookable": true
}
]
}
]
}
}
CNY is the authoritative currency returned for room offers and calculated stay totals.
Yes. Each normalized rate includes a member_rate boolean alongside its public price and booking conditions.