Skip to main content

For Developers

Send a notification in under two minutes. All you need is an API key.
1

Get your API key

Sign up or log in to Courier, then copy your API key from Settings > API Keys.
2

Send a message

One API call sends an email. Use cURL, the CLI, or any of our server SDKs. Replace YOUR_API_KEY with your key and you@example.com with your email address.
The response includes a requestId you can use to track delivery:
3

Verify delivery

Open Message Logs in your dashboard. You should see your message with a timeline showing each stage: accepted, routed, rendered, sent, and delivered.If the message doesn’t appear, double-check that your API key is correct and that you’re viewing the right environment (Test vs Production).
That’s it. One API call, one notification delivered.

For AI Agents

If you’re using an AI coding agent (Claude Code, Cursor, Codex, etc.), set your API key and install your tooling, then send your first message with the CLI or cURL.
1

Set your API key

2

Install your tooling

3

Send your first message

4

Continue with full agent patterns

Use the Agent Quickstart for profile storage, idempotency, inbox delivery, JWT auth, and common anti-patterns.
Courier docs are available as machine-readable indexes for AI agents: llms.txt and llms-full.txt.

Copy for Cursor / Claude

Paste one of these blocks directly into your coding agent. Each block includes setup, key API patterns, error handling, and guardrails.

FAQ

Not necessarily. Courier includes a built-in email provider, so email works out of the box in Test mode. For production email, SMS, push, or chat you’ll need to connect a provider in Integrations. The Inbox and Toast channels also work without any external provider.
Yes. Courier’s Design Studio lets you build notifications visually with drag-and-drop blocks, reusable routing configurations, and version history. Reference templates by ID in your send call. You can also manage templates programmatically via the Templates API.
Add a provider for the channel you want in Integrations, then update the routing object in your send call. To send to multiple channels, set method to "all" and list the channels you want. See How Sending Works for details on routing and fallback behavior.
We have official SDKs for Node.js, Python, Ruby, Go, Java, PHP, and C#, plus mobile SDKs for iOS, Android, React Native, and Flutter. See the full list on the SDKs overview. You can also call the REST API directly from any language.

What’s Next

How Sending Works

Understand routing, channels, and the delivery pipeline

Design a Template

Build a reusable notification in Design Studio

Add an In-App Inbox

Embed a real-time notification feed in your app; no provider needed

Build with AI

Connect your AI coding agent to Courier via MCP or CLI