# Typing indicators | Developer Documentation

<div id="bkmrk-typing-indicatorsupd">## Typing indicators

<div><span>Updated: Oct 21, 2025</span></div><div>When you get a **messages** webhook indicating a [received message](/books/meta-whatsapp/page/messages-webhook-reference-developer-documentation), you can use the `message.id` value to mark the message as read and display a typing indicator so the WhatsApp user knows you are preparing a response. This is good practice if it will take you a few seconds to respond.</div><div>![](https://support.chatarchitect.com/uploads/images/gallery/2026-04/embedded-image-ptpqd6hs.png)</div><div>The typing indicator will be dismissed once you respond, or after 25 seconds, whichever comes first. To prevent a poor user experience, only display a typing indicator if you are going to respond.</div><div id="bkmrk-request-parameters"><div id="bkmrk-request-parameters-1"><div>### Request parameters

</div></div></div><div><table style="width:100%;table-layout:fixed;"><thead><tr><th style="overflow-wrap:anywhere;word-break:break-word;vertical-align:top;width:28%;overflow-wrap:anywhere;word-break:break-word;vertical-align:top;"><span>Placeholder </span></th><th style="overflow-wrap:anywhere;word-break:break-word;vertical-align:top;width:47%;overflow-wrap:anywhere;word-break:break-word;vertical-align:top;"><span>Description </span></th><th style="overflow-wrap:anywhere;word-break:break-word;vertical-align:top;width:25%;overflow-wrap:anywhere;word-break:break-word;vertical-align:top;"><span>Example value </span></th></tr></thead><tbody><tr><td style="overflow-wrap:anywhere;word-break:break-word;vertical-align:top;"><div><div>`<ACCESS_TOKEN>`</div><div>*String*</div></div></td><td style="overflow-wrap:anywhere;word-break:break-word;vertical-align:top;"><div><div>**Required.**</div><div>[System token](/books/meta-whatsapp/page/access-tokens-guide-developer-documentation) or [business token](/books/meta-whatsapp/page/access-tokens-guide-developer-documentation).</div></div></td><td style="overflow-wrap:anywhere;word-break:break-word;vertical-align:top;"><div><div>`EAAAN6tcBzAUBOZC82CW...DOMccqHEZD`</div></div></td></tr><tr><td style="overflow-wrap:anywhere;word-break:break-word;vertical-align:top;"><div><div>`<API_VERSION>`</div><div>*String*</div></div></td><td style="overflow-wrap:anywhere;word-break:break-word;vertical-align:top;"><div><div>**Optional.**</div><div>Graph API version.</div></div></td><td style="overflow-wrap:anywhere;word-break:break-word;vertical-align:top;"><div><div>v25.0</div></div></td></tr><tr><td style="overflow-wrap:anywhere;word-break:break-word;vertical-align:top;"><div><div>`<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>`</div><div>*String*</div></div></td><td style="overflow-wrap:anywhere;word-break:break-word;vertical-align:top;"><div><div>**Required.**</div><div>WhatsApp business phone number ID.</div></div></td><td style="overflow-wrap:anywhere;word-break:break-word;vertical-align:top;"><div><div>`106540352242922`</div></div></td></tr><tr><td style="overflow-wrap:anywhere;word-break:break-word;vertical-align:top;"><div><div>`<WHATSAPP_MESSAGE_ID>`</div><div>*String*</div></div></td><td style="overflow-wrap:anywhere;word-break:break-word;vertical-align:top;"><div><div>**Required.**</div><div>WhatsApp message ID. This ID is assigned to the `messages.id` property in **received message** [messages](/books/meta-whatsapp/page/messages-webhook-reference-developer-documentation) webhooks.</div></div></td><td style="overflow-wrap:anywhere;word-break:break-word;vertical-align:top;"><div><div>`wamid.HBgLMTY1MDM4Nzk0MzkVAgARGBJDQjZCMzlEQUE4OTJBMTE4RTUA`</div></div></td></tr></tbody></table>

</div></div>