> For the complete documentation index, see [llms.txt](https://swallow-1.gitbook.io/swallow/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://swallow-1.gitbook.io/swallow/build/step-builder/understanding-step-types.md).

# Understanding step types

### 1. Input Step - [Learn more about the input step](/swallow/build/inputs.md)

The first step of any pricing model is to define and format the inputs that you'll accept to generate your price.

After you have defined your inputs, there are three different sections of steps, each with their own types of steps available.

### 2. Enrich Steps - [Learn more about enrich steps](/swallow/build/enriching-raw-data.md)

Apply some simple transformation to data inputs and to enrich them with data from other sources, ensuring you get the variables you need, in the correct format, that you'll then use later in your model.

* [Transform Data](/swallow/build/enriching-raw-data/transform-data.md) - Create new properties by transforming existing inputs
* [Enrich via API](/swallow/build/enriching-raw-data/enrich-via-api.md) - Create custom API requests to enrich quotes
* [Data Set](/swallow/build/enriching-raw-data/data-set.md) - Map data sets to enrich quotes
* [Collection](/swallow/build/enriching-raw-data/collection.md) - Dynamically query data sets to enrich quotes

### 3. Decision Steps - [Learn more about decision steps](/swallow/build/setting-up-decisions.md)

Make decisions based on the inputs in your model. Decide which prices are valid, which customers are eligible for certain cover or benefits, empower your team to make the right decisions offline and share information with your policy management systems.

* [Exclusions](/swallow/build/setting-up-decisions/exclusions.md) - Create exclusion rules to reject quotes
* [Excesses](/swallow/build/setting-up-decisions/excesses.md) - Create excesses or deductible rules for quotes
* [Endorsements](/swallow/build/setting-up-decisions/endorsements.md) - Create endorsement rules for quotes
* [Refer](/swallow/build/setting-up-decisions/refer.md) - Create custom referral rules for quotes

### 4. Calculation Steps - [Learn more about calculation steps](/swallow/build/making-calculations.md)

Once you've got all the data in your model, use these final steps calculate risk factors, pricing or rates before you set your final outputs.

* [Factors](/swallow/build/making-calculations/factors.md) - Create risk table factors that return a weight or rule
* [Calculation](/swallow/build/making-calculations/calculation.md) - Define complex calculations, such as prices

### 5. Output Step - [Learn more about the output step](/swallow/build/outputs.md)

The last step of every model is where you define and format the outputs that you'll generate when the pricing process is complete.

The output step defines what your model will return to your customer.&#x20;


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://swallow-1.gitbook.io/swallow/build/step-builder/understanding-step-types.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
