mirror of
https://github.com/HeyPuter/puter
synced 2024-11-14 14:03:42 +00:00
2.5 KiB
2.5 KiB
Notification Endpoints
Endpoints for managing notifications.
POST /notif/mark-ack
(auth required)
Description
The /notif/mark-ack
endpoint marks the specified notification
as "acknowledged". This indicates that the user has chosen to either
dismiss or act on this notification.
Parameters
Name | Description | Default Value |
---|---|---|
uid | UUID associated with the notification | required |
Response
This endpoint responds with an empty object ({}
).
POST /notif/mark-read
(auth required)
Description
The /notif/mark-read
endpoint marks that the specified notification
has been shown to the user. It will not "pop up" as a new notification
if they load the gui again.
Parameters
Name | Description | Default Value |
---|---|---|
uid | UUID associated with the notification | required |
Response
This endpoint responds with an empty object ({}
).
Request Example
await fetch("https://api.puter.local/notif/mark-read", {
headers: {
"Content-Type": "application/json",
"Authorization": `Bearer ${puter.authToken}`,
},
body: JSON.stringify({
uid: 'a14ea3d5-828b-42f9-9613-35f43b0a3cb8',
}),
method: "POST",
});
ENTITY STORAGE puter-notifications
The puter-notifications
driver is an Entity Storage driver.
It is read-only.
Request Examples
Select Unread Notifications
await fetch("http://api.puter.localhost:4100/drivers/call", {
"headers": {
"Content-Type": "application/json",
"Authorization": `Bearer ${puter.authToken}`,
},
"body": JSON.stringify({
interface: 'puter-notifications',
method: 'select',
args: { predicate: ['unread'] }
}),
"method": "POST",
});
Select First 200 Notifications
await fetch("http://api.puter.localhost:4100/drivers/call", {
"headers": {
"Content-Type": "application/json",
"Authorization": `Bearer ${puter.authToken}`,
},
"body": JSON.stringify({
interface: 'puter-notifications',
method: 'select',
args: {}
}),
"method": "POST",
});
Select Next 200 Notifications
await fetch("http://api.puter.localhost:4100/drivers/call", {
"headers": {
"Content-Type": "application/json",
"Authorization": `Bearer ${puter.authToken}`,
},
"body": JSON.stringify({
interface: 'puter-notifications',
method: 'select',
args: { offset: 200 }
}),
"method": "POST",
});