MojarMojar
Workflows

Workflows overview

Automate multi-step processes by connecting trigger, AI, integration, and logic nodes on a visual canvas.

Workflows let you build automated processes that run without manual intervention. You connect nodes on a visual canvas — each node does one thing — and the engine executes them in sequence (or in parallel branches) when the workflow is triggered.

Every workflow belongs to an agent. The agent's knowledge base, model settings, and connected credentials are all available to nodes inside the workflow.

When to use workflows

Use a workflow when you need to:

  • Respond to an incoming webhook, a schedule, or a chat message with a sequence of AI and integration steps.
  • Route work differently based on AI classification or data conditions.
  • Create tickets, send messages, or call external APIs as part of an automated process.
  • Insert a human approval or input gate before a sensitive action proceeds.

For a single conversational agent that answers questions from a knowledge base, you do not need a workflow — the chat interface handles that directly.

Node categories

The node palette (left panel in the editor) groups nodes into these categories. Use the search field to find a node by name or keyword.

Mojar AI

A single Mojar AI node that lets you configure any provider and tool combination. This is the universal starting point for AI steps not covered by the more specific AI nodes below.

Triggers

Every workflow starts with exactly one trigger node. Available triggers:

NodeDescription
Manual TriggerStart the workflow manually from the editor, or via an API call.
Webhook TriggerStart when an incoming HTTP request arrives at the generated webhook URL. Supports POST and configurable authentication.
Schedule TriggerStart on a cron schedule with a configurable timezone. Default expression runs on weekdays at 09:00 UTC.
Event TriggerStart when a specific in-platform event occurs.

AI / LLM

Nodes that use the agent's language model to process data:

NodeDescription
AI RespondGenerate a natural-language response from the agent's LLM.
AI ClassifyClassify input into predefined categories; each category becomes a separate output handle for branching.
AI ExtractPull structured data fields out of unstructured text.
AI SummarizeCondense text with a configurable style and maximum length.
AI GenerateGenerate content from a custom prompt template.
Knowledge Base QueryRun a semantic search against the agent's knowledge base via the RAG pipeline and return the top matching document chunks.

Logic & Control

Nodes for controlling flow without calling an AI or external service:

NodeDescription
ConditionBranch on true/false based on one or more conditions (and/or).
SwitchRoute to one of several named paths based on a variable value.
LoopIterate over a collection; exposes a Loop Body handle and a Done handle.
DelayPause execution for a fixed or variable duration.
Set VariableAssign or transform workflow variables.
Custom CodeExecute a JavaScript snippet; the return value is stored in an output variable.

Integrations

Nodes that communicate with external services. Most require connector credentials — see Connectors for per-service setup guides.

NodeService
Send EmailGmail
Send SMSTwilio
Send WhatsAppTwilio or Meta Business API
Slack MessageSlack
Telegram MessageTelegram Bot API
Teams MessageMicrosoft Teams
Create TicketZendesk or HelpScout
CRM ActionHubSpot (create/update/search contacts and deals)
HTTP RequestAny REST API or webhook endpoint
Google Sheets: CreateGoogle Sheets
Google Sheets: AppendGoogle Sheets
Google Sheets: UpdateGoogle Sheets
MQTT PublishMQTT broker (IoT / Unified Namespace)
MQTT SubscribeMQTT broker (IoT / Unified Namespace)
SAP / ERP QuerySAP OData Gateway

Human-in-the-Loop

Nodes that pause execution until a person acts:

NodeDescription
Human ApprovalPause and wait for an approver to accept or reject the proposed action. Exposes Approved and Rejected output handles. Configurable expiry; can auto-approve after timeout.
Escalate to HumanHand off the current task to a human operator via an in-app notification.
Human InputRequest a text (or other typed) response from a person before the workflow continues.

Utility

Structural nodes that help organise the canvas:

NodeDescription
NoteA non-executing sticky note for documentation.
EndExplicitly terminate a branch.
Call AgentInvoke another Mojar agent and use its response as a variable.
Sub-WorkflowEmbed another workflow as a reusable sub-process.

Variables and {{variable}} syntax

Nodes store their output in named variables (e.g. ai_response, http_response). Use {{variable_name}} inside any text field to reference a prior node's output. The Set Variable node lets you create or transform variables explicitly.

Saving and publishing

The editor auto-saves the canvas 3 seconds after each change. You can also press Ctrl + S (or Cmd + S on Mac) to save immediately. A yellow Unsaved badge in the toolbar indicates pending changes.

Saving preserves your draft. Click Publish to snapshot the current canvas as a live version — only published workflows run on triggers.


On this page