The Notifications API delivers in-app alerts to users when meaningful events occur—such as a new chat message, an application status change, or a company action on a vacancy. Notifications are available through paginated REST endpoints for inbox management and via a WebSocket subscription for live delivery without polling.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/Esteban-Mendez-j/Proyecto-Docker/llms.txt
Use this file to discover all available pages before exploring further.
When notifications are triggered
Notifications are created in two ways:- WebSocket push — any backend process or another connected client sends a
NotificacionDTOto/app/enviar/notificacionor/app/enviar/evento. The server persists the notification and routes it to the recipient’s private queue. - Direct service call — server-side services (for example, application status transitions) call
NotificacionService.Createinternally and then push over WebSocket.
estadoEnvio field that moves from ENVIADO (sent) to RECIBIDO (acknowledged) once the client marks it as received.
REST endpoints
All endpoints are under/api/notificaciones and require the jwtToken cookie for authentication. The authenticated user’s ID is extracted from the JWT on every request.
Get received notifications (paginated)
Returns the authenticated user’s visible received notifications, newest first.Zero-based page number.
Number of notifications per page.
content array of NotificacionDTO objects and standard Spring Page metadata.
| Code | Meaning |
|---|---|
200 | Success. |
401 | Missing or invalid jwtToken cookie. |
Get recent received notifications
Returns a flat list of the most recent received notifications withestadoEnvio = ENVIADO. Intended for notification badge counts and preview dropdowns.
Array of recent unacknowledged notifications.
| Code | Meaning |
|---|---|
200 | Success. |
401 | Missing or invalid jwtToken cookie. |
Get sent notifications (paginated)
Returns the authenticated user’s visible sent notifications.Zero-based page number.
Number of notifications per page.
| Code | Meaning |
|---|---|
200 | Success. |
401 | Missing or invalid jwtToken cookie. |
Mark a notification as received
Transitions a notification’sestadoEnvio from ENVIADO to RECIBIDO. Call this once the client has acknowledged delivery.
The notification’s unique identifier.
| Code | Meaning |
|---|---|
200 | State updated successfully. |
Update notification visibility
Hides or restores a notification. Settingvisibilidad=false removes it from the recipient’s inbox.
The notification’s unique identifier.
true to show the notification; false to hide it.Visibility is a single shared flag. If one party hides the notification, it becomes invisible to both sender and recipient. This is a known limitation tracked in the source code.
| Code | Meaning |
|---|---|
200 | Visibility updated successfully. |
Data model
NotificacionDTO fields
Unique notification identifier.
Subject line of the notification.
Full body text of the notification.
Timestamp when the notification was sent.
Email address (or user identifier) of the recipient.
Email address (or user identifier) of the sender.
Numeric user ID of the sender.
ID of the vacancy this notification relates to, if applicable.
Display name of the sender.
Whether the notification is visible to both parties.
ENVIADO when first delivered; RECIBIDO after the client acknowledges it.Real-time delivery via WebSocket
Notifications are pushed in real time over the same STOMP/SockJS connection used by the Chat API (endpoint/chats). See Chat API — connecting for how to establish the connection.
Send a notification
Publish to/app/enviar/notificacion. The server persists the notification via NotificacionService.Create and immediately delivers it to the recipient’s queue.
| Direction | Destination |
|---|---|
| Client sends to | /app/enviar/notificacion |
| Recipient receives at | /user/{destinatario}/queue/notificacion |
Send an event notification
Use/app/enviar/evento when you need to deliver the same notification to both the main notification inbox and a separate event channel. The server does not persist this notification—it routes it directly over WebSocket.
| Direction | Destination |
|---|---|
| Client sends to | /app/enviar/evento |
| Recipient receives at (inbox) | /user/{destinatario}/queue/notificacion |
| Recipient receives at (events) | /user/{destinatario}/queue/notificacion/evento |
Subscribing to notifications
PUT /api/notificaciones/edit/estadoEnvio/{id} to mark it as RECIBIDO and clear it from the unread count.