ink.branchline.markNotificationsRead
Mark one or more notification groups as read for the authenticated viewer. Each entry stamps the viewer's readAt for that groupKey, hiding the group from ink.branchline.listNotifications until fresh activity pushes latestAt past the stamp. Responds 401 without a session.
Details · procedure
| Kind | procedure |
|---|---|
| Authority | branchline.ink |
| Indexed |
Checks
Validunlimited-stringdefs.entry.properties.groupKeyNo maxLength, maxGraphemes or format limits this string.
{
"$type": "com.atproto.lexicon.schema",
"defs": {
"entry": {
"properties": {
"groupKey": {
"description": "Opaque identifier returned by ink.branchline.listNotifications.",
"type": "string"
},
"readAt": {
"description": "latestAt of the group at the moment it was dismissed. Typically the same value returned in the notification view.",
"format": "datetime",
"type": "string"
}
},
"required": [
"groupKey",
"readAt"
],
"type": "object"
},
"main": {
"description": "Mark one or more notification groups as read for the authenticated viewer. Each entry stamps the viewer's readAt for that groupKey, hiding the group from ink.branchline.listNotifications until fresh activity pushes latestAt past the stamp. Responds 401 without a session.",
"errors": [
{
"description": "The caller is not signed in.",
"name": "Unauthorized"
}
],
"input": {
"encoding": "application/json",
"schema": {
"properties": {
"entries": {
"items": {
"ref": "#entry",
"type": "ref"
},
"maxLength": 100,
"minLength": 1,
"type": "array"
}
},
"required": [
"entries"
],
"type": "object"
}
},
"output": {
"encoding": "application/json",
"schema": {
"properties": {
"updated": {
"minimum": 0,
"type": "integer"
}
},
"required": [
"updated"
],
"type": "object"
}
},
"type": "procedure"
}
},
"id": "ink.branchline.markNotificationsRead",
"lexicon": 1
}