From eb4fb9009b7e11ca1bb18c88cd4f5392d219e1da Mon Sep 17 00:00:00 2001 From: ArvindEnvoy Date: Thu, 21 Nov 2024 22:17:14 -0800 Subject: [PATCH] fixes --- src/sdk/EnvoyUserAPI.ts | 53 +++++++++++++++++++++++++---------------- 1 file changed, 33 insertions(+), 20 deletions(-) diff --git a/src/sdk/EnvoyUserAPI.ts b/src/sdk/EnvoyUserAPI.ts index c867520..69c8d57 100644 --- a/src/sdk/EnvoyUserAPI.ts +++ b/src/sdk/EnvoyUserAPI.ts @@ -196,35 +196,47 @@ export default class EnvoyUserAPI extends EnvoyAPI { return data.data; } - async createReservation(reservationDetails: ReservationCreationAttributes): Promise { - let createReservationBody = { + async createReservation( + reservationDetails: ReservationCreationAttributes + ): Promise { + const createReservationBody = { data: { relationships: { user: { data: { type: 'users', - id: reservationDetails.userId - }}, + id: reservationDetails.userId, + }, + }, ...(reservationDetails.locationId && { - location: { - data: { - type: 'locations', - id: reservationDetails.locationId - } - } - } - ) + location: { + data: { + type: 'locations', + id: reservationDetails.locationId, + }, + }, + }), + ...(reservationDetails.entryId && { + entry: { + data: { + type: 'entries', + id: reservationDetails.entryId, + }, + }, + }), }, attributes: { + ...(reservationDetails.startTime && { 'start-time': reservationDetails.startTime, - ...(reservationDetails.endTime && { - 'end-time': reservationDetails.endTime - }), - 'booking-source': 'EXTERNAL_API', - 'booking-type': 'visitor' - } - } - } + }), + ...(reservationDetails.endTime && { + 'end-time': reservationDetails.endTime, + }), + 'booking-source': 'EXTERNAL_API', + 'booking-type': 'visitor', + }, + }, + }; const { data } = await this.axios({ method: 'POST', url: '/a/rms/reservations', @@ -233,6 +245,7 @@ export default class EnvoyUserAPI extends EnvoyAPI { return data.data; } + /** * Requires `invites.write` scope. */