What are workflows
In short: A workflow is “when this happens, do that”: a trigger (what happens) and a series of steps that each go to the next step through an exit. aishaa has one engine: every customer message is read and understood, and then goes through your organisation’s workflows. Which AI agent replies is decided by the Write the reply step in a workflow. Everything a workflow does towards the outside world is a proposal that a colleague approves by default.
Where to find this
Go to Account > Workflows. There you see all workflows of your organisation and the workflows that apply to the whole account.
| What | Who |
|---|---|
| View, create, change, publish, pause and delete an organisation’s workflows | Organisation admin of that organisation |
| Create and change workflows for the whole account | Account admin |
| Handle a question or task from a workflow in To do or on the ticket | Agent |
| View the workflow tab on a ticket | Viewer |
A workflow belongs to one organisation, or to the whole account. In the list, the organisation is shown under the name, or Whole account. A workflow for the whole account responds to events in every organisation of the account.
The Workflows page (menu Account > Workflows) with the columns Name, When, Status, Runs (7 days) and Last run, with the workflow Answering customer messages at the top, labelled Standard.
The model at a glance
A workflow consists of three parts.
| Part | Label in the editor | Technical name | What it is |
|---|---|---|---|
| Trigger | When, with This happens and Only if | trigger with event and conditions |
The event on which the workflow starts, plus the conditions that must be met. Without conditions, every event of that kind starts a run. |
| Steps | The boxes on the canvas | steps |
What happens. Every step is a block from the catalogue, for example agent.reply (Write the reply) or task.create (Task). The first step in the list is where a run starts (badge Starts here). |
| Exits | If {exit} or Then | exits or next |
Where the run goes after a step. A block with exits (for example yes and no, technically true and false) continues per exit. A block without exits continues with Then. If you choose End, the run stops there. |
Every time the trigger fires and the conditions are met, a run starts: one pass through the workflow for that one event. A run remembers what it knows: the fields of the event (trigger) and what every step has produced. Later steps use those values with a reference, such as {{trigger.message.text}} or {{zoek.itemId}}. In the editor you insert such a value with Insert a value.
A workflow contains no code. It is a description in JSON that aishaa carries out. That is why an AI assistant can design a workflow for you and save it as a draft; a person publishes it. See The workflow definition.
One engine: every customer message goes through the workflows
aishaa no longer has a fixed processing chain and no routing per account or organisation. Every customer message follows the same path:
- The message comes in. That is the event A message comes in (
message.received). - aishaa reads and understands the message: the question in one sentence, the language, the topic on your topic map, whether it is urgent and whether a reply is needed.
- Then the event Message read (
message.understood) follows. Every active workflow with that trigger and matching conditions starts a run. - A workflow with the Write the reply step (
agent.reply) lets the AI agent of that step write the reply. That reply is a proposal in the ticket.
So who replies is the workflow’s choice: the AI agent in the Write the reply step. A message that no workflow answers gets no proposal and is simply for a colleague. How to set this up is described in Answering customer messages with workflows.
The standard workflow
Every organisation starts with the workflow Answering customer messages, labelled Standard in the list. That workflow has one step: on Message read an AI agent writes the reply (Write the reply). An organisation gets it automatically with its first customer message, if there is no own workflow yet that writes replies.
- You adjust it like any workflow, for example by sorting first.
- With Back to the standard (in the menu with the three dots in the editor) the standard version becomes the live version again. The AI agent that was in it stays. Your earlier versions remain in the history.
- The Standard label gives no priority. It only says where the workflow comes from.
- If you delete it, you choose to reply only with your own workflows. aishaa then does not create it again.
No priority between workflows
Workflows stand on their own, as in any workflow program. Every workflow whose trigger and conditions are met starts. There is no order, no priority and no workflow that takes over when another does nothing.
That is why you put everything that has to do with answering one message in one workflow: sort first, then the reply per route. If two workflows answer the same message, each writes its own proposal, and the colleague who sends one sees that another workflow already wrote to the customer. Workflows that do something next to the reply (put on a label, assign, prepare a task) can stand on their own.
In the background, on behalf of the workflow
A workflow works in the background. What it does, it does on behalf of the workflow, not on behalf of a colleague. A message that a workflow sends at once goes out under the organisation’s name with the automatic signature. A message or action that a colleague approves first goes out as the colleague’s.
A workflow never responds to what it caused itself. A chain of workflows that start each other stops after a few links (see Following runs and handling errors).
Proposals and people who approve
Everything a workflow does towards the outside world is a proposal to a colleague by default:
| Step | Default | What the colleague does |
|---|---|---|
Write the reply (agent.reply) |
A proposal in the ticket | Reads, adjusts and sends, or rejects. A reply only goes out by itself where a person has allowed the AI agent to send by itself on this topic. |
Message to the customer (message.send) |
A colleague reads and sends it | Reads the message in To do or on the ticket, adjusts it if needed and sends it. |
Forward by e-mail (ticket.forward) |
A colleague checks and sends it | Checks the address and the note and sends it. |
Plugin action (plugin.action) |
Propose to a person | Approves the action in a connected system (possibly with adjusted values) or rejects it. |
Ask a person (human.request) |
Always a question | Chooses one of the answers and fills in fields if needed. The run waits for that. |
Task (task.create) |
Always a task | Completes the task. The run does not wait for it. |
For Message to the customer, Forward by e-mail and Plugin action, you can also choose to carry them out at once when you set up the step (Send at once or Execute at once). That is then your choice as an admin for that step. Start with proposals until you trust the workflow. A step that a colleague has approved unchanged often enough can be switched over by a person on the ticket with Do this itself from now on.
Questions, tasks and proposals from workflows appear in To do and on the ticket. See To do.
Workflows, AI agents, skills and trust
| Concept | What it decides | Where |
|---|---|---|
| AI agent | Who does the work: name, instructions, knowledge, writing style. | Account > Agents |
| Skills | What the AI agent can do: ways of working with the tools that belong to them. An AI agent only gets tools through its skills. | Account > Skills |
| Task in an agent step | What kind of work a step asks for: Write the reply (agent.reply), Choose from a list (agent.choose), Carry out a task (agent.task) or Update cases (case.process). |
In the workflow step, at Task |
| Workflow | When which work happens, in which order, and who looks along. | Account > Workflows |
| Trust | Whether an AI agent may send by itself on a topic. A person switches that on once the proposals have been sent unchanged often enough. | On the AI agent, block Trust |
You cannot delete an AI agent that is in a workflow step. See Trust and letting an agent send by itself and Skills.
What a workflow can start on
| Label in the editor | Technical name | When |
|---|---|---|
| A message comes in | message.received |
A customer or external party sends a message, before aishaa has read it. |
| Message read | message.understood |
aishaa has read and understood a customer message. The moment to sort and reply. |
| An action is handled | action.resolved |
A proposal, question or task has been approved, rejected, answered, done or has expired. |
| Something is linked to a customer | object.linked |
A record from a connected system (an order, a file) now belongs to a customer. |
| A link to a customer is removed | object.unlinked |
That link is gone again. |
| A conversation is transcribed | recording.transcribed |
A recorded conversation with a customer has been transcribed. |
| A conversation starts | ticket.created |
A new conversation has started. |
| A conversation’s status changes | ticket.status_changed |
For example closed, reopened or answered. |
| A conversation is assigned | ticket.assigned |
To a colleague, to another colleague or to nobody. |
| On a schedule | schedule.due |
According to a schedule, such as every Monday at 9:00. |
All fields per event are in Triggers and events. Workflows on a schedule are in Scheduled workflows.
Kinds of steps
At Add step the blocks are grouped by what they do. Every kind has its own colour and icon on the canvas.
| Group in the menu | What the steps do | Examples |
|---|---|---|
| Fetch | Look up data, without changing anything | Customer’s record, Read the record’s details, Fetch from a connected system |
| AI | Let the AI do one task on what the run knows | AI step |
| Work on | Rework a value without AI | Calculate and format |
| Do | Change something: a message, a label, an action in a connected system | Message to the customer, Put on a label, Update conversation, Plugin action, Make a document |
| Decide | Choose the route | Condition, Choose a route, Check the message |
| Repeat | Repeat steps for every item of a list | For each |
| Wait | Wait until a moment | Wait |
| A person | Put work with a colleague | Ask a person, Task |
| Agents | Let an AI agent work | Write the reply, Choose from a list, Carry out a task, Update cases |
The reference per block is in Building blocks of a workflow.
Draft, versions and live
- A new workflow is a Draft. Nothing runs until you publish it.
- Publish checks the draft and makes a new version of it. New runs start on that version. The status becomes Active.
- A run always finishes on the version on which it started, even if you publish a new version in the meantime.
- Pause stops the workflow immediately: no new runs start and running runs wait at their next step until you choose Resume.
How to do this is described in Create, test and publish a workflow.
Ways to build a workflow
- In the editor: add steps on the canvas yourself.
- With the building assistant: in the editor you describe in plain language what the workflow should do. aishaa proposes a new draft; you choose whether to use it.
- From the library: in Account > Library you add a ready-made workflow with Add as draft. The aishaa team manages the library. See The library.
- With an AI assistant through the connection: an AI assistant connected to aishaa (for example the onboarding, or Claude or ChatGPT) can design a workflow and save it as a draft. Publishing is always done by a person in aishaa. See Connect aishaa to Claude or ChatGPT and Workflow recipes.
Good to know
- A workflow has at most 100 steps. A run stops after 2,500 executed steps.
- At most one run starts per workflow per event.
- Organisations that used classification rules, acknowledgements, triage or cases before the switch have them back as workflows: Sorter, Acknowledgement, Routing and Update cases. The description says what could not be put in a workflow. See Answering customer messages with workflows.
- Every publication, pause, resumption and deletion appears in the changes feed. You can lock a workflow, so that nobody changes it by accident. See Lock configuration.
- A workflow can be a tab on the ticket, in which colleagues follow the run live. See The workflow tab on the ticket.
Related
- Create, test and publish a workflow
- Answering customer messages with workflows
- Workflow recipes
- Triggers and events
- Building blocks of a workflow
- Following runs and handling errors
- The workflow tab on the ticket
- The workflow definition (for AI assistants)
- Trust and letting an agent send by itself
- To do
