Reservations API
List
GET /reservations/get/
Filters:
services,providers,customers: comma-separated IDs;status: exact status;past=true: include past reservations;full=true: include reservation data properties.
Create
POST /reservations/add/
{
"serviceId": "s_demo",
"customerId": "c_demo",
"providerId": 12,
"availabilityId": "plan-slot-id",
"start": 1779190000,
"end": 1779193600,
"data": {
"tickets": 1
}
}
The endpoint requires a current canonical slot. It rejects unavailable, non-bookable, stale, or over-capacity requests with 403.
Edit and reschedule
POST /reservations/edit/ requires id.
Core fields use dedicated commands:
serviceIdcustomerIdproviderIdstartendstatus(pending,confirmed, orcancelled)
Changing date or provider invokes the coordinated reschedule flow. Custom fields may be sent inside data or as additional top-level keys.
Remove
POST /reservations/remove/?id=r_example
Pending or past reservations may be removable according to the route policy. Prefer status cancellation when the record and history should remain.