Skip to main content

Inputs and Outputs

Every Blueprint has a Data Contract β€” the inputs it expects, the outputs it returns, and any local variables it uses internally. You configure these in the Data panel on the left side of the editor. The Data panel showing inputs, outputs, and local variables

Inputs

Inputs are the values your Blueprint receives when it runs. Each input has:
  • Name β€” the identifier used to reference this value in your logic (e.g., cartValue, deliveryDistance)
  • Type β€” what kind of data it holds: string, number, boolean, date, or enum
  • Description β€” explains what the value represents
  • Required β€” whether the input must be provided or is optional
  • Multiple β€” whether the input accepts a list of values instead of a single value
An input parameter configuration To add an input, click Add next to the Inputs heading in the Data panel. Give it a name, select the type, and add a description.

List inputs

When you check the Multiple option, the input accepts a list of values. This is useful when your Blueprint needs to process multiple items β€” like a list of order amounts or customer names. Use Loop elements to iterate over list inputs.

Outputs

Outputs are the values your Blueprint returns when it finishes. They have the same configuration options as inputs: name, type, description, required, and multiple. An output parameter configuration Output values are typically set by Assignment elements during execution. When a Return element is reached, the current values of all output variables are returned to the caller.

Local variables

Local variables are internal to your Blueprint β€” they’re not visible to callers. Use them for intermediate calculations, counters, or temporary values that don’t need to be part of the public Data Contract. Click the Locals section in the Data panel to see and manage local variables.

The Data Contract in context

The Data Contract serves different purposes depending on how your Blueprint is used:
ContextHow the Data Contract is used
TestingThe Run panel shows input fields based on your inputs, and displays output values after execution
Call nodesWhen another Blueprint calls yours, it maps values to your inputs and captures your outputs
REST APIAPI callers send inputs as JSON and receive outputs in the response
MCPAI assistants use the Data Contract to understand what your Blueprint does and how to call it
Specification viewThe Data Contract appears as a readable section at the top of the document

Tips

  • Use descriptive names β€” cartValue is better than val1
  • Write descriptions as if explaining to someone who’s never seen your Blueprint
  • Only mark inputs as required if the Blueprint truly cannot function without them
  • Keep the Data Contract focused β€” if your Blueprint has many inputs, consider splitting it into smaller Blueprints connected with Call nodes

What to do next