POST /validate
API reference
POST /validate
Re-check a price you obtained earlier (from /decide or /search/stays). Returns still_valid: true when the live price is within ±2%, otherwise a refreshed offer + reason.
POST /v1/validate
| Parameter | Type | Description |
|---|---|---|
| property_idrequired | string | From a prior /decide or /search/stays result. |
| datesrequired | StayDates | check_in, check_out. |
| guestsrequired | Guests | Party composition. |
| offer_to_comparerequired | OfferToCompare | total_eur (required), ota (optional). |
Request
curl -X POST https://api.b2a.bluepillow.com/v1/validate \
-H "Authorization: Bearer $B2A_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"property_id": "prop_abc123",
"dates": {"check_in": "2026-06-10", "check_out": "2026-06-13"},
"guests": {"adults": 2},
"offer_to_compare": {"ota": "Booking", "total_eur": 210.00}
}' Response 200
{
"still_valid": false,
"price_delta_eur": 18.50,
"delta_percent": 8.8,
"refreshed_offer": {
"amount": 228.50,
"currency": "EUR",
"ota": "Booking",
"refundable": true
},
"reason": "price_changed"
} reason is one of price_changed, sold_out, dates_unavailable. Null when still_valid: true.
Errors
400 invalid_request · 401 authentication_failed · 429 rate_limited