# Reação

**Evento:** `message.reaction` · **Transporte:** POST para o seu receptor

Reação posta ou retirada. `data.message` é a própria reação como mensagem (`type: reaction`), igual à da busca; `data.chat`, a conversa. Assine `message.reaction` num webhook (`POST /webhooks`) ou no `GET /events`.

Fica fora de `message.received` para não disparar automação. Tirar a reação: `action: unreact` com `emoji` vazio.

**Estado:** Disponível

## Compatibilidade de canais

| Canal | Compatível | Observação |
|---|---|---|
| WhatsApp (Web) | Sim |  |
| WhatsApp (API oficial) | Sim |  |
| Instagram | Sim |  |
| Messenger | Sim |  |
| Telegram | Sim |  |

### Reação

```json
{
  "id": "evt_01JAB3K9ZQ7V0M4T8R2X6WYD5H",
  "type": "message.reaction",
  "created_at": "2026-10-17T12:00:00.000Z",
  "inbox": {
    "id": "r0269625d29bfbd",
    "name": "loja",
    "phone": "5511888888888",
    "channel": "whatsapp_web"
  },
  "data": {
    "message": {
      "id": "3EB0A1B2C3D4E5F60718",
      "chat_id": "5511999999999@s.whatsapp.net",
      "author": {
        "id": "5511999999999@s.whatsapp.net",
        "phone": "5511999999999",
        "lid": "123456789012345@lid",
        "name": "Maria"
      },
      "direction": "in",
      "sent_at": "2026-10-17T12:00:00.000Z",
      "category": "reaction",
      "type": "reaction",
      "action": "react",
      "emoji": "👍",
      "target": {
        "id": "3EB05DCE1D4036FCE241C6",
        "direction": "out",
        "type": "text",
        "preview": "Seu pedido saiu para entrega."
      },
      "device": "android"
    },
    "chat": {
      "id": "5511999999999@s.whatsapp.net",
      "lid": "123456789012345@lid",
      "type": "direct",
      "name": "Maria Souza"
    }
  }
}
```

## Referências

- [Eventos e webhooks](/docs/webhook)
- [Contrato OpenAPI completo](/openapi-bundled.json)
