Workflow

Step by step instructions to reach a goal

A Workflow is a sequence of Jobs executed within sessions to accomplish a desired outcome — like reading a balance, submitting a payment account, and confirming a payment.

While a Workflow can consist of a single Job, this section is especially helpful for orchestrating complex, multi-Job Workflows.

You can imagine a workflow as a conveyor belt.

  • The Connection is putting the box on the conveyor
  • The Session is the belt
  • Each Job is a workstation along the belt, usually accomplished by a robot
  • Interactions are checkpoints along the belt requiring a specific component in the box to open. They are necessary and are tied to some workstations. For example, the robot at the workstation "Submit payment" cannot do its job if the input on the amount to pay isn't already in the box prior to it getting there.
  • The Store is where the box is put for storage when all Jobs have been completed

More on Prerequisites
As explained above, a Prerequisite is a component that needs to be provided for the following workstations to do their Jobs. They could be:

  • System-triggered (e.g. 2Fa, session timeout, etc.)
  • User-driven e.g. selecting an account, approving an amount, etc.)

They are not Jobs themselves, but are tied to them and essential to their functionality.


How it works

At the start, the user will put the raw materials in a box. Most of the time, this will take the form of credentials to be able to connect to a source. The box would then start its travel along the conveyor belt.

The box will reach either a checkpoint or a workstation, where it will stop. A person (user) or a robot (our API) will add to or modify the content of the box. For example, after the connection has been established, a robot will add an access token into the box before sending it on its way. At a checkpoint further down the line, the user would add the amount they wish to commit to a payment, while at another workstation, a robot will effectuate the transaction.

Although there may be forks here and there, the conveyor belt is a straight line in the sense that the box cannot be at two workstations at the same time and will stop at every workstation on its way, in the order you want them, which underlines how important the sequence of Jobs is.

Thankfully, the conveyor belt is as long as the user wants it, and any supported workstation can be placed along the belt, at any point, any number or times.