URGENT, ALERT or NORMAL), the title, the creation time and whether it has been read. Use GET /notification/get to fetch one notification together with a link to its full content.is_read=0 returns only unread notifications, is_read=1 only read ones. type limits the list to one severity.since (UTC date and time, YYYY-MM-DDTHH:mm) to get only the notifications created at or after that minute. Example: since=2026-11-06T10:00 returns everything created from 10:00 UTC on. To keep a copy in sync, save the time each sync starts, pass it as since on the next sync, and page with starting_after / limit until has_more is false. A notification can show up in two syncs, so ignore IDs you already have.has_more and next_starting_after; pass next_starting_after as starting_after to get the next page.curl --location 'https://api.plusvibe.ai/api/v1/notification/list?workspace_id=6764274d64169c4e88eec418&limit=100&starting_after=&is_read=0&type=ALERT&since=2026-11-06T10%3A00' \
--header 'x-api-key: <api-key>'{
"data": [
{
"_id": "6a1b2c3d4e5f60718293a4b5",
"type": "ALERT",
"title": "Attention Required: Campaign 'Q4 Outreach' auto paused",
"created_at": "2026-11-10T12:12:56.771Z",
"is_read": 0
},
{
"_id": "6a1b2c3d4e5f60718293a4b6",
"type": "URGENT",
"title": "Your payment failed. Please update your payment method.",
"created_at": "2026-11-09T08:30:12.004Z",
"is_read": 1
}
],
"has_more": true,
"next_starting_after": "6a1b2c3d4e5f60718293a4b6"
}