How Courier Works
Courier combines APIs, infrastructure, and UI tools to power every stage of the notification lifecycle:- Send multichannel messages through one API that manages routing, failover, and retries.
- Power in-app notification centers with Courier Inbox for web and mobile.
- Design notifications visually in the Designer, programmatically with Elemental, or embed a design experience in your product with Courier Create.
- Automate workflows with time-based or event-driven triggers using the Automation Platform.
- Manage user preferences with a hosted preferences center and Preferences API.
Understand Courier
How does sending work?
Your app calls the Send API. Courier routes to the right channels, renders templates, handles retries and failover, and delivers across email, SMS, push, chat, and in-app.
What are notification templates?
Templates define what your notifications look like. Build them visually in the Designer, define them in code with Elemental JSON, or pass content directly through the API.
How do user preferences work?
Users control which channels and categories they receive. You configure topics and defaults; Courier enforces opt-outs automatically at send time.
What is Courier Inbox?
A real-time in-app notification center you drop into your product. Web and mobile SDKs with read state, archiving, and per-user history, all on the same delivery system as your other channels.
How do automations work?
Orchestrate multi-step notification workflows with triggers, delays, conditions, and branching. Power digests, reminders, and onboarding sequences without managing backend logic.
What are tenants?
Organize users by customer or organization. Each tenant can have its own branding, preferences, and metadata for B2B notification scenarios.
Start Building
Send your first notification
Install the SDK, grab your API key, and send a message in under 5 minutes. Includes curl, Node, Python, Ruby, and Go examples.
Design a notification template
Create a template in the Designer, add content blocks, preview, publish, and send a test message.
Add an in-app inbox
Drop the Inbox component into your web or mobile app and start delivering in-app notifications.
Set up user preferences
Deploy a hosted preference page so users can control their notification channels and topics.
Configure multi-channel routing
Set channel priority and fallback rules so messages reach users on the right channel.
Browse all tutorials
Step-by-step guides for sending, content, automations, inbox, and preferences.