In-app notifications allow Dynamics 365 users to receive contextual messages directly within a model-driven app such as Dynamics 365 Sales, Customer Service, or Field Service.
Notifications can appear as:
Notifications remain in the notification centre until the user dismisses them or they expire. The default expiry period is 14 days, although this can be changed when the notification is created.
How to Enable In-App Notifications
The feature must be enabled separately for each model-driven app.
Go to make.powerapps.com.
Open the solution containing the model-driven app.
Select the app and choose Edit.
Open Settings.
Select Features.
Enable In-app notifications.
Save and publish the app.
The notification setting is stored at the individual model-driven app level.
How Notifications Are Created
Notifications can be generated using:
Power Automate.
JavaScript or the Dataverse Web API.
A plug-in or custom integration.
The Dataverse SendAppNotification action.
Direct creation of records in the Notification table.
Notifications created through SendAppNotification are stored in the Dataverse Notification table, with the logical name appnotification.
Required Security Privileges
There are 4 tables to keep in mind so notifications work smoothly.
- Notification (appnotification): This is where notifications are stored.
- Model-Driven App User Setting (appusersetting): The table stores app-specific settings and preferences for each user.
- Setting Definition (settingdefinition): This table contains the definition of notification-related settings that the model-driven app reads. The user needs Read and Append To privileges because the Model-driven App User Setting record references the relevant Setting Definition record.
- Send In-App Notification (prvSendAppNotification): To send notifications to others.
Assign the following Privileges
Notification
- The close or cross button deletes the individual
appnotification record. Without Delete access, users may see the close button but be unable to dismiss individual notifications.
- You may give User, BU or ORG level depending on the access you want to assign.
Model-driven App User Setting
Create, Read, Write and Append.
These are ORG level access.
Setting Definition
Send In-App Notification
- ORG level access under Miscellaneous privileges tab.
These privileges allow the notification bell, notification centre and user notification settings to work correctly.
To sse “Dismiss All”, the user requires:
Model-driven App User Setting
Setting Definition
Dismiss All does not immediately delete every notification record. It updates the user setting so that older notifications are no longer retrieved.
Hope this helps!