Release notes

GXP 4.151

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/CMS/Content/Outlet/{OutletCode}/AddPaymentToCheck
  • Change in API’s request model to receive order form details.
This API now receives order form details and saves them in GXP.

GXP 4.141

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/CMS/Content/Sections/{SectionCode}/Categories
  • /API/V40/CMS/Content/Outlet/{OutletCode}/SectionsCategoriesItems
  • Added 'relatedItemsCategoryCode' field to the response.
This field shows which category is related to this category.

GXP 4.141

Breaking changes

None

Non-breaking changes

  • /API/V40/System/Settings
  • /API/V40/System/Settings/Outlet
  • /API/V40/Interactive/Outlet
Response returns with a new property on it called 'MaximumAdvanceOrderingLeadTime'. This is configured in GXP Manager from Outlet Settings when Type is 'Advance Ordering'.

GXP 4.140.2

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Order
New fields 'ItemModifierFamilyId' under 'Modifiers' and 'ItemModifierOptionApiId' under 'Options'. Two new fields contain values of the corresponding objects in the 'Items' endpoint to enable quick re-ordering.

GXP 4.140

Breaking changes

None

Non-breaking changes

  • /API/V40/System/Settings
  • /API/V40/System/Settings/Outlet
  • /API/V40/Interactive/Outlet
Response returns with a new property on it called 'AllowTippingOnOpenOrders'. 'AllowTippingOnOpenOrders' will always be false for Infrasys integrated properties, otherwise, it will be the value of AllowTipping.
This field shows which category is related to this category.

GXP 4.139

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestOrder
  • Added 'customDate' property to the 'orderFormDetailsDictionary' of request's body.
The API supports placing an order with a custom date, now.
  • /API/V40/Interactive/Outlet/{OutletCode}/AddItemsToBasket
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestOrder
  • If staff is ordering, the APIs only check if the AllowStaffOrdering is enabled for the outlet.
The APIs do not check for AllowGuestOrdering if staff is placing an order.

GXP 4.137

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet
  • /API/V40/System/Settings/
  • /API/V40/System/Settings/Outlet
  • Outlet list has been sorted by 'SortOrder'
Outlet list has been sorted by 'SortOrder'
  • /API/V40/CMS/Content/Outlet/{{outletCode}}/SectionsCategoriesItems
  • /API/V40/CMS/SectionsCategoriesItems
  • /API/V40/CMS/Content/Guest/{{guestId}}/SectionsCategoriesItems
  • /API/V40/CMS/Content/Categories/{{categoryCode}}/Items
  • /API/V40/CMS/Content/Outlet/{{outletCode}}/CategoryItemsByPosCode/{{posItemCode}}
  • /API/V40/CMS/Content/Items/{{code}}
  • 'maximumQuantity' numeric property has been added to Items in the responses.
The maximum quantity of item a user can choose on the front end.
  • /API/V40/Interactive/Outlet
  • /API/V40/System/Settings/Outlet
  • New field in the response called 'allowStaffOrdering'.
The 'allowStaffOrdering' field shows the outlet is allowed to be orderd by staff.
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestOrder
  • 'orderFormDetailsDictionary' is not required when 'staffId' has value.
No need to pass 'orderFormDetailsDictionary' when 'staffId' has value.

/API/V40/CMS/Content/SectionsCategoriesItems

/API/V40/CMS/Content/Categories/{CategoryCode}/Items

/API/V40/CMS/Content/Items/{Code}

  • Extend ItemModifier with field MaximumQuantity
The maximum number of item modifiers a guest can choose on the front end. If the MaximumQuantity has a value, then on the front end, the guest can select no more than the MaximumQuantity for the item modifier. If the MaximumQuantity is null, then there is no maximum quantity set for the item modifier.

GXP 4.136

Breaking changes

None

Breaking changes

Non-breaking changes

None

GXP 4.135

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet/{OutletCode}/AddItemsToBasket
  • New field in the request called 'staffId'.
Removed 'posEmployeeId' field and Added 'staffId' field. If 'staffId' is set, it will be used to look up the user's Pos Employee Id then the found value will be used instead of the default employee id specified on the Outlet POS settings when making the call to TS
  • /API/V40/Interactive/Payment/Outlet/{outletCode}/AddDiscountToCheck
  • New endpoint - adds a discount to an open tab
This endpoint has to be called before letting the guest pay the tab. Request: SessionToken, gxpCheckNumber, guestFacingDiscountCode.

GXP 4.134

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Payment/Outlet/{OutletCode}/Initialise
  • New POST endpoint to complement the existing GET endpoint. Takes additional fields geared toward FreedomPay 3DS initialise requests.
For Stripe/Braintree payment integrations (and FreedomPay v1.4 and below/3DS disabled integrations), functions identically to the GET endpoint. Takes additional fields for FreedomPay 3DS initialisation.
  • /API/V40/System/Settings/PaymentSettings
  • /API/V40/System/Settings/
  • New GET System/Settings/PaymentSettings endpoint for getting payment integration settings.
  • Added PaymentSettings response to the /System/Settings endpoint.
Get payment integration setting booleans, e.g. 'EnabledGooglePay', 'EnabledApplePay', etc.
  • /API/V40/CMS/Interactive/Order
  • /API/V40/CMS/Interactive/PropertyOrders
  • /API/V40/CMS/Interactive/PropertyOrders/{orderCode}
OrderApiModel now returns a new field called 'outstandingBalance'. The outstandingBalance property shows the amount that’s still due to be paid.

GXP 4.133

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet/{OutletCode}/AddItemsToBasket
  • New field in the request called 'posEmployeeId'.
If this value is set, it will be used instead of the default employee id specified on the Outlet POS settings when making the call to TS
  • /API/V40/Interactive/Outlet
  • /API/V40/System/Settings/Outlet
  • /API/V40/System/Settings
  • New fields 'hidePaymentOptionsBox' and 'hideDeliveryDetailsBox'.
If set to true, the elements corresponding to the name(s) of the toggle(s) should be hidden on the front end.
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestOrder
  • New field in the request called 'nameOnCard'.
This field populates the nameOnCard field for FreedomPay payment requests. This is a mandatory field for all FreedomPay PaidByCard orders. It serves no purpose in any other scenario.

GXP 4.132

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Payment/Outlet/{OutletCode}/Initialise
Response returns with new properties in 'paymentIntegrationSettings' called 'enable_applepay' and 'enable_googlepay' They are configured in GXP Manager from Integration Settings

GXP 4.131

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/CMS/Interactive/Order
  • /API/V40/CMS/Interactive/PropertyOrders
  • /API/V40/CMS/Interactive/PropertyOrders/{orderCode}
OrderApiModel now returns a new field called 'payments'. 'payments' contains a list of Payments for the Order. These include the card type, last 4 digits of the card, amount paid (minus tips), and tip.
  • /API/V40/Interactive/Payment/Outlet/{{outletCode}}/AddPaymentToCheck
An extra PosTotalDue property has been added to the response model.

The PosTotalDue property shows the amount that’s still due to be paid.

  • /API/V40/Interactive/Order
  • /API/V40/Interactive/PropertyOrders
  • /API/V40/Interactive/PropertyOrders/{orderCode}
  • /API/V40/Interactive/Outlet/{outletCode}/deliveryLocation/{deliveryLocationCode}/GetOpenCheck
Now returns a new field called 'subTotal'.

GXP 4.130

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/System/Settings
  • /API/V40/System/Settings/Outlet
New field in response called 'description' in "extraCharges". Text description of the Service Charge.

GXP 4.129

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet
Response returns with two new properties called 'AllowAppendToCheque' and 'AllowSplitBill'. This is configured in GXP Manager from Outlet Settings. They will always be false for non-Ts properties, and Ts properties use the integration setting.
  • /API/V40/Interactive/Outlet/{OutletCode}/AddItemsToBasket
New fields in response called 'serviceChargeBreakdown'. 'serviceChargeBreakdown' contains a list of Service Charges for the Outlet.
New field in response called 'description' in "taxBreakdown". 'description' contains a description for each tax rate.
New areaError 'InvalidDiscountCode'. When an invalid discount code is entered, we now send back an 'InvalidDiscountCode' constant instead of a hardcoded message.
  • /API/V40/Interactive/Outlet/{{outletCode}}/deliveryLocation/{{deliveryLocationCode}}/GetOpenCheck
Removed 'PosCheckClosed' error. This error occurred when TS' GetCheckDetails cannot find a supposedly open check's' details, i.e. after it has been closed. This behaviour was unwanted.
  • /API/V40/System/Settings
  • /API/V40/System/Settings/Outlet
  • /API/V40/Interactive/Outlet
Response returns with a new property on it called 'IsCallWaiterEnabled'. This is configured in GXP Manager from Outlet Settings.

GXP 4.128

Breaking changes

None

Non-Breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet/{{outletName}}/AddItemsToBasket
A guest-facing discount code property has been added to the request model, and a discount amount property to the response model.

The guestFacingDiscountCode is used to apply a discount to a basket. The discountAmount property shows how much has been discounted.

GXP 4.127

Breaking changes

None

Non-Breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet
An extra useDiscounts property has been added to the response model.

The useDiscounts property shows whether the property can utilise discounts.

  • /API/V40/Interactive/Outlet/{outletCode}/PlaceVerifiedGuestOrder
  • /API/V40/Interactive/Outlet/{outletCode}/PlaceNonVerifiedGuestOrder
Return error when: Outlet allows ATC, order is starting/adding to an open check, and either the delivery location has no POS ID or the delivery type is room/collection.

Return 'DeliveryLocationMissingPosId' error when delivery location has no POS ID assigned to it, or 'DeliveryTypeNotSupported' when the delivery type is room/collection.

  • /API/V40/Interactive/Payment/Outlet/{{outletCode}}/Initialise

An optional querystring parameter called request.paymentType has been added.

It defines whether a payment uses GooglePay, ApplePay or a card.

Here are examples of each:
  • /API/V40/Interactive/Payment/Outlet/{{outletCode}}/Initialise?request.sessionToken={{sessionToken}}&request.amount=12.34&request.paymentType=GooglePay
  • /API/V40/Interactive/Payment/Outlet/{{outletCode}}/Initialise?request.sessionToken={{sessionToken}}&request.amount=12.34&request.paymentType=ApplePay
  • /API/V40/Interactive/Payment/Outlet/{{outletCode}}/Initialise?request.sessionToken={{sessionToken}}&request.amount=12.34
The last of these is a card payment, as request.paymentType is absent.

GXP 4.126

Breaking changes

None

Non-Breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet/{{outletCode}}/AddItemsToBasket
An extra subTotal property has been added to the response model.

The subTotal property shows the total amount for the category items and their modifiers - i.e. excluding all taxes and charges.

  • /API/V40/Interactive/Payment/Outlet/{{outletCode}}/AddPaymentToCheck
New endpoint to allow payment to be made against an existing TS delivery location POS check.

Can return payment requires action, which will indicate that 3DS/iDEAL flow needs to be taken, and payment state 'Confirm' needs to be used on re-submission

  • /API/V40/Interactive/Payment/Outlet/{{outletCode}}/Initialise
An optional querystring parameter called request.amount has been added.

This parameter is only used for FreedomPay 3DSecure payments; here's an example:

/API/V40/Interactive/Payment/Outlet/{{outletCode}}/Initialise?request.sessionToken={{sessionToken}}&request.amount=12.34

GXP 4.125

Breaking changes

None

Non-Breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet/{{outletCode}}/AddItemsToBasket
An extra sectionCode property can (optionally) be added to each object in the items array of the request model.

If the sectionCode property is present, that section's AvailabilityPeriods are considered when validating the delivery time.

sectionCode properties must be related to the categoryItem specified in the categoryItemCode property.

  • /API/V40/Interactive/Outlet/{{outletCode}}/AddItemsToBasket
An extra unavailableItems array property has been added to the response model. If validation of the delivery time fails:
  • the unavailable category items are returned in the unavailableItems array, each one accompanied by the list of AvailabilityPeriods in which they are available.
  • the areaError property is set to CartItemsUnavailable
This behaviour is the same as when orders are placed via /Interactive/Outlet/{outletCode}/PlaceNonVerifiedGuestOrder and /Interactive/Outlet/{outletCode}/PlaceVerifiedGuestOrder
  • /API/V40/CMS/Content/Outlet/{{outletCode}}/SectionsCategoriesItems
  • /API/V40/CMS/SectionsCategoriesItems
  • /API/V40/CMS/Content/Guest/{{guestId}}/SectionsCategoriesItems
  • /API/V40/CMS/Content/Categories/{{categoryCode}}/Items
  • /API/V40/CMS/Content/Outlet/{{outletCode}}/CategoryItemsByPosCode/{{posItemCode}}
  • /API/V40/CMS/Content/Items/{{code}}
A calories numeric property has been added to Items in the above responses.

GXP 4.124

Breaking changes

None

Non-Breaking changes

Endpoint Details Notes
  • /API/V40/System/Settings/CMS
New response properties:
  • sectionNameCapitalisation
  • categoryNameCapitalisation
  • itemAndItemModifierNameCapitalisation
  • itemDescriptionCapitalisation
Each of these new properties will have one of the following values:
  • allLowerCase
  • allUpperCase
  • capitaliseFirstLetterOfEachWord
  • capitaliseFirstLetterOfFirstWord
  • null
  • /API/V40/System/Settings/CMS
New response property: displaySyncOrderHistoryButton (boolean) Defaults to false
  • /API/V40/Interactive/Outlet/{outletCode}/PlaceVerifiedGuestOrder
  • /API/V40/Interactive/Outlet/{outletCode}/PlaceNonVerifiedGuestOrder
New error code returned: PosCheckTotalMismatch When appending to a check, if the GXP order total doesn't match the total of the POS check, the error code PosCheckTotalMismatch is returned

GXP 4.123

Breaking changes

None

Non-Breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Order
  • /API/V40/Interactive/PropertyOrders
  • /API/V40/Interactive/PropertyOrders/{orderCode}
  • /API/V40/Interactive/Outlet/{outletCode}/deliveryLocation/{deliveryLocationCode}/GetOpenCheck
OrderApiModel now returns posOrderReference If pos order then pos order reference returned, otherwise property will be null
  • /API/V40/System/Settings
  • /API/V40/System/Settings/CMS
Returns new boolean setting 'ShowAdBanner' and Banner setting 'OrderConfirmationBanner' on both endpoints.

GXP 4.122

Breaking changes

None

Non-Breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet/{outletCode}/PlaceVerifiedGuestOrder
  • /API/V40/Interactive/Outlet/{outletCode}/PlaceNonVerifiedGuestOrder
For append to check orders, if the check is closed in POS, we now return a new error codes 'PosCheckClosed' & 'InvalidCheckNumber' An append to check order is when a valid 'gxpChequeNumber' is included in the request
  • /API/V40/Interactive/Order
  • /API/V40/Interactive/Outlet/{outletCode}/NonVerifiedGuestOrder
  • /API/V40/Interactive/PropertyOrders
  • /API/V40/Interactive/PropertyOrders/{orderCode}
Comments at order and order item level will now return "Comment Hidden" instead of the original comment when the 'Hide order comments in Guest API and Front End' toggle is turned on in App Settings at group level.
  • /API/V40/System/Settings
  • /API/V40/System/Settings/CMS
Returns new boolean setting 'HideOrderComments' on both endpoints

GXP 4.121

Breaking changes

None

Non-Breaking changes

Endpoint Details Notes
  • /API/V40/System/Session/Initialise
  • /API/V40/System/Session/InitialiseByGuestIdentifier
  • /API/V40/System/Session/InitialiseByToken
  • /API/V40/System/Session/InitialiseByRoom
  • /API/V40/System/Session/InitialiseByAsset
Now includes InitialiseSessionResponse model, which contains both 'BrandCode' and 'GroupCode' of the property the session is initialised for.
  • /API/V40/System/StaticContent/DraftMessages
New endpoint for retrieving all draft static content with caching service. This new endpoint is the equivalent of calling StaticContent/Messages with a draft content version in session, however has a caching later for efficiency. The caching time is an application setting.
  • /API/V40/System/Settings/Property
Now returns the property's CountryIsoCode, or null if no code has been set.

GXP 4.120

Breaking changes

None

Non-Breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet/{outletCode}/PlaceVerifiedGuestOrder
  • /API/V40/Interactive/Outlet/{outletCode}/PlaceNonVerifiedGuestOrder
Now prevents two orders from being placed with a single basket code. If two or more requests are fired simultaneuosly, all but the first request will now receive an error with a new Area Error `CartLocked`.
  • /API/V40/System/Settings
  • /API/V40/System/Settings/Outlet
Response returns with a new property called 'TimeSlotCapacity'. This is configured in GXP Manager from Outlet Settings when 'Enable Time Slots' is turned on. The field is 'Time Slot Capacity'.

GXP 4.119

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/System/Settings
  • /API/V40/System/Settings/Outlet
  • /API/V40/Interactive/Outlet
Response returns with a new property called 'AllowVerifiedOrdering'. Controls whether verified guests can order from an outlet. This is configured in GXP Manager from Outlet Settings, 'Allow Orders from Verified Guests'.
  • /API/V40/Interactive/Outlet/{outletCode}/PlaceVerifiedGuestOrder
  • /API/V40/Interactive/Outlet/{outletCode}/PlaceVerifiedGuestServiceRequest
Now validates whether or not the outlet has AllowVerifiedOrdering set to true, and returns an error if false. The 'AllowVerifiedOrdering' setting is configured in GXP Manager from Outlet Settings, 'Allow Orders from Verified Guests'.

GXP 4.118

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet/{OutletCode}/AdditemsToBasket
Response returns with a new property called 'estimatedDeliveryTimeUtc'. Delivery time estimate including how long the lead time for an order is. This is configured in GXP Manager from Outlet Settings, 'Lead Time' and also from the 'Lead Time' field on Items.
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceVerifiedGuestOrder
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestOrder
Response returns with a new property called 'deliveryTimeUtc'. Delivery time including how long the lead time for an order is. This is configured in GXP Manager from Outlet Settings, 'Lead Time' and also from the 'Lead Time' field on Items.

GXP 4.117

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/System/Settings/Outlet
  • /API/V40/Interactive/Outlet
Response returns with a new property on it called 'EnableTimeSlots' This is configured in GXP Manager from Outlet Settings

GXP 4.116

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/System/Settings
  • /API/V40/System/Settings/Outlet
  • /API/V40/Interactive/Outlet
Response now returns with two new properties called 'AllowReservations' and 'ReservationUrl' This is configured via GXP Manager in Outlet Settings

GXP 4.115

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Payment/Outlet/{OutletCode}/Initialise
Response returns with a new property in 'paymentIntegrationSettings' called 'enable_applepay' This is configured in GXP Manager from Integration Settings

GXP 4.114

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/System/Settings
  • /API/V40/System/Settings/Outlet
Response returns with a two new properties called 'DisplayAlcoholInformation' and 'DisplayAllergenInformation' This is configured in GXP Manager from Outlet Settings

GXP 4.113

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/System/Settings
  • /API/V40//System/Settings/CMS
Response returns with a new property under the getCMSSettings model 'ShowFooterLinks' This is configured in GXP Manager from the App Settings 'Setup' menu.
  • /API/V40/CMS/Content/Homepage
  • /API/V40/CMS/Content/Guest/{guestId}/Homepage
Returns a response including the new quicklaunch type 'Order History'. This is configured in GXP Manager from the Homepage under 'Content Management'.

GXP 4.112

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/System/Settings/Property
  • /API/V40/System/Settings
Returns "TimeFormat" setting with 2 possible settings: "12-Hour" and "24-Hour" depending on what is set in the System Operational Settings page. The global default is "12-Hour". We following the normal convention of looking at higher dimensions if nothing is set at the current dimension, until we find a setting. If no setting is found, we return "12-Hour" rather than null, as this is the agreed on default.
  • /API/V40/System/Settings/*
All specific settings endpoints now create swagger documentation, so you can see the response model in Swagger UI. The current attribute cannot handle multiple response classes within, so we wont be doing the Get All Settings endpoint as part of this work.

GXP 4.106

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestOrder
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceVerifiedGuestOrder
Now validates that PaidByCard DeliverLater orders are enabled. Non-Ts properties will always be enabled, and Ts properties use the integration settings. If not enabled, returns the following error: Payment Type PaidByCard is not allowed for Deliver Later.
  • /API/V40/System/Settings/Cart
  • /API/V40/System/Settings
New field in cart response called 'EnablePaidByCardWithDeliverLaterOrders'. A boolean specifying whether the property allows Deliver later Paid by Card orders. Will always be true for non-Ts properties, and Ts properties use the integration setting.

GXP 4.104

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/System/Settings/AppStyles
New field in logos response called 'FaviconImageUrl'. The URL for Favicon in App Styles Logos
  • /API/V40/Interactive/Outlet
  • /API/V40/System/Settings/Outlet
  • /API/V40/System/Settings
New field in responses called 'AllowPreArrivalOrders'. A boolean specifying if the Outlet allows pre arrival orders
  • /API/V40/System/Settings/Outlet
  • /API/V40/System/Settings
New field in response called 'CollectionInstructions'. A string specifying the collection instructions for the Outlet

GXP 4.103

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/System/Settings/CMS
  • /API/V40/System/Settings
New field in responses called 'googleTagManagerId'. A string specifying the Google Tag Manager Id specified in property's App Settings

GXP 4.102

Breaking changes

None

GXP 4.101

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/System/Settings/AppStyles
New endpoint which returns Colours, Logos and Fonts for AppStyles. The endpoint returns a list of Colour groups with its RGBA values, the urls for logos and fonts.
  • /API/V40/Interactive/Outlet
  • /API/V40/System/Settings/Outlet
  • /API/V40/System/Settings
New field in responses called 'allowOpenChecks'. A boolean specifying if open TS checks are allowed for the outlet
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestOrder
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceVerifiedGuestOrder
  • Can now return AreaError OutletOpenChecksDisallowed for Pos orders.
This error should indicate that the outlet does not allow open checks for TS.
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestOrder
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceVerifiedGuestOrder
  • Can now return AreaError PaymentInvalidRequest for iDEAL payments.
This error is returned when an iDEAL payment method is provided that has an invalid return url within its metadata.
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestOrder
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceVerifiedGuestOrder
  • Can now return AreaError PaymentNotConfigured for iDEAL payments.
This error is returned when an iDEAL payment method is provided but the "Enable iDEAL Payment" Stripe integration setting for the property is false.

GXP 4.100

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet
  • /API/V40/System/Settings/Outlet
  • /API/V40/System/Settings
New field in responses called 'allowOrderComments'. A boolean specifying if guest comments are allowed for the order

GXP 4.99

Breaking changes

None

Non-breaking changes

None

GXP 4.98

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestOrder
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceVerifiedGuestOrder
  • Can now return AreaError PosItemOutOfStock for Pos orders. This will indicate that a Pos order attempted to purchase items that are currently out of stock.
This error should then instruct the front end to inform the user, that an item they have ordered is currently out of stock / unavailable.

GXP 4.97

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet
  • /API/V40/System/Settings/Outlet
  • /API/V40/System/Settings
New fields in responses called 'allowCustomTipAmount' and 'tipAmounts'. 'allowCustomTipAmount' - a boolean specifying if custom tip amounts should be allowed in frontend.
'tipAmounts' - a list containing three pre-specified tip amounts and a fourth zero-value for the No-Tip option. These values are specified as decimal values where 0.05 = 5% and 1.00 = 100%. They can be set in GXP's Outlet Settings section.

GXP 4.96

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet/{OutletCode}/AddItemsToBasket
New fields in response called 'gxpTaxChargeAmount' and 'taxBreakdown'. 'gxpTaxChargeAmount' contains the tax charge amount for the basket. 'taxBreakdown' contains a list of tax rates and the amount for each tax rate.
  • /API/V40/System/Settings
  • /API/V40/System/Settings/Outlet
  • /API/V40/Interactive/Outlet
  • /API/V40/Interactive/Outlet/{OutletCode}/DeliveryLocation
Outlet Delivery location area now returns new 'taxes' list - 'Name', 'Rate', 'isAppliedToCollection', 'isAppliedToRoomDelivery', 'isAppliedToDeliveryLocation' Returns tax rates assigned to tax class if assigned to Outlet delivery location area
  • /API/V40/System/Settings
  • /API/V40/System/Settings/Outlet
  • /API/V40/Interactive/Outlet
New field in response called 'OutletDeliveryChargeTaxes' which contains a list of tax rates - 'Name', 'Rate', 'isAppliedToCollection', 'isAppliedToRoomDelivery', 'isAppliedToDeliveryLocation' Returns tax rates assigned to tax class if assigned to Outlet Delivery Charge

GXP 4.95

Breaking changes

None

Non-breaking changes

None

GXP 4.94

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet/{OutletCode}/AddItemsToBasket
  • /API/V40/Interactive/Outlet/{OutletCode}/deliveryLocation/{deliveryLocationCode}/CallWaiter
If the delivery type is "DeliveryLocation", we now validate that the delivery location is assigned to the outlet. Will return a validation error 400 response and error of "DeliveryLocationCode is not valid for the Outlet." if invalid.

GXP 4.93

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/CMS/Content/Categories/{{categoryCode}}/Items
  • /API/V40/CMS/Content/Guest/{{guestId}}/SectionsCategoriesItems
  • /API/V40/CMS/Content/Items/{{code}}
  • /API/V40/CMS/Content/Outlet/{{outletCode}}/SectionsCategoriesItems
  • /API/V40/CMS/Content/SectionsCategoriesItems
Now returns new fields in the 'taxes' list - 'isAppliedToCollection', 'isAppliedToRoomDelivery', 'isAppliedToDeliveryLocation'
  • /API/V40/System/Settings
  • /API/V40/System/Settings/Cms
  • New properties in response called 'taxCalculationEnabled' (boolean) and 'taxCalculationMethod (integer)
The value of these new properties comes from GXP System Operational Settings.

GXP 4.92

Breaking changes

None

Non-breaking changes

None

GXP 4.91

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/System/Settings
  • /API/V40/System/Settings/Outlet
  • New property in response called 'allowTipping'
The value of this new property comes from the state of the 'Allow Tipping/Gratuity' in GXP Outlet Settings.
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestOrder
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceVerifiedGuestOrder
  • New field in the request called 'tipAmount'.
  • /API/V40/Interactive/Outlet/{outletCode}/NonVerifiedGuestOrder
  • /API/V40/Interactive/Order
  • /API/V40/Interactive/PropertyOrders/{orderCode}
  • /API/V40/Interactive/PropertyOrders
  • Now returns a new field called 'tipAmount'.

GXP 4.90

Breaking changes

None

Non-breaking changes

None

GXP 4.89.2

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestOrder
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceVerifiedGuestOrder
  • Can now return AreaError BasketPriceOutOfSync for Non-Pos orders, as this will indicate the original totals the customer agreed to in the basket have changed.
This error should then instruct the front end to refresh the basket, to pick up the new totals for the customer to agree to. We will also attempt to refund any payment against the order.

GXP 4.89

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Payment/Outlet/{OutletCode}/Initialise
  • Retrieve client payment integration settings for property.
If the property and outlet are setup for payment, the properties client payment integration settings will be returned..
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestOrder
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceVerifiedGuestOrder
  • New optional fields 'paymentToken' and 'paymentState' in request
PaymentToken is the tokenised payment information. PaymentState (Create or Confirm) is used to determine whether the payment transaction is being created for the first time or whether it is being confirmed following an SCA request.

GXP 4.88

Breaking changes

None

Non-breaking changes

None

GXP 4.87

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet/{OutletCode}/AddItemsToBasket
  • /API/V40/Interactive/Outlet/{OutletCode}/deliveryLocation/{deliveryLocationCode}/CallWaiter
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestOrder
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceVerifiedGuestOrder
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestServiceRequest
  • /API/V40/Interactive/Outlet/{OutletCode}/PlaceVerifiedGuestServiceRequest
  • Now returns an bad request if trying to create a basket or order with an outlet that has AllowOrdering set to false.
Returns Area Error 'OutletOrderingDisallowed'.
  • /API/V40/Interactive/Outlet/{OutletCode}/
  • /API/V40/System/Settings/
  • /API/V40/System/Settings/Outlet/
  • Now returns the AllowOrdering value for outlet settings.
Default on outlet creation to true.

GXP 4.84

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/CMS/Content/Outlet/{outletCode}/CategoryItemsByPosItemCode/{posItemCode}
New endpoint - retrieves CategoryItems for an Outlet by PosItemCode
  • /API/V40/Interactive/Messages/NonVerifiedGuestConversations
New endpoint for Non Verified Guest Conversations This endpoint creates a new conversation for a non verified guest.
  • /API/V40/Interactive/Messages/NonVerifiedGuestConversations/{code}/Message
New endpoint for Non Verified Guest Conversation message This endpoint creates a new message for an existing non verified guest conversation.
  • /API/V40/Interactive/Messages/Conversations
  • /API/V40/Interactive/Messages
  • This endpoint now gets conversations and messages for non verified guests as well
  • /API/V40/Interactive/Outlet/{outletCode}/NonVerifiedGuestOrder
  • /API/V40/Interactive/Order
  • /API/V40/Interactive/PropertyOrders
No change in signature. These endpoints now return only a list of test orders in a test session, and non-test orders in a non-test session.
  • /API/V40/Interactive/PropertyOrders/{orderCode}
No change in signature. This endpoint now returns the order if the order and the session are either both test, or both non-test.
Otherwise, an empty order is returned, with a NotFound error code.

GXP 4.83

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/System/Session/InitialiseByGuestIdentifier
  • New Endpoint - Creates a session for a non verified guest.
  • Request: PropertyCode, InterfaceToken, Version, LanguageCode, GuestUniqueIdentifier (optional).
  • If GuestUniqueIdentifier isn't provided in the request, a GUID is generated and returned in the response.
  • /API/V40/System/Session/LoginByGuestIdentifier
  • New Endpoint - Login for a non verified guest.
  • Request: SessionToken, GuestUniqueIdentifier (optional).
  • If GuestUniqueIdentifier isn't provided in the request, a GUID is generated and returned in the response.
  • /API/V40/System/Interactive/Order
  • This endpoint now gets orders for non verified guests as well
  • /API/V40/Interactive/Outlet/{{posOutletCode}}/AddItemsToBasket
Added two new error codes:
  • MixingTestAndNormalItemsNotAllowedInTestSession
  • TestItemsNotAllowedInNormalSession
  • /API/V40/CMS/Content/Categories/{{categoryCode}}/Items
  • /API/V40/CMS/Content/Guest/{{guestId}}/SectionsCategoriesItems
  • /API/V40/CMS/Content/Items/{{code}}
  • /API/V40/CMS/Content/Outlet/{{outletCode}}/SectionsCategoriesItems
  • /API/V40/CMS/Content/SectionsCategoriesItems
A new IsTest boolen property added to the categoryItem models in these GET endpoints

GXP 4.82

Breaking changes

None

Non-breaking changes

Endpoint Details Notes
  • /API/V40/Interactive/Outlet/{OutletCode}/AddItemsToBasket
  • Now accepts the property 'ItemPriceCode' at item level level for items with multiple prices.
Returns Area Error 'PosItemPriceNotFound' when an invalid ItemPriceCode is used.

If no ItemPriceCode is specified, the value assigned as Default in GXP will be used.
  • /API/V40/System/Settings/Outlet
  • /API/V40/System/Settings
    A geofence radius is now only returned for outlet & app combinations configured to be geofenced in GXP.

    GXP 4.79

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    • /API/V40/System/Settings/Outlet
    • Now returns the new Outlet setting "AllowMultiPrice"
    • /API/V40/Interactive/Outlet/{OutletCode}/AddItemsToBasket
    • /API/V40/Interactive/Outlet/{OutletCode}/PlaceVerifiedGuestOrder
    • /API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestOrder
    • Added AreaError 'PosConnectionError'.
    Return Area Error 'PosConnectionError' when Adapter cant connect to Pos.
    • /CMS/Content/Outlet/{OutletCode}/SectionsCategoriesItems
    • /CMS/Content/SectionsCategoriesItems
    • /CMS/Content/Guest/{GuestId}/SectionsCategoriesItems
    • /CMS/Content/Categories/{CategoryCode}/Items
    • /CMS/Content/Items/{Code}
    • Added ItemPrices array when returning items.
    When ItemPrices has no displayName returns "Price {order}", order indexed at 1. (ex: "Price 1")

    GXP 4.78

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    • /API/V40/CMS/Interactive/Order
    • /API/V40/CMS/Interactive/PropertyOrders/{orderCode}
    • /API/V40/CMS/Interactive/PropertyOrders
    • Added property 'Supplement' to Items.
    We now return 'Supplement' for items.

    GXP 4.77

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    • /API/V40/CMS/Content/Outlet/{OutletCode}/SectionsCategoriesItems
    • /API/V40/CMS/Content/Sections/{SectionCode}/Categories
    • /API/V40/CMS/Content/Guest/{GuestId}/SectionsCategoriesItems
    • /API/V40/CMS/Content/Categories/{CategoryCode}/Items
    • /API/V40/CMS/Content/Items/{Code}
    • Added property 'SubType' to Category.
    • Added properties 'LongDescription', 'ShortDescription', 'ImageUrl' and 'Supplement' to Item Modifier Options.
    We now return Combo Meal categories, items and modifiers with options.

    GXP 4.76

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    • /API/v40/Interactive/Outlet/{outletCode}/AddItemsToBasket
    • Added property 'RelatedParentCategoryItemCode' to basket item
    • Returns BasketItemError area code if no category item found for CategoryItemCode or RelatedParentCategoryItemCode of the basket item.
    The property is set for related items only with the CategoryItemCode of the parent item.

    GXP 4.74

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    • /API/V40/Interactive/Cart
    • /API/V40/Interactive/ServiceRequest
    • Controllers now marked as deprecated
    Only marked as deprecated in their respective notes in the documentation to discourage consumption - the endpoints still function correctly

    GXP 4.69

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    • /API/V40/CMS/Content/Outlet/{outletName}/SectionsCategoriesItems
    • /API/V40/CMS/Content/SectionsCategoriesItems
    • /API/V40/CMS/Content/Guest/{GuestId}/SectionsCategoriesItems
    • /API/V40/CMS/Content/Categories/{CategoryCode}/Items
    • /API/V40/CMS/Content/Items/{Code}
    • Items now include list of taxes
    In live version we now return a list of the taxes setup against the item. These include the taxes name and rate.

    GXP 4.68

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    In Draft version only:
    • /API/V40/CMS/Content/Outlet/{outletName}/SectionsCategoriesItems
    • /API/V40/CMS/Content/SectionsCategoriesItems
    • /API/V40/CMS/Content/Guest/{GuestId}/SectionsCategoriesItems
    • /API/V40/CMS/Content/Categories/{CategoryCode}/Items
    • /API/V40/CMS/Content/Items/{Code}
    • Items now include list of taxes
    In draft version we now return a list of the taxes setup against the item. These include the taxes name and rate.

    GXP 4.66

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    /API/V40/Interactive/Outlet/{outletCode}/deliveryLocation/{deliveryLocationCode}/GetOpenCheck
    • Syncs Gxp Order with Pos Check, and returns updated gxp order
    Endpoint syncs the gxp order with the pos check, using the delivery location code to match before returning the order history
    /API/V40/Interactive/PropertyOrders/{orderCode}
    • New endpoint - gets details for a specific order
    Returns a verified or non verified order based on the order code.
    /API/V40/Interactive/PropertyOrders
    • New endpoint - gets details for a set of verified or non verified orders
    Returns verified or non verified orders based on a list of order codes.

    GXP 4.64

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    API/V40/CMS/Content/Outlet/{OutletCode}/SectionsCategoriesItems API/V40/CMS/Content/SectionsCategoriesItems API/V40/CMS/Content/Guest/{GuestId}/SectionsCategoriesItems
    • Now returns 'LeadTime' as part of CategoryItems
    Items now have a LeadTime property to support scenarios where the user wants to specify Lead Time on a per item basis rather than Outlet.
    API/V40/CMS/Content/CacheStatus API/V40/CMS/Content/CacheStatusForProperty API/V40/CMS/Content/ClearCacheForProperty
    • API calls for checking the state of, and clearing the cache. They are not visible in Swagger.
    These API endpoints are secured using a SecurityKey, the same way the POS API is secured.

    GXP 4.63

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    API/V40/Interactive/Order API/V40/Interactive/Outlet/{OutletCode}/NonVerifiedGuestOrder
    • Now returns 'Round sequence' as part of Order Items
    Order Items now have a round sequence to support scenarios where we have appended to an existing check - resulting in multiple rounds for that order
    API/V40/Interactive/Outlet/{OutletCode}/PlaceVerifiedGuestOrder API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestOrder
    • Append to check not supported by MCP, Lightspeed or IG
    If a GxpChequeNumber is supplied in the request for these 3 Pos Adapters, an AppendToCheckNotSupported error will be returned from the endpoint
    API/V40/Interactive/Outlet/{OutletCode}/PlaceVerifiedGuestOrder API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestOrder
    • PosOrderRoundsOutOfSync error code
    During appending to a check, if a round is placed in Pos but then fails in Gxp, we will now roll back the order items in GXP and return an error message to sync Gxp to Pos.

    GXP 4.62

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    API/V40/Interactive/Outlet/{outletCode}/deliveryLocation/{deliveryLocationCode}/CallWaiter
    • New endpoint to call waiter for TS POS integration
    This endpoint takes outlet code and delivery location code as query parameters. It is used to send a call waiter request to TS POS. Returns 200 if successful. If unsuccessful, one of the following error codes will be returned: 400, 410, 500.

    GXP 4.61

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    API/V40/Settings API/V40/Settings/Outlet/{code}
    • Added Outlet's TelephonNumber and TelephonePrefix to the response
    API/V40/Settings API/V40/Settings/Property
    • Added Property's TelephonePrefix to the response

    GXP 4.60

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    API/V40/Interactive/Outlet/{code}/AddItemsToBasket API/V40/Interactive/Outlet/{code}/PlaceVerifiedGuestOrder API/V40/Interactive/Outlet/{code}/PlaceVerifiedGuestServiceRequest API/V40/Interactive/Outlet/{code}/PlaceNonVerifiedGuestOrder API/V40/Interactive/Outlet/{code}/PlaceNonVerifiedGuestServiceRequest
    • New area error DeliveryDateInThePast
    This area error is returned if order is set to be delivered later and delivery time is in the past
    API/V40/System/Settings/Outlet
    • Extend response object with new property CollectionText
    When 'Allow Collection' is enabled for an Outlet, GXP user can enter 'Specify Pickup Location' which is returned in this new property.

    GXP 4.58

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    API/V40/System/Settings API/V40/System/Settings/Property
    • New string field "skinCode"
    Returns the Custom Style as defined in GXP/Content Management/Homepage. Nulls allowed.
    • /API/V40/Interactive/Outlet/{{outletCode}}/PlaceVerifiedGuestOrder
    • /API/V40/Interactive/Outlet/{{outletCode}}/PlaceNonVerifiedGuestOrder
    • /API/V40/Interactive/Outlet/{{outletCode}}/PlaceVerifiedGuestServiceRequest
    • /API/V40/Interactive/Outlet/{{outletCode}}/PlaceNonVerifiedGuestServiceRequest
    • "orderId" is now returned as part of the response
    On a successful placing of an order, we now return the id for that order. If an error occurs, we will return 0.

    GXP 4.57

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    API/V40/Interactive/Guest/CheckIn
    • New area error NoRoomsAvailableOfRoomTypeException
    This area error is returned if check-in fails due to no rooms are available

    GXP 4.56.1

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    API/V40/Interactive/Guest/ConfirmationNumber
    • New endpoint to verify the confirmation number against the guest in the session.
    Returns InvalidConfirmationNumber area code if no confirmation found against logged in guest.

    GXP 4.55

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    API/V40/System/Settings
    • "allowNonVerifiedGuests" will now be set to false, if an Outlet has no Order Forms associated with it
    The API will not set it to false, if the associated Order Form captures no fields
    API/V40/System/Settings/Outlet
    • "GetMenuBitByBit" has been removed from the response object.
    "GetMenuBitByBit" is no longer associated with Outlets

    GXP 4.54

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    API/V40/CMS/Content/Homepage API/V40/CMS/Content/Guest/Homepage
    • The API no longer filters banners based on their start and end date. Instead, new UTC "StartDate" and "EndDate" fields have been added to the banner object.
    As apps often cache homepage data, server-side filtering could not work correctly, therefore we now expose the dates so that the apps can modify the banner filtering as the clock ticks over.
    API/V40/Interactive/Guest/ReservationNumber
    • Added a new endpoint to verify the Guest's Reservation Number
    API/V40/CMS/Content/Homepage
    • Extend Quicklaunches response object with new property SectionCode
    The SectionCode property is used to identify which Section the Quicklaunch is linked to.
    API/V40/Interactive/Guest/CheckIn
    • New areacode MoreThanOneRoomInReservation in response if more than one room is connected to the guest reservation.
    A guest check-in can only be processed if the guest reservation has one single room connected
    API/V40/Interactive/Outlet/{code}/PlaceVerifiedGuestOrder
    API/V40/Interactive/Outlet/{code}/PlaceVerifiedGuestServiceRequest
    API/V40/Interactive/Outlet/{code}/PlaceNonVerifiedGuestOrder
    API/V40/Interactive/Outlet/{code}/PlaceNonVerifiedGuestServiceRequest
    New field PaymentReferenceNumber (string, max 250 chars) available to track external payments. This value will be passed on to any configured OHEICS integrations

    GXP 4.52

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    API/V40/Interactive/Outlet/{code}/DeliveryLocation
    API/V40/Interactive/Outlet/{code}/AddItemsToBasket
    API/V40/Interactive/Outlet/{code}/PlaceVerifiedGuestOrder
    API/V40/Interactive/Outlet/{code}/PlaceVerifiedGuestServiceRequest
    API/V40/Interactive/Outlet/{code}/PlaceNonVerifiedGuestOrder
    API/V40/Interactive/Outlet/{code}/NonVerifiedGuestOrder
    API/V40/Interactive/Outlet/{code}/PlaceNonVerifiedGuestServiceRequest
    API/V40/System/Settings/Outlet (with outlet code in query string)
    • Endpoints related to a single outlet will now verify that outlet is visible. If not, an OutletNotAvailable area error code will be returned in an HTTP 410 Gone response.
    API/V40/Interactive/Outlet
    API/V40/System/Session/ContentVersion
    API/V40/System/Settings
    API/V40/System/Settings/Outlet
    • Endpoints related to a several outlets will only include outlets marked as visible.
    API/V40/System/Settings/ OutletAndContentPreCalculatedAvailability/{code}
    • New endpoint with pre-calculated availability and time slots for a single outlet including all sections and category items
    New properties:
    • outletAvailabilitySummary - The Availability Summary is a complete merge of Opening Hours for the Outlet and all Availability Periods for Sections and Category Items within that Outlet. These summaries inform that something is available to be sold and thus can be used to specify delivery times. Times are specified as "minutes since midnight" where 0 is minute starting at 00:00 and 1439 is minute starting at 23:59. Each time is one minute long so 1439 covers up until midnight.
    • outletAvailabilitySlots - This property contains a list of time slot definitions. Each definition matches a period in the outletAvailabilitySummary property and contains the properties: first.start, first.end, last.start, last.end and interval.
      • If a given period is 100-400 then the time-slot definition would specifiy the first and the last time-slot in that period, in this case that could be 100-130 and 370-400.
      • The first and the last time-slot can be different than the time-slots in-between (to even out strange opening and closing times), but never longer than 2 x interval.
      • The interval property is based on the Outlet interval setting. It specifies the length of the all the middle time-slots between start and end time-slots. It can be 0 if no middle time slots are needed, meaning start and end time-slot cover the whole period.
      • The end time-slot can be empty if start time-slot covers the whole period by itself. Interval is then 0.
    • outletsHash - An outlets hash is also returned to tell what outlet configuration that this data is calculated on.
    • This endpoint will replace the outlet availability data previously shown in the endpoint API/V40/CMS/Content/Outlet/{code}/SectionsCategoriesItems
    API/V40/System/Settings/Outlet
    • Extend response object with new property GeofenceRadius
    To prevent non verified guests from placing orders/service requests from outside the property, a new setting under Outlets has been introduced. The centre point of the radius is the Property's Longitude and Latitude. The unit of measurement for the geo-fence radius is meters.

    GXP 4.51

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    /API/V40/Interactive/Guest/CheckIn
    • New endpoint which performs a check-in.
    The check-in uses the new PMS Trigger framework. Upon success, returns a signed-in session token (like that returned from the "InitaliseByRoom" API call).
    /API/V40/Interactive/Guest/CheckOut
    • New endpoint which performs a check-out
    The check-out uses the new PMS Trigger framework. Upon success, returns a signed-out session token (like that returned from the "Initalise" API call).

    GXP 4.46

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    /API/V40/Interactive/Guest/Profile
    • Returns a new property VerifiedLanguageCode
    This new language code is guaranteed to have a format that is understood by GXP and will only be a value that is supported by the property (matching a language in the GetLanguages call). If conversion from PMS integrated language code to GXP language code can't be made then the property's default language will be used. The old property LanguageCode is unchanged and will contain whatever value the PMS system has returned as guest language.

    GXP 4.45

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    /API/V40/Interactive/Outlet/{OutletCode}/PlaceVerifiedGuestOrder /API/V40/Interactive/Outlet/{OutletCode}/PlaceNonVerifiedGuestOrder
    • Add price verification between Basket and Infogenesis POS system
    When placing an order, if the Basket price does not match Infogenesis POS system, "BasketPosPriceOutOfSync" will be returned as the "areaError".

    /API/V40/CMS/Content/Homepage

    /API/V40/CMS/Content/Guest/{GuestId}/Homepage

    • Extend response object with property OutletCode and SectionType
    Quicklaunches, Shortcuts and Widget Banners that are linked to sections, categories or items have a new property called 'OutletCode' which contains the code of the outlet they are linked to. There is also a new property called 'SectionType' which contains the type of linked section.

    /API/V40/CMS/Content/Homepage

    • Extend response object with property TimedBackgroundImages
    TimedBackgroundImages property contains the new Homepage Background Images response, which supports the new functionality of being able to specify when an image is displayed during the day.

    GXP 4.44

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    /API/V40/System/Settings/Languages

    • Name will have translated language name.
    The 'Name' property should have the translated name for the language. If there is no translated name for the language, then the name should be used.

    GXP 4.43

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    /API/V40/System/Settings/Languages

    • Name will have translated language name.
    The 'Name' property should have the translated name for the language. If there is no translated name for the language, then the name should be used.

    /API/V40/System/Settings

    /API/V40/System/Settings/Outlet

    • Extend response object with property AllowGuestMessage
    This property contains a boolean flag for whether the outlet should allow messages on the front end

    /API/V40/CMS/Content/Outlet/{OutletCode}/SectionsCategoriesItems

    /API/V40/CMS/Content/SectionsCategoriesItems

    /API/V40/CMS/Content/Guest/{GuestId}/SectionsCategoriesItems

    /API/V40/CMS/Content/Categories/{CategoryCode}/Items

    /API/V40/CMS/Content/Items/{Code}

    • Item modifiers and item modifier options that have been set to invisible will not be returned.
    Item modifiers and item modifier options that have been set to invisible will not be returned.

    GXP 4.40

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    /API/V40/CMS/Content/Homepage

    • Extend response object with property SortOrder
    This property contains the widgets' sort order

    API/V40/System/Session/InitialiseByAsset

    • New response property: RoomStatus
    Previously, the response has only included information about if the initialisation was successful or not. Now, a new property is returned as well: RoomStatus (responses/initialiseSessionByAsset/content/roomStatus). Possible response codes are:
    • NoGuestInRoom
    • RoomIsOccupied

    /API/V40/CMS/Content/Guest/{GuestId}/SectionsCategoriesItems

    /API/V40/CMS/Content/Homepage

    • Extend response object with property SortOrder
    This property contains the widgets' sort order

    /API/V40/CMS/Content/Guest/{GuestId}/SectionsCategoriesItems

    • List of all sections, categories and items for the specific guest, sections visible to all rooms are not included.
    When calling the endpoint, the response will now contain any sections, categories and items that are assigned to a section which the guest has access to.

    /API/V40/CMS/Content/Guest/{GuestId}/Homepage

    • List of all widgets, banners and homepage items for the specific guest, widgets visible to all rooms are not included.
    When calling the endpoint, the response will now contain any widgets that are assigned to a section which the guest has access to.

    GET API/V40/Interactive/Order

    If guest has checked out or moved room, call will return HttpCode 404, AreaCode GuestNotFound Previously, HttpCode 200 with empty response was returned.

    GET API/V40/Interactive/Order/BillInfo

    If guest has checked out or moved room, call will return HttpCode 401, AreaCode GuestNotLoggedIn Previously, no error was returned for room move.

    GET API/V40/Interactive/Messages

    If guest has checked out or moved room, call will return HttpCode 404, AreaCode GuestNotFound Previously, call would cause server error

    GET API/V40/Interactive/Messages/Conversations

    If guest has checked out or moved room, call will return HttpCode 404, AreaCode GuestNotFound Previously, call would cause server error

    POST API/V40/Interactive/Messages/Conversations

    If guest has checked out or moved room, call will return HttpCode 404, AreaCode GuestNotFound Previously, a room move would just return HttpCode 200 with empty response

    PATCH API/V40/Interactive/Messages/Conversations/{code}/Message

    If guest has checked out or moved room, call will return HttpCode 404, AreaCode GuestNotFound Previously, a room move would just return HttpCode 200 with empty response

    PATCH API/V40/Interactive/Messages/{code}

    If guest has checked out or moved room, call will return HttpCode 404, AreaCode GuestNotFound Previously, call would just return HttpCode 200

    GET API/V40/Interactive/Guest/Profile

    If guest has checked out or moved room, call will return HttpCode 500, AreaCode GuestNotCheckedIn Previously, a room move would return HttpCode 200 for the correct room

    POST API/V40/Interactive/Outlet/{outletCode}/PlaceVerifiedGuestOrder

    If guest has checked out or moved room, call will return HttpCode 500, AreaCode GuestNotCheckedIn Previously, a room move would return HttpCode 200

    POST API/V40/Interactive/Outlet/{outletCode}/PlaceVerifiedGuestServiceRequest

    If guest has checked out or moved room, call will return HttpCode 500, AreaCode GuestNotCheckedIn Previously, a room move would return HttpCode 200

    POST API/V40/System/Session/InitialiseByAsset

    Invalid format of Asset Key will return HttpCode 400, AreaCode "SystemError" Previously, an invalid format of key would return HttpCode 500. This should not be confused with an asset key that isn't found which returns HttpCode 400, AreaCode "Invalid asset key".

    GET /System/Session/ContentVersion

    Calling endpoint will now also return property liveVersion showing what the current live version is. The live version can be different from the version currently used in the session.

    GXP 4.38

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    /API/V40/CMS/Content/Homepage

    • Dynamic widgets now included in response.
    When calling the endpoint, the response will now contain any dynamic widgets set up for the property. They will appear in the same format as other widgets.

    Interactive/Guest/Profile

    • Adding response parameter GuestId.
    Returning the GuestId for the person making the get Profile API call.

    Outlet/{outletCode}/PlaceNonVerifiedGuestOrder

    • Adding optional parameter NumberOfGuests to request.
    NumberOfGuests (string) - optional This property contains the number of guests attached to an order in GXP. As some apps which are live still use the number of guests in the order form this is optional. If this is left blank the value in the order form will be taken, otherwise this new parameter will be taken.

    Outlet/{outletCode}/PlaceNonVerifiedGuestServiceRequest

    • Adding optional parameter NumberOfGuests to request.
    NumberOfGuests (string) - optional This property contains the number of guests attached to an service in GXP. As some apps which are live still use the number of guests in the order form this is optional. If this is left blank the value in the order form will be taken, otherwise this new parameter will be taken.

    Release notes

    GXP 4.35

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    Outlet/{outletCode}/PlaceNonVerifiedGuestOrder

    Outlet/{outletCode}/PlaceVerifiedGuestOrder

    • Adding optional parameter GxpChequeNumber to request.
    • Adding response parameter GxpChequeNumber.
    GxpChequeNumber (string) - optional This property contains the ChequeNumber attached to an order in GXP. For Pos orders, after a successful PlaceOrder, this will be returned in the response. If we want to append to an existing order, this property must contain the value received from a previous call as part of the new request.

    /API/V40/System/Settings

    /API/V40/System/Settings/Outlet

    • Adding AllowAppendToCheque to outlet settings.
    Setting from outlet settings page now retrieved as part of call.

    Interactive/Outlet/Restaurant/PlaceVerifiedGuestOrder

    Interactive/Outlet/Restaurant/PlaceNonVerifiedGuestOrder

    • Fails validation if cheque number in request, and outlet setting 'AllowAppendToCheque' set to false.
    New validation around outlet settings.

    /API/V40/Interactive/Outlet/{outletName}/NonVerifiedGuestOrder

    • New endpoint to retrieve non verified guest orders for specified outlet. (17214).
    DeliveryLocationCode (string) - optional If a delivery location code is passed as a query parameter, then we use this to filter the results. Offset (optional) - Offsets the start of the beginning of orders returned Limit (optional) - number of orders returned Note - results will come back ordered descending by creation date.

    GXP 4.34

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    System/Settings

    System/Settings/CMS

    • Extend GetCMSSettings/Content object with property MobileConfigurationSettings
    This property contains configuration settings for mobile as a JSON object and is required by Native Apps. If null, it means there are no configuration settings.

    Content/Outlet/{OutletCode}/SectionsCategoriesItems

    • Array timeSlotGroups added to each available day in the availabilitySlots property
    • This new property, contains a list of time slot definitions. Each definition matches a period in the totalAvailabilitySummary property and contains the properties: first.start, first.end, last.start, last.end and interval.
    • If a given period is 100-400 then the time-slot definition would specifiy the first and the last time-slot in that period, in this case that could be 100-130 and 370-400.
    • The first and the last time-slot can be different than the middle time-slots (to even out strange opening and closing times), but never longer than 2 x interval.
    • The interval property is based on the Outlet interval setting. It specifies the length of the all the middle time-slots between start and end time-slots. It can be 0 if no middle time slots are needed, meaning start and end time-slot cover the whole period.
    • The end time-slot can be empty if start time-slot covers the whole period by itself. Interval is then 0.

    GXP 4.33

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    Content/SectionsCategoriesItems

    Content/Categories/{CategoryCode}/Items

    Content/Items/{Code}

    • Extend ItemModifier with field MaximumQuantity
    The maximum number of item modifiers a guest can choose on the front end. If the MaximumQuantity has a value, then on the front end, the guest can select no more than the MaximumQuantity for the item modifier. If the MaximumQuantity is null, then there is no maximum quantity set for the item modifier.

    Content/Outlet/{OutletCode}/SectionsCategoriesItems

    Content/SectionsCategoriesItems

    Content/Sections

    • Extend Section with field IsEncryptedUrl
    If IsEncryptedUrl is set to true, Url field is set to empty and Url has a value if IsEncryptedUrl is false

    Content/Sections/{SectionCode}/EncryptedURL

    • New endpoint
    It returns the section Url with a query string parameter 'guestInfo' containing the encrypted JSON

    Content/Outlet/{OutletCode}/SectionsCategoriesItems

    • Extend Sections and CatogoryItems with property AvailabilitySummary
    • Extend Outlet with property TotalAvailabilitySummary
    The Availability Summary for Sections and CategoryItems is an individual merge of all Availability Periods for that specific entity. Opening hours for the Outlet and Availability Periods for other Sections and CategoryItems are not included. These summaries are a simplification of the normal Availability Periods in that overlapping periods have been merged together and time slots stretching over midnight have been split up into two separate days. The Total Availability Summary is a complete merge of Opening Hours for the Outlet and all Availability Periods for Sections and Category Items within that Outlet. These summaries inform that something is available to be sold and thus can be used to specify delivery times.

    System/Settings

    System/Settings/Outlet

    • Extend Outlets with property AvailabilitySummary
    The Availability Summary for the Outlet is a simplification of the normal Opening Hours in that overlapping periods have been merged together and time slots stretching over midnight have been split up into two separate days.

    Content/Homepage

    • Extend Widget with field OutletCode
    All shortcut widgets of action type section, category or item get the associated outlet code, if one is available, added to the shortcut

    System/Settings/CMS

    Properties added
    • allow2wayMessaging
    • showTermsAndConditions
    • showWelcomeScreen
    • messagePollingInterval
    Description
    • allow2wayMessaging (int) - 1=On, 2=Off, 3=TempOff
    • showTermsAndConditions (bool)
    • showWelcomeScreen (bool)
    • messagePollingInterval (int) - number of minutes between each polling

    Interactive/Outlet

    Properties added
    • outlets/deliveryCharge
    • outlets/deliveryLocationAreas/deliveryCharge
    Description
    • outlets/deliveryCharge (decimal) - what is configured in Outlet Settings (If UsePos=true then a PosCode needs to be set for the Delivery Charge to be used, otherwise 0 will be used. If UsePos=false then Delivery Charge for Outlet will be used as it is)
    • outlets/deliveryLocationAreas/deliveryCharge (decimal) - what is configured in Outlet Settings -> Delivery Location Areas

    Interactive/Outlet/{request.OutletCode}/DeliveryLocation

    Properties added
    • outlets/deliveryLocationAreas/deliveryCharge
    Description
    • outlets/deliveryLocationAreas/deliveryCharge (decimal) - what is configured in Outlet Settings -> Delivery Location Areas

    Interactive/Order

    Properties added
    • orders/outletName
    • orders/extraCharges/description
    • orders/deliveryLocation
    Description
    • orders/outletName (string) - name of outlet
    • orders/extraCharges/description (string) - text description of the extra charge
    • orders/deliveryLocation (string) - description of delivery location (if Type=Collection => return "Collection", if Type="Delivery Location" => return delivery location, if Type="Room" or unknown => return "Room ___" where room number can be left out if missing).

    GXP 4.32

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    Interactive/Outlet/{OutletName}/AddItemsToBasket

    Interactive/Outlet/{OutletName}/PlaceNonVerifiedGuestServiceRequest

    Interactive/Outlet/{OutletName}/PlaceVerifiedGuestServiceRequest

    • Adding item modifier validation for orders and service requests. (TFS 14694)
    No validation currently exists, so any current calls with invalid category item modifiers will return an error message.
    System/Settings/Outlet
    • Adding IsTaxIncludedInPrice flag Outlet settings response
    IsTaxIncludedInPrice (bool) - specifies whether the prices of items within my outlet are inclusive of VAT or not.

    GXP 4.30

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    System/Properties/{PropertyCode}/Assets
    • Delete an existing asset by sending no room number
    Functionality added to remove an asset by passing in no room number in the request

    GXP 4.29

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    System/Settings/Outlet
    • Adding ExtraCharges list to Outlet settings response
    Extra charges list:
    • Name (string) - extra charge name
    • Tax (decimal) - extra charge tax
    • Price (decimal) - extra charge price
    • Code (string) - extra charge code
    • CMS/Content/Sections
    • CMS/Content/Sections/{SectionCode}/Categories
    • [Obsolete] CategoryExtraCharges list from Response.
    Use System/Settings/Outlet to retrieve Outlet Extra Charges.

    Content/Outlet/{OutletCode}/SectionsCategoriesItems

    Content/SectionsCategoriesItems

    Content/Categories/{CategoryCode}/Items

    • Added "sortOrder" property to the CategoryItem ItemModifier object in the response.
    int
    CMS/Content/SectionsCategoriesItems
    • Added SectionOutlets property
    The SectionOutlets property contains a list of OutletCodes for Sections of "OutletContent" type
    CMS/Content/Sections
    • Added SectionOutlets property
    The SectionOutlets property contains a list of OutletCodes for Sections of "OutletContent" type

    GXP 4.28

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    System/Settings
    • Added new node containing Outlet Settings information
    This composite endpoint now contains information from the GetOutletSettings call
    • System/Session/InitialiseByToken
    • System/Session/LoginByToken
    • System/Session/InitialiseByRoom
    • System/Session/InitialiseByAsset
    • System/Session/LoginByRoom
    • LanguageCode - string (optional)
    This will enable session creation with specific LanguageCode
    Interactive/Outlet
    • Added new deliveryLocationAreas property to the Outlet nodes
    Added associated Delivery Location Areas information to the relevant Outlets returned
    CMS/Content/SectionsCategoriesItems
    • Added SectionOutlets property
    The SectionOutlets property contains a list of OutletCodes for Sections of "OutletContent" type
    CMS/Content/Sections
    • Added SectionOutlets property
    The SectionOutlets property contains a list of OutletCodes for Sections of "OutletContent" type

    GXP 4.27

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    System/Properties/{PropertyCode}/Assets/Current
    • Delete an existing asset
    New endpoint

    GXP 4.26

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    Interactive/Content/Outlet/{OutletCode}/SectionsCategoriesItems

    • Added new fields to AvailabilityPeriods response object
    AvailabilityPeriods response object now includes:
    • IsMonday (bool)
    • IsTuesday (bool)
    • IsWednesday (bool)
    • IsThursday (bool)
    • IsFriday (bool)
    • IsSaturday (bool)
    • IsSunday (bool)

    Interactive/Content/SectionsCategoriesItems

    • Added new fields to AvailabilityPeriods response object
    AvailabilityPeriods response object now includes:
    • IsMonday (bool)
    • IsTuesday (bool)
    • IsWednesday (bool)
    • IsThursday (bool)
    • IsFriday (bool)
    • IsSaturday (bool)
    • IsSunday (bool)

    Interactive/Content/Categories/{CategoryCode}/Items

    • Added new fields to AvailabilityPeriods response object
    AvailabilityPeriods response object now includes:
    • IsMonday (bool)
    • IsTuesday (bool)
    • IsWednesday (bool)
    • IsThursday (bool)
    • IsFriday (bool)
    • IsSaturday (bool)
    • IsSunday (bool)

    Interactive/Content/Items/{Code}

    • Added new fields to AvailabilityPeriods response object
    AvailabilityPeriods response object now includes:
    • IsMonday (bool)
    • IsTuesday (bool)
    • IsWednesday (bool)
    • IsThursday (bool)
    • IsFriday (bool)
    • IsSaturday (bool)
    • IsSunday (bool)

    Interactive/Outlet/{outletcode}/PlaceNonVerifiedGuestServiceRequest

    • Added new POST Endpoint that creates a new service request for non-verified guests
    New POST endpoint that takes in the following properties and creates Service request
    • NumberofGuests - (int) Number of guests
    • Item - (ItemDomainModel) Defines service request modelm including modifiers and comments
    • OrderFormDetailsDictionary - (OrderFormDetails) Order form details
    • deliveryDateTime - (DateTime) Due delivery time
    • isDeliveryDateTimeutc - (bool)
    • deliverLater - (string)
    • deliveryLocationCode - (string) Code for delivery location on outlet
    • deliveryType - (string)
    • sessionToken - (string)

    Interactive/Outlet/{outletcode}/PlaceVerifiedGuestServiceRequest

    • Added 'PaymentType' property to the request.
    • Optional
    • Supported values: Open, PaidByCash, PaidByCard, ChargeToRoom.

    Interactive/Outlet/{outletcode}/PlaceNonVerifiedGuestServiceRequest

    • Added 'PaymentType' property to the request.
    • Optional
    • Supported values: Open, PaidByCash, PaidByCard, ChargeToRoom.

    Interactive/System/Settings/Outlet

    • Added new outlet opening times collection to response.

    OutletOpeningTimes collection contains:

    • Day - day of the week enum
    • StartTime - TimeSpan
    • EndTime - TimeSpan

    CMS/Content/Sections

    CMS/Content/SectionCategoriesItems

    • 'Interactive Content' section types are not returned by endpoint.
    • 'Interactive Content' section types are not returned so that main app menu can be constructed without seeing outlet related menu sections.

    GXP 4.25

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    Interactive/Outlet/{outletcode}/PlaceVerifiedGuestServiceRequest

    • Added new POST Endpoint that creates a new service request for verified guests
    New POST endpoint that takes in the following properties and creates Service request
    • NumberofGuests - (int) Number of guests
    • Item - (ItemDomainModel) Defines service request modelm including modifiers and comments
    • deliveryDateTime - (DateTime) Due delivery time
    • isDeliveryDateTimeutc - (bool)
    • deliverLater - (string)
    • deliveryLocationCode - (string) Code for delivery location on outlet
    • deliveryType - (string)
    • sessionToken - (string)

    System/Settings/Outlet

    Added two new properties to response Endpoint now returns interval minutes ("intervalTimeMinutes") and lead minutes ("leadTimeMinutes") for the selected outlet.

    GXP 4.24

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    Interactive/Messages/Conversations

    • Added new POST Endpoint that creates a new conversation with a new message
    New POST endpoint that takes in the following properties and returns the newly created conversation
    • message - (string) The initial message in the conversation.
    • conversationType - (string) Defines how conversation is created. Can be either empty or "guest". If "guest" then the guest's name will be used as message creator.
    • outletCode - (string) Outlet this conversation is connected to. Field is optional, but if left empty then the first available outlet will be selected.
    • orderCode - (string) Order this conversation is connected to. Field is optional.

    GXP 4.23

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    Content/Outlet/{OutletCode}/SectionsCategoriesItems

    Content/SectionsCategoriesItems

    Content/Categories/{CategoryCode}/Items

    • Added "sortOrder" property to the response.
    int

    Information/Weather/Forecast

    • Added "current" property to the response.
    Current weather details

    System/Session/Pin

    • New endpoint
    New endpoint that takes in a Pin and compares it to the one stored on the system.
    • guestPinVerified - A match returns true, else a false is returned

    Outlet/{outletCode}/PlaceNonVerifiedGuestOrder

    • Removed DeliveryLocationCode (optional) from OrderFormDetails
    • Removed DeliverLater property (required)
    Already set in AddItemsToBasket call

    Outlet/{outletCode}/PlaceVerifiedGuestOrder

    • Added NoOfGuests
    int (optional)

    GXP 4.22

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    Interactive/Guest/Profile

    • Added "ArrivalDate" property to the response.
    • Added "DepartureDate" property to the response.
    Date and time in ISO 8601 format

    System/Session/InitialiseByAsset

    New end points. Initialise a new session by the asset key

    System/Properties/{propertyCode}/Assets

    New end points. Get the current asset from the Asset Catalogue

    System/Properties/{propertyCode}/Assets/Current

    New end points. Get the current asset from the Asset Catalogue

    GXP 4.20

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    System/Settings/Property

    System/Settings

    • Added "TelephoneNumber" property to the response.
    string
    • Added "Timezone" property to the response.
    string, IANA TZ format (i.e. "Europe/London")
    Outlet/{outletCode}/AddItemsToBasket ***BETA ONLY
    • Added "PosTotalSurcharge" property to the response.
    decimal

    GXP 4.19

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    Content/Outlet/{request.OutletCode}/SectionsCategoriesItems

    Content/SectionsCategoriesItems

    Content/Content/Categories/{CategoryCode}/Items

    Content/Content/Items/{Code}

    Response body - for each CategoryItem:
    • Added SpaItemCode property.
    • Added SosItemCode property.

    Content/Outlet/{request.OutletCode}/SectionsCategoriesItems

    Content/SectionsCategoriesItems

    Content/Content/Categories/{CategoryCode}/Items

    Content/Content/Items/{Code}

    Response body - for each CategoryItemButton:
    • Added File property.
    Used by CategoryItemButtons of PDF type

    Content/Homepage

    Response body - for each Widget:
    • Added DisplayName property.
    Used by Widgets of TextArea type only

    GXP 4.18

    Breaking changes

    Endpoint Details Notes
    Outlet/{outletCode}/AddItemsToBasket ***BETA ONLY Added DeliveryType on request. Required, Enum. Available values: Collection, Room, DeliveryLocation.
    Outlet/{outletCode}/AddItemsToBasket ***BETA ONLY Renamed PosDeliveryCharge to DeliveryCharge on response. -/td>

    Non-breaking changes

    Endpoint Details Notes
    System/Settings/Outlet/{code} Response body: added allowDeliverLater, allowDeliverToRoom, allowCollection Bool
    Outlet/{outletCode}/AddItemsToBasket ***BETA ONLY Added DeliveryLocationCode on request. Optional, String.

    GXP 4.17

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    Outlet/{outletCode}/AddItemsToBasket ***BETA ONLY

    Cart/Items

    Cart/AddItemsAndCheckout

    Added "comments" property for each Order Item Optional, String, 255 character limit

    Outlet/{outletCode}/AddItemsToBasket ***BETA ONLY

    Cart/Items

    Cart/AddItemsAndCheckout

    Cart [Get]

    Cart/Clear

    Returns "comments" property for each Order Item String

    Outlet/{request.OutletCode}/PlaceVerifiedGuestOrderAsync ***BETA ONLY

    Outlet/{request.OutletCode}/PlaceNonVerifiedGuestOrderAsync ***BETA ONLY

    New endpoints. Place a new order for verified or nonverified guests.

    Messages/Conversations

    Added messageType property for each Message This property exists for every Message and is of type String

    GXP 4.16

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    Content/Outlet/{OutletCode}/SectionsCategoriesItems ***BETA ONLY

    New endpoint Return a list of sections linked to the given outlet
    Interactive/Outlet ***BETA ONLY New endpoint Returns a list of Outlets - for each outlet includes the following properties
    • Code
    • Name - the translated value based on the property's language
    • Description - the translated value based on the property's language
    • Delivery Location Area id
    • ImageUrl - linked to the first image added to the outlet

    Content/Outlet/{OutletCode}/SectionsCategoriesItems ***BETA ONLY

    New Endpoint Returns Sections, Categories and Items linked to the given outlet.

    Interactive/Messages/Conversations/{code}/message ***BETA ONLY

    New endpoint Be able to add a new message to existing conversation.

    Content/Outlet/{request.OutletCode}/SectionsCategoriesItems

    Content/SectionsCategoriesItems

    Content/Content/Categories/{CategoryCode}/Items

    Content/Content/Items/{Code}

    Response body - for each CategoryItem:
    • Added IsInStock property.

    Content/Sections

    Content/SectionsCategoriesItems

    Content/Outlet/{OutletCode}/SectionsCategoriesItems

    Response body:
    • Added Availability periods collection to a section.

    System/Settings/Outlet/{code} - (code optional) ***BETA ONLY

    New endpoint
    • Returns settings for the given outlet.
    • If there is no outlet is given, it returns a collection of outlet settings at the property.

    GXP 4.15

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    Content/Categories/{code}/Items

    Content/SectionsCategoriesItems

    Response body - for each categoryItem:
    • Added ItemImages (collection) property
    • Marked Images property as obsolete

    Content/Items/{code}

    Response body:
    • Added ItemImages (collection) property
    • Marked Images property as obsolete

    Outlet/{request.OutletCode}/SectionsCategoriesItems

    New Endpoint Return data for the Property's Sections, Categories and Items for an outlet

    GXP 4.14

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    Content/Homepage

    Added background images array Returns data for the homepage

    Interactive/Order

    New endpoint Returns a list of orders for the logged-in guest

    System/Session/Initialise

    System/Session/InitialiseByRoom

    System/Session/InitialiseByToken

    Request body:
    • Added optional Version property

    GXP 4.13

    Breaking changes

    None

    Non-breaking changes

    None

    GXP 4.12

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    CMS/Content/{CategoryCode}/Items

    CMS/Content/SectionsCategoriesItems

    Response body:
    • Added Buttons collection to each CategoryItem

    Interactive/Cart/Checkout

    Interactive/Cart/AddItemsAndCheckout

    Response body:
    • Added code property to each item in the orders collection
    Interactive/Messages/Conversations New endpoint
    Interactive/ServiceRequests Response body:
    • Added order property
    Contains details of the submitted order

    GXP 4.11

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    Interactive/Cart/AddItemsAndCheckout

    Interactive/Cart/AddItems

    Request body:
    • Added PosItemCode property (Optional) for AddCartItem
    • Added PosItemCode property (Optional) for RequestCartItemOption

    GXP 4.10

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    CMS/Content/Categories/{CategoryCode}/Items Response body:
    • Added CategoryItem.AnalyticsTag property
    • Added CategoryItem.TemplateTag property
    CMS/Content/Homepage New endpoint Contains arrays of 'homepage content' - QuickLaunches and Widgets
    CMS/Content/Items/{Code} Response body:
    • Added AnalyticsTag property
    • Added TemplateTag property
    CMS/Content/Sections Response body:
    • Added Section.AnalyticsTag property
    CMS/Content/Sections/{SectionCode}/Categories Response body: Added Category.AnalyticsTag property (for both Category and Subcategory)
    CMS/Content/SectionsCategoriesItems Response body:
    • Added Section.AnalyticsTag property
    • Added Category.AnalyticsTag property (for both Category and Subcategory)
    • Added CategoryItem.AnalyticsTag property
    • Added CategoryItem.TemplateTag property

    Interactive/Cart/AddItemsAndCheckout

    Interactive/Cart/Checkout

    Response body: Added AvailabilityPeriods collection and Code property to each item in UnavailableItems collection ***BETA ONLY

    When a checkout fails due to one or more items being unavailable at the specified delivery date / time, the response body shows a list of those unavailable items.

    Now, for each unavailable item:

    • its list of availability periods is included
    • a Code property is included (the CategoryItem code)

    GXP 4.9

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    All CORS support added Does not apply to non-web clients
    CMS/Content/Sections Response body: added Teasers property to Section property
    CMS/Content/Sections/{SectionCode}/Categories Response body: added Teasers property to Category property
    CMS/Content/SectionsCategoriesItems Response body: added Teasers property to Section / Category properties
    Interactive/Guest/Profile Response body: added reservationNumber, checkInDate and checkOutDate properties

    GXP 4.8

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes

    /Interactive/Cart

    /Interactive/Cart/Clear

    /Interactive/Cart/Items

    Response body property marked obsolete: items/HasOnlySingleSelectRequiredModifiersWithNonZeroValues
    /Interactive/Order/BillInfo New endpoint
    /Interactive/ServiceRequests Added IsDeliveryDateTimeUtc boolean property to request body

    Used the same way as in /Cart/AddItemsAndCheckout

    Optional - defaults to false

    /Interactive/ServiceRequests

    Added error:

    errorCode: ValidationError, areaError: ServiceUnavailableAtSpecifiedDeliveryTime

    Returned when the submitted delivery time does not fall within the available times for the selected service

    GXP 4.7

    Breaking changes

    None

    Non-breaking changes

    Endpoint Details Notes
    /Interactive/Messages Additional request querystring parameters:
    • pageLength (int, nullable)
    • pageNumber (int, default 1)
    • descendingOrder (bool, default false)

    The endpoint originally supplied all messages sent to the logged-in guest, in order of the date / time they were sent (with the oldest first)

    This functionality is preserved, thanks to the nullable / default nature of the added parameters - ie to get all messages as before, just omit the new parameters