Remove subscriptions
Unsubscribe yourself or other users from one or more streams.
DELETE https://omegaletter.chat/api/v1/users/me/subcriptions
Usage examples
curl -X "DELETE" https://omegaletter.chat/api/v1/users/me/subscriptions \ -u BOT_EMAIL_ADDRESS:BOT_API_KEY \ -d 'subscriptions=["Denmark"]'
You may specify the principals
argument like so:
curl -X "DELETE" https://omegaletter.chat/api/v1/users/me/subscriptions \ -u BOT_EMAIL_ADDRESS:BOT_API_KEY \ -d 'subscriptions=["Denmark"]' \ -d 'principals=["ZOE@zulip.com"]'
Note: Unsubscribing another user from a stream requires administrative privileges.
#!/usr/bin/env python3 import zulip # Download ~/zuliprc-dev from your dev server client = zulip.Client(config_file="~/zuliprc-dev") # Unsubscribe from the stream "new stream" result = client.remove_subscriptions( ['new stream'] ) print(result) # Unsubscribe another user from the stream "new stream" result = client.remove_subscriptions( ['new stream'], principals=['newbie@zulip.com'] ) print(result)
More examples and documentation can be found here.
const zulip = require('zulip-js'); // Download zuliprc-dev from your dev server const config = { zuliprc: 'zuliprc-dev', }; zulip(config).then((client) => { // Unsubscribe from the stream "Denmark" const meParams = { subscriptions: JSON.stringify(['Denmark']), }; client.users.me.subscriptions.remove(meParams).then(console.log); // Unsubscribe Zoe from the stream "Denmark" const zoeParams = { subscriptions: JSON.stringify(['Denmark']), principals: JSON.stringify(['ZOE@zulip.org']), }; client.users.me.subscriptions.remove(zoeParams).then(console.log); });
Arguments
Argument | Example | Required | Description |
---|---|---|---|
subscriptions |
['Verona', 'Denmark'] |
Required | A list of stream names to unsubscribe from. This argument is called |
principals |
['ZOE@zulip.com'] |
Optional | A list of email addresses of the users that will be unsubscribed from the streams specified in the |
Return values
-
removed
: A list of the names of streams which were unsubscribed from as a result of the query. -
not_subscribed
: A list of the names of streams that the user is already unsubscribed from, and hence doesn't need to be unsubscribed.
Example response
A typical successful JSON response may look like:
{ "msg": "", "not_subscribed": [], "removed": [ "new stream" ], "result": "success" }
A typical failed JSON response for when the target stream does not exist:
{ "code": "STREAM_DOES_NOT_EXIST", "msg": "Stream 'nonexistent_stream' does not exist", "result": "error", "stream": "nonexistent_stream" }