Skip to content

Properties & inputs

How to configure steps using the Properties panel, including expressions, pickers, and common patterns.

Introduction

This tour shows how to configure steps via the Properties panel: editing inputs, using expressions, and applying common patterns.

Select a step
Properties follow your selection
Edit inputs
Literals or expressions
Use pickers
Lists, dialogs, helpers
Select a step in the tree to load its properties.
Most inputs accept either a literal value or an expression.
Use the Properties panel to keep step behavior explicit and documented.

The Server Connect editor is ready

This tour uses a real workflow step so the Properties panel can show actual inputs and bindings right away. In this sample, update_client is selected for you.

Properties panel

This panel shows the configurable inputs/options for the selected step.

If you don’t see it, enable it via the editor header toggle.

The selected step drives the Properties panel

This tour keeps a real step selected for you. Here the update_client step is active, so the Properties panel shows its actual update settings and bindings.

That is the key rule: Properties always follow the current tree selection.

Literals vs expressions

Most inputs accept either a literal (plain text/number) or an expression (bind to previous step output, request data, environment, …).

Tip: treat expressions like code: keep them readable and name intermediate results in separate steps.

Literals
Simple fixed values
Expressions
Dynamic values from data
Keep it readable
Name steps and outputs
Prefer making a separate step to compute a value instead of a huge inline expression.
Use consistent naming so it’s obvious where values come from.
When debugging, output intermediate data temporarily.

Expressions are bindings (not JavaScript)

Server Connect expressions are bindings: they read data and produce a value.

They are not general JavaScript (no statements, assignments, callbacks, or creating new functions). When you need logic, use dedicated steps or a library action, then bind to that step’s output.

IMPORTANT: If an expression feels like “real code”, it usually belongs in a separate step (or a reusable library action).

Good: `{{steps.query.data[0].id}}`
Good: `{{steps.validate.is_valid ? steps.data : null}}`
Prefer a step for logic, then bind to its output

Conclusion

Recap what you learned and choose where to go next.

Next steps

Pick a related tour to continue.