User profiles store the contact details and attributes Courier needs to deliver notifications. Instead of passing an email address or phone number with every send call, you create a profile once and send to the user by ID. This tutorial covers creating profiles, updating them with new data, storing push tokens, and using profile data in your notifications.Documentation Index
Fetch the complete documentation index at: https://www.courier.com/docs/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
- A Courier account with at least one configured provider
- Your Courier API key (found in Settings > API Keys)
Create a User Profile
The Profiles API usesPOST /profiles/:user_id to create or merge data into a profile. If the profile already exists, the supplied values are merged with the existing profile.
Create a profile with contact details
user_id in the URL path (user_123) is the unique identifier you’ll use to send notifications to this user. You choose this ID; it can be any string.Verify the profile
Update a Profile
There are two update strategies depending on whether you want to merge or fully replace the profile data.Merge Update (POST)
POST /profiles/:user_id merges the supplied values into the existing profile. Existing fields that aren’t included in the request are preserved.
email, phone_number, name, and other existing fields are unchanged; only custom.plan is updated.
Full Replace (PUT)
PUT /profiles/:user_id replaces the entire profile. Any fields not included in the request are removed.
Send to a Profile
Once a profile exists, send notifications by user ID instead of specifying contact details inline.Inline Profile Overrides
You can override or supplement profile data at send time. The inline values are merged with the stored profile for that specific send without modifying the stored profile.Store Channel Tokens
Push notification providers (FCM, APNS) require device tokens to deliver messages. Store tokens using the Device Tokens API or let Courier SDKs handle it automatically.Via API
Via SDK (Recommended)
Courier’s mobile SDKs handle token registration, refresh, and cleanup automatically:Use Profile Data in Templates
Any field stored in a user’s profile is available as a template variable. In your notification templates, reference profile fields with theprofile prefix.
For example, if a profile has:
{{profile.name}} and {{profile.custom.company}} in your template content. You can also use {{name}} as a shorthand for top-level profile fields.
Delete a Profile
What’s Next
User Management
Platform reference for user profiles, CSV import, and push tokens
Profiles API Reference
Full API documentation for profile CRUD operations
Send Your First Message
Get started with the Courier Send API
Configure Preferences
Let users control which notifications they receive