# Navigate Steps Conditionally

### Steps

A `step` is the core building block of a form and can be thought of as a page. By default, every Feathery form begins with a single step, to which you can add components and fields, style, and assign a name (e.g. a contact form).

From there, you can create new, additional steps—from scratch or by duplicating existing form steps—and connect these steps to create multi-step forms (e.g. a customer onboarding flow).

In Feathery, steps can be found in the form builder and are visually represented as nodes. Navigation between steps can be built by hovering over the edge of a step until the "+" cursor appears, and then clicking and dragging a connecting line from that step to another.

Once a connection between steps has been created, it can be clicked to assign navigation rules that must be met to move the form user between the two steps.

![](/files/yh5IGjEoqTFC8wvNnAwE)

### Navigation Rules

Each navigation rule is made up of a target and conditions.

#### Target

A `target` is a form element (e.g. button or field) or the form itself that can be interacted with in order to trigger step navigation. This could be a clickable element (such as a button) or a field where changing its value triggers navigation to the next step.

#### Condition

A `condition` is a field value comparison that must be met in order for step navigation to trigger a particular rule. For example, the criteria could be a particular field value being equal to a preset value, or if the user has been authenticated or not.

![](/files/Pg6qPwp01TdAWE6HtCYI)

See the detailed discussion of [Logic Conditions](/platform/build-forms/logic/available-conditions.md).

### Conditionally Skip a Step

This is a common use case when you have an initial step where the user answers a set of questions that determine which of the following steps they should see. On each of the following steps, you can set a navigation rule that skips the step conditionally.

<figure><img src="/files/n4Ks4qIhG1uqIEIPHj0h" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.feathery.io/platform/build-forms/logic/navigate-steps-conditionally.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
