Skip to main content
The alert component (canvas.alert, v1) shows a short notice during a conversation. It renders inline in a side rail (default safe-area-right). Alerts are display-only; the only interaction a backend normally receives is a dismiss. alert has no settings beyond enabled (default true); see Enabling and configuring components:

Component Behavior

The PAL shows an alert for important notices, warnings, or success confirmations; general reading material belongs in the text component.
  • Only one alert shows at a time; a new alert replaces the previous.
Alerts are always user-dismissible. There is no non-dismissible option.

Arguments

The PAL invokes canvas_show_alert: Unknown arguments are rejected (additionalProperties: false).
Example invocation

Interactions

Alerts are lifecycle-only: they never produce submit or skip; allowed types are dismiss, clear, error, and heartbeat. Each reaches the conversation webhook as a canvas.interaction event:
dismiss event
created_at is UTC with microsecond precision and no offset suffix (no trailing Z); don’t parse it as strict RFC 3339.
The properties envelope is identical for every type; only type and value change: For error and heartbeat, value is a free-form object capped at 16 KB serialized; don’t build logic on its shape.
Don’t expect submit or skip from alerts in event funnels; a dismissed alert produces only a dismiss.

Posting Interactions from a Custom Renderer

Custom renderers report the dismiss via the conversation-scoped, public interactions endpoint (no API key while the conversation is active):
The full endpoint contract, including the API-key-authenticated GET for interaction history, is in Canvas interactions.