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

# chat_update

> Update an existing Slack message. Only messages posted by the authenticated bot or user can be updated.

<div className="tool-route"><span className="tool-row-method" data-method="POST">POST</span><code>{"https://slack.com/api/chat.update"}</code></div>

```python slack_chat_update.py theme={null}
from charter.packs import slack

result = await slack.chat_update.ainvoke({"channel": ..., "ts": ...})
```

<Note>
  Requires `chat:write`, `channels:read`, `groups:read`, `im:read`, `mpim:read`, `channels:history`, `groups:history`, `im:history`, `mpim:history`, `users:read`, `reactions:write`.
</Note>

## Body

<div className="reference-table">
  | Field                                                           | Type                                                                 | Description                                                                                                        |
  | --------------------------------------------------------------- | -------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
  | `channel` <span className="required" title="required">\*</span> | `string`                                                             | Channel containing the message to be updated. For direct messages use the DM ID (starting with 'D').               |
  | `ts` <span className="required" title="required">\*</span>      | `string`                                                             | Timestamp of the message to be updated.                                                                            |
  | `text`                                                          | `string`                                                             | The new body text of the message, limited to 4,000 characters. Required unless blocks or attachments are provided. |
  | `blocks`                                                        | `object`\[]                                                          | A JSON-based array of structured Block Kit blocks.                                                                 |
  | `attachments`                                                   | `object`\[]                                                          | A JSON-based array of structured attachments.                                                                      |
  | `fileIds`                                                       | `string`\[]                                                          | Array of new file IDs to attach to the message.                                                                    |
  | `replyBroadcast`                                                | `boolean`                                                            | Broadcast an existing thread reply to the channel. Defaults to false.                                              |
  | `metadata`                                                      | [MessageMetadata](/charter/charter/packs/slack/chat/objects#messagemetadata) | Application-specific metadata to attach to the message.                                                            |
</div>
