KDS Device Updated Webhook Event
Overview
This event fires whenever changes are made to a device record.
Body Parameters
| Property | Type | Description |
|---|---|---|
| triggeredAction | string | value: Device Updated |
| brand | Brand | brand device belongs to |
| location | Location | location device belongs to |
| data | Data | device information |
Brand
| Property | Type | Description |
|---|---|---|
| id | string | uuid of brand |
| name | string | name of brand |
Location
| Property | Type | Description |
|---|---|---|
| id | string | uuid of location |
| name | string | name of location |
| number | string | user-entered location number |
Data
| Property | Type | Description |
|---|---|---|
| id | string | uuid of device record |
| type | string | type of device; possible values: ios, android, firetv, elo-backpack |
| version | string | KDS app version |
| locationId | string | uuid of location device belongs to |
| toolId | string | uuid indicating device is used for KDS |
| friendlyName | string | user-entered screen name |
| deviceId | string | device generated id |
| deviceName | string | device generated name |
| isBlacklisted | bool | true if device has been flagged by Fresh as blacklisted |
| isDeleted | bool | true if device has been deleted by a user |
| createdOn | timestamp | time device was created in UTC |
| updatedOn | timestamp | last time device data was updated in UTC |
| updatedBy | string | uuid of user who last updated device data |
| deviceOsVersion | string | device OS version |
| deviceSettings | Device Settings | device screen settings |
| isOnline | bool | true if screen is currently reporting as connected to the KDS server |
| onlineUpdatedOn | timestamp | field is deprecated and replaced by statusUpdated |
| statusUpdated | timestamp | last time screen’s connection status updated |
Device Settings
| Property | Type | Description |
|---|---|---|
| pos | POS | device’s POS information |
| display | Display | device’s dipslay settings |
| orderTypes | OrderType | six orderType objects: forHere, driveThru, curbside, toGo, delivery, pickup |
| takeOut | Takeout | device’s takeout view settings |
| colors | Colors | device’s color settings |
| orderFeatures | Order Features | device’s order features settings |
| orderTracker | Order Tracker | device’s order tracker settings |
| boltOns | Bolt Ons | device’s “bolt on” settings |
| otherSettings | Other Settings | device’s other settings |
| orderRecall | integer | time in minutes that device will store bumped orders for recall |
| localEditEnabled | bool | true if user is able to edit settings from the mobile app |
| menuCategories | Menu Categories | device’s menu category routing settings |
| playSoundOrderArrives | bool | true if device order notification sounds are on |
| bumpBarType | string | device’s bump bar setting; possible values Keyboard, KB1700, KDSCorpTD20 |
POS
| Property | Type | Description |
|---|---|---|
| id | string | uuid of the selected POS |
| pos | string | name of the selected POS |
| kdsIntegrationType | string | integration type; possible values PrinterEmulation, CloudBased |
Display
| Property | Type | Description |
|---|---|---|
| darkTheme | bool | true if screen is set to use Dark Mode |
| view | string | screen’s layout; possible values NormalView, SplitView, TileView |
Order Type
Six OrderType objects: forHere, driveThru, curbside, toGo, delivery, pickup
| Property | Type | Description | |
|---|---|---|---|
| enabled | bool | true if order type is displayed on the KDS view for screen |
|
| takeOutEnabled | bool | true if order type is displayed on the Takeout view for screen |
|
| color | string | color hex code for order type header | |
| splitView | string | row order type appears in for Split View; possible values top, bottom |
|
| orderTracker | Order Tracker | information about order type’s Order Tracker settings | |
| times | Times | information about order type’s caution and late time settings | |
| smsOrderBoltOns | SMS Order Bolt Ons | information about order type’s messaging settings; three objects: pickup, ready, received |
Order Tracker Order Type
| Property | Type | Description |
|---|---|---|
| trackingEnabled | bool | true if order type sends data to Order Tracker |
| readyExpireTimeEnabled | bool | true if order type sends expiration time for Ready column |
| readyExpire | integer | amount of time, in minutes, orders of this order type will remain in the Ready column |
Times
| Property | Type | Description |
|---|---|---|
| caution | string | format “mm:ss”; amount of time before orders of this type change from green to yellow |
| late | string | format “mm:ss”; amount of time before orders of this type change from yellow to red |
SMS Order Bolt Ons
pickup - settings for the message that sends when orders are bumped from the KDS view
ready - settings for the message that sends when orders are marked as ready on the Takeout view
received - settings for the message that sends when orders are received on the KDS screen
| Property | Type | Description |
|---|---|---|
| enabled | bool | true if messages are sent for this event |
| hereLink | bool | true if message includes “I’m Here” link |
| message | string | content of message if order type is overriding default message |
| readyTimeMessaging | Ready Time Messaging | received only; settings about alternate message based on order ready time |
Ready Time Messaging
| Property | Type | Description |
|---|---|---|
| active | bool | true if order type uses alternative message based on order ready time |
| hereLink | bool | true if alternative message includes “I’m Here” link |
| message | string | content of alternative message |
| minutesLimit | integer | time in minutes; if the order’s ready time is more than this many minutes in the future the alternative message will be sent |
Takeout
| Property | Type | Description |
|---|---|---|
| takeOutEnabled | bool | true if takeout view is enabled |
| defaultTakeOut | bool | true if takeout view is the default view |
| initialOrderStatus | string | initial status of orders on the takeout view; possible values New, In Progress, Ready |
Colors
| Property | Type | Description |
|---|---|---|
| status | Status | colors for order’s start, caution, and late time headers |
| orderPart | Order Part | colors for order’s items and modifier text |
Status
| Property | Type | Description |
|---|---|---|
| start | string | hex value for initial header color |
| caution | string | hex value for caution header color |
| late | string | hex value for late header color |
Order Part
| Property | Type | Description |
|---|---|---|
| mainItem | string | hex value for main item text color |
| modifiers | string | hex value for modifier text color |
Order Features
| Property | Type | Description |
|---|---|---|
| fontSize | string | possible values Small, Medium, Large, Extra Large |
| hideOrderMode | bool | true if screen hides the order type banner on the order cards |
| hideEmployeeName | bool | true if screen hides employee name from the order cards |
| combineOrders | bool | true if screen combines items if order name and order type match |
| autoClearOrders | bool | true if screen automatically bumps all open orders once a day |
| autoClearOrdersAt | string | time orders are automatically bumped, based on device’s time settings |
| itemDisplayOption | string | how an order’s items are displayed; possible values displayAsReceived, combineLikeItems, singleLinePerItem |
| strikeThroughIndividualModifiers | bool | true if screen allows individual modifier strike throughs |
Order Tracker
| Property | Type | Description |
|---|---|---|
| displayPreparing | bool | true if screen sends order preparing commands to order tracker |
| displayReady | bool | true if screen sends order ready commands to order tracker |
Bolt Ons
| Property | Type | Description |
|---|---|---|
| sms-order-pickup | SMS Order Pickup | true if screen sends order preparing commands to order tracker |
| sms-order-ready | SMS Order Ready | true if screen sends order ready commands to order tracker |
| sms-order-received | SMS Order Received | true if screen sends order ready commands to order tracker |
SMS Order Pickup
| Property | Type | Description |
|---|---|---|
| active | bool | true if screen sends messages when orders are bumped from KDS view |
| message | string | default content of message when orders are bumped from KDS view |
SMS Order Ready
| Property | Type | Description |
|---|---|---|
| active | bool | true if screen sends messages when orders are marked as ready on the Takeout view |
| message | string | default content of message when orders are marked as ready on the Takeout view |
SMS Order Received
| Property | Type | Description |
|---|---|---|
| active | bool | true if screen sends messages when orders are received |
| message | string | default content of message when orders are marked as ready on the Takeout view |
| hereLink | bool | true if message includes “I’m Here” link |
| readyTimeMessaging | Ready Time Messaging | settings about alternate message based on order ready time |
Other Settings
| Property | Type | Description |
|---|---|---|
| parsingMode | string | source of the parsing file for printer emulation integration type; possible values Cloud, Local |
| crossScreen | Cross Screen | settings for cross screen communication feature |
| printer | Printer | settings for connected label or ticket printer |
Cross Screen
| Property | Type | Description |
|---|---|---|
| enabled | bool | true if screen communication is turned on for the device |
| multiClear | bool | deprecated; replaced by screens array |
| advance | bool | deprecated; replaced by screens array |
| screens | Screens[] | other screens this device is connected to |
Screen
| Property | Type | Description |
|---|---|---|
| name | string | name of the other screen |
| ipAddress | string | IP address of the other screen |
| identifier | string | identifier of the other screen |
| synctype | string | sync type; possible values orderadvance, multiclear |
| lastUpdated | timestamp | time this setting was last updated |
| packets | string | deprecated |
Printer
| Property | Type | Description |
|---|---|---|
| enabled | string | name of the other screen |
| autoPrint | string | IP address of the other screen |
| autoPrintTime | string | identifier of the other screen |
| printerCompany | string | sync type; possible values orderadvance, multiclear |
| printerModel | string | printer model |
| printerLanguage | string | printer language; Zebra only |
| printerType | string | printer type; possible values label, ticket |
| printerWidth | string | printer width; Zebra only |
Menu Categories
| Property | Type | Description |
|---|---|---|
| enabled | bool | true if items from this category are displayed on screen |
| id | string | uuid if menu category if imported from point of sale |
| name | string | name of category |
Example
{
"triggeredAction": "Device Updated",
"brand": {
"id": "10b4039e-01d2-4399-9d93-52b850fc5751",
"name": "KDS Test Brand"
},
"location": {
"id": "6c4e879e-3ab5-4e5a-be1d-cf48fe809559",
"name": "Atlanta",
"number": "4"
},
"data": {
"id": "d3ab622a-b48c-4daf-b811-7a6f2e31a7fa",
"type": "ios",
"version": "2.21.29",
"locationId": "6c4e879e-3ab5-4e5a-be1d-cf48fe809559",
"toolId": "3957e3bd-dc4e-4a0f-b952-27eb06c8d9da",
"friendlyName": "Salad",
"deviceId": "DBEE3E8D-54CE-45B7-861B-A4F2B9B4D794",
"deviceName": "Apple iPad (iPad Air 2)",
"isBlacklisted": false,
"isDeleted": false,
"createdOn": "2023-04-08T19:18:42.903Z",
"updatedOn": "2023-04-11T18:19:19.696Z",
"updatedBy": "00019215-cb01-434d-8683-1006c87b93e9",
"deviceOsVersion": "15.7.3",
"deviceSettings": {
"pos": {
"id": "27f7a4b8-69e8-4faf-8293-b14206cc2968",
"pos": "SquarePosRegisterPrinter",
"kdsIntegrationType": "PrinterEmulation"
},
"display": {
"darkTheme": false,
"view": "NormalView"
},
"orderTypes": {
"forHere": {
"enabled": true,
"takeOutEnabled": false,
"color": "#00953b",
"splitView": "top",
"orderTracker": {
"trackingEnabled": true,
"readyExpireTimeEnabled": true,
"readyExpire": 5
},
"times": {
"caution": "05:00",
"late": "08:00"
},
"smsOrderBoltOns": {
"pickup": {
"enabled": true,
"hereLink": false,
"message": null
},
"ready": {
"enabled": true,
"hereLink": false,
"message": null
},
"received": {
"enabled": true,
"hereLink": false,
"message": null,
"readyTimeMessaging": {
"active": false,
"hereLink": false,
"message": "",
"minutesLimit": 15
}
}
}
},
"driveThru": {
"enabled": true,
"takeOutEnabled": false,
"color": "#d19ec9",
"splitView": "bottom",
"orderTracker": {
"trackingEnabled": false,
"readyExpireTimeEnabled": true,
"readyExpire": 20
},
"times": {
"caution": "05:00",
"late": "08:00"
},
"smsOrderBoltOns": {
"pickup": {
"enabled": true,
"hereLink": false,
"message": null
},
"ready": {
"enabled": true,
"hereLink": false,
"message": null
},
"received": {
"enabled": true,
"hereLink": false,
"message": null,
"readyTimeMessaging": {
"active": false,
"hereLink": false,
"message": "",
"minutesLimit": 15
}
}
}
},
"curbside": {
"enabled": true,
"takeOutEnabled": true,
"color": "#a0fbff",
"splitView": "bottom",
"orderTracker": {
"trackingEnabled": false,
"readyExpireTimeEnabled": true,
"readyExpire": 20
},
"times": {
"caution": "05:00",
"late": "08:00"
},
"smsOrderBoltOns": {
"pickup": {
"enabled": true,
"hereLink": false,
"message": null
},
"ready": {
"enabled": true,
"hereLink": false,
"message": null
},
"received": {
"enabled": true,
"hereLink": false,
"message": null,
"readyTimeMessaging": {
"active": false,
"hereLink": false,
"message": "",
"minutesLimit": 15
}
}
}
},
"toGo": {
"enabled": true,
"takeOutEnabled": true,
"color": "#f88d2a",
"splitView": "bottom",
"orderTracker": {
"trackingEnabled": true,
"readyExpireTimeEnabled": true,
"readyExpire": 20
},
"times": {
"caution": "05:00",
"late": "08:00"
},
"smsOrderBoltOns": {
"pickup": {
"enabled": true,
"hereLink": false,
"message": null
},
"ready": {
"enabled": true,
"hereLink": false,
"message": null
},
"received": {
"enabled": true,
"hereLink": false,
"message": null,
"readyTimeMessaging": {
"active": false,
"hereLink": false,
"message": "",
"minutesLimit": 15
}
}
}
},
"delivery": {
"enabled": true,
"takeOutEnabled": true,
"color": "#d19ec9",
"splitView": "bottom",
"orderTracker": {
"trackingEnabled": false,
"readyExpireTimeEnabled": true,
"readyExpire": 20
},
"times": {
"caution": "05:00",
"late": "08:00"
},
"smsOrderBoltOns": {
"pickup": {
"enabled": true,
"hereLink": false,
"message": null
},
"ready": {
"enabled": true,
"hereLink": false,
"message": null
},
"received": {
"enabled": true,
"hereLink": false,
"message": null,
"readyTimeMessaging": {
"active": false,
"hereLink": false,
"message": "",
"minutesLimit": 15
}
}
}
},
"pickup": {
"enabled": true,
"takeOutEnabled": true,
"color": "#a0fbff",
"splitView": "bottom",
"orderTracker": {
"trackingEnabled": true,
"readyExpireTimeEnabled": true,
"readyExpire": 20
},
"times": {
"caution": "05:00",
"late": "08:00"
},
"smsOrderBoltOns": {
"pickup": {
"enabled": true,
"hereLink": false,
"message": null
},
"ready": {
"enabled": true,
"hereLink": false,
"message": null
},
"received": {
"enabled": true,
"hereLink": false,
"message": null,
"readyTimeMessaging": {
"active": false,
"hereLink": false,
"message": "",
"minutesLimit": 15
}
}
}
}
},
"takeOut": {
"takeOutEnabled": false,
"defaultTakeOut": false,
"initialOrderStatus": "New"
},
"colors": {
"status": {
"start": "#89d975",
"caution": "#ffa62b",
"late": "#ff6767"
},
"orderPart": {
"mainItem": "#020202",
"modifiers": "#1a73e8"
}
},
"orderFeatures": {
"fontSize": "Large",
"hideOrderMode": false,
"hideEmployeeName": false,
"combineOrders": false,
"autoClearOrders": false,
"autoClearOrdersAt": "12:00 AM",
"itemDisplayOption": "displayAsReceived",
"strikeThroughIndividualModifiers": true
},
"allDayCount": {
"enabled": false,
"components": []
},
"orderTracker": {
"displayPreparing": false,
"displayReady": false
},
"boltOns": {
"apex-lockers": {
"active": false,
"clientId": "",
"clientSecret": "",
"clientNumber": ""
},
"cuboh": {
"active": false
},
"sms-order-pickup": {
"active": false,
"message": "Your order is ready for pickup!"
},
"sms-order-ready": {
"active": false,
"message": "Your order is ready!"
},
"sms-order-received": {
"active": false,
"message": "We have received your order!",
"hereLink": true,
"readyTimeMessaging": null
},
"togo": {
"active": false,
"togoLocationId": "",
"togoSecurityKey": ""
}
},
"otherSettings": {
"parsingMode": "Cloud",
"crossScreen": {
"enabled": "True",
"multiClear": "True",
"advance": "False",
"screens": [{
"name": "Grill",
"ipAddress": "10.128.6.29",
"identifier": "9AD2C4B97A08",
"synctype": "multiclear",
"lastUpdated": "0001-01-01T00:00:00",
"packets": null
}]
},
"printer": {
"enabled": "False",
"autoPrint": "False",
"autoPrintTime": "autoPrintWhenReceived",
"printerCompany": "",
"printerModel": null,
"printerLanguage": null,
"printType": null,
"printWidth": null
}
},
"orderRecall": 30,
"localEditEnabled": true,
"menuCategories": [{
"enabled": true,
"id": "07313225-9554-4809-a5d1-ff24db549687",
"name": "Bakery Items",
"items": []
},
{
"enabled": true,
"id": "5c031a4e-dbd0-4228-a86a-34ba5c7c0d92",
"name": "Cold Drinks",
"items": []
},
{
"enabled": true,
"id": "0e60fdb5-887c-477e-b7be-d6cc9c1cd818",
"name": "Hot Drinks",
"items": []
}
],
"playSoundOrderArrives": true,
"deviceFailsSecurityCheck": false,
"bumpBarType": "Keyboard"
},
"isOnline": true,
"onlineUpdatedOn": "2023-04-08T19:18:42.903Z",
"statusUpdated": "2023-04-11T18:19:11.216Z"
}
}