iotpush

n8n community node for iotpush - Multi-channel IoT push notifications with two-way action buttons

Package Information

Released: 2 mo ago
Downloads: 1 weekly / 75 monthly
Latest Version: 1.1.2

Documentation

n8n-nodes-iotpush

n8n community node
npm
license

This is an n8n community node for iotpush — a multi-channel IoT push notification service.

Send real-time push notifications to any device, webhook, or integration channel directly from your n8n workflows.

iotpush · Documentation · n8n Community Nodes

Installation

Follow the n8n community nodes installation guide.

In n8n Desktop / Self-hosted

  1. Go to Settings → Community Nodes
  2. Enter n8n-nodes-iotpush
  3. Click Install

Manual Installation

cd ~/.n8n/nodes
npm install n8n-nodes-iotpush

Then restart n8n.

Configuration

  1. Create an iotpush account at iotpush.com
  2. Create a topic in the iotpush dashboard
  3. Copy your API key from the topic settings (for private topics)
  4. In n8n, add IoTPush API credentials with your API key
    • For public topics, credentials are optional

Operations

Message

Operation Description
Send Push Send a push notification to a topic
Get Messages Retrieve recent messages for a topic

Topic

Operation Description
Get Info Get information about a topic

Usage Examples

Send a Simple Notification

  1. Add the IoTPush node to your workflow
  2. Select Message → Send Push
  3. Enter your Topic name
  4. Enter a Message (e.g., "Server health check passed ✅")
  5. Optionally set Title, Priority, and Tags

Monitor & Alert Pipeline

Connect a Cron trigger → HTTP Request (check your service) → IF (check status) → IoTPush (send alert on failure).

Send with Priority

{
  "topic": "server-alerts",
  "message": "CPU usage above 90%!",
  "title": "🔥 High CPU Alert",
  "priority": "urgent",
  "tags": "server,cpu,alert"
}

Screenshots

Coming soon

Resources

License

MIT © DaSecure Solutions LLC

Two-way notifications (new in 1.1.0)

iotpush notifications can carry action buttons. Combine the IoTPush node with the
IoTPush Trigger node to put a human in the middle of a workflow.

Wiring it up

  1. Add an IoTPush Trigger node. Copy its Production URL.
  2. Add an IoTPush node, operation Send Push.
  3. Paste that URL into the Send Push node's Callback URL field.
  4. Add Action Buttons to the Send Push node, e.g. approve / reject.

When the user taps a button on their phone, iotpush POSTs the result to the trigger and the
workflow continues.

Deploy pipeline ──> IoTPush (Send: "Deploy v2.3 to prod?" [Approve][Reject])
                                            │
                          (user taps on their phone)
                                            │
                    IoTPush Trigger ──> Switch on actionId
                                          ├─ approve ─> deploy
                                          └─ reject  ─> notify team

Trigger output

{
  "event": "action",
  "actionId": "approve",
  "actionLabel": "Approve",
  "reply": null,
  "messageId": "...",
  "receiptId": "...",
  "topicId": "...",
  "device": "iPhone 17 Pro Max",
  "userId": "...",
  "timestamp": "2026-07-30T00:34:25Z",
  "isTest": false,
  "raw": { }
}

Branch on actionId with a Switch node. reply carries free-text when the user replies
instead of tapping a button.

Securing the callback

iotpush does not sign callback deliveries, and an n8n Production webhook URL is publicly
reachable. Use a shared secret:

  • On Send Push, add a Callback Header such as X-Callback-Token with a random value.
  • On IoTPush Trigger, set Shared Secret Header and Shared Secret Value to match.

Requests without the matching header are rejected with 401.

Nodes

Node Type Purpose
IoTPush Action Send a push notification, or read recent messages for a topic
IoTPush Trigger Trigger Start a workflow when a user acts on a notification

Operations

Message → Send Push

Sends to POST /api/push/{topic}. Supports title, priority (low/normal/high/urgent),
tags, click URL, callback URL, and action buttons.

Message → Get Messages

Reads from GET /api/push/{topic}?limit=N. Returns the topic's recent message history.

Removed in 1.1.0: Topic → Get Info. It called GET /api/topic/{topic}, a route that does
not exist and always returned 404.

Discussion