> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.telekesher.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.telekesher.dev/_mcp/server.

# Collect keypad input

Use [Play prompt and collect DTMF
digits](/api/collect-keypad-input/collect)
for one prompt-and-collect cycle. [DTMF](https://en.wikipedia.org/wiki/Dual-tone_multi-frequency_signaling)
is the signalling system produced by telephone keypad presses. Configure the
allowed digit count, timeouts, and optional terminator; then inspect the
resulting [`digits.collected`](/webhooks/dtmf-events#digitscollected) event to
decide what your application should do next.

Every key press also emits an individual [`dtmf.received`](/webhooks/dtmf-events#dtmfreceived) event as it happens, including while `play_and_get_digits` is collecting input. Use these events for per-key handling and `digits.collected` for the final aggregated result.

The command returns `202 Accepted` when queued. Include an `operation_uuid` so the final event can be correlated with the request. If the caller must re-enter input, issue another collection command; the service does not retry a collection automatically.

Use [Cancel an in-progress play\_and\_get\_digits](/api/collect-keypad-input/cancel) to end the current cycle early.