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

# Sending Reactions

> Add or remove emoji reactions on WhatsApp messages

React to messages with emoji, just like users can in the WhatsApp app. Reactions are a lightweight way to acknowledge messages without sending a full reply.

## Adding a Reaction

React to a message with an emoji:

```bash icon="terminal" title="Add Reaction" theme={null}
curl -X POST https://api.buildwithchirp.com/v1/whatsapp/messages \
  -H "Authorization: Bearer YOUR_APP_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "from": "+15551234567",
    "to": "+15559876543",
    "type": "reaction",
    "reaction": {
      "messageId": "msg_wa_2DbBs7GWhGvVNJGrDXr5RG0mBWI",
      "emoji": "👍"
    }
  }'
```

## Removing a Reaction

Remove a reaction by sending an empty emoji string:

```bash icon="terminal" title="Remove Reaction" theme={null}
curl -X POST https://api.buildwithchirp.com/v1/whatsapp/messages \
  -H "Authorization: Bearer YOUR_APP_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "from": "+15551234567",
    "to": "+15559876543",
    "type": "reaction",
    "reaction": {
      "messageId": "msg_wa_2DbBs7GWhGvVNJGrDXr5RG0mBWI",
      "emoji": ""
    }
  }'
```

## Request Parameters

| Parameter            | Type   | Required | Description                               |
| -------------------- | ------ | -------- | ----------------------------------------- |
| `type`               | string | Yes      | Must be `"reaction"`                      |
| `reaction.messageId` | string | Yes      | Chirp message ID (`msg_wa_*`) to react to |
| `reaction.emoji`     | string | Yes      | Emoji to add, or empty string to remove   |

## Supported Emoji

You can use any emoji supported by WhatsApp, including:

* 👍 👎 ❤️ 😂 😮 😢 🙏
* All standard Unicode emoji
* Skin tone variants

<Note>
  Only one reaction per message is allowed. Sending a new reaction replaces any existing reaction from your number.
</Note>

## Response

```json icon="code" title="Response" theme={null}
{
  "id": "msg_wa_2DbBs7GWhGvVNJGrDXr5RG0mBWI",
  "from": "+15551234567",
  "to": "+15559876543",
  "type": "reaction",
  "status": "queued",
  "timestamp": "2024-01-15T12:00:00.000Z"
}
```

## Receiving Reactions

When a user reacts to your message, you receive a webhook:

```json icon="json" title="Reaction Webhook" theme={null}
{
  "event": "messages.whatsapp.received",
  "timestamp": "2024-01-15T12:05:00.000Z",
  "data": {
    "message": {
      "id": "msg_wa_3EcCs8HXiHwWOKHsDYs6SH1nCXJ",
      "from": "+15559876543",
      "to": "+15551234567",
      "type": "reaction",
      "direction": "inbound",
      "reaction": {
        "messageId": "wamid.HBgLMTUwMzMwNzk5NzQ...",
        "emoji": "❤️"
      }
    }
  }
}
```

<Tip>
  Use reactions to quickly acknowledge customer messages, confirm actions, or add emotional context to conversations.
</Tip>

## Use Cases

* **Acknowledge receipt**: React with 👍 to show you've seen a message
* **Express emotions**: React with ❤️ to positive feedback
* **Confirm understanding**: React with ✅ when a task is complete
* **Show appreciation**: React with 🙏 to thank customers
