๐ช Reservations โ
KitchenAsty includes a table reservation system with availability checking and staff management.

๐ช Tables โ
Each location has tables with a name and capacity:
| Field | Description |
|---|---|
name | Table identifier (e.g., "Table 1") |
capacity | Maximum party size |
isActive | Available for booking |
locationId | Which location this table belongs to |
Table names are unique within a location.
๐ Booking Flow โ
- ๐ Check availability โ
GET /api/reservations/availability?locationId=...&date=...&time=...&partySize=... - โ๏ธ Create reservation โ
POST /api/reservationswith location, date, time, and party size - โ
Staff confirms โ Update status to
CONFIRMEDvia admin - ๐ฝ๏ธ Day of visit โ Staff marks as
SEATED, thenCOMPLETED
๐ Availability Check โ
The availability endpoint returns whether tables are available for the requested date, time, and party size. It checks:
- ๐ช Tables with sufficient capacity
- ๐ซ No conflicting reservations at the same time
- โ Table is active

๐ Reservation Status Lifecycle โ
PENDING โ CONFIRMED โ SEATED โ COMPLETED
โ CANCELLED (from any status)| Status | Description |
|---|---|
PENDING | โณ Customer submitted, awaiting staff confirmation |
CONFIRMED | โ Staff confirmed the reservation |
SEATED | ๐ช Customer has arrived and been seated |
COMPLETED | โ๏ธ Meal finished, table cleared |
CANCELLED | โ Reservation cancelled |
๐ Reservation Fields โ
| Field | Description |
|---|---|
customerId | Logged-in customer |
locationId | Restaurant location |
tableId | Assigned table (optional, can be assigned later) |
date | Reservation date |
time | Reservation time (e.g., "19:00") |
partySize | Number of guests |
comment | Special requests |
๐ฅ Staff Management โ
Staff can:
- ๐ View all reservations for their location
- โ Confirm or cancel pending reservations
- ๐ช Assign tables
- ๐ Update status as the reservation progresses
- ๐๏ธ Delete reservations
๐ก API โ
See Reservations API for the complete endpoint reference.