Notifications
The Notification object
idstringoptionalNotification id (uuid).
typestringoptionalWhat the notification is about, e.g. order_accepted, order_enroute, order_nearby, order_completed, order_canceled, order_ready, order_driver_assigned, order_activity, order_chat_message, order_updated (the store edited the order or moved a booking), order_item_unavailable (the store marked an item unavailable), order_balance_paid (a balance due was paid by its payment link), promotional or campaign. order_activity covers order steps that have no notification of their own (and every step of a booking after it's requested); its title is the step's label. order_chat_message is a message from the driver (data has order, order_id, chat_id, message_id, store_id, network_id); it's always delivered, whatever the order_updates preference.
titlestringoptionalNotification title.
bodystringoptionalNotification message. For order_updated (the store edited the order) it says what changed and what that means for the customer's money: refunded, returned as store credit with the code to use, or a balance to pay with its payment link. A booking that was only moved says when it is now, in the store's time (Deep Clean is now Mon 19 Oct, 11:00 to 12:00.). For order_item_unavailable it names the item and says the store will replace or remove it and adjust the total. For order_balance_paid it gives the amount received and anything still left to pay. For order_canceled it gives the store's reason, when there is one, and whether the payment was refunded or returned as store credit.
imagestringoptionalOptional image URL.
dataobjectoptionalDeep link data with null values removed, such as order_id, store_id, network_id, promotion_id, campaign_id and action/action_id/action_url.
is_readbooleanoptionalWhether the customer has read the notification.
read_attimestampoptionalWhen the notification was read.
created_attimestampoptionalWhen the notification was created.
{
"id": "0f4c9a52-8d3f-4a6e-9f0e-2b1f7f2f8c11",
"type": "order_completed",
"title": "Your order from Acme Market has been delivered",
"body": "Your order from Acme Market has been delivered, enjoy!",
"image": null,
"data": {
"order_id": "order_9Kx2mQ1",
"storefront_id": "store_3Xb9kL2",
"store_id": "store_3Xb9kL2"
},
"is_read": false,
"read_at": null,
"created_at": "2026-09-26T09:30:00Z"
}/v1/notificationsList Notifications
Lists the authenticated customer's notifications for the current storefront, newest first. Filter with unread and type, and page with limit (default 25, maximum 100) and offset.
unreadbooleanoptionalOnly return notifications that have not been read.
typestringoptionalOnly return notifications of this type, e.g. order_completed or promotional.
limitintegeroptionalMaximum number of notifications to return. Defaults to 25, maximum 100.
offsetintegeroptionalNumber of notifications to skip.
/v1/notificationscurl https://api.fleetbase.io/v1/notifications?unread=false \
-H "Authorization: Bearer flb_live_…" \
-H "Customer-Token: {{customer_token}}"/v1/notifications/unread-countCount Unread Notifications
Returns { "count": n }, the number of unread notifications for the authenticated customer in the current storefront. Use it for badges.
/v1/notifications/unread-countcurl https://api.fleetbase.io/v1/notifications/unread-count \
-H "Authorization: Bearer flb_live_…" \
-H "Customer-Token: {{customer_token}}"/v1/notificationsRetrieve a Notification
Retrieves one of the authenticated customer's notifications. Returns 404 for a notification that does not exist or belongs to another customer or storefront.
/v1/notificationscurl https://api.fleetbase.io/v1/notifications \
-H "Authorization: Bearer flb_live_…" \
-H "Customer-Token: {{customer_token}}"/v1/notifications/readMark a Notification as Read
Marks one notification as read and returns it. Marking an already read notification keeps its original read_at.
/v1/notifications/readcurl -X PUT https://api.fleetbase.io/v1/notifications/read \
-H "Authorization: Bearer flb_live_…" \
-H "Customer-Token: {{customer_token}}"/v1/notifications/read-allMark All Notifications as Read
Marks every unread notification of the authenticated customer in the current storefront as read. Returns { "status": "OK", "updated": n }.
/v1/notifications/read-allcurl -X PUT https://api.fleetbase.io/v1/notifications/read-all \
-H "Authorization: Bearer flb_live_…" \
-H "Customer-Token: {{customer_token}}"/v1/notificationsDelete a Notification
Deletes one of the authenticated customer's notifications. Returns { "status": "OK", "id": "...", "deleted": true }.
/v1/notificationscurl -X DELETE https://api.fleetbase.io/v1/notifications \
-H "Authorization: Bearer flb_live_…" \
-H "Customer-Token: {{customer_token}}"/v1/notifications/preferencesGet Notification Preferences
Returns the authenticated customer's notification preferences, { "order_updates": true, "promotions": true } by default. order_updates controls push notifications about the customer's orders (the inbox copy is always kept); promotions controls promotional notifications and campaigns entirely.
/v1/notifications/preferencescurl https://api.fleetbase.io/v1/notifications/preferences \
-H "Authorization: Bearer flb_live_…" \
-H "Customer-Token: {{customer_token}}"/v1/notifications/preferencesUpdate Notification Preferences
Updates the authenticated customer's notification preferences. Only the keys sent are changed; unknown keys are ignored. Returns the full preferences, or 400 when a value is not a boolean.
order_updatesbooleanoptionalReceive push notifications about order status changes.
promotionsbooleanoptionalReceive promotional notifications and campaigns (push and inbox).
/v1/notifications/preferencescurl -X PUT https://api.fleetbase.io/v1/notifications/preferences \
-H "Authorization: Bearer flb_live_…" \
-H "Content-Type: application/json" \
-H "Customer-Token: {{customer_token}}" \
-d '{
"order_updates": true,
"promotions": true
}'