Mute a user
POST https://chat.zulip.org/api/v1/users/me/muted_users/{muted_user_id}
Mute a user from the perspective of the requesting
user. Messages sent by muted users will be automatically marked as read
and hidden for the user who muted them.
Muted users should be implemented by clients as follows:
- The server will immediately mark all messages sent by the muted
user as read. This will automatically clear any existing mobile
push notifications related to the muted user.
- The server will mark any new messages sent by the muted user as read
for the requesting user's account, which prevents all email and mobile
push notifications.
- Clients should exclude muted users from presence lists or other UI
for viewing or composing one-on-one direct messages. One-on-one direct
messages sent by muted users should be hidden everywhere in the Zulip UI.
- Channel messages and group direct messages sent by the muted
user should avoid displaying the content and name/avatar,
but should display that N messages by a muted user were
hidden (so that it is possible to interpret the messages by
other users who are talking with the muted user).
- Group direct message conversations including the muted user
should display muted users as "Muted user", rather than
showing their name, in lists of such conversations, along with using
a blank grey avatar where avatars are displayed.
- Administrative/settings UI elements for showing "All users that exist
on this channel or realm", e.g. for organization
administration or showing channel subscribers, should display
the user's name as normal.
Changes: New in Zulip 4.0 (feature level 48).
Usage examples
#!/usr/bin/env python3
import zulip
# Pass the path to your zuliprc file here.
client = zulip.Client(config_file="~/zuliprc")
# Mute a user, given the user's ID.
result = client.call_endpoint(url=f"/users/me/muted_users/{muted_user_id}", method="POST")
print(result)
curl -sSX POST https://chat.zulip.org/api/v1/users/me/muted_users/10 \
-u BOT_EMAIL_ADDRESS:BOT_API_KEY
Parameters
muted_user_id integer required in path
Example: 10
The ID of the user to mute/unmute.
Changes: Before Zulip 8.0 (feature level 188), bot users could not
be muted/unmuted, and specifying a bot user's ID returned an error response.
Response
Example response(s)
Changes: As of Zulip 7.0 (feature level 167), if any
parameters sent in the request are not supported by this
endpoint, a successful JSON response will include an
ignored_parameters_unsupported
array.
A typical successful JSON response may look like:
{
"msg": "",
"result": "success"
}
An example JSON response for when the user ID is the current
user's ID:
{
"code": "BAD_REQUEST",
"msg": "Cannot mute self",
"result": "error"
}
An example JSON response for when the user is nonexistent or inaccessible:
{
"code": "BAD_REQUEST",
"msg": "No such user",
"result": "error"
}
An example JSON response for when the user is already muted:
{
"code": "BAD_REQUEST",
"msg": "User already muted",
"result": "error"
}