- A templated message
- An inline message
Creating a Templated Notification
To create your first notification, head to the asset manager and create a notification from thenew button. Select Message Template, and follow the prompt to name your notification.
Configure Delivery Channels
After creating your message template, you will need to add the delivery channels you want to use with your template. For now, we’ll use anemail channel and select SendGrid as the provider.
1
Add a Delivery Channel
After creating your message template, select a delivery channel and choose a provider, or you can directly select a standalone provider.
2
Go Back to your Channel
After selecting your delivery channel, you can begin editing your template by selecting the newly added channel on the left side of the page.

Select your channel provider
Delivery Routing Strategy
By default, message templates in the Courier designer will be configured to use thebest of routing strategy. This means that if your message template has multiple delivery channels, Courier will send to the first channel in the list and fallback on the following channels if the send request encounters a profile error. Below you can find a brief breakdown of the different routing strategies:
| Strategy | Routing Description | API Definition |
|---|---|---|
| Best of | Courier will attempt to send to the first channel configured in the message template. Any subsequent channels will be used if the request encounters an INCOMPLETE_PROFILE error, and continue down the list until all options have been exhausted. | single |
| Always send to | Courier will send to all configured channels in the message template. | all |
Create Your Notification Content
Now that you have selected a channel and provider, you can begin creating content to your notification using content blocks. If you’re hitting writer’s block, Courier offers an AI content assistant that can help you draft a message based on the prompt you provide. For this example, we’ll create a message using some text blocks, image blocks, and CTA buttons. Once you’re happy with the content in your email channel, you can create another channel and repurpose the blocks you’ve already created from the Content Library. Courier dynamically adjusts content blocks to match every channel’s technical specifications. In this case, theSMS channel has created a URL since buttons cannot be rendered for SMS messages.
Preparing a Test Event to Configure Data and Recipients
As a developer-focused product, Courier uses JSON-formatted data payloads to programmatically insert related customer data into your templates such as names, dates, email, phone numbers and other user-specific information that pertains to the recipient. The following breakdown highlights two important aspects of a Courier send request:| JSON Object | Description | API Definition |
|---|---|---|
| Data | The data object in the send request stores all data about a recipient. This can come from an event like Segment Track, which includes information like date, flight time, name, etc. Placeholder variables inside a message template will reference the key-value pairs in this field. If the template has {name}, then Courier will look for the equivalent key value in the test event "name": "John Doe" and populate the template accordingly. | data |
| Profile | The profile object contains all your recipient information. This can be an email, phone_number, and not limited to other custom fields. Profile objects can also include names, but if you want to reference data from the profile in your message template, you must format the path like {profile.name}. | to |
Preview and Publish your Notification
After editing your template, you can preview your notification from thepreview tab to see how it will render in different email clients. Here you can also see how dynamic variables will render from the test data in your test events.
To make your changes live and ready to use, you need to Publish your changes from the top right corner. Now it’s time to send.
Sending your Templated Notification
Now that you’re happy with your message template, how it looks, and you’ve published it, it’s time to send. We’ll cover 2 ways you can send your notification:- Through the
sendtab in the message template - Through an API platform like Postman or Insomnia
Sending from the Designer
Once your template is ready to send, you can head to thesend tab and click on the greenSend Test button. Courier will send the notification to the email you provided in the previous test event. You can check the logs to see the status of the send.
Sending from an API Platform
Using an API platform to test your notification sends requires the following to make a successful send:- An API endpoint we will be making the request to.
- Your message template ID. This is an alphanumerical ID in all caps.
- Your Courier API key from the environment you’re sending from.
- A configured JSON body consisting of at least a
profile.
https://api.courier.com/send endpoint to send messages. Copy this and paste in your API platform editor.
Your message template ID can be found in the main template settings by clicking on the cog at the top right. Additionally, you can copy your environment API key here and use it in the header of your API request.
Use the example JSON body below and paste it to your API platform editor, replacing the template, and email fields with your own:
Remember, the
to object is the same as profile.