Workflows
Blocks
Actions
Agent Orchestrator

Agent Orchestrator

The Agent Orchestrator is an AI router. It reads an incoming message, picks one of the routes you define, and sends the workflow down that route's branch. It also extracts useful values from the message (names, dates, quantities, locations) so the next blocks can use them.

One block, many paths: Instead of writing long keyword conditions, describe each route in plain English. The AI reads your descriptions and decides where each message goes.

Key Features

  • AI-Powered Routing: The model picks exactly one route based on your route descriptions
  • One Branch per Route: Every route you add becomes its own outgoing connection on the canvas
  • Default Branch: Messages that fit no route (greetings, unclear requests) go to the Default output
  • Value Extraction: Values that are explicitly stated in the message are returned as key/value pairs (params)
  • Bring Your Own Model: Optionally pick a provider, model, and your own credentials

Configuration

ParameterTypeRequiredDescription
OrganizationDropdownNoAI provider: Gemini, OpenAI, Groq, or Anthropic
ModelDropdownNoThe model to use, filtered by the chosen organization
CredentialsDropdownNoYour own API credentials for the chosen provider (optional, paid plans with Bring Your Own AI)
Input messageTextYesThe message to route, e.g. {{whatsAppTrigger.messageBody}}
Instructions (optional)TextNoWho this agent helps and any context it needs to route correctly
RoutesListYes (at least one)Each route has a Name and a When to use this route description

Routes

Each route has two fields:

FieldDescription
NameShort label shown on the canvas, e.g. Sales
When to use this routePlain-English description of the messages that belong here. The AI reads this to decide

Every route appears as its own output on the block. Connect each output to the flow that should handle it. A Default output is always present for messages that match nothing.

⚠️

Write clear, specific route descriptions. The AI only sees the route name and description — it cannot guess your intent from the name alone.


Setting up the block

  1. Add the Agent Orchestrator block after your trigger.
  2. Pick an Organization and a Model (and your own credentials if you use them).
  3. Set Input message to the incoming text, e.g. {{whatsAppTrigger.messageBody}}.
  4. Click Add Route for each path you need. Give each route a name and a description.
  5. Connect each route output (and the Default output) to the right downstream blocks.

Example: Customer message routing

A WhatsApp bot for a company receives all kinds of messages. Add three routes:

  • Sales — "Questions about pricing, plans, demos, or buying the product."
  • Support — "Problems, errors, bugs, or how-to questions from existing users."
  • Billing — "Invoices, refunds, payment failures, or subscription changes."

A message like "My last invoice charged me twice" is routed to Billing, and params may contain the extracted detail (e.g. {"issue": "charged twice"}). A plain "Hi" goes to Default, where you can send a welcome message.


Output

Downstream blocks can reference the block's output:

FieldDescription
routeNameName of the chosen route (or Default)
routeIdId of the chosen route
isFallbacktrue when no route matched and the Default branch was taken
paramsKey/value pairs extracted from the message (empty when nothing was stated)
replyHintOne short sentence describing the detected intent
inputMessageThe original message that was routed
Indite Documentation v1.7.1
PrivacyTermsSupport