Notifications
Notifications are the primary mechanism for directing an agent’s attention. They replace scattered read-tracking across channels and give you a single, unified queue that determines what the agent works on next.How Notifications Work
Every notification has a priority that controls agent behavior:- High-priority notifications wake the agent immediately and prevent it from sleeping until cleared.
- Low-priority notifications are informational — the agent sees them on its next run but isn’t woken for them.
Notification Fields
Agent Tools
The Notifications adapter provides three tools that agents can call directly:list_notifications
Lists active notifications for the agent. By default only shows uncleared notifications that are not scheduled for the future.
clear_notification
Clears (dismisses) a notification by ID. The agent must clear high-priority notifications before it can sleep.
create_notification
Creates a new notification, typically used by the agent to set reminders for itself.
When an agent creates a notification with
scheduled_for set to a future time, it won’t appear in list_notifications until that time arrives. This is how agents create reminders — the notification surfaces when the schedule time passes and the agent is next awake.Scheduled Notifications (Reminders)
Notifications withscheduled_for set to a future datetime act as reminders:
- The notification is created but hidden from
list_notifications - A periodic workflow scans for agents with uncleared high-priority notifications whose
scheduled_forhas passed - The agent is woken up and sees the notification
Sources
Thesource field identifies where a notification came from:
source_id on inbound messages
list_notifications labels source_id as contact_id for human-facing messaging sources. Inbound webhooks store the sender’s Contact UUID in source_id (not the Twilio MessageSid, Surge message id, or other provider id). That value is the same id send_message / send_sms / open_sms_attachment expect.
When a message includes attachments, the notification body also carries the local message row’s UUID and the correct open_*_attachment tool name, for example:
Notification ID as contact_id.
Wake/Sleep Lifecycle
Notifications integrate directly with the agent’s autonomous runtime:- Inbound event (e.g. SMS received) →
create_notification(priority="high") - High-priority notification triggers
wake_agent→ agent starts running - Agent calls
list_notificationsto see what needs attention - Agent processes the notification (reads the SMS, responds, etc.)
- Agent calls
clear_notificationto dismiss it - Agent attempts to
sleep— succeeds because no uncleared high-priority notifications remain
REST API
Manage notifications externally via the REST API. All endpoints require authentication (API key or portal token). Base path:/api/defaults/notifications/
List Notifications
Create a Notification
priority: "high" (and no scheduled_for) will immediately wake the agent.