Skip to main content
GET
/
notifications
List notifications
curl --request GET \
  --url https://api.wacht.dev/notifications \
  --cookie session_id=
{
  "status": 200,
  "message": "",
  "data": {
    "notifications": [
      {
        "id": "123456789012345678",
        "deployment_id": "111111111111111111",
        "user_id": "777777777777777777",
        "organization_id": "888888888888888888",
        "workspace_id": "999999999999999999",
        "title": "New organization invitation",
        "body": "You have been invited to join Acme Corp",
        "ctas": [
          {
            "label": "View Invitation",
            "payload": {
              "url": "https://app.wacht.dev/invitations/123"
            }
          }
        ],
        "severity": "info",
        "is_read": false,
        "read_at": "2024-01-15T11:00:00Z",
        "is_archived": false,
        "archived_at": "2024-01-15T12:00:00Z",
        "is_starred": false,
        "metadata": {},
        "created_at": "2024-01-15T10:30:00Z",
        "updated_at": "2024-01-15T10:30:00Z",
        "expires_at": "2024-02-15T10:30:00Z"
      }
    ],
    "has_more": false
  },
  "session": {
    "id": "123456789012345678",
    "created_at": "2023-11-07T05:31:56Z",
    "updated_at": "2023-11-07T05:31:56Z"
  },
  "errors": [
    {
      "code": "INVALID_CREDENTIALS",
      "message": "Invalid credentials. Please try again."
    }
  ]
}

Authorizations

session_id
string
cookie
required

Session-based authentication using cookies

Query Parameters

limit
integer
default:20

Maximum number of notifications to return

Required range: 1 <= x <= 100
cursor
string<uint64>

Cursor for pagination. Use the ID of the last notification from the previous page to get the next set of results. Notifications are returned in descending order by ID.

Example:

"123456789012345678"

scope
enum<string>

Filter by scope (user, organization, workspace)

Available options:
user,
organization,
workspace
Example:

"organization"

scope_id
string<uint64>

Filter by scope ID (required when scope is organization or workspace)

is_read
boolean

Filter by read status

is_starred
boolean

Filter by starred status

is_archived
boolean

Filter by archived status. Default is false (excludes archived).

severity
enum<string>

Filter by notification severity

Available options:
info,
success,
warning,
error

Response

Notifications retrieved successfully

status
integer

HTTP status code

Example:

200

message
string

Response message (empty on success)

Example:

""

data
object
session
object

Minimal session info included in every response

errors
object[] | null

Error details (null on success)