#[non_exhaustive]pub struct Alert {
pub at_type: String,
pub trigger: AlertTrigger,
pub acknowledged: Option<UTCDate>,
pub related_to: Option<BTreeMap<String, Relation>>,
pub action: Option<String>,
pub extra: Map<String, Value>,
}Expand description
An alert to be shown or emailed before or after an event (RFC 8984 §4.5.2).
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.at_type: StringObject type discriminator; always "Alert" on the wire.
Deserialize is liberal: if @type is absent (spec-violating
vendor input), this field defaults to "Alert" rather than
failing the whole parent object’s deserialize. Serialize always
emits the field. See bd:JMAP-ky8g.10.
trigger: AlertTriggerWhen to trigger the alert.
acknowledged: Option<UTCDate>UTC date-time when the user acknowledged this alert, or null.
Related alerts (e.g. for snooze chains); keys are alert ids.
action: Option<String>How to present the alert: "display" or "email" (default "display").
extra: Map<String, Value>Catch-all for vendor / site / private extension fields not covered by the typed fields above. Preserves unknown fields across deserialize/serialize round-trip per workspace extras-preservation policy (see workspace AGENTS.md).