Download OpenAPI specification:
Real-time notification service with WebSocket, FCM/OneSignal push notifications, and asynchronous email processing
Get all registered devices for the current user
[- {
- "created_at": "string",
- "device_id": "string",
- "device_name": "string",
- "device_type": "string",
- "fcm_token": "string",
- "invalid_since": "string",
- "onesignal_player_id": "string",
- "token_invalid": true,
- "updated_at": "string",
- "user": {
- "createdAt": "string",
- "email": "string",
- "emailVerified": true,
- "id": 0,
- "mfaEnabled": true,
- "status": "active",
- "updatedAt": "string"
}, - "user_id": 0
}
]Register a device with FCM token and/or OneSignal player ID
Device registration data
| device_id required | string |
| device_name | string |
| device_type | string |
| fcm_token | string |
| onesignal_player_id | string |
{- "device_id": "string",
- "device_name": "string",
- "device_type": "string",
- "fcm_token": "string",
- "onesignal_player_id": "string"
}{- "message": "string"
}Update FCM token or OneSignal player ID for a specific device
| device_id required | string Device ID |
Token update data
| property name* additional property | string |
{- "property1": "string",
- "property2": "string"
}{- "message": "string"
}Get paginated notifications for the current user
| page | integer >= 1 Default: 1 Page number |
| limit | integer [ 1 .. 100 ] Default: 20 Items per page |
{- "currentPage": 0,
- "items": [
- {
- "createdAt": "string",
- "id": "string",
- "message": "string",
- "readAt": "string",
- "targetLink": "string",
- "targetText": "string",
- "unread": true
}
], - "totalItems": 0,
- "totalPages": 0,
- "unreadCount": 0
}Mark a specific notification as read
| id required | string Notification ID |
{- "createdAt": "string",
- "id": "string",
- "message": "string",
- "readAt": "string",
- "targetLink": "string",
- "targetText": "string",
- "unread": true
}Process a notification job with multiple recipients and channels (internal use only)
Notification job data
| emailAttachments | string |
| emailTemplate | string |
| message required | string |
| notifierId | integer |
required | Array of objects (github_com_Tresor-Corp_ms-notifications_internal_models.NotificationJobRecipient) non-empty |
| scheduleAt | string |
| targetId | string |
| targetLink | string |
| targetText | string |
| targetType | string |
| title | string |
| triggerEvent | string |
{- "emailAttachments": "string",
- "emailTemplate": "string",
- "message": "string",
- "notifierId": 0,
- "recipients": [
- {
- "channels": [
- "string"
], - "context": { },
- "email": "string",
- "userId": 0
}
], - "scheduleAt": "string",
- "targetId": "string",
- "targetLink": "string",
- "targetText": "string",
- "targetType": "string",
- "title": "string",
- "triggerEvent": "string"
}{- "jobId": "string",
- "message": "string",
- "processedRecipients": 0
}Create a new notification (internal use only)
Notification data
| emailAttachments | string |
object | |
| emailTemplate | string |
| message required | string |
| notifierId | integer |
| targetId | string |
| targetLink | string |
| targetText | string |
| targetType | string |
| title | string |
| triggerEvent | string |
| userId required | integer |
{- "emailAttachments": "string",
- "emailContext": { },
- "emailTemplate": "string",
- "message": "string",
- "notifierId": 0,
- "targetId": "string",
- "targetLink": "string",
- "targetText": "string",
- "targetType": "string",
- "title": "string",
- "triggerEvent": "string",
- "userId": 0
}{- "message": "string"
}Create multiple notifications at once (internal use only)
Array of notification data
| emailAttachments | string |
object | |
| emailTemplate | string |
| message required | string |
| notifierId | integer |
| targetId | string |
| targetLink | string |
| targetText | string |
| targetType | string |
| title | string |
| triggerEvent | string |
| userId required | integer |
[- {
- "emailAttachments": "string",
- "emailContext": { },
- "emailTemplate": "string",
- "message": "string",
- "notifierId": 0,
- "targetId": "string",
- "targetLink": "string",
- "targetText": "string",
- "targetType": "string",
- "title": "string",
- "triggerEvent": "string",
- "userId": 0
}
]{- "message": "string"
}