2018-01-11 01:43:08 +01:00
|
|
|
# Remove subscriptions
|
|
|
|
|
|
|
|
Unsubscribe yourself or other users from one or more streams.
|
|
|
|
|
|
|
|
`DELETE {{ api_url }}/v1/users/me/subcriptions`
|
|
|
|
|
|
|
|
## Usage examples
|
|
|
|
|
2018-09-17 16:27:32 +02:00
|
|
|
{start_tabs}
|
|
|
|
{tab|python}
|
2018-01-11 01:43:08 +01:00
|
|
|
|
2018-06-21 02:23:47 +02:00
|
|
|
{generate_code_example(python)|/users/me/subscriptions:delete|example}
|
2018-01-11 01:43:08 +01:00
|
|
|
|
2018-09-17 16:27:32 +02:00
|
|
|
{tab|js}
|
2018-01-11 01:43:08 +01:00
|
|
|
|
2018-01-13 23:20:46 +01:00
|
|
|
More examples and documentation can be found [here](https://github.com/zulip/zulip-js).
|
|
|
|
```js
|
|
|
|
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);
|
|
|
|
});
|
|
|
|
```
|
|
|
|
|
2018-09-17 16:27:32 +02:00
|
|
|
{tab|curl}
|
|
|
|
|
|
|
|
```
|
|
|
|
curl -X "DELETE" {{ api_url }}/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" {{ api_url }}/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.
|
2018-01-11 01:43:08 +01:00
|
|
|
|
2018-09-17 16:27:32 +02:00
|
|
|
{end_tabs}
|
2018-01-11 01:43:08 +01:00
|
|
|
|
2018-01-20 22:03:05 +01:00
|
|
|
## Arguments
|
|
|
|
|
2018-06-21 02:23:47 +02:00
|
|
|
{generate_api_arguments_table|zulip.yaml|/users/me/subscriptions:delete}
|
2018-01-20 22:03:05 +01:00
|
|
|
|
2018-01-11 01:43:08 +01:00
|
|
|
#### 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:
|
|
|
|
|
2018-06-21 02:23:47 +02:00
|
|
|
{generate_code_example|/users/me/subscriptions:delete|fixture(200)}
|
2018-01-11 01:43:08 +01:00
|
|
|
|
2018-02-16 20:25:59 +01:00
|
|
|
A typical failed JSON response for when the target stream does not exist:
|
2018-01-11 01:43:08 +01:00
|
|
|
|
2018-06-21 02:23:47 +02:00
|
|
|
{generate_code_example|/users/me/subscriptions:delete|fixture(400)}
|