# Edit a keyword auto-reply

> Replace a keyword rule's keyword, reply or active state. Call it only when the user asked for this in the conversation; never on your own initiative.

`dm.update_inbound_rule` · publish

- **MCP tool:** `dm_update_inbound_rule`. Catalog: reach it with `find_actions` and `run_write_action`, or turn on the full toolset.
- **REST:** `POST /v1/dm/update-inbound-rule`
- **CLI:** `xholic dm update-inbound-rule`
- **Scope:** `publish`
- **Plan:** Pro plan or higher
- **Cost:** Free.
- **Rate limit bucket:** `write`

## Input

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `id` | string (uuid) | Yes | Rule id from dm.inbound_rules. |
| `keyword` | string ≤ 40 chars | Yes | A single word, like GUIDE. |
| `replyTemplate` | string ≤ 5000 chars | Yes | The message. Variables: [first], [name], [handle], [location], [followers], list fields such as [first_line], with optional fallbacks like [first\|there]; spintax like {Hi\|Hey}. Write it yourself in the user's voice. |
| `active` | boolean | No |  |
| `account` | string ≤ 64 chars | No | X account to act on, as @handle. Leave it out to use the connection's default account. |
| `dryRun` | boolean | No | Return exactly what would happen without doing it. |
| `idempotencyKey` | string ≤ 200 chars | No | A unique key for this write. Repeating a call with the same key returns the first result instead of acting twice. |
