No, Android doesn't have a Shortcuts app. It has something arguably better: buttons that live anywhere — the Quick Settings shade, the home screen, a 30-cent NFC tag — and they're all one import away. Plus the full two-way approval loop, in Tasker.
Runs on the free, open-source HTTP Shortcuts app — the standard "buttons for HTTP" tool on Android. Our packs import into it with one tap.
demo-alerts topic so it works
instantly. Open a shortcut → tap the URL → change the last path segment to your own topic name.
A private topic also needs a header: Authorization: Bearer <your topic key>.One tap from the Quick Settings shade, a widget, or an NFC tag by the door.
pre-wired as your Quick Settings tileHome screen button for the car. Or write it to a tag on the dashboard.
The generic ping. Rename it, reword it, multiply it.
Pair with MacroDroid's location trigger for the zero-tap version.
Asks what to say every time you tap it, then sends exactly that.
Download the raw file instead — basics.json · askme.json — then in HTTP Shortcuts: ⋮ menu → Import/Export → Import from file.
Android reads NFC tags in the background with no extra app. Each shortcut you imported has a fixed deep link — write it to a tag and tapping the tag fires the push.
| Button | Tag payload (deep link) |
|---|---|
| 🏡 I'm Home | http-shortcuts://11b01fc7-e065-585e-8400-729996eab9eb |
| 🚗 On My Way | http-shortcuts://f0daff58-3672-5601-bb7c-45bd51dc5076 |
| 📣 Heads Up | http-shortcuts://dae28003-0e40-5f8f-91b0-85acd44d61c2 |
| 🚶 Left the Office | http-shortcuts://225da31c-7e37-58a3-a9ac-9b69941649d3 |
| ✍️ Ping the Team | http-shortcuts://a41fd7cf-397a-5118-afc5-b4afb061c4db |
Tasker speaks HTTP natively, so plain sends need no plugin and no import. And because Tasker has real control flow, it can do what the one-tap pack can't: ask a human and block until they answer.
Send iotpushPOST · URL: https://www.iotpush.com/api/push/demo-alerts
Keep the www — the bare domain answers with a redirect.Content-Type: application/json{ "title": "Tasker", "message": "Sent from my automation 🤖" }Works on every plan (Free includes 20 approvals a month —
see pricing) and needs an account API key
(Settings → API keys, scopes
questions:ask + questions:read). Tasker parses JSON responses natively —
%http_data.question_id just works.
https://www.iotpush.com/api/v1/questions ·
Headers: Authorization: Bearer iop_live_… and
Content-Type: application/json
{ "topic": "demo-alerts", "kind": "confirm", "timeout_s": 300,
"question": "Tasker wants to run the night routine. OK?" }%qid → %http_data.question_idhttps://www.iotpush.com/api/v1/questions/%qid/wait?timeout=25
· same Authorization header · Timeout (in the action settings): 35 seconds.%http_data.status ~ pending → Goto step 4
Loop until someone answers. The question expires server-side after 5 minutes,
so the loop always terminates.%http_data.answer.action_id ~ approve → do the thing
Else stop. Branch on action_id, not the label — labels can be
reworded, ids can't.Same shape, friendlier editor: Action → HTTP Request → POST, same URL, same JSON body. MacroDroid's location / wifi / bluetooth triggers make the zero-tap templates ("Left the Office", "Parked") one macro each.
These surfaces work today with the iotpush you already have. Native Android actions — a widget pack in the iotpush app itself, and App Functions so Gemini can ask your topics questions — are on the roadmap, and everything on this page keeps working when they land.