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

# <NumberInput />

> A numeric input field.

<img className="dark:hidden" width="720" height="440" noZoom src="https://mintcdn.com/attio/2EyaTyByKNPeSVcd/images/number-input.png?fit=max&auto=format&n=2EyaTyByKNPeSVcd&q=85&s=437bc8b4354fb4ef231e76fade07b6f4" data-path="images/number-input.png" />

<img className="hidden dark:block" width="720" height="440" noZoom src="https://mintcdn.com/attio/2EyaTyByKNPeSVcd/images/number-input-dark.png?fit=max&auto=format&n=2EyaTyByKNPeSVcd&q=85&s=b4579f19ceac9dddd20c8924f4534652" data-path="images/number-input-dark.png" />

<Note>
  This component is returned by
  [`useWorkspaceSettingsForm()`](../../settings/use-workspace-settings-form).
</Note>

Unlike with [`useForm()`](../../forms/use-form) where validation is defined in the schema, workspace settings validation is specified directly on the input components using props like `min` and `max`.

## Example

```tsx workspace-settings.tsx theme={"system"}
import React from "react"
import {useWorkspaceSettingsForm} from "attio/client"
import type {App} from "attio"

export const workspaceSettings: App.Settings.Workspace = {
  Page,
}

function Page() {
  const {Form, NumberInput} = useWorkspaceSettingsForm()

  return (
    <Form>
      <NumberInput
        label="Sync interval (minutes)"
        name="sync_interval_minutes"
        min={5}
        max={1440}
      />
      <NumberInput label="Max records per sync" name="max_records_per_sync" min={1} />
    </Form>
  )
}
```

## Props

<ParamField path="label" type="string" required>
  The label of the input field.
</ParamField>

<ParamField path="name" type="string" required>
  The path to the `number` value of the input field in your [settings schema](../../settings/app-settings-schema).

  e.g. `"sync_interval_minutes"`, `"api.timeout_seconds"`
</ParamField>

<ParamField path="placeholder" type="string">
  An optional placeholder text for your input.
</ParamField>

<ParamField path="min" type="number">
  The minimum allowed value. Validation will fail if the user inputs a number less than this value.
</ParamField>

<ParamField path="max" type="number">
  The maximum allowed value. Validation will fail if the user inputs a number greater than this
  value.
</ParamField>

<ParamField path="disabled" type="boolean">
  Whether or not the field should be disabled.

  Defaults to `false` (not disabled).
</ParamField>
