Create or Update Reservation
Create a new reservation or provide updates about guests, deposits, status, etc.
Path parameters
-
platform-code string Required
The unique code assigned to the reservation platform.
Maximum length is
11
. Format should match the following pattern:[a-zA-Z0-9_-]+
. -
platform-restaurant string Required
The external platform ID for the restaurant.
Format should match the following pattern:
[a-zA-Z0-9_-]+
. -
platform-reservation string Required
The external ID of the reservation.
Maximum length is
36
. Format should match the following pattern:[a-zA-Z0-9_-]+
.
Body
-
status string Required
Values are
ON_HOLD
,SCHEDULED
,PARTIALLY_ARRIVED
,ARRIVED
,PARTIALLY_SEATED
,SEATED
,DEPARTED
,CANCELLED
,NO_SHOW
, orERROR
. -
partySize integer(int32) Required
The number of expected guests.
-
guest object Required
-
tableNumbers array[string]
The list of table numbers associated with this reservation. The field is required when the reservation state is
SEATED
orPARTIALLY_SEATED
. -
notes string
Additional details about the reservation.
-
liability object
The guest's obligation for this reservation.
-
utcScheduledAt string(date-time) Required
The scheduled reservation time.
-
utcUpdatedAt string(date-time) Required
The timestamp of the most recent change to the reservation.
-
sequenceId integer
An optional sequence number assigned by the external platform. If provided, it will be used to determine the order of updates of a reservation. It is the responsibility of the external platform to provide a monotonically increasing sequence number. If omitted, the utcUpdatedAt field will be used to determine the order of updates. That can be imprecise when dealing with events that happen in short timeframes in a distributed system. The value SHOULD NOT be set to null or zero or any special value, but instead omitted from the JSON object entirely if it is not used.
curl \
-X PUT https://api.trial.lsk.lightspeed.app/reservation/api/1/platform/EasyTable/restaurant/Restaurant-123/reservation/Reservation-123/push \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"status":"SCHEDULED","partySize":2,"guest":{"platformGuestId":"ABC-123","firstName":"John","lastName":"Smith","email":"john.smith@email.com","phone":"+13453455555","walkIn":true},"tableNumbers":["1"],"notes":"My birthday","liability":{"currency":"EUR","deposits":[{"platformDepositId":"1","amount":"100.00","voided":false,"utcCreatedAt":"2024-01-01T20:00:00","utcVoidedAt":"2024-01-01T20:00:00"}],"refunds":[{"platformRefundId":"1","amount":"100.00","voided":false,"utcCreatedAt":"2024-01-01T20:00:00","utcVoidedAt":"2024-01-01T20:00:00"}]},"utcScheduledAt":"2024-01-01T20:00:00","utcUpdatedAt":"2024-01-01T20:10:00","sequenceId":145789499819}'
{
"status": "SCHEDULED",
"partySize": 2,
"guest": {
"platformGuestId": "ABC-123",
"firstName": "John",
"lastName": "Smith",
"email": "john.smith@email.com",
"phone": "+13453455555",
"walkIn": true
},
"tableNumbers": [
"1"
],
"notes": "My birthday",
"liability": {
"currency": "EUR",
"deposits": [
{
"platformDepositId": "1",
"amount": "100.00",
"voided": false,
"utcCreatedAt": "2024-01-01T20:00:00",
"utcVoidedAt": "2024-01-01T20:00:00"
}
],
"refunds": [
{
"platformRefundId": "1",
"amount": "100.00",
"voided": false,
"utcCreatedAt": "2024-01-01T20:00:00",
"utcVoidedAt": "2024-01-01T20:00:00"
}
]
},
"utcScheduledAt": "2024-01-01T20:00:00",
"utcUpdatedAt": "2024-01-01T20:10:00",
"sequenceId": 145789499819
}