Hi everyone,
I wanted to share a project I’ve been working on to solve a common challenge: getting reliable, real-time desktop push notifications from AppSheet.
While emails and SMS are great, they aren’t always ideal for desktop users who need immediate alerts without checking their inbox.
The Inspiration & The Challenge
First off, huge credit to @Rifad for his pioneering work on this topic. His post and extension (Chrome Extension: Real-Time AppSheet Notifications) proved that it was possible to have notifications via a Chrome extension. His work was the starting point for my project, and I highly recommend checking out his original post.
However, in my specific use cases, I encountered a few limitations with the initial approach:
- Reliability & Background State: The original solution often required the AppSheet tab to be active or open to receive notifications reliably. I needed alerts to come through even if the browser was minimized or closed (running in the background).
- Multi-App Support: Managing notifications for multiple AppSheet applications simultaneously was difficult, as it relied on open tabs for routing.
The Solution: Matek AppSheet Notification Extension
Building on Rifad’s concept, I developed a new Chrome extension designed for reliability and multi-app environments.
Key Features:
100% Reliable Push Notifications: Uses a service worker and a dedicated Firebase Cloud Function to ensure notifications are delivered even if the AppSheet tab is closed.
Multi-App Support: Users can subscribe to notifications for multiple different AppSheet apps independently. The extension intelligently manages subscriptions based on the App ID.
Deep Linking: Clicking a notification doesn’t just open the app’s homepage. You can configure your webhook to send a specific URL (url_clic), taking the user directly to the relevant view or record (e.g., a specific order detail).
Smart Tab Reuse: If the app is already open in a tab, clicking the notification will focus that tab and navigate within it, rather than opening a new duplicate tab.
Visual & Sound Controls: Includes options for dark mode and muting notification sounds.
Local History: A built-in history log in the extension popup shows the last 50 notifications received.
How it Works (For Developers)
It works similarly to Rifad’s solution but with a simplified backend for better routing. You set up an Automation Bot in AppSheet that triggers a Webhook to a dedicated Cloud Function URL.
Webhook Example:
URL : https://sendnotificationtotopic-1087750934691.europe-west9.run.app
HTTP verb : POST
HTTP Content Type : JSON
{
"title": "New Order Alert",
"body": "Order n° <<[Order ID]>> needs approval.",
"targetAppId": "YOUR_APP_ID_HERE",
"icon": "https://link-to-your-icon.png",
"url_clic": "https://www.appsheet.com/start/YOUR_APP_ID#view=OrderDetail&row=12345"
}
The extension handles the rest, routing the message only to users subscribed to that specific targetAppId.
Critical Parameters
- title & body: The visible text content of your notification.
- targetAppId (MANDATORY): This is the core of the system. It serves as the routing Topic (the message is sent ONLY to users subscribed to this specific ID).
- url_clic (Optional): Enables “Deep Linking”. Allows redirecting the user to a specific view or record when clicking the notification (e.g., directly opening the details of an order to approve).
Note: If not specified, clicking simply opens the app homepage. In both cases, the “Smart Click” feature reuses the existing tab if it is already open. - icon (Optional): The URL of an image (png/jpg) to customize the notification with your logo.
Security & Privacy
- No personal data is collected.
- History is stored locally only on the user’s browser.
- Secure communication via HTTPS and the official Google FCM protocol.
Availability
The extension is currently published on the Chrome Web Store for free.
Matek AppSheet Notification on Chrome Web Store
I hope this can be useful to others in the community looking for a robust desktop notification solution! Feel free to ask any questions or share your feedback.
Thanks again to Rifad for paving the way!
Note to moderators: I couldn’t post in Tips & Tricks due to permissions. Feel free to move this post to the appropriate category if needed.







