// This is a server-side feature, choose any of our server-side SDKs (or the Stream Dashboard) to enable itReminders & Bookmarks
Message reminders let users schedule notifications for specific messages, making it easier to follow up later. When a reminder includes a timestamp, it's like saying "remind me later about this message," and the user who set it will receive a notification at the designated time. If no timestamp is provided, the reminder functions more like a bookmark, allowing the user to save the message for later reference.
Reminders require Push V3 to be enabled - see details here
Enabling Reminders
The Message Reminders feature must be activated at the channel level before it can be used. You have two configuration options: activate it for a single channel using configuration overrides, or enable it globally for all channels of a particular type.
Message reminders allow users to:
- schedule a notification after given amount of time has elapsed
- bookmark a message without specifying a deadline
Limits
- A user cannot have more than 250 reminders scheduled
- A user can only have one reminder created per message
Creating a Message Reminder
You can create a reminder for any message. When creating a reminder, you can specify a reminder time or save it for later without a specific time.
// This feature is not yet available in the Unity SDK.
// Please let us know if you'd like this feature implemented: https://github.com/GetStream/stream-chat-unity/issuesUpdating a Message Reminder
You can update an existing reminder for a message to change the reminder time.
// This feature is not yet available in the Unity SDK.
// Please let us know if you'd like this feature implemented: https://github.com/GetStream/stream-chat-unity/issuesDeleting a Message Reminder
You can delete a reminder for a message when it's no longer needed.
// This feature is not yet available in the Unity SDK.
// Please let us know if you'd like this feature implemented: https://github.com/GetStream/stream-chat-unity/issuesQuerying Message Reminders
The SDK allows you to fetch all reminders of the current user. You can filter, sort, and paginate through all the user's reminders.
// This feature is not yet available in the Unity SDK.
// Please let us know if you'd like this feature implemented: https://github.com/GetStream/stream-chat-unity/issuesFiltering Reminders
You can filter the reminders based on different criteria:
message_id- Filter by the message that the reminder is created on.remind_at- Filter by the reminder time.created_at- Filter by the creation date.channel_cid- Filter by the channel ID.
The most common use case would be to filter by the reminder time. Like filtering overdue reminders, upcoming reminders, or reminders with no due date (saved for later).
// This feature is not yet available in the Unity SDK.
// Please let us know if you'd like this feature implemented: https://github.com/GetStream/stream-chat-unity/issuesPagination
If you have many reminders, you can paginate the results.
// This feature is not yet available in the Unity SDK.
// Please let us know if you'd like this feature implemented: https://github.com/GetStream/stream-chat-unity/issuesEvents
The following WebSocket events are available for message reminders:
reminder.created- Triggered when a reminder is createdreminder.updated- Triggered when a reminder is updatedreminder.deleted- Triggered when a reminder is deletednotification.reminder_due- Triggered when a reminder's due time is reached
When a reminder's due time is reached, the server also sends a push notification to the user. Ensure push notifications are configured in your app.
// This feature is not yet available in the Unity SDK.
// Please let us know if you'd like this feature implemented: https://github.com/GetStream/stream-chat-unity/issuesWebhooks
The same events are available as webhooks to notify your backend systems:
reminder.createdreminder.updatedreminder.deletednotification.reminder_due
These webhook events contain the same payload structure as their WebSocket counterparts. For more information on configuring webhooks, see the Webhooks documentation.