Process

A process is a stateful instantiation of a scenario. Specific users are assigned as the defined actors. At any moment you are at one particular state in the process. From that state, an actor can perform an action to progress to the next state.

A process is a deterministic projection, generated by processing events with the update instructions and state transitions.

Schema

https://schemas.letsflow.io/v1.0/process

Properties

id

UUID

A unique identifier.

title

string

The title of the process. This is copied from the scenario by default but can be updated at runtime through update instructions.

tags

array of strings

Tags can be used to find or filter processes. The tags are copied from the scenario but can be updated at runtime through update instructions.

Use some_flag as a flag or key:value as a pair.

scenario

scenario

The scenario the process is instantiated from. The scenario can't be modified at runtime.

actors

map of actors

A map of instantiated actors as defined by the actor schemas in the scenario.

vars

map

Instantiated variables as defined in the scenario.

result

any

The result of the process. This is also a variable but can have significant meaning within an application.

current

current state

The current state of the process. This is instantiated from one of the states defined in the scenario.

previous

array of log entries

Each state transition can be recorded in this array for display purposes only. The process itself maintains an exact log of events separately.

next

array of predicted states

The engine will add a next property to the process when requesting a prediction.

events

List of events

For every action performed and every timeout, an event is added to the event list. The first event is always an instantiate event.

Additional properties

It's not possible to add custom properties to a process. You should be able to accomplish what you require using tags and variables.

Last updated

Was this helpful?