---
title: "Getting text back from the client"
description: "When to choose Wait for input instead of buttons: validation, timeout, and the Skip option."
---

# Getting text back from the client

**Wait for input** (`wait-for-input`) sends a prompt and waits for **typed input** (with optional validation: phone, number, etc.). There is **no preset button list** — unlike [Message with keyboard](/en/scenariobuilder/explanation/message-with-keyboard-node.md). Use it to **collect data**: name, email, phone, comments, codes.

---

## Compared to Message with keyboard

| | Message with keyboard | Wait for input |
|---|----------------------|----------------|
| How the client replies | Buttons / menu | Free text (validated) |
| Typical examples | Menus, Yes/No | Name, phone, email, numbers |
| Extra buttons | Main flow | Optional **Skip** only |

---

## Timeout and Skip

- **Timeout** — how long to wait; after that, another branch may run (depends on your wiring).
- **Allow skip** — shows a button for users who want to defer.

All fields: [Wait for input parameters](/en/scenariobuilder/reference/wait-for-input-parameters.md).

---

## Steps in the editor

1. Add **Wait for input** from **Messaging**.
2. Set the prompt and **output variable**.
3. Choose **validation** type and error text.
4. Configure timeout and/or skip if needed.
5. Connect outputs on the canvas.

---

## See also

- [Parameter reference](/en/scenariobuilder/reference/wait-for-input-parameters.md)
- [Menus and buttons](/en/scenariobuilder/explanation/message-with-keyboard-node.md)
- [Use action in scenario](/en/scenariobuilder/how-to/use-action-in-scenario.md)
