9 Channels, 1 API

Notify

Send notifications via Email, SMS, WhatsApp, Telegram, Slack, and more -- from a single HTTP endpoint.

# Send a Telegram notification curl -X POST https://notify.koder.dev/api/v1/send \ -H "Authorization: Bearer $API_KEY" \ -d '{ "channel": "telegram", "recipient": "123456789", "subject": "High Latency Alert", "body": "Latency exceeded 500ms." }' # Response { "delivery_id": "d4e1c23...", "status": "queued", "channel": "telegram" }

Simple API

One POST request delivers to any channel. No SDK needed.

# Send a Telegram notification curl -X POST https://notify.koder.dev/api/v1/send \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $API_KEY" \ -d '{ "channel": "telegram", "recipient": "123456789", "subject": "High Latency Alert", "body": "Latency exceeded 500ms for 5 min." }'

9 Channels Supported

Enable only the channels you need. Each one is independently configurable.

Email
SMTP (any provider)
💬
SMS
Twilio, Vonage
📲
WhatsApp
Meta Business API
Telegram
Bot API
🗨
Slack
Bot API / Webhook
🗪
Google Chat
Webhook
👥
MS Teams
Webhook
🔗
Webhook
Generic HTTP POST
🔔
Push
Firebase (FCM)

Built for Production

Everything you need for reliable notification delivery at scale.

Async Delivery Queue

Worker pool with configurable concurrency. Notifications are queued and delivered in parallel without blocking the API response.

Retry with Backoff

Failed deliveries are retried automatically with exponential backoff (5s to 5m). Configurable max retries per channel.

Delivery Log

Full audit trail in SQLite. Track every notification: who, what, when, which channel, delivery status, and error details.

Rate Limiting

Per-channel rate limits to prevent abuse and stay within provider quotas. Configurable per-minute and per-hour limits.

Message Templates

Reusable templates with variable substitution. Define once, use across all channels with consistent formatting.

User Preferences

Users choose which channels they want notifications on. Per-user, per-channel opt-in/opt-out with address management.

How We Compare

Koder Notify vs. popular notification services.

FeatureKoder NotifyTwilio NotifyAWS SNSOneSignalNovu
Channels (single API) 9~ 3~ 4~ 5 7
Self-hosted
WhatsApp support~
Open source MIT~
No per-message pricing~ free tier
Delivery audit log~
Lightweight (<20 MB)N/A (SaaS)N/A (SaaS)N/A (SaaS)
User channel preferences

Koder Ecosystem Integration

Every Koder product sends notifications through koder-notify.

ProductUse Case
koder-observabilityNetwork alerts (latency, packet loss, TTFB, agent offline)
koder-dbDatabase alerting rules (Prometheus alerts, storage warnings)
koder-predictMarket event notifications, position alerts, settlement results
koder-walletTransaction confirmations, security alerts, balance updates

Pricing

No per-message fees. No per-seat charges. Pay only for the tier you need.

Community

Free
For small projects
  • All 9 channels
  • 1,000 messages/day
  • Webhook + email
  • Delivery log (30 days)
  • Community support
Download

Enterprise

Custom
For large-scale operations
  • Unlimited everything
  • HA cluster mode
  • Custom integrations
  • Dedicated support
  • SLA guarantee
  • On-premise deployment
Contact Sales

Frequently Asked Questions

Everything you need to know about Koder Notify.

What is Koder Notify?
Koder Notify is a unified notification gateway that provides a single API for sending messages across multiple channels (email, SMS, WhatsApp, Telegram, Slack, etc.). Instead of integrating with each provider separately, you call one endpoint.
Do I need provider accounts?
Yes. Koder Notify routes messages through your own provider accounts. For SMS you need a Twilio/Vonage account, for WhatsApp a Meta Business account, etc. Koder Notify handles the API integration, retry logic, and delivery tracking.
Is it self-hosted?
Yes. Koder Notify runs as a single binary on your own server. All data (delivery logs, templates, preferences) stays in a local SQLite database. There is no external dependency or cloud service required.
What happens if delivery fails?
Failed deliveries are automatically retried with exponential backoff (starting at 5 seconds, up to 5 minutes). The maximum number of retries is configurable per channel. All attempts are logged in the delivery log.
Can users choose their notification channel?
Yes. The user preferences system allows each user to opt-in/opt-out of specific channels and configure their contact addresses per channel. Your application queries preferences before sending.
Is it open source?
Yes. Koder Notify is released under the MIT license. Source code is available on Koder Flow. You can inspect, modify, and deploy it freely.
How does rate limiting work?
Rate limits are configured per channel with max-per-minute and max-per-hour settings. This prevents exceeding provider quotas and protects against accidental notification storms. Messages that exceed the rate limit are queued and delivered when capacity is available.

Get Started

Download the latest release and start sending notifications in minutes.

Download Latest Release