Push notifications with action buttons
Send push notifications with tappable action buttons, and route the tap back into a workflow.
Anythink sends through Firebase Cloud Messaging (Android and iOS) and web push (VAPID), templates the payload, and fans bulk sends out across a queue instead of a synchronous loop.
The same task, three ways
Every task works three ways, and all of them change the same project. Here's one: a push notification with Start, Snooze and Skip buttons.
The Anythink dashboard
Android and web show the buttons as sent. On iOS the app registers the matching button group first.
The Anythink CLI
The same send, as one API call from a script or CI job.
$ anythink fetch /push/test --method POST --body \'{"title":"Time for your workout","body":"Your session starts in 10 minutes","target_user_id":72,"buttons":[{"id":"start","label":"Start"},{"id":"snooze","label":"Snooze"},{"id":"skip","label":"Skip"}]}'- ✓Push sent to user 72's registered devices
- ✓Buttons: Start, Snooze, Skip
- ✓The delivery result is under Push Notifications → History
Claude, through MCP
Say who gets it and what the buttons are. It sends the push and reports the result.
you › “Send user 72 a push saying their workout starts in 10 minutes, with Start, Snooze and Skip buttons.”
- ✓Sent through the project's push providers
- ✓Added three action buttons: Start, Snooze, Skip
- ✓Delivery result is in the History tab
Push with action buttons, not just a message
Categories, action buttons and bulk sends, wired into the same workflow engine as the rest of Anythink.
FCM and web push
Registered devices are sent to through Firebase Cloud Messaging, which delivers to Android and iOS, or through web push with VAPID for browsers, from the same send call.
iOS categories and action buttons
Define a notification category with an ordered set of action buttons and their labels, then attach it to a template. Categories sync to the device so the system notification renders the right buttons.
A tap fires a real workflow
When someone taps an action button, the tap is verified against a signed, category-scoped token and checked against the project's registered actions, then it triggers a workflow. A lock-screen button can start automation, not just open the app.
Templates with per-button actions
Build a push template once, with its own action buttons and click behaviour, then send it from a workflow step with templated fields instead of hand-building the payload each time.
Bulk sends over the queue
Sending to a list fans each recipient out as its own message on the queue, so a broadcast to thousands of devices doesn't run as a slow synchronous loop inside the workflow.
Triggered from any workflow
Send a push as a step in any workflow, using the same trigger types as the rest of Anythink: an entity change, a schedule, a manual run, or an API call.
In practice
A category, a template, and a triggered send
Trigger: EntityUpdated on orders (changed_to: status = "shipped") Steps: 1. SendPushNotification — template: order-shipped — recipients: {{ $anythink.trigger.data.customer_id }} The order-shipped template carries its own action buttons: "Track package", "Contact support".
What you can build
Order status pushes with a tracking action
When an order's status changes to shipped, a workflow sends a push with a "Track package" button. Tapping it fires a workflow that looks up the tracking link, instead of just deep-linking into the app.
A reminder with Snooze and Done buttons
A scheduled workflow pushes a reminder with two actions. "Done" marks the task complete via a workflow step; "Snooze" re-queues the same reminder for later, all from the lock screen.
A broadcast to every subscriber
A manual workflow loops over a list of recipients and sends through the queue, so a broadcast to a large group doesn't run as a slow, synchronous send inside the workflow.
Frequently Asked Questions
Does Anythink support push notifications with action buttons?
Yes. You define a notification category with an ordered set of action buttons, attach it to a template, and Anythink syncs the category so the device renders the right buttons. A tap on a button is verified and can fire a workflow.
What push providers does Anythink send through?
Firebase Cloud Messaging (FCM) for Android and iOS, and web push with VAPID for browsers. Device registration and credentials are stored per project.
Can a notification tap trigger an automation?
Yes. Action-button taps call a signed-token endpoint that checks the tap against the project's registered actions for that category, then fires a workflow trigger. For example, a "Snooze" button can re-trigger a reminder workflow without opening the app.
Can I send a push to a large list of users at once?
Yes. A bulk or looped send publishes one message per recipient to a dedicated queue, rather than sending synchronously in a loop, so large broadcasts don't block the workflow that started them.
Still have questions?
Get in TouchMore in the same project
Every feature reads from the same data model, so each one you add works with the rest.
Ways to build with it
The dashboard, the CLI, MCP and the SDK, plus guides for moving from other platforms.
Who it's for
How founders, agencies and enterprise teams use Anythink.
Documentation
Guides and reference at docs.anythink.cloud.
- /
- Products/
- Push Notifications
