Skip to content

API Reference

This page lists the Notification service HTTP API and the optional client proxy routes exposed by Microtec.Notifications.Client.

Direct Service Endpoints

Base path examples assume the Notification service is hosted at:

text
https://notification-service.internal

Endpoint Families

Send Endpoints

MethodPathBodyResponse
POST/api/v1/EmailNotifications/SendEmailPayloadNotificationResult
POST/api/v1/SmsNotifications/SendSmsPayloadNotificationResult
POST/api/v1/PushNotifications/SendPushPayloadNotificationResult
POST/api/v1/WhatsAppNotifications/SendWhatsAppPayloadNotificationResult

NotificationResult contains:

  • IsSuccess
  • ErrorMessage
  • NotificationId

ASP.NET Core route matching is case-insensitive by default, and the client package currently uses lowercase send paths.

Notification Center

MethodPathDescription
GET/api/v1/NotificationCenter/GetNotificationCenterAdmin paged notification list.
GET/api/v1/NotificationCenter/MyNotificationsCurrent user's paged notification list.
GET/api/v1/NotificationCenter/PushCurrent user's push notifications.
GET/api/v1/NotificationCenter/EmailCurrent user's email notifications.
GET/api/v1/NotificationCenter/SmsCurrent user's SMS notifications.
GET/api/v1/NotificationCenter/push/SummaryPush notification summary.
GET/api/v1/NotificationCenter/push/{notificationId}Push detail.
GET/api/v1/NotificationCenter/email/{notificationId}Email detail.
GET/api/v1/NotificationCenter/sms/{notificationId}SMS detail.
GET/api/v1/NotificationCenter/unread-countCurrent user's unread count.
POST/api/v1/NotificationCenter/mark-as-readMark multiple notifications as read.
POST/api/v1/NotificationCenter/{notificationId}/mark-as-readMark one notification as read.
DELETE/api/v1/NotificationCenter/{notificationId}Delete one notification.
POST/api/v1/NotificationCenter/{notificationId}/retryRetry a notification.

Common list filters:

  • searchTerm
  • channel
  • isRead
  • moduleId
  • serviceId
  • notificationSettingType
  • dateFrom
  • dateTo
  • pageNumber
  • pageSize
  • sortBy
  • sortColumn

Admin list also supports userIds.

Device Tokens

MethodPathDescription
POST/api/v1/DeviceTokens/RegisterRegister or update current user's device token.
PUT/api/v1/DeviceTokens/{tokenId}Update token value.
GET/api/v1/DeviceTokens/my-tokensGet current user's active tokens.
GET/api/v1/DeviceTokens/{tokenId}Get one token.
DELETE/api/v1/DeviceTokens/{tokenId}Delete one token.
GET/api/v1/DeviceTokens/by-application/{applicationTarget}Get tokens by application target.
POST/api/v1/DeviceTokens/ValidateValidate stored device tokens.

Register body:

json
{
  "token": "<device-token>",
  "platform": "Mobile",
  "applicationTarget": "ERP",
  "provider": "FCM",
  "deviceModel": "iPhone"
}

Channel Config

MethodPathDescription
GET/api/v1/ChannelConfigList channel configs. Supports name and channelType query filters.

Credentials

MethodPathProvider
POST/api/v1/Credentials/azure-graphAdd Azure Graph email config.
PUT/api/v1/Credentials/azure-graphEdit Azure Graph email config.
GET/api/v1/Credentials/azure-graph/{id}Get Azure Graph config.
DELETE/api/v1/Credentials/azure-graph/{id}Delete Azure Graph config.
POST/api/v1/Credentials/SmtpAdd SMTP config.
PUT/api/v1/Credentials/SmtpEdit SMTP config.
GET/api/v1/Credentials/Smtp/{id}Get SMTP config.
DELETE/api/v1/Credentials/Smtp/{id}Delete SMTP config.
POST/api/v1/Credentials/FcmAdd FCM config.
PUT/api/v1/Credentials/FcmEdit FCM config.
GET/api/v1/Credentials/Fcm/{id}Get FCM config.
DELETE/api/v1/Credentials/Fcm/{id}Delete FCM config.
POST/api/v1/Credentials/generic-http-smsAdd Generic HTTP SMS config.
PUT/api/v1/Credentials/generic-http-smsEdit Generic HTTP SMS config.
GET/api/v1/Credentials/generic-http-sms/{id}Get Generic HTTP SMS config.
DELETE/api/v1/Credentials/generic-http-sms/{id}Delete Generic HTTP SMS config.
POST/api/v1/Credentials/msegat-whatsappAdd Msegat WhatsApp config.
PUT/api/v1/Credentials/msegat-whatsappEdit Msegat WhatsApp config.
GET/api/v1/Credentials/msegat-whatsapp/{id}Get Msegat WhatsApp config.
DELETE/api/v1/Credentials/msegat-whatsapp/{id}Delete Msegat WhatsApp config.
PUT/api/v1/Credentials/msegat-whatsapp/{id}/toggle-activation?isActive=trueActivate or deactivate Msegat WhatsApp config.

WhatsApp Templates

MethodPathDescription
POST/api/v1/WhatsAppTemplatesAdd local WhatsApp template.
PUT/api/v1/WhatsAppTemplatesEdit local WhatsApp template.
DELETE/api/v1/WhatsAppTemplates/{id}Delete local WhatsApp template.
GET/api/v1/WhatsAppTemplates/{id}Get one template.
GET/api/v1/WhatsAppTemplatesList templates.
POST/api/v1/WhatsAppTemplates/SyncSync one template or all templates to T2.

WhatsApp Provisioning

MethodPathDescription
POST/api/v1/credentials/msegat-whatsapp/provisioning/StartQueue provisioning for the current subdomain.
GET/api/v1/credentials/msegat-whatsapp/provisioning/StatusGet provisioning state.
POST/api/v1/credentials/msegat-whatsapp/provisioning/RetryRetry only when previous state failed.

Seed

MethodPathDescription
POST/api/v1/Seed/DefaultsSeed notification defaults.

Admin Notifications

MethodPathDescription
GET/api/v1/admin/notificationsAdmin notification list.
GET/api/v1/admin/notifications/{notificationId}EmailAdmin email detail.
GET/api/v1/admin/notifications/{notificationId}SmsAdmin SMS detail.
GET/api/v1/admin/notifications/{notificationId}PushAdmin push detail.
POST/api/v1/admin/notifications/{notificationId}RetryRetry notification from admin route.

The current admin route templates concatenate the id and action without a slash. Keep clients aligned with the route template until the service route is changed deliberately.

Client Proxy Routes

When a consuming app calls AddNotificationsClient(...), the client package adds controllers under /api/v1/notifications by default.

Proxy areaDefault route
My notifications/api/v1/notifications/center/MyNotifications
Admin notification center/api/v1/notifications/center/GetNotificationCenter
Push summary/api/v1/notifications/center/summary
Unread count/api/v1/notifications/center/unread-count
Device tokens/api/v1/notifications/device-tokens/...
Channel config/api/v1/notifications/channel-config
Credentials/api/v1/notifications/credentials/...
WhatsApp provisioning/api/v1/notifications/credentials/msegat-whatsapp/provisioning/...
Seed defaults/api/v1/notifications/seed/defaults

These proxy controllers call the Notification service through typed clients. They are useful when a host application wants to expose notification settings or notification center APIs through its own authorization and gateway surface.

Internal Documentation — Microtec