Delete a topic
Delete all messages in a topic.
POST https://z.labs.greyorange.com/api/v1/streams/{stream_id}/delete_topic
Topics are a field on messages (not an independent
data structure), so deleting all the messages in the topic
deletes the topic from Zulip.
Usage examples
#!/usr/bin/env python3
import zulip
# Pass the path to your zuliprc file here.
client = zulip.Client(config_file="~/zuliprc")
# Delete a topic given its stream_id
request = {
"topic_name": topic,
}
result = client.call_endpoint(
url=f"/streams/{stream_id}/delete_topic", method="POST", request=request
)
print(result)
curl -sSX POST https://z.labs.greyorange.com/api/v1/streams/1/delete_topic \
-u BOT_EMAIL_ADDRESS:BOT_API_KEY \
--data-urlencode 'topic_name=new coffee machine'
Parameters
stream_id integer required in path
Example: 1
The ID of the stream to access.
topic_name string required
Example: "new coffee machine"
The name of the topic to delete.
Response
Example response
A typical successful JSON response may look like:
{
"msg": "",
"result": "success"
}
Error when the user does not have permission
to delete topics in this organization:
{
"code": "UNAUTHORIZED_PRINCIPAL",
"msg": "Must be an organization administrator",
"result": "error"
}