Skip to main content

Facility Reservations (Internal)

This document mirrors the public reservation API guide with additional implementation notes for internal teams.

Key Notes

  • Reservation endpoints live under libs/facilities/facilities-service/src/lib/reservation.controller.ts.
  • Optimistic locking uses the version field; callers must supply the latest version on mutations.
  • Overlap checks enforce no conflicting ACTIVE reservations per resource.
  • Series operations rely on rule (RRULE) and timeZone for expansion.

Endpoints (Summary)

Reservations

  • GET /facility-reservations
  • GET /facility-reservations/:id
  • POST /facility-reservations
  • POST /facility-reservations/:id/reschedule
  • POST /facility-reservations/:id/cancel
  • POST /facility-reservations/:id/no-show

Reservation Series

  • GET /facility-reservations/series
  • GET /facility-reservations/series/:id
  • POST /facility-reservations/series
  • PUT /facility-reservations/series/:id
  • POST /facility-reservations/series/:id/cancel
  • POST /facility-reservations/series/:id/pause
  • POST /facility-reservations/series/:id/resume

Reference

For full request/response examples and public-facing guidance, see the public docs:

  • apps/facilities/docs-public/docs/facility-reservations.md