Workflows
Workflows are the fundamental building block of WunderAutomation. If you have used the IFTTT service you are familiar with their recipes which are pretty much the same as a WunderAutomation workflow. If you have experience using Zapier you could instead think of a Workflow as the same thing as a Zap.
This doc is an overview of all the building blocks that make up a workflow. Have a look at the deeper dive into each type of building block or head over to the reference section for even more details.
Triggers, filters and actions
On a high level, a workflow is a container that contains at least two things to be useful:
A super easy workflow could use the trigger User login which means it will be started every time a user logs in to WordPress. The workflow could then use the action Send plain text email that will send an email every time the workflow runs.
To be more useful, workflows may also contain filters that allow you to put limits on when the action should be executed. In the above example, you may want to limit the email so it's only sent the first time a user logs in to the WordPress site. Or you only want to send the email if the user's email address comes from a certain domain. WunderAutomation uses filters to provide this type of fine-grained control of the workflow.
Steps
Filters and actions are the two types of steps that WunderAutomation handles. Each step is either a filter or an action. You can add as many steps as you want to a workflow and you can rearrange them however you need.
Objects
Workflows also contain objects and parameters that provide even more fine-grained control. An object is a representation of a post, a WooCommerce order, a user or something else that may exist in WordPress. The free version of WunderAutomation has object types that represent the core entities in WordPress, like posts and users. Some triggers add specialized objects that are not represented by a normal WordPress object, like the webhook trigger that adds an object that provides access to the REQUEST and POST parameters that were passed in via the HTTP request.
WunderAutomation Pro adds more object types that represent things like form submissions, MailChimp subscribers, and BuddyPress groups to name a few. But an object can also represent something more temporary like a webhook request.
Runtime context
When a trigger is fired and a workflow is started. WunderAutomation creates a runtime context that holds all the relevant information about the workflow. WunderAutomation automatically adds the relevant objects into the runtime context. For instance, when the User login trigger starts a workflow a user object is added to the context that can be used by filters and actions. If the workflow was started by the WooCommerce Order created Trigger, an order object is added to the workflow context.
Besides the objects added by the trigger, objects can also be added to the runtime context manually or as a side effect of some actions.
Parameters
A parameter is a value or property of an object. A user object, for instance, exposes properties like user.login, user.email and user.logincount. Similarly, a post object exposes post.id and post.content.
Parameters are primarily used within actions as a way to extract values from the objects that are added to the workflow context. When a parameter is used in an Action you are not limited to just extracting the raw data value, [modifiers](parameters.md#modifiers] can be used to access parameters in a very flexible way so you can transform strings to upper or lower case or manipulate a date like adding time to a date value or access values inside objects and arrays.
Delayed execution
When a trigger fires and a workflow gets started, the most common mode of operation is to just execute the steps one by one. But the execution of the workflow steps may also be scheduled to run at a later time. By using the schedule settings on the right-hand side in the workflow editor, it's possible to configure that the steps of the workflow should be executed at a later time:

This enables WunderAutomation to run workflows hours, days or even months after the initial trigger is fired.
Summary
Taken together, triggers, steps in the form of actions, filters, objects, parameters and expressions are the building blocks that make WunderAutomation workflows a very powerful automation tool for WordPress.