Skip to content

Workflows

Access from: Processes → Workflows

A workflow is an automation that runs a sequence of steps over your Amazon data, either on demand or on a schedule. It lets you audit products, detect issues and create review tasks without having to do it manually.

How are they created?

Today there are two ways to create a workflow in Epinium:

  • From a template — by cloning one from the Templates library. This is the recommended and fastest path.
  • With VelaxAI — describe in natural language what you want to automate and VelaxAI generates the workflow for you.

There is no option yet to create a workflow from scratch on a blank canvas. Once a workflow exists (cloned from a template or generated by VelaxAI), you can edit it freely: change its trigger, conditions, code, connections, etc.

Workflow, Task or VelaxAI?

  • Workflow — for recurring rules that run periodically (every Monday, every 1st of the month).
  • Task — to review and approve the suggestions that a workflow (or VelaxAI) generates.
  • VelaxAI — for ad-hoc natural-language queries and to create new workflows.

Workflow states

A workflow can be in one of three states:

StateMeaning
PausedConfigured but won't run automatically. This is the default state when you clone a template. You can still execute it manually.
ActiveWill run automatically according to its trigger.
With validation errorsThe editor detected a problem in the graph (disconnected node, empty condition, broken reference). It cannot be activated until you fix it.

The visual editor

The editor shows the workflow as a graph: each box is a node (a step) and each line is a connection (what comes next).

  • Canvas — you can move nodes to reorganize visually. It doesn't affect the logic.
  • Connections — some are simple (a single outgoing path). Others branch: a Condition has Yes and No outputs; a Loop has per item (for each element) and on done (when the iteration finishes).
  • Configure a node — click a node to open a modal where you can edit its parameters: message, URL, condition, variable assignments, etc.
  • Edit a node's code — the Run code node opens an editor where you can read and modify the script (generated by VelaxAI or copied from the template).
  • Automatic validation — the editor highlights errors in red (orphan nodes, broken connections, conditions without an operator). If there are errors, the workflow cannot be activated.

Node types

These are the available nodes:

NodeWhat it does
StartMarks where the flow begins. Every workflow has exactly one start node.
EndMarks an end point. A workflow can have several end nodes (one per branch, for example).
ActionPerforms a concrete task. It has several sub-types (see next table).
ConditionYes / No branch based on a field and an operator (equals, greater than, contains, is empty…).
Multi-branchLike a condition but with multiple outputs depending on the value of a field. Useful when there are more than two cases.
Loop (For each)Iterates over a set of items (products, campaigns, search terms…). See § Loops.
WaitPauses the flow for a duration (seconds, minutes, hours) before continuing.

Sub-types of the Action node:

Sub-typeWhat it does
Log messageWrites a message to the execution log. Useful for debugging or leaving traces.
HTTP requestCalls an external URL (a webhook, an integration with another system). Lets you send data to third-party tools.
Run codeRuns custom logic in a sandboxed environment. It is the engine behind the audit-template checks: it evaluates complex rules over a product and returns a structured result. You can read and edit the script from the editor.
Create taskGenerates or updates a task with one or more items for human review. See § Tasks and human oversight.
Resolve taskMarks as resolved the items of a task whose problems no longer apply (because they have been fixed).

Triggers

A workflow can be launched in two ways:

  • ManualRun button on the workflow page. It opens a modal that shows the estimated maximum cost before you confirm.
  • Scheduled — the workflow runs on its own following a schedule:
    • Cron — standard 5-field cron expression. Examples: every Monday at 9:00, day 1 of each month at 5:00.
    • Interval — every N minutes, hours or days.
    • One-off date — a single run at a specific date/time.
  • Time zone — configurable per workflow (e.g. Europe/Madrid). The trigger is interpreted in this zone, not in UTC.

Estimated cost

Before running a workflow manually, Epinium calculates and shows the maximum cost in credits. This number reflects the worst case (every audited product, every node executed without skips).

Check the cost before activating

If you're about to activate a scheduled workflow that iterates over the whole catalog, run it manually first to see the actual cost. On large catalogs, an accidental daily run can consume more credits than expected.

Loops (For each)

A For each node repeats the steps inside it once per element of a list.

Data source — two modes:

  • Query — pick a collection from your account (products, campaigns, search terms, ad groups, product ads, keywords, clusters) and apply filters to narrow it down. This is the most common mode.
  • Reference — iterate over a list produced by a previous node (for example, the result of an HTTP request).

Per-item error handling — if the evaluation of an item fails, the loop can:

  • Continue (default) — keep processing the rest of the items.
  • Abort — stop the whole loop.

Collect results — optionally, the loop can aggregate what each iteration produces into a final summary. The audit templates use this to count how many products comply vs how many don't, and show the summary in the log.

The loop has two outputs: per item (what runs for each element) and on done (what runs once all are processed).

Variables and context

Workflows use variables to pass data between nodes. The syntax is {{ ... }} and there are three origins:

VariableWhere it comes fromExample
{{trigger.X}}Data sent to the workflow when you run it manually.{{trigger.email}}
{{nodes.NAME.result.X}}Output of a previous node.{{nodes.checkTitle.result.titleTooLong}}
{{forEach.NAME}}The current element when you're inside a loop. By default it's called item, but templates typically use more readable names like product.{{forEach.product}}

Example use in a Condition: evaluate whether the result of a code node says the title is too short:

  • Field: {{nodes.checkTitle.result.titleTooLong}}
  • Operator: is true

Tasks and human oversight

Workflows can generate tasks so a human can review their findings before any change is applied. This is the strong point of the system: automation detects issues, but nothing gets applied until you approve.

Create task node

When a workflow detects a problem, this node creates a task (or adds items to an existing task). Items can include a suggested value (auto-fix) that the user can accept with one click.

  • Idempotency — the workflow uses a unique key per problem. Re-running the workflow doesn't duplicate tasks: it adds new items if new problems appear, and leaves alone the ones that were already there.
  • HITL (Human-in-the-Loop) — when enabled, items are not applied automatically. A human must review and approve them before they reach the product or campaign.

Resolve task node

Marks as resolved the items of a task whose problems no longer apply. Useful when you re-run a workflow and a product that used to fail now complies — the node automatically closes the associated items.

More about the task system in Tasks.

Execution history

Every time a workflow runs, the run is recorded and viewable from its page. The possible states are:

StateMeaning
PendingQueued, hasn't started yet.
RunningIn progress.
CompletedFinished without errors.
FailedA node failed and aborted the flow.
CancelledManually stopped.

Execution inspector

Click a node inside a run to open the inspector and see:

  • Input — the resolved variables the node received.
  • Output — the result it produced.
  • Error — if any, with a readable message.

Debug a failed run

Start with the first node in red. Read its output or its error. Check the input variables — most failures come from a broken reference to a previous node or from empty data where a value was expected.

Creating workflows with VelaxAI

VelaxAI includes a dedicated agent that generates workflows from natural language. The user describes what they want to automate and VelaxAI proposes a complete workflow: nodes, connections, conditions, and, when needed, the code of the Run code nodes.

What you can do:

  • Describe your need in a conversation.
  • Ask for changes to the initial proposal.
  • Manually review and edit the code generated in the Run code nodes.
  • Adjust the trigger (schedule, interval).
  • Activate the workflow once you're happy with it.

Generation in evolution

VelaxAI's generation keeps improving. Very complex workflows may need manual adjustments after the initial generation — VelaxAI will tell you what's missing or what to validate.

More about VelaxAI in VelaxAI.

Best practices and limits

  • Enable HITL when the workflow modifies sensitive data (prices, titles, descriptions, campaign budgets). It gives you a checkpoint before the change reaches Amazon.
  • Check the estimated cost before activating a scheduled workflow, especially if it iterates over the whole catalog. A prior manual run shows you the actual cost.
  • Start paused. Run the workflow manually once to validate the result, and only then enable the cron.
  • Failed runs don't retry on their own. If a run fails, open the history, identify the failing node, fix the root cause and re-run manually.
  • For mass audits, prefer the templates — they are tuned to process large catalogs with batching and per-item error handling.

Epinium Documentation