Book a rate: the price is held and captured only once the hotel confirms (asynchronous)
Returns 202 immediately with a booking_job_id; poll GET /hotels/booking/{booking_job_id} for the result. Guest details are checked first (400 invalid_details, before anything is held). Then the full price is HELD (authorised, not taken) on the connected Revolut payment method, LetsFG books the room, and the hold is captured only once the supplier has confirmed. A booking that fails for any reason releases the hold, and nothing is charged. There is no reservation fee, no deposit and no pay link.
Hotel bookings run one at a time; one that cannot start within 20 minutes fails and releases its hold. Do NOT re-POST while a job is running: poll it. A retry of the same booking (the same idempotency_key, or the same offer, e-mail and check-in) returns the existing job with duplicate: true and never holds the money twice. The guest is e-mailed at email however the booking ends. A successful booking resets the look-to-book search allowance back to 1,000.
Request
- Base URL: https://letsfg.co/developers/api/v1
- URL: https://letsfg.co/developers/api/v1/hotels/book
- Auth: API key in header X-API-Key
Request body
Response
Booking started; the price is held.
Example response
{
"poll_after_seconds": 20
}Changes
No recorded changes to this operation across all 1 revision of this API.