💬Messaging and Notifications
Messaging and Notifications

Messaging helps your app tell people what happened, what needs attention, and where to go next. Use it when your app needs notifications, announcements, direct conversations, group conversations, or workflow-aware messages.
Messaging is part of Automation (Beta Testing). Workflow moves work through steps. Messaging keeps people informed while that work happens. The simplest way to think about it is:
A screen, workflow, or app event sends a message. Messaging routes it to the right person, screen, workflow, or conversation.
When to use Messaging
Use Messaging when your app needs to communicate with people or route updates between parts of the app.
Good use cases include:
Notify a supervisor when a form is submitted.
Send a reminder when a request needs review.
Let two people discuss a record inside the app.
Create a group conversation for a team or support queue.
Broadcast a service announcement to all app users.
Show routed notifications in a Notification Center screen.
Let a workflow publish a message after an approval, rejection, hold, or exception.
Create a conversation around a customer request, inventory exception, timecard, support ticket, or approval.
Use Workflow when the app needs to make decisions, wait, branch, update records, or run a multi-step process. Use Messaging when the app needs to tell people about that process or let people respond in context.
Messaging concepts in plain language
Message
A communication created by a user, screen, workflow, or app event.
“A new timecard is ready for review.”
Notification
A short alert that appears in the app.
“Inventory count exception needs attention.”
Announcement
A broadcast message for many users.
“The system will be unavailable at 6 PM.”
Conversation
A thread of replies between users.
A supervisor and employee discuss a submitted timecard.
Channel
A lane for a category of messages.
announcements, notifications, conversations
Topic
The specific kind of event inside a channel.
announcement.published or conversation.message.sent
Recipient
The person or group who should receive the message.
Employee, supervisor, requester, admin, operations team
You do not need to memorize raw IDs to get started. The guided setup asks for the business outcome first, then helps create the right messaging objects.
Start with the business outcome
The easiest way to build Messaging is to start with a plain sentence:
When this happens, tell these people, and show the message here.
Examples:
When an employee submits a timecard, notify their supervisor.
When a stock count is below the expected amount, notify operations.
When payroll is complete, announce it to all employees.
When a customer refund is rejected, notify the requester and start a conversation.
After you describe the outcome, NotionApps can recommend a messaging pattern and help you create the supporting route.
Guided setup flow
Messaging can be configured manually, but most makers should start with Guided setup.
Guided setup is organized around three steps:
Describe what should happen
Type the business outcome in normal language. You might write, “When a stock count is submitted and the numbers do not match, notify operations and start a review conversation.”
Review the objects NotionApps will create
NotionApps recommends a channel, topic, contract, source, destination, fields, and example payload. You can accept the recommendation or adjust it.
Create, attach, and test the route
Create the channel, save the message shape, attach the sender, attach the receiver, and run a dry-route preview before using it live.
This keeps Messaging approachable: the maker describes the business outcome, and NotionApps assembles the engine.
Common messaging patterns
Notify the right person
A user or workflow needs to alert one or more people.
A notification appears for the recipient.
Broadcast an announcement
An admin needs to send an app-wide message.
The announcement appears in the Notification Center.
Start or continue a conversation
Users need to discuss a record, request, or approval.
A conversation thread is created or continued.
Send a workflow update
Workflow should tell users what happened.
A message is published after a workflow step.
Send an event to another system
A screen or workflow should notify a webhook or external system.
A structured event is sent to the configured destination.
Add a Notification Center screen
Use a Notification Center screen when users need one place to see announcements, service messages, and routed notifications.
Recommended setup:
Open your app in the builder.
Go to the Screens area.
Add a Notification Center screen.
Give it a clear name, such as Notifications or Announcements.
Choose where the screen should receive messages from.
Set visibility so the right users can open it.
Publish and test as a real app user.
A Notification Center is best for broad messages and alerts. It is not meant to replace a back-and-forth conversation thread.
Add a Conversation screen
Use a Conversation screen when users need to reply to each other.
Good examples:
A manager asks an employee to clarify a timecard.
Operations discusses an inventory mismatch.
A reviewer asks a requester for more information.
Support staff discuss a customer issue.
Recommended setup:
Add a Conversation screen.
Decide whether the screen should show direct conversations, record-related conversations, group conversations, or a focused thread.
Bind the screen to the appropriate messaging channel.
Set visibility rules so users only see conversations they are allowed to access.
Test with two personas so you can confirm replies appear for both sides.
For private communication, make sure your visibility rules only allow the intended participants to see the conversation.
Send an announcement
Announcements are useful for app-wide or role-wide updates.
Examples:
“Payroll exports are ready.”
“Inventory counts are due by Friday.”
“The app will be under maintenance tonight.”
“New approval policy starts next week.”
Recommended setup:
Open Automation.
Open Messaging or Announcements.
Create an announcement message.
Choose the audience.
Choose where it should appear, usually Notification Center.
Send or publish the announcement.
Log in as a target user and confirm they can see it.
Keep announcement text short and action-oriented. If users need to discuss the announcement, link them to a Conversation screen or a relevant record screen.
Example: notify a supervisor after a form submission
Business outcome:
When an employee submits a timecard, notify the assigned supervisor.
Recommended setup:
Channel
notifications
Topic
work.notification.requested
Source
The submitted form or screen
Destination
The workflow, notification screen, or recipient rule
Payload
Record ID, message, recipient, priority
Maker steps:
Open Automation > Messaging > Guided setup.
Describe the outcome in plain language.
Choose the recommended Notify the right person pattern.
Select the actual form or screen that starts the message.
Select the recipient rule or workflow that should receive it.
Create or confirm the channel.
Save and test the route.
Submit the form as a test user and confirm the supervisor sees the notification.
Example: broadcast a maintenance announcement
Business outcome:
Broadcast a maintenance notice to everyone using this application.
Recommended setup:
Channel
announcements
Topic
announcement.published
Source
Admin announcement action or workflow
Destination
Notification Center
Payload
Title, message, severity, created date
Maker steps:
Add or confirm a Notification Center screen.
Open Automation > Messaging.
Choose the Broadcast an announcement pattern.
Write a short title and message.
Choose the audience.
Send or test the announcement.
Log in as a target user and confirm the announcement appears.
Use Messaging with Workflow
Messaging becomes especially powerful when combined with Workflow.
Example: approval request
A user submits a request form.
Workflow starts an approval route.
Workflow sends a notification to the reviewer.
The reviewer opens the decision screen.
The reviewer approves, rejects, or asks a question.
Messaging notifies the requester and can continue a conversation.
Example: inventory exception
A user submits a stock count.
Workflow checks the expected quantity.
If the count is outside the expected range, Workflow creates an exception.
Messaging notifies operations.
Operations discusses the issue in a Conversation screen.
Workflow records the resolution.
What a useful message should include
A good message tells the recipient enough to act.
Include:
What happened.
Which record or request is involved.
Who submitted or triggered it.
What the recipient should do next.
Where to open the related screen or record.
Weak message:
Workflow update.
Better message:
Timecard for Jordan Lee is ready for review. Open Supervisor Review Queue to approve, reject, or request changes.
Testing checklist
Before publishing your app, test Messaging with real app personas.
Check that:
The right screen exists, such as Notification Center or Conversation.
The screen is visible to the intended users.
The messaging channel or announcement setup exists.
The workflow, form, button, or screen that sends the message is configured.
The recipient can see the message.
A user who should not see the message cannot see it.
Replies appear in the correct conversation thread.
Announcements do not appear as private direct messages.
Workflow-triggered messages appear after the workflow step runs.
Troubleshooting
If messages do not appear, check these items first:
User cannot see the Notification Center
Screen visibility may be too restrictive, or the screen may not be in navigation for that role.
Conversation appears empty
The screen may be listening to the wrong channel, topic, or conversation context.
Announcement does not show
Confirm the announcement channel exists and the target screen is listening for announcements.
Workflow message does not send
Confirm the workflow is active, valid, and the notification or message step is configured.
Wrong people can see a message
Review screen visibility, recipient rules, and conversation participants.
A setup field asks for an ID
Use the context-aware selector when available. Search by friendly screen, form, workflow, channel, or user name.
Best practices
Start with the business outcome, not the technical object.
Use short channel names such as notifications, announcements, conversations, and approvals.
Keep announcement text brief.
Use conversations when people need to reply.
Use Notification Center for alerts and broadcasts.
Test with more than one persona.
Keep private conversations separate from broadcast announcements.
Combine Workflow and Messaging when a business process needs both action and communication.Current guided messaging setup
Messaging setup now follows the same outcome-first pattern as Workflow and Approval setup. A maker should be able to describe what they want in business language and let NotionApps assemble the messaging route.
Start with a sentence such as:
The guided setup then walks through these steps:
Describe what should happen. NotionApps recommends a messaging pattern, such as notify the right person, broadcast an announcement, start a conversation, or send an event to another system.
Answer the numbered questions. Choose the source type, source object, destination type, destination object, and payload. The source and destination fields are context-aware and can suggest screens, forms, controls, data sources, workflows, channels, and saved IDs from the current application.
Review the route plan. NotionApps explains which channel, contract, source attachment, and destination attachment will be created or reused.
Build this messaging route. One action creates or reuses the channel, saves and publishes the contract, attaches the publisher, attaches the subscriber, and runs a dry-run when live publish access is available.
Inspect Activity. Use Activity to confirm which subscriber matched, whether the payload was accepted, and whether any delivery or entitlement blocker remains.
The maker does not need to start by understanding channels, topics, contracts, publishers, or subscribers. Those objects still exist and remain visible for advanced tuning and support, but the normal maker path begins with the desired business result.
Example: Notify a supervisor
Business language:
What NotionApps assembles:
ObjectExampleChannel
notifications
Topic
work.notification.requested
Contract
notification_request@1.0.0
Source
The selected form or screen
Destination
A workflow, screen, role, or subscriber that receives the notification
After the route is built, run a dry-run and then test as the real app user. The proof is visible in Messaging Activity, Workflow Activity, the Notification Center, or the target conversation screen depending on the route.Current guided messaging setup
Messaging now follows the same outcome-first pattern as Workflow. The maker starts with the message outcome and NotionApps helps create the channel, topic, route, and proof steps.
Example outcome:
When a stock count is submitted, notify operations and open a conversation around the item.
A maker should configure that outcome this way:
Describe what should happen in plain language.
Choose the source screen or event from app-aware suggestions.
Choose the destination: notification center, conversation screen, app-wide announcement, role, or person.
Review the route plan.
Click Build this messaging route when the route matches the desired outcome.
Send a test message or run the guided test.
Inspect Activity or Messaging Operations if the delivery does not appear.
A common notification route looks like this:
SettingExampleChannel
notifications
Topic
work.notification.requested
Contract
notification_request@1.0.0
Source
A selected form or workflow event
Destination
A role, screen, subscriber, or selected user
Use announcements for broadcast messages. Use conversations for direct or grouped discussion. Use notifications for routed system updates that tell someone work needs attention.
Current guided messaging setup
Messaging now follows the same outcome-first pattern as Workflow. The maker starts with the message outcome and NotionApps helps create the channel, topic, route, and proof steps.
Example outcome:
When a stock count is submitted, notify operations and open a conversation around the item.
A maker should configure that outcome this way:
Describe what should happen in plain language.
Choose the source screen or event from app-aware suggestions.
Choose the destination: notification center, conversation screen, app-wide announcement, role, or person.
Review the route plan.
Click Build this messaging route when the route matches the desired outcome.
Send a test message or run the guided test.
Inspect Activity or Messaging Operations if the delivery does not appear.
A common notification route looks like this:
Channel
notifications
Topic
work.notification.requested
Contract
notification_request@1.0.0
Source
A selected form or workflow event
Destination
A role, screen, subscriber, or selected user
Use announcements for broadcast messages. Use conversations for direct or grouped discussion. Use notifications for routed system updates that tell someone work needs attention.
Last updated