> ## Documentation Index
> Fetch the complete documentation index at: https://docs.firstresonance.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Step field types

> Reference for the data-collection field types you can add to a step to capture operator input, readings, signatures, and files.

## Data collection fields

The field types below capture operator input during a run. You pick a field's type when you add it to a step. For the steps to add and configure a field, see [Manage procedure steps](/build-hardware/procedures/manage-procedure-steps#add-fields-to-a-step).

### Datetime

A date and time for an event, used to track when something happened in production, such as when a part entered a thermal oven.

### Boolean

A checkbox for a true or false response, such as a pass/fail check.

### String

A text field for freeform responses from the floor.

<Note>
  String fields have no length limit and support all UTF-8 characters.
</Note>

### Number

A numeric value. Number fields are the only type that supports validations, which check a reading against limits automatically during the run. See [Field validations](#field-validations).

### Select

A list of options where the operator picks one. To let the operator pick more than one, use Multiselect.

### Multiselect

A list of options where the operator can pick more than one. Use it to capture several conditions at once, such as when a part is scratched, bent, and discolored.

### Signoff

A role-gated digital signature. You define the role required to sign off, and ION enforces it during the run. For example, a step can require a user with the Quality Inspection role to sign off before work continues. ION records who signed off with a digital signature.

Turn on **Peer review required** to restrict the signoff to users who have not worked on the run connected to the field.

You manage which roles exist and who holds each role in [Users and permissions](/administration/users-and-permissions).

### File

A file upload. Use it when you need one specific file, such as a CSV export from a machine. For general reference files on a step, the [step attachments](/build-hardware/procedures/manage-procedure-steps#attachments) panel is more flexible.

<Note>
  A File field accepts a file up to 5 GB.
</Note>

### Tool

Links use of a [tool](/build-hardware/tools) to the run step for traceability and containment. You can limit a Tool field to specific tool part numbers, types, and calibration status.

### ION User

Links an ION user to the step.

### ION Part

Links an ION part to the step.

## Required fields

Fields are optional by default. Leaving an optional field blank does not block step completion. Turn on **Required** to force the operator to fill in the field before completing the step.

A required field can also allow a **Not Applicable** entry, which lets the operator confirm the field does not apply rather than leaving it blank.

## Field validations

Number fields support validations that check a reading against limits automatically when an operator enters a value during a run. Use them to set the conditions for a passing value. For a torque value that must fall between 5 ft-lb and 10 ft-lb, add one validation for the lower limit and one for the upper limit.

To author validations on a number field:

1. In the **Step Fields** section, on a number field, click **Add Validation**.
2. Choose the comparison operator: less than (`<`), less than or equal to (`≤`), greater than (`>`), greater than or equal to (`≥`), equal to (`=`), or not equal to (`≠`).
3. Enter the value to compare against.

Add a validation for each limit. To require a value inside a range, add a greater-than validation for the lower bound and a less-than validation for the upper bound.

A validation runs when the operator enters a value during the run. With the [issue creation settings](/administration/quality-settings/configure-issue-creation-and-approvals) configured to create an issue when a value fails its criteria, ION creates an issue automatically when a reading is out of limits.
