Skip to content

Retrieve, stream, dismiss, and clear notifications associated with one or more displays. Use these endpoints to fetch historical notification data, subscribe to real-time notification events over WebSocket, or manage dismissed state.


Retrieves notifications for one or more specified displays. The display path parameter accepts a single display ID (e.g. "1" or ":1"), a comma-separated list (e.g. "1,:2,3"), or "all" to fetch from all displays.

NameInTypeRequiredDescription
displaypathstringYesA single display ID (e.g. "1" or ":1"), a comma-separated list (e.g. "1,:2,3"), or "all" to fetch from all displays
limitqueryintegerNoMaximum number of notifications to return. Defaults to 100
sincequeryintegerNoUnix timestamp in milliseconds to get notifications after this time
usernamequerystringNoFilter notifications by username
sessionquerystringNoFilter notifications by session ID
Terminal window
curl -X GET "https://display.kit.hoody.com/api/v1/notifications/1?limit=50&since=1749024000000" \
-H "Authorization: Bearer <token>"

Establishes a WebSocket connection for real-time notification updates. Clients can subscribe to one or more displays and receive immediate notifications as they occur.

NameInTypeRequiredDescription
displaysquerystringYesComma-separated display IDs to subscribe to (e.g. "0,:1,2"), or "all" to receive notifications from every display
Terminal window
curl -i -N \
-H "Connection: Upgrade" \
-H "Upgrade: websocket" \
-H "Sec-WebSocket-Version: 13" \
-H "Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==" \
"https://display.kit.hoody.com/api/v1/notifications/stream?displays=all"

Marks notifications as dismissed. Dismissed notifications are filtered from subsequent GET responses.

This endpoint takes no parameters.

NameTypeRequiredDescription
notificationIdsarray<integer>YesArray of notification IDs to dismiss
displayIdstringNoOptional display ID to scope the dismissal
Terminal window
curl -X POST "https://display.kit.hoody.com/api/v1/notifications/dismiss" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"displayId": "1",
"notificationIds": [10, 11, 12]
}'

Clears the dismissed state, making previously dismissed notifications visible again.

NameInTypeRequiredDescription
displayIdquerystringNoOptional display ID to scope the clear operation
Terminal window
curl -X DELETE "https://display.kit.hoody.com/api/v1/notifications/dismiss?displayId=1" \
-H "Authorization: Bearer <token>"

The objects returned inside data.notifications for the list endpoint share the following structure:

FieldTypeDescription
idintegerUnique notification ID
appnamestringName of the application that triggered the notification
summarystringNotification summary/title
bodystringNotification body text
messagestringCombined message text
icon_urlstringRelative URL to the notification icon
has_iconbooleanWhether the notification has an icon
categorystringNotification category
urgencystringUrgency level. One of low, normal, or critical
expire_timeintegerExpiration time in milliseconds
display_idintegerDisplay ID where the notification was shown
timestampintegerUnix timestamp in milliseconds when the notification was created