Skip to main content
When you receive a message, you can tell the contact you have seen it (blue ticks) and that a reply is coming (“typing…”).
Use the uuid from the message.received webhook (data.message.uuid).

Rules

  • Only messages a contact sent you can be marked read. Anything else returns 422 with code: not_inbound.
  • WhatsApp accepts read receipts for 30 days after a message; older ones return 422 with code: too_old.
  • In a 1:1 chat, marking one message read also marks every earlier message read.
  • In a group, each message is marked on its own.
  • Only show “typing…” when a reply really is coming. A typing indicator that ends in silence is a poor experience.
The inbox does this for you: opening a chat marks it read, and starting to type shows the indicator. If you have an existing Cloud API integration, the Meta-compatible proxy also accepts {"status": "read", "message_id": "wamid…", "typing_indicator": {"type": "text"}} on /meta/whatsapp/{version}/{phone_number_id}/messages.