> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs-parschat.parstechai.com/api-reference/webhook-events/is-typing-webhook/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs-parschat.parstechai.com/_mcp/server. # is_typing POST A **human** started or stopped typing. This is distinct from `message.generating`, which is the AI, and you may want to render them differently. `by.role` says who: an operator typing is worth showing to the end customer, a client typing is worth showing to the operator. **A stopped event is not guaranteed.** A connection can drop mid-typing, so expire the indicator yourself after a few seconds rather than waiting for `is_typing: false`. Reference: https://docs-parschat.parstechai.com/api-reference/webhook-events/is-typing-webhook ## Request ### Payload - `schema_version` (string, optional) — Semver for the payload shape. Fields are added without a major bump; nothing is removed or repurposed without one. - `event` (string, optional) — Which event this is. - `delivery_id` (string, optional) — Unique per delivery attempt. Log it, and use it to detect a redelivery. - `occurred_at` (datetime, optional) — When the event happened. - `robot_id` (string, optional) — The robot it belongs to. - `external_id` (string, optional) — Your own id for that robot, echoed on every event so you never need a lookup table. - `channel_id` (string, optional) — The channel it arrived on. - `data` (WebhooksIsTypingWebhookPayloadContentApplicationJsonSchemaData, optional) ## Types ### WebhooksIsTypingWebhookPayloadContentApplicationJsonSchemaData - `conversation_id` (string, optional) — The conversation. - `is_typing` (boolean, optional) — `true` on start, `false` on stop. - `by` (WebhooksIsTypingWebhookPayloadContentApplicationJsonSchemaDataBy, optional) — Who is typing. ### WebhooksIsTypingWebhookPayloadContentApplicationJsonSchemaDataBy Who is typing. - `id` (string, optional) - `username` (string, optional) - `role` (enum, optional) - Allowed values: `client`, `operator`