Retrieve a paginated list of notifications for the currently authenticated user.
Get User Notifications
The GET /api/notifications endpoint retrieves a list of notifications for the currently authenticated user in the Netevia banking application. Notifications include transaction alerts, security updates, system messages, and other account-related activities. Results are returned in chronological order and support filtering by date range, severity level, group, and keyword search.
Endpoint
GET /api/notifications
Authentication
Bearer token required. Obtain via:
POST https://api.banking.netevia.dev/api/auth/v2
Include in header: Authorization: Bearer {token}
Token lifetime: 10 minutes. Refresh via POST /api/auth/refresh.
When to use
Use this endpoint to display in-app notification feeds, alert banners, or message centers for end users. It is useful for building dashboards that surface transaction alerts, security events, or platform announcements. Filter by level or group to segment notifications by priority or category.
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| fromDate | string (date-time) | No | Return notifications created on or after this ISO 8601 datetime. |
| toDate | string (date-time) | No | Return notifications created on or before this ISO 8601 datetime. |
| level | string (enum) | No | Filter by severity level. Allowed values: Info, Warning. |
| group | string (enum) | No | Filter by notification group. Allowed values: Notifications, Messages, Campaigns, CardholderAgreement. |
| searchTerm | string | No | Full-text keyword search across notification subject and body. |
| skip | integer | No | Number of records to skip for pagination. Default: 0. |
| take | integer | No | Maximum number of records to return. Default: 100. |
Response
200 OK
Returns an array of notification objects.
| Field | Type | Description |
|---|---|---|
| id | integer | Unique identifier of the notification. |
| createdDate | string (date-time) | ISO 8601 timestamp when the notification was created. |
| subject | string / null | Short subject line or title of the notification. |
| body | string / null | Full content or message body of the notification. |
| group | string (enum) | Category group of the notification: Notifications, Messages, Campaigns, or CardholderAgreement. |
| level | string (enum) | Severity level of the notification: Info or Warning. |
| dateRead | string (date-time) / null | ISO 8601 timestamp when the notification was read by the user. null if unread. |
| metaData | object / null | Read-only key-value map of additional metadata associated with the notification. Values may be strings or null. |
[
{
"id": 1042,
"createdDate": "2026-06-07T14:32:00Z",
"subject": "Transfer Completed",
"body": "Your transfer of $250.00 to savings account XXXXXXXXXX has been successfully completed.",
"group": "Notifications",
"level": "Info",
"dateRead": null,
"metaData": {
"transactionId": "TXN-20260607-00421",
"accountId": "ACC-00987"
}
},
{
"id": 1041,
"createdDate": "2026-06-06T09:15:00Z",
"subject": "Security Alert: Password Changed",
"body": "Your account password was changed. If you did not make this change, contact support immediately.",
"group": "Notifications",
"level": "Warning",
"dateRead": "2026-06-06T09:20:00Z",
"metaData": null
},
{
"id": 1039,
"createdDate": "2026-06-05T08:00:00Z",
"subject": "Scheduled Maintenance Notice",
"body": "Netevia Banking services will undergo scheduled maintenance on June 10, 2026 from 2:00 AM to 4:00 AM UTC.",
"group": "Messages",
"level": "Info",
"dateRead": "2026-06-05T10:05:00Z",
"metaData": null
}
]Error Codes
| Code | When it happens |
|---|---|
| 400 | Invalid query parameter format (e.g., malformed date-time string or unsupported enum value for level or group). |
| 401 | Token missing, expired, or invalid. |
| 403 | Insufficient permissions to access notifications for this account. |
| 404 | No notification resource found for the authenticated user context. |
| 500 | Internal server error. |
Common Mistakes
- Providing
fromDateortoDatein a non-ISO 8601 format (e.g.,06/07/2026) will result in a 400 error; always use thedate-timeformat such as2026-06-07T00:00:00Z. - Passing an invalid value for
levelorgroupthat is not in the defined enum list will result in a 400 error; check allowed values before sending the request. - Omitting pagination parameters (
skipandtake) on accounts with high notification volumes may return large payloads; use these parameters to page through results efficiently. - The
metaDatafield is read-only and returned by the server; do not attempt to submit it as part of a request body.
Related Endpoints
GET /api/notifications/{id}— Retrieve a single notification by its ID.PUT /api/notifications/{id}/read— Mark a specific notification as read.DELETE /api/notifications/{id}— Delete a specific notification.
Example
curl -X GET "https://api.banking.netevia.dev/api/notifications?fromDate=2026-06-01T00:00:00Z&toDate=2026-06-08T23:59:59Z&level=Warning&group=Notifications&skip=0&take=50" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json"