Skip to main content

Overview

Events & Automation is CXF’s event-driven engine. A single Event Template unifies two things: what triggers it (its type) and what runs in response — a visual automation flow of nodes connected by edges. When something happens — a contact submits a survey, a record changes, a schedule fires — the template runs its flow. For how this fits the platform, see Core concepts.

Where to find it

Events & Automation live under Orchestration → Events & Automation, built on a visual flow canvas.

Properties

PropertyTypeRequiredDescription
titlestringYesDisplay name.
slugstringYesIdentifier (a–z, 0–9, -).
descriptionstringNoWhat the template is for.
typeenumYescontact, user, scheduled, or system — see Event types.
is_enabledbooleanNoWhether the template is live.
requires_authenticationbooleanConditionalContact type only — when false, anonymous (ghost) contacts can trigger it.
enrichmentobjectNoThe schema of extra data supplied when the template fires.
first_actionobjectNoAn optional synchronous action run before the flow.
nodes / edgesarrayNoThe automation flow.

Trigger types

A template’s type determines how it’s triggered:
TypeTriggered by
ContactA contact action through the public Contact API (supports anonymous/ghost).
UserAn authenticated staff user through the User API.
ScheduledA recurring schedule (RRULE), typically iterating a saved View.
SystemAutomatically, when a record is created, updated, or deleted.
See Event types for the full behavioral comparison.

The automation flow

The response is a flow built from nodes connected by edges, running from a start node to a goal node. Nodes can branch on conditions, wait, run actions (via action plugins), or iterate a View. See Automation nodes.

Enrichment

Each template defines an enrichment schema — the extra fields supplied when the template fires (for example a survey rating, an order total). Enrichment is validated against the schema, and its values are available throughout the flow as enrichment.* in field mappings.

First action

A template can run one first action synchronously before the asynchronous flow — useful when the caller needs an immediate result. Any action plugin can run as the first action.

Enabling & the event endpoint

Enabling a template (it must have at least one goal node) automatically creates a matching event endpoint so the template can be triggered through the API. The auto-created endpoint starts disabled — enable it when you’re ready to expose it.

Runs & history

Each firing creates an automation run that tracks its status (waiting, running, completed, failed, cancelled), the path of nodes taken, and whether it reached its goal. Events can also be stored historically for analytics, and legacy events support moderation (pending / approved / rejected).

Seeds

Seeds support for Event Templates is coming soon.

Governance & permissions

Only a super admin or Master can create, edit, enable, and delete Event Templates.

API access

The User API manages templates, nodes, and edges, and triggers user events; the Contact API triggers contact events. See the API reference.

In depth

Event types

Contact, user, scheduled, and system triggers in detail.

Automation nodes

Flow nodes, field mappings, and the action availability matrix.

Engagement Funnels

Funnel checkpoints and result layers fire event automations.

Endpoints

The event endpoint created when a template is enabled.