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

> ## Agent Instructions
> Automate.ax automations are TypeScript programs.
> Use Bun for installation and command examples.
> Use Automate.ax for the product name and automate.ax for the package, CLI, and domain.
> Treat documented public APIs as current; do not invent transitional or deprecated names.

# Add reaction

> Add an emoji reaction to a Slack message.

`addReaction` adds the installed bot's reaction to one message.

## Example

```ts automations/react-to-slack-message.automation.ts theme={null}
import { automation } from "automate.ax"
import { addReaction, onMessagePosted } from "automate.ax/slack"

export default automation("Acknowledge Slack messages", () => {
  const posted = onMessagePosted()
  addReaction({
    conversationId: posted.conversationId,
    emoji: "eyes",
    timestamp: posted.message.timestamp,
  })
})
```

## Inputs

| Input            | Type                                             | Required | Description                                            |
| ---------------- | ------------------------------------------------ | -------- | ------------------------------------------------------ |
| `conversationId` | `string`                                         | Yes      | Conversation containing the message.                   |
| `timestamp`      | `string`                                         | Yes      | Target message timestamp.                              |
| `emoji`          | `string`                                         | Yes      | Emoji name without surrounding colons, such as `eyes`. |
| `account`        | `string \| IntegrationAccountReference<"slack">` | No       | Slack binding.                                         |

## Output

Returns `Signal<void>`. Slack can reject an unknown emoji or a duplicate
reaction from the same bot.
