Automation FAQs

What is an Automation?

  • Automations provides a toolset to design and implement complex notification workflows with one Automation API.

  • An Automation is a schema definition that enables the power to easily express complex use cases such as digests, delayed messages, scheduled messages, sending messages to an ad hoc list, and escalation messages.

  • At a high level, an Automation schema is composed of two parts, Context Properties and Steps.

  • Learn more: How to Automate Message Sequences

What steps can I use to build an automation?

  • Steps are the fundamental building blocks of an Automation schema. Automation steps are a set of discrete actions, which are used together to implement complex messaging workflows.

  • There are seven Automation steps that you can use to build your workflow:

    • Cancel - Stop and automation using the provided cancellation token

    • Delay - Delay for a specific time period or until a specific time and date

    • Invoke - trigger another automation template

    • Send - send a template to a user

    • Send List - send a template to list of users (read more about Lists)

    • Fetch Data-

    • Update Profile

  • Learn more: Structuring an automation

How do I build an automation?

Courier automation schema can be defined in two ways:

  1. Ad Hoc Automations via the Automation API.

    • Ad hoc automations are one-off automations that you define and build with the API call.

  2. An automation template built in the Automation Visual Designer

    • Templates are defined once in the Courier UI and can be invoked as needed.

How do I trigger an Automation?

Can I use conditionals in an automation?

  • Yes, for each type of step, you can define conditions that will determine if a step is executed or not by adding an if property.

  • Learn more about Step Conditionals

Can I reference other steps or message status in an automation?

  • Yes! You can reference metadata in an automation step that set in a step above it. You can also reference the message status of send steps.

  • Learn more about Step References

What is Automation Run Context?

  • Run Context refers to a set of special properties, that are used to invoke an automation. Context properties are available to all steps at Step Execution Time (aka runtime).

  • Run Context can be defined as part of an Ad Hoc Automation or passed as a first class object to an Automation Template.

  • Run Context is composed of the following properties:

    • brand

      • type: string

      • description: A unique identifier that represents the brand that should be used for rendering the notification.

    • data

      • type: object

      • description: An object that includes any data you want to pass to a message template or accessor type. The data will populate the corresponding template variables.

    • profile

      • type: object

      • description: an object that includes any key-value pairs required by your chosen Integrations (see our Provider Documentation for the requirements for each Integration.) If profile information is included in the request and that information already exists in the profile for the recipientId, that information will be merged.

    • template

      • type: string

      • description: A unique identifier that can be mapped to an individual Notification. This could be the "Notification ID” on Notification detail pages (see the Notifications page in the Courier app) or a custom string mapped to the event in settings.

    • recipient

      • type: string

      • description: A unique identifier associated with the recipient of the delivered message, which can optionally map to a Courier managed profile.

Did this answer your question?