Documentation
Quick Start
Send your first notification in seconds. No signup required for public topics.
# Just send a POST request
curl -d "Hello from my Pi!" iotpush.com/api/push/my-topic
API Reference
Send Notification
POST /api/push/{topic}Request Body
Plain text or JSON message
Optional Headers
| Header | Description | Example |
|---|---|---|
| Title | Notification title | Alert! |
| Priority | low, normal, high, urgent | high |
| Tags | Comma-separated tags | warning,sensor |
| Click | URL to open on click | https://... |
Examples
Simple message:
curl -d "Sensor triggered!" iotpush.com/api/push/my-topic
With title and priority:
curl -H "Title: Alert" -H "Priority: high" \
-d "Temperature exceeded 80°C" \
iotpush.com/api/push/my-topic
JSON body:
curl -H "Content-Type: application/json" \
-d ''{"title":"Alert","message":"Temp high!","priority":"high"}'' \
iotpush.com/api/push/my-topic
Language Examples
Python
import requests
requests.post(
"https://iotpush.com/api/push/my-topic",
data="Hello from Python!",
headers={"Title": "Python Alert"}
)JavaScript / Node.js
fetch("https://iotpush.com/api/push/my-topic", {
method: "POST",
body: "Hello from JS!",
headers: { "Title": "JS Alert" }
});Arduino / ESP32
#include <HTTPClient.h>
HTTPClient http;
http.begin("https://iotpush.com/api/push/my-topic");
http.addHeader("Title", "ESP32 Alert");
http.POST("Sensor value: " + String(sensorValue));
http.end();Integrations
iotpush works with any automation platform that can make HTTP requests — n8n, Make, Zapier, Home Assistant, and more.
Quick cURL example with JSON body and auth:
curl -X POST https://www.iotpush.com/api/push/my-topic \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"title":"Alert","message":"Something happened!","priority":"high"}'
See our full integration guides for step-by-step setup with n8n, Make, Zapier, Home Assistant, and more.
Pushover Compatibility
iotpush provides a Pushover-compatible API endpoint. Apps and services with built-in Pushover support can use iotpush as a drop-in replacement.
Endpoint
POST https://iotpush.com/api/1/messages.jsonor: POST https://iotpush.com/api/pushover
Parameter Mapping
| Pushover Param | iotpush Mapping |
|---|---|
| token | Your iotpush topic API key |
| user | Topic name (optional if token is unique) |
| message | Notification message |
| title | Notification title |
| url | Click URL |
| priority | -2 to 2 → lowest/low/normal/high/urgent |
Example (curl)
curl -s \
--form-string "token=YOUR_TOPIC_API_KEY" \
--form-string "user=my-topic" \
--form-string "message=Hello from Pushover-compatible API!" \
https://iotpush.com/api/1/messages.json
Migration from Pushover
For apps with Pushover integration, simply change the API URL from api.pushover.net to iotpush.com and use your iotpush topic API key as the token.
Rate Limits
| Plan | Messages/Month | Topics |
|---|---|---|
| Free | 1,000 | 3 |
| Pro ($9/mo) | 10,000 | 10 |
| Business ($29/mo) | 100,000 | Unlimited |