> ## Documentation Index
> Fetch the complete documentation index at: https://docs.notifique.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Indicador de digitação

> Mostre que sua empresa está preparando uma resposta no WhatsApp, em conexões QR, Meta Cloud e Gupshup.

## Em poucas palavras

* Use `POST /v1/whatsapp/messages/presence` para mostrar **digitando...**.
* Em conexões oficiais Meta e Gupshup, `messageId` é obrigatório e precisa ser o ID de uma mensagem recebida naquela instância.
* Em conexões QR, `to` é obrigatório e `messageId` é opcional; `recording` continua disponível apenas no QR.

A chamada oficial também marca a mensagem recebida como lida. O indicador some quando uma resposta é enviada ou após até 25 segundos, conforme o provedor.

## Como usar

Envie `composing` para iniciar o indicador. Informe `from` com o ID da instância, o telefone E.164 da linha ou o nome da instância. O campo legado `instanceId` também é aceito; se enviar os dois, `from` tem prioridade. Pools não são aceitos nesta rota porque a presença precisa de uma linha específica. Em `messageId`, use o ID externo recebido no webhook oficial (`messages[].id`). A listagem `GET /v1/whatsapp/messages/inbound` também retorna esse valor em `externalMessageId`; o campo `id` dessa listagem é interno e não serve para a presença oficial.

### Conexão oficial Meta ou Gupshup

Este exemplo envia o indicador para a mensagem recebida `wamid...` usando o próprio número da linha no campo `from`.

```bash theme={null}
curl -X POST 'https://api.notifique.dev/v1/whatsapp/messages/presence' \
  -H 'Authorization: Bearer SUA_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "from": "+5528999999999",
    "presence": "composing",
    "messageId": "wamid.HBgNNTUxMTk5OTk5OTk5FQIAEhgg..."
  }'
```

`messageId` deve ser o ID externo `messages[].id` do webhook de entrada, igual a `externalMessageId` na listagem de recebidos. Não use o `id` interno da listagem. A API verifica que ele pertence à instância e ao workspace da chave. IDs de outra linha, mensagens de saída e IDs ainda não registrados retornam `404 WHATSAPP_PRESENCE_MESSAGE_NOT_FOUND`.

### Conexão QR (não oficial)

Em QR, informe o destinatário em `to`. Você pode enviar `composing` ou `recording`.

```json theme={null}
{
  "from": "+5528999999999",
  "to": "5511999999999",
  "presence": "composing"
}
```

## Regras por conexão

| Conexão | `to` | `messageId` | Valores de `presence` |
| - | - | - | - |
| Meta Cloud API oficial | Ignorado | Obrigatório: ID da mensagem recebida | `composing` |
| Gupshup oficial (BSP) | Ignorado | Obrigatório: ID da mensagem recebida | `composing` |
| QR / Evolution | Obrigatório: telefone ou JID | Opcional | `composing`, `recording` |

> [!NOTE]
>
> Reenvie o indicador apenas quando houver uma espera perceptível. Na API oficial, cada chamada também confirma a leitura da mensagem de entrada; não use esse endpoint só para renovar o indicador.

Consulte a [referência OpenAPI do WhatsApp](https://docs.notifique.dev/whatsapp-api/api-reference/openapi-whatsapp.json) para schema e respostas.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.