Gingr Bookings API
The **Bookings** group is the core of the Gingr API. A **Booking** (also called a Reservation internally) represents a scheduled service for one or more animals at a specific location and time. The typical booking lifecycle is: 1. **Validate** — Call the validation endpoints to check availability and confirm there are no conflicts before committing. 2. **Create** — Submit the booking with the required fields. The response includes the new booking ID. 3. **Pre-check** — If the organization requires a pre-check, retrieve the pre-check form (`GET /v1/bookings/{id}/precheck-form`) and submit answers (`POST /v1/bookings/{id}/precheck`). 4. **Accept / Confirm** — Some organizations require staff to manually confirm bookings. Use the accept endpoint when `manualConfirm` is enabled. 5. **Checkout** — When the service is complete, submit payment via the checkout endpoint. 6. **Cancel** — If needed, cancel the booking and optionally apply a cancellation fee. Key concepts: - **`manualConfirm`** — When this flag is `true` on a booking type, new bookings land in a "pending" state and must be explicitly accepted by staff before they are considered confirmed. If `false`, bookings are auto-confirmed. - **Overrides** — The `overrides` object in the create/update requests lets you bypass certain business rule validations (e.g., overbooking a run, scheduling outside business hours). Overrides require elevated API permissions and should be used sparingly. - **Services** — A booking can have one or more services attached (e.g., the base boarding service plus grooming add-ons). Services carry their own pricing and scheduling. - **Lodging** — For overnight boarding, the booking is assigned to a specific run/kennel. The available lodgings endpoint returns which runs are open for the requested dates. - **Pre-check** — A digital check-in form that collects health, feeding, and care instructions for the animal's stay. Whether pre-check is required depends on organization settings. - **Standing Bookings** — Recurring bookings on a fixed schedule (e.g., every Monday for daycare). Changes to a standing booking can apply to the single instance or all future occurrences.