Compass Docs
WorkflowsComponents

Input

The Input component — the workflow's entry point and the shape of what it accepts.

The Input component is the entry point of a workflow. Every workflow has exactly one, and everything else on the canvas reads its values through bindings. It doesn't run anything — it declares what the workflow accepts.

Modes

Choose the Input's Type:

  • Chat (the default) — the workflow takes a message (text, required) and optional attachments (files). Downstream nodes receive the message text, and attachments go to the workflow's agents automatically. Best for conversational use and running from Compass Chat.
  • Object — the workflow takes a structured object whose fields you define. Best when the workflow is called with specific values by a schedule, the API, another workflow, or an agent that uses it as a tool.

Defining an object schema

In object mode, click Configure schema on the card to open the Object Schema editor, then Add property for each field the workflow expects. Each field has:

  • a name,
  • a type — String, Integer, Number, Boolean, Object, Array, or File,
  • a description — worth writing, since an agent calling this workflow as a tool reads it,
  • and whether it's Required. New fields start optional.

A File field takes an uploaded attachment — the way to hand a workflow a document or image to work on. Downstream steps like the Document Splitter and Document Parser consume it directly.

Fields can nest: an Object field has its own properties (Add nested property), and an Array can hold strings, numbers, booleans, objects, or files. This definition becomes the workflow's input contract.

What callers must provide

When the workflow runs, the input is checked against the schema:

  • A missing required field fails the run at its Input step, naming the field ("Missing required input field(s): …").
  • A missing optional field arrives as empty (null), including inside nested objects — so downstream bindings to it always resolve.
  • Extra fields the schema doesn't declare are passed through.

How it connects

The Input node has a single output and no input. Wire it into the steps that need the incoming values — and since the mapper lists every upstream node, any step can bind to an Input field, however far downstream. See Wiring & data binding.

Next

On this page