Edit a message
Edit/update the content or topic of a message.
PATCH https://zulip.dioco.io/api/v1/messages/{msg_id}
{msg_id}
in the above URL should be replaced with the ID of the
message you wish you update.
Usage examples
#!/usr/bin/env python3
import zulip
# Pass the path to your zuliprc file here.
client = zulip.Client(config_file="~/zuliprc")
# Edit a message
# (make sure that message_id below is set to the ID of the
# message you wish to update)
request = {
"message_id": message_id,
"content": "New content",
}
result = client.update_message(request)
print(result)
More examples and documentation can be found here.
const Zulip = require('zulip-js');
// Pass the path to your zuliprc file here.
const config = { zuliprc: 'zuliprc' };
Zulip(config).then(async (client) => {
// Update a message with the given "message_id"
const params = {
message_id: message_id,
content: "New Content",
};
return await client.messages.update(params);
}).then(console.log).catch(console.err);
curl -sSX PATCH https://zulip.dioco.io/api/v1/messages/42 \
-u BOT_EMAIL_ADDRESS:BOT_API_KEY \
-d 'topic=Castle' \
-d 'propagate_mode=change_all' \
-d 'send_notification_to_old_thread=true' \
-d 'send_notification_to_new_thread=true' \
-d 'content=Hello'
Permissions
You only have permission to edit a message if:
- You sent it, OR:
- This is a topic-only edit for a (no topic) message, OR:
- This is a topic-only edit and you are an admin.
Parameters
message_id required in path
Example: 42
topic optional
Example: Castle
The topic of the message. Only required for stream messages
(type="stream"
), ignored otherwise.
Maximum length of 60 characters.
Changes: New in Zulip 2.0. Previous Zulip releases encoded
this as subject
, which is currently a deprecated alias.
propagate_mode optional
Example: change_all
Which message(s) should be edited: just the one indicated in
message_id
, messages in the same topic that had been sent after this
one, or all of them.
Must be one of: change_one
, change_later
, change_all
.
Defaults to "change_one"
.
send_notification_to_old_thread optional
Example: True
Whether to send breadcrumb message to the old thread to
notify users where the messages were moved to.
Changes: New in Zulip 3.0 (feature level 9).
Defaults to true
.
send_notification_to_new_thread optional
Example: True
Whether to send a notification message to the new thread to
notify users where the messages came from.
Changes: New in Zulip 3.0 (feature level 9).
Defaults to true
.
content optional
Example: Hello
The content of the message. Maximum message size of 10000 bytes.
stream_id optional
Example: 42
The ID of the stream to access.
Response
Example response
A typical successful JSON response may look like:
{
"msg": "",
"result": "success"
}
A typical JSON response for when one doesn't have the permission to
edit a particular message:
{
"code": "BAD_REQUEST",
"msg": "You don't have permission to edit this message",
"result": "error"
}