POST /bookings/initiate
API reference
POST /bookings/initiate
Generate a BluePillow tracked deep link for a chosen property. The agent hands the deep_link to the end user; BluePillow runs the OTA handoff and attribution.
POST /v1/bookings/initiate
| Parameter | Type | Description |
|---|---|---|
| property_idrequired | string | From a prior decision. |
| datesrequired | StayDates | ISO 8601 check-in / check-out. |
| guestsrequired | Guests | Party composition. |
| ota | string | Optional OTA preference. Default: best price. |
Request
curl -X POST https://api.b2a.bluepillow.com/v1/bookings/initiate \
-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},
"ota": "Booking"
}' Response 200
{
"tracking_id": "trk_01HXYZ...",
"deep_link": "https://skippy.bluepillow.com/r/...",
"ota": "Booking"
} Errors
400 invalid_request · 401 authentication_failed · 404 not_found · 429 rate_limited