Topic muting
This endpoint mutes/unmutes a topic within a stream that the current
user is subscribed to. Muted topics are displayed faded in the Zulip
UI, and are not included in the user's unread count totals.
PATCH https://z.labs.greyorange.com/api/v1/users/me/subscriptions/muted_topics
Usage examples
#!/usr/bin/env python3
import zulip
# Pass the path to your zuliprc file here.
client = zulip.Client(config_file="~/zuliprc")
# Mute the topic "boat party" in the stream "Denmark"
request = {
"stream": "Denmark",
"topic": "boat party",
"op": "add",
}
result = client.mute_topic(request)
# Unmute the topic "boat party" in the stream "Denmark"
request = {
"stream": "Denmark",
"topic": "boat party",
"op": "remove",
}
result = client.mute_topic(request)
print(result)
curl -sSX PATCH https://z.labs.greyorange.com/api/v1/users/me/subscriptions/muted_topics \
-u BOT_EMAIL_ADDRESS:BOT_API_KEY \
--data-urlencode stream=Denmark \
--data-urlencode topic=dinner \
--data-urlencode op=add
Parameters
stream string optional
Example: "Denmark"
The name of the stream to access.
stream_id integer optional
Example: 43
The ID of the stream to access.
topic string required
Example: "dinner"
The topic to (un)mute. Note that the request will succeed regardless of
whether any messages have been sent to the specified topic.
op string required
Example: "add"
Whether to mute (add
) or unmute (remove
) the provided topic.
Must be one of: "add"
, "remove"
.
Response
Example response
A typical successful JSON response may look like:
{
"msg": "",
"result": "success"
}
An example JSON response for when an add
operation is requested for a topic
that has already been muted:
{
"msg": "Topic already muted",
"result": "error"
}
An example JSON response for when a remove
operation is requested for a
topic that had not been previously muted:
{
"msg": "Topic is not muted",
"result": "error"
}