> For the complete documentation index, see [llms.txt](https://docs.kiloiot.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.kiloiot.io/dashboards/adding-widgets/control-widget/input.md).

# Input

Add an Input Control to a Kilo IoT dashboard to send an exact typed value — a setpoint or threshold — with Apply.

The **Input** is the exact-value control type. The operator types a precise figure and presses **Apply** to send it — ideal when a slider is too coarse or the value must be exact.

## When to use it

Use an Input when precision matters: a temperature or pressure **threshold**, an exact **setpoint**, or a specific **device parameter**. Where a [Simple Slider](/dashboards/adding-widgets/control-widget/slider-simple.md) is for dialling a value by feel, the Input is for entering an exact number.

## What you need first

* A controllable device with a command on its **Commands & States** tab whose **parameter accepts the value** you'll type (see [Creating Commands](/devices/commands/creating-commands.md)).
* A **Device metric** that reports the current value, shown beside the field for reference.

## How to set it up

1. Open the dashboard in **edit mode** → **Add widget** → **Control**.
2. **Datasource** tab: choose the **Device** and the **Device metric** for the current value. Click **Next**.
3. **Appearance** tab: enter a **Widget name**, then under **Widget type** choose **Input**.
4. Set an **Input placeholder** (hint text in the field) and an optional **Input label**.
5. Choose the **Command** the input sends, the **Parameter** it sets, and a default **Value**.
6. Toggle **Display name and last update**, then click **Save**.

<figure><img src="https://2057878315-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtNQh1wBSHSaknslMdOXm%2Fuploads%2Fgit-blob-0054c3240c793458b0d9818d62bb969af82df939%2Fcontrol-widget-input.jpg?alt=media" alt="Input Control sending an exact setpoint value with an Apply button"><figcaption></figcaption></figure>

## What happens when you use it

The widget shows the current value and a field. Type a new value and press **Apply** to dispatch the command with that value as its parameter — nothing is sent until you press Apply, so a half-typed number never reaches the device. Whether a value is accepted is governed by the command parameter's definition (for example its min/max), so out-of-range entries are rejected.

## Common mistakes

* **Expecting it to send as you type** — the Input only dispatches on **Apply**.
* **Entering a value outside the parameter's limits** — the command's parameter definition sets the valid range; values outside it won't be accepted.

## See also

* [Control widget](/dashboards/adding-widgets/control-widget.md) — overview and the other control types
* [Device Commands](/devices/commands.md) — define the command this input sets


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.kiloiot.io/dashboards/adding-widgets/control-widget/input.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
