Skip to content

Typing Indicators

Mark an inbound WhatsApp message as read and show a typing indicator while you prepare a response. Improves UX when replies take more than a couple of seconds.

View .md

When a customer messages your business and the reply needs a moment to prepare — an LLM agent, a database lookup, an external API call — you can show the same "typing…" dots WhatsApp users see when a friend is replying. The same call also marks the inbound message as read (blue checks).

Show a Typing Indicator

Call the typing endpoint with the inbound message ID you want to acknowledge:

await zavu.messages.showTyping("msg_abc123");

The indicator is automatically dismissed when:

  • You send a reply, OR
  • 25 seconds elapse — whichever comes first.

When to Use

Show the indicator only when a response really is on the way. The typical pattern is to call it as the first thing your webhook handler does for an inbound message that will trigger slow work:

TypeScript
// In your webhook handler for `message.inbound` await zavu.messages.showTyping(event.data.messageId); const reply = await yourLLM.generate(event.data.text); await zavu.messages.send({ to: event.data.from, channel: "whatsapp", text: reply, });

This is especially valuable for AI Agents — without it, the user sees nothing happen for several seconds after they send their message.

Specifications

PropertyRequirement
Message channelMust be whatsapp
Message directionMust be inbound
Provider message IDMust be present (set automatically on received messages)
  • Reactions — acknowledge a message without sending a full reply
  • AI Agents — agents that benefit most from typing indicators