GET /api/events/new?title=Alpha%20Signal&subtitle=Momentum%20breakout%20detected&message=AAPL%20surged%20past%20its%2020-day%20high.&devices=demo-ifv-001&isImportant=true
Create a new event using query params. The server auto-generates `id`, sets `isRead=false`, and fills the current timestamp.
GET /api/events?identifierForVendor=demo-ifv-001
List events visible to one device. Non-local callers must provide `identifierForVendor`.
GET /api/events/{id}?identifierForVendor=demo-ifv-001
Fetch one event by UUID. `identifierForVendor` is optional locally and filters visibility for device-scoped reads.
DELETE /api/events/{id}
Delete one event by UUID.
POST /api/events/{id}/read
Mark one event as read. Returns the updated event JSON with "isRead": true.
DELETE /api/events/{id}/read
Undo read state for one event. Returns the updated event JSON with "isRead": false.
POST /api/events/{id}/star
Star one event. /api/events/{id}/important also works and returns the updated event JSON with "isImportant": true.
DELETE /api/events/{id}/star
Unstar one event. /api/events/{id}/important also works and returns the updated event JSON with "isImportant": false.
POST /api/device/register
Register or update a device record keyed by `identifierForVendor`.
{
"token": "apns-token-001",
"identifierForVendor": "demo-ifv-001",
"hardwareIdentifier": "iPhone16,2",
"systemVersion": "18.1"
}
GET /api/device/tokens
Return all registered devices for debugging.
GET /health
Simple health check response.
{
"ok": true
}