Table of Contents

Namespace CMS.Automation

Classes

AutomationAction

Base class for automation actions without configurable properties. Extend this class to define a custom automation step that does not require configurable properties.

AutomationAction<TProperties>

Base class for automation actions with configurable step properties. Extend this class to define an automation step with configurable properties.

AutomationCondition

Base class for automation conditions without configurable properties. Extend this class to define a custom automation condition step that branches the process based on the returned value.

AutomationCondition<TProperties>

Base class for automation conditions with configurable step properties. Extend this class to define a custom automation condition step with configurable properties that branches the process based on the returned value.

AutomationEmail

Email to be sent by an automation step.

AutomationProcessContext

Provides context data for automation action execution.

AutomationProcessContextExtensions

Extension methods for AutomationProcessContext that identify which trigger started the process.

AutomationProcessMetadata

Metadata describing the automation process executing the automation action.

AutomationTrigger

Base class for custom automation triggers without typed trigger data. Extend this class to define a custom trigger that can be fired from code via FireTrigger<TTrigger>(AutomationTriggerDispatch, CancellationToken). A single instance is created and reused across all evaluations, so implementations must be stateless.

AutomationTriggerContext

Runtime information about the object a custom automation trigger was fired against, so the developer's gate can decide whether the configured automation process should start.

AutomationTriggerDispatch

Describes a single custom automation trigger dispatch passed to FireTrigger<TTrigger>(AutomationTriggerDispatch, CancellationToken).

AutomationTrigger<TData>

Base class for custom automation triggers with a typed trigger data payload. Extend this class to define a custom trigger that carries strongly-typed data to downstream automation actions when fired via FireTrigger<TTrigger>(AutomationTriggerDispatch, CancellationToken). A single instance is created and reused across all evaluations, so implementations must be stateless.

AutomationTrigger<TData, TProperties>

Base class for custom automation triggers with both typed trigger data and configurable properties. Extend this class to define a custom trigger whose marketer-configured properties are evaluated when the trigger is fired. A single instance is created and reused across all evaluations, so implementations must be stateless.

CustomActivityTriggerData

Trigger data captured when an automation process is started by a custom-activity trigger.

DefaultTriggerIdentifiers

Stable identifiers of the out-of-the-box automation triggers. Producers set the value on the trigger data so the matching TriggerIdentifier ends up in CMS_AutomationState.StateTriggerData.

FormSubmissionTriggerData

Trigger data captured when an automation process is started by a form submission trigger.

RegisterAutomationActionAttribute<TAction>

Registers a custom automation process action.

RegisterAutomationConditionAttribute<TCondition>

Registers a custom automation condition step.

RegisterAutomationTriggerAttribute<TTrigger>

Registers a custom automation trigger.

RegistrationTriggerData

Trigger data captured when an automation process is started by a member-registration activity trigger.

Interfaces

IAutomationAction

Marker interface for automation actions. Used as a constraint on RegisterAutomationActionAttribute<TAction>. Extend AutomationAction or AutomationAction<TProperties> to define a custom automation step.

IAutomationActionProperties

Marker interface for the marketer-configured properties model of a custom automation action.

IAutomationCondition

Marker interface for custom automation conditions. Extend AutomationCondition or AutomationCondition<TProperties> to define a custom automation condition step.

IAutomationConditionProperties

Marker interface for the marketer-configured properties model of a custom automation condition.

IAutomationProcessData

Contract for custom data persisted across automation steps for a custom automation action.

IAutomationStepProperties

Marker interface for the marketer-configured properties model of an automation step. Implementations are plain classes whose public read/write properties are annotated with form component attributes; their values are persisted with the step and round-tripped through the automation builder UI.

IAutomationTrigger

Marker interface for custom automation triggers. Used as a constraint on RegisterAutomationTriggerAttribute<TTrigger>. Extend AutomationTrigger or AutomationTrigger<TData> to define a custom automation trigger.

IAutomationTriggerData

Strongly-typed data captured when a trigger starts an automation process.

IAutomationTriggerDispatcher

Fires custom automation triggers registered via RegisterAutomationTriggerAttribute<TTrigger>.

IAutomationTriggerProperties

Marker interface for the marketer-configured properties model of an automation trigger.