Idempotency
Send an Idempotency-Key header on writes: any unique value of 1 to 255 characters from A-Z a-z 0-9 _ . : -.
- A retry with the same key and body within 24 hours returns the first response, with
Idempotent-Replayed: true. Nothing happens twice. - The same key with a different request gets
409 idempotency_conflict. - While the first request is still running, a retry gets
409 idempotency_in_progress.
POST /api/v1/bookings and POST /api/v1/bookings/{id}/reschedule require the header, because they email the guest. Without it they return 400 invalid_input.