Admin Notification Dispatcher
API Contract
REST
/api/v1/admin/notifications
6 endpoints
GET
/api/v1/admin/notifications/api/v1/admin/notifications
List notification dispatch log entries
Public
Response Example
{
"data": [
{
"dispatch_id": "dsp_aR2mQn",
"org_id": "org_kNr8aQ",
"type": "certification_reminder",
"recipient_user_id": "usr_hA3mXp",
"status": "delivered",
"sent_at": "2026-03-20T08:00:00Z"
},
{
"dispatch_id": "dsp_bC5tPk",
"org_id": "org_kNr8aQ",
"type": "certification_reminder",
"recipient_user_id": "usr_bQ9vTk",
"status": "failed",
"sent_at": "2026-03-20T08:00:01Z",
"error": "Email address not verified"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 38
}
}
GET
/api/v1/admin/notifications/api/v1/admin/notifications/:id
Get details of a single dispatch event
Public
Response Example
{
"data": {
"dispatch_id": "dsp_aR2mQn",
"org_id": "org_kNr8aQ",
"type": "certification_reminder",
"recipient_user_id": "usr_hA3mXp",
"status": "delivered",
"subject": "Your certification expires in 30 days",
"sent_at": "2026-03-20T08:00:00Z",
"delivered_at": "2026-03-20T08:00:03Z"
}
}
POST
/api/v1/admin/notifications/api/v1/admin/notifications/certification-reminder
Send a certification reminder to a single user
Public
Request Example
{
"user_id": "usr_hA3mXp"
}
Response Example
{
"data": {
"dispatch_id": "dsp_xP8nKv",
"user_id": "usr_hA3mXp",
"type": "certification_reminder",
"status": "queued",
"queued_at": "2026-03-26T11:00:00Z"
}
}
POST
/api/v1/admin/notifications/api/v1/admin/notifications/bulk-certification-reminders
Send bulk certification reminders to all users in org whose cert expires within N days
Public
Request Example
{
"org_id": "org_kNr8aQ",
"days_threshold": 30,
"include_sub_orgs": true
}
Response Example
{
"data": {
"org_id": "org_kNr8aQ",
"days_threshold": 30,
"total_eligible": 12,
"dispatched": 12,
"failed": 0,
"dispatch_ids": [
"dsp_xP8nKv",
"dsp_yQ9oLw"
],
"dispatched_at": "2026-03-26T11:00:05Z"
}
}
PUT
/api/v1/admin/notifications/api/v1/admin/notifications/:id
Retry or update a failed dispatch event
Public
Request Example
{
"action": "retry"
}
Response Example
{
"data": {
"dispatch_id": "dsp_bC5tPk",
"status": "queued",
"retried_at": "2026-03-26T11:05:00Z"
}
}
DELETE
/api/v1/admin/notifications/api/v1/admin/notifications/:id
Cancel a queued notification dispatch
Public
Response Example
{
"data": {
"dispatch_id": "dsp_xP8nKv",
"status": "cancelled",
"cancelled_at": "2026-03-26T11:01:00Z"
}
}