πŸ“„ Concepts

What is NotificationAPI exactly?

It is a managed service that removes a lot of your notification-related tasks:

  • Send Emails, SMS, in-app, and more in a single API without third-party services
  • Handle server-side notification logic: per-user notification preferences, throttling, etc.
  • Handle client-side logic: live notifications (websockets), permissions, in-app, etc.
  • Manage and host notification templates, user preferences, tokens
  • Handle compliance (Google Bulk Sender, 10DLC, etc.)

Detailed Flow by Channel

Each notification channel has its own unique flow and requirements. Select a channel below to see exactly how NotificationAPI handles the complexity for you:

sequenceDiagram participant App as Your App participant API as NotificationAPI participant Channels as All Channels participant User as End User App->>API: Single API call Note right of App: One request, all channels API->>API: Process & Route Note right of API: Templates, preferences, compliance API->>Channels: Deliver simultaneously Note right of Channels: Email, SMS, Push, In-App Channels->>User: Multi-channel delivery User->>API: Engagement tracking API->>App: Analytics & webhooks
πŸ” Click to enlarge diagram

Key Benefits:

  • One API call reaches users across all channels
  • Automatic routing based on user preferences
  • Built-in compliance and delivery optimization
  • Unified tracking and analytics
sequenceDiagram participant App as Your App participant API as NotificationAPI participant Email as Email Infrastructure participant User as End User App->>API: Send email request API->>API: Apply template & preferences alt User opted in API->>Email: Queue for delivery Note right of Email: DKIM, SPF, reputation Email->>User: Email delivered User->>API: Opens/clicks (tracked) else User opted out API->>API: Respect preferences end API->>App: Delivery status
πŸ” Click to enlarge diagram

What we handle for you:

  • Email deliverability (DKIM signing, reputation management)
  • Template processing (HTML/text generation, responsive design)
  • User preferences (opt-in/opt-out, frequency controls)
  • Compliance (CAN-SPAM, GDPR requirements)
sequenceDiagram participant App as Your App participant API as NotificationAPI participant SMS as SMS Network participant User as End User App->>API: Send SMS request API->>API: Validate & check compliance Note right of API: 10DLC, time zones, opt-ins alt Compliant & opted in API->>SMS: Route to carrier Note right of SMS: Twilio, AWS, direct routes SMS->>User: SMS delivered User->>SMS: Reply (optional) SMS->>API: Handle STOP/START else Non-compliant API->>API: Block & log end API->>App: Delivery receipt
πŸ” Click to enlarge diagram

What we handle for you:

  • 10DLC A2P registration (required for US business messaging)
  • Carrier relationships (Twilio, AWS SNS, direct routes)
  • Compliance checking (time zones, content filtering)
  • Auto-replies (STOP/START keyword handling)
sequenceDiagram participant App as Your App participant API as NotificationAPI participant SDK as React SDK participant User as End User App->>API: Send in-app notification API->>API: Store & process par Real-time API->>SDK: WebSocket push SDK->>User: Instant notification and Fallback SDK->>API: Poll for updates API->>SDK: Return notifications end User->>SDK: View notification center SDK->>API: Fetch notification list API->>SDK: Return formatted list SDK->>User: Display notifications User->>SDK: Mark as read SDK->>API: Update status
πŸ” Click to enlarge diagram

What we handle for you:

  • Real-time delivery (WebSocket infrastructure)
  • Persistent storage (notification history, read status)
  • UI components (notification bell, feed, preferences)
  • Batching logic (grouping related notifications)
sequenceDiagram participant App as Your App participant API as NotificationAPI participant FCM as FCM/APNS participant Device as Mobile Device participant User as End User App->>API: Send push notification API->>API: Look up device tokens Note right of API: iOS & Android devices loop For each device API->>FCM: Send to FCM/APNS FCM->>Device: Push to device Device->>User: Display notification opt User taps User->>Device: Open app Device->>API: Track engagement end end API->>App: Delivery stats
πŸ” Click to enlarge diagram

What we handle for you:

  • Token management (registration, cleanup, validation)
  • Platform routing (iOS via APNS, Android via FCM)
  • Certificate handling (Apple certificates, Firebase keys)
  • Delivery optimization (retry logic, best practices)
sequenceDiagram participant App as Your App participant API as NotificationAPI participant Browser as Web Browser participant User as End User Note over User,Browser: One-time setup User->>Browser: Grant push permission Browser->>API: Register subscription Note over App,User: Sending notifications App->>API: Send web push API->>Browser: Send via Push API Browser->>User: Display notification opt User clicks User->>Browser: Click notification Browser->>API: Track click end API->>App: Engagement data
πŸ” Click to enlarge diagram

What we handle for you:

  • Service worker setup and management
  • Browser compatibility (Chrome, Firefox, Safari)
  • Subscription management (registration, cleanup)
  • Push API integration (FCM, Mozilla, WebKit)
sequenceDiagram participant App as Your App participant API as NotificationAPI participant Voice as Voice Network participant User as End User App->>API: Send voice notification API->>API: Text-to-speech conversion API->>API: Check compliance Note right of API: Time zones, do-not-call alt Compliant API->>Voice: Initiate call Voice->>User: Ring phone alt User answers User->>Voice: Answer Voice->>User: Play message opt Interactive User->>Voice: Press keys Voice->>API: Capture input end else No answer Voice->>API: Log attempt end end API->>App: Call results
πŸ” Click to enlarge diagram

What we handle for you:

  • Text-to-speech (natural voice synthesis)
  • Telecom routing (SIP, carrier selection)
  • Compliance (do-not-call lists, time restrictions)
  • Interactive responses (keypress capture, speech recognition)

Simple API, Complex Infrastructure

Despite all this behind-the-scenes complexity, your integration remains simple:

notificationapi.send({
  type: 'welcome',
  to: {
    email: 'user@example.com',
    number: '+15005550006'
  },
  parameters: {
    name: 'John Doe',
    message: 'Hello world!'
  }
});

This single API call triggers all the sophisticated flows shown above, automatically handling templating, user preferences, compliance, delivery optimization, and tracking.

Step-by-step: Send your first notification

1. Design your notification template

In the NotificationAPI dashboard:

  • Create a new notification template
  • Choose your channels (email, SMS, in-app, etc.)
  • Design your content using our visual editors
  • Set up user preferences and delivery options

2. Install the SDK

Choose your preferred SDK and install it in your project:

# Node.js
npm install @notificationapi/node

# Python
pip install notificationapi

# PHP
composer require notificationapi/notificationapi

# Or use our REST API directly

3. Configure and send

Initialize the client with your credentials and send your first notification:

import NotificationAPI from '@notificationapi/node';

const notificationapi = new NotificationAPI({
  clientId: 'YOUR_CLIENT_ID',
  clientSecret: 'YOUR_CLIENT_SECRET'
});

// Send the notification
await notificationapi.send({
  type: 'welcome', // matches your template ID
  to: {
    email: 'user@example.com'
  }
});

4. Add in-app notifications (optional)

For web applications, add our React component to display in-app notifications:

import {
  NotificationAPIProvider,
  NotificationPopup
} from '@notificationapi/react';

function App() {
  return (
    <NotificationAPIProvider userId="user-123" clientId="YOUR_CLIENT_ID">
      <NotificationPopup />
      {/* Your app content */}
    </NotificationAPIProvider>
  );
}

5. Monitor and optimize

Use the dashboard to:

  • Track delivery rates and engagement
  • View detailed logs for debugging
  • Analyze user preferences and behavior
  • Set up webhooks for real-time events
INFO

No infrastructure required: NotificationAPI handles all the complexity shown in the diagrams above, so you can focus on your product instead of building notification infrastructure.

Perfect for these use cases

NotificationAPI works especially well for product notifications like:

  • User onboarding (welcome sequences, tutorials)
  • Activity alerts (comments, mentions, updates)
  • System notifications (security alerts, maintenance)
  • Workflow updates (approvals, status changes)
  • Transaction confirmations (payments, orders)

Next steps

Ready to implement notifications in your app?

  1. Send your first notification β†’
  2. Add in-app notifications β†’
  3. Set up user preferences β†’
TIP

Start with our free plan - no credit card required. You get 100 free notifications per month to test everything out.