llms.txt
# NotifyBridge
> NotifyBridge is a REST API platform and mobile app by Mindeon that sends push notifications to iOS and Android phones from hardware projects — ESP32, ESP8266, Arduino, Raspberry Pi, or anything else that can make an HTTP request. Firmware POSTs a small JSON body to one endpoint and the alert arrives natively on every phone linked to that project. No Firebase project, no APNs certificates, no mobile SDK, and no account signup.
## Quick facts
- **Publisher:** Mindeon (https://www.mindeon.net)
- **Endpoint:** `POST https://notifybridge.mindeon.net/v1/messages/send`
- **Auth:** `api_token` and `user_key`, both sent in the JSON request body
- **Platforms:** iOS and Android (native push)
- **Hardware:** ESP32, ESP8266, Arduino, Raspberry Pi, or any HTTP client
- **Free tier:** 3,000 push notifications per month, no credit card, resets the 1st of each calendar month (UTC), does not roll over
- **Paid:** one-time credit packs of 25,000 / 100,000 / 500,000 pushes, in-app purchase, never expire, stack on top of the free allowance
- **Not required:** Firebase, `google-services.json`, APNs certificates, push SDKs, user accounts
- **Privacy:** no tracking, no ads, no analytics
## Minimal example
```bash
curl -X POST https://notifybridge.mindeon.net/v1/messages/send \
-H "Content-Type: application/json" \
-d '{
"api_token": "YOUR_API_TOKEN",
"user_key": "YOUR_USER_KEY",
"device_code": "MS-ABCD-EF12",
"message": "Temperature exceeded 40°C",
"priority": 1
}'
```
## Request fields
| Field | Required | Description |
| --- | --- | --- |
| `api_token` | yes | Per-project API token (UUID), created in the app |
| `user_key` | yes | Account identifier generated on the device; treat as a secret |
| `message` | yes | Notification body text |
| `device_code` | no | Target one device, format `MS-XXXX-XXXX`. Omit to broadcast to every device claimed under the token |
| `relay_id` | no | Alternative to `device_code`; the internal device ID |
| `device_name` | no | Narrow a broadcast to subscriber devices with this name |
| `priority` | no | `-1` Low, `0` Normal (default), `1` High, `2` Emergency |
Out of credits returns HTTP `429` until credits are added or the monthly allowance resets.
## How it works
1. Open the app in Studio mode — a project and API token are created automatically, with no sign-up.
2. Create a device; the app generates a device code (`MS-XXXX-XXXX`) and a QR code.
3. Program the device code into your firmware and POST to `/v1/messages/send`.
4. The recipient installs NotifyBridge, opens Subscriber mode, and scans the QR code or types the device code to claim it. Alerts for that device then land on their phone.
## Pages
- [Homepage](https://www.mindeon.net/): what NotifyBridge is, the two modes, and common use cases.
- [App](https://www.mindeon.net/app): full product description, code examples, comparison against rolling your own push stack, and FAQ.
- [Developer guide](https://www.mindeon.net/guide): step-by-step walkthrough covering tokens, device codes, claiming, priority levels, testing, and push credits.
- [REST API reference](https://www.mindeon.net/api): endpoint reference with curl, Python, Go, Ruby, Node.js, and PHP examples.
- [Support](https://www.mindeon.net/support): troubleshooting FAQ and contact form.
- [Privacy policy](https://www.mindeon.net/nb-privacy-policy)
## Downloads
- iOS: https://apps.apple.com/us/app/notifybridge/id6761703365
- Android: https://play.google.com/store/apps/details?id=com.devX.notifybridge
## Optional
- [Device code examples](https://github.com/mindeon/NotifyBridge-Devices): ready-to-use ESP32, Arduino, Raspberry Pi, and Python firmware sketches.
- Contact: support@mindeon.com