single or all), an ordered list of channels, and optional provider configuration per channel. Templates reference a strategy by its strategy_id (rs_ prefix), so updating one strategy changes delivery behavior for every template that uses it.
Managing routing strategies in Design Studio
Design Studio routing is in Beta. In Classic Designer, routing is configured separately for each template.
Selecting a routing strategy
Click the routing dropdown in the template editor toolbar to select or create routing strategies.
- Select an existing routing strategy
- Click the pencil icon to edit a strategy
- Click + Add new routing to create a new strategy
Basic scheme
The Basic scheme sends notifications to all enabled channels simultaneously.
Advanced scheme
The Advanced scheme provides cascading fallback logic. Notifications are sent to a required channel first, then fall back to other channels if delivery fails.
| Section | Behavior |
|---|---|
| Always send to | Required channel(s) that always receive the notification |
| If the last above fails, send to | Fallback channels tried in order until one succeeds |
Reusing routing strategies
Unlike the classic designer where routing is configured per-template, routing strategies are saved independently and reusable:- Create a routing strategy once (e.g., “Primary” with email + SMS fallback)
- Apply it to multiple templates from the routing dropdown
- Edit the strategy to update all templates using it
Managing routing strategies with the REST API
You can list, create, retrieve, update, and archive routing strategies programmatically. This is useful for infrastructure-as-code workflows, CI/CD pipelines, and any scenario where you manage templates through the API rather than Design Studio.For full request/response schemas and SDK examples in all languages, see the Routing Strategies API Reference.
List strategies
Returns metadata only (name, tags, timestamps); use the get endpoint for full routing content.cursor value from paging to fetch the next page.
Create a strategy
Provide aname and a routing object at minimum. The routing.method controls delivery behavior:
| Method | Behavior |
|---|---|
single | Try channels in order; stop after the first successful delivery |
all | Send to all listed channels simultaneously |
id (e.g., rs_01abc123). Use this as routing.strategy_id when creating or updating templates.
Get full details
The list endpoint returns metadata only. To see the complete routing, channels, and providers configuration, retrieve a single strategy by ID.cURL
Replace a strategy
PUT /routing-strategies/{id} does a full document replacement. Send the complete desired state; any fields you omit are cleared.
cURL
Archive a strategy
Archiving removes a routing strategy. The strategy must not be linked to any templates; unlink all templates first or the request returns409 Conflict.
cURL
Using a strategy with templates
Every notification template references a routing strategy throughrouting.strategy_id. When you create or replace a template via POST /notifications or PUT /notifications/{id}, include the strategy ID:
What’s Next
Content Blocks
Building notification content in Design Studio
Templates API
Manage templates programmatically
Channel Priority
How Courier selects delivery channels
Routing Strategies API Reference
Full endpoint schemas and SDK examples