# Notifications

Your inbox: mentions, shares and accepted invitations.

## Endpoints

- [List notifications](https://developers.lydie.co/api/notifications/list-notifications.md): `GET /v1/notifications`
- [Archive notifications](https://developers.lydie.co/api/notifications/archive-notifications.md): `POST /v1/notifications/archive`
- [Get notification preferences](https://developers.lydie.co/api/notifications/get-notification-preferences.md): `GET /v1/notifications/preferences`
- [Set notification preferences](https://developers.lydie.co/api/notifications/set-notification-preferences.md): `PUT /v1/notifications/preferences`
- [Mark notifications read](https://developers.lydie.co/api/notifications/mark-notifications-read.md): `POST /v1/notifications/read`
- [Mark all notifications read](https://developers.lydie.co/api/notifications/mark-all-notifications-read.md): `POST /v1/notifications/read-all`

## The Notification object

- `id` (string, required): (1–64 chars)
- `workspaceId` (string, required): (1–64 chars)
- `kind` (string, required): One of: `mention`, `share`, `invitation_accepted`, `assigned`.
- `documentId` (string, required, nullable)
- `actorId` (string, required, nullable): Who caused it; null when unknown.
- `data` (object, required): mention: { title, actorName, snippet }; share: { title, actorName, level }; invitation_accepted: { email, name, workspaceName, documentId? }; assigned: { title, actorName, propertyName, propertyId, databaseId }
- `readAt` (string, required, nullable)
- `archivedAt` (string, required, nullable)
- `createdAt` (string, required)

```json
{
  "id": "string",
  "workspaceId": "01JCQ3TZ0WJ8K4M2X7T9R6N1PA",
  "kind": "mention",
  "documentId": null,
  "actorId": null,
  "data": {},
  "readAt": null,
  "archivedAt": null,
  "createdAt": "string"
}
```
