Get all streams

Get all streams that the user has access to.


Usage examples

#!/usr/bin/env python3

import zulip

# Download ~/zuliprc-dev from your dev server
client = zulip.Client(config_file="~/zuliprc-dev")

# Get all streams that the user has access to
result = client.get_streams()

# You may pass in one or more of the query parameters mentioned above
# as keyword arguments, like so:
result = client.get_streams(include_public=False)

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) => {
    // Get all streams that the user has access to


You may pass in one or more of the parameters mentioned above as URL query parameters, like so:

curl \


Note: The following arguments are all URL query parameters.

Argument Example Required Description
include_public false No

Include all public streams. Defaults to true.

include_subscribed false No

Include all streams that the user is subscribed to. Defaults to true.

include_all_active true No

Include all active streams. The user must have administrative privileges to use this parameter. Defaults to false.

include_default true No

Include all default streams for the user's realm. Defaults to false.


Return values

  • stream_id: The unique ID of a stream.
  • name: The name of a stream.
  • description: A short description of a stream.
  • invite-only: Specifies whether a stream is private or not. Only people who have been invited can access a private stream.

Example response

A typical successful JSON response may look like:

    "msg": "",
    "result": "success",
    "streams": [
            "description": "A Scandinavian country",
            "invite_only": false,
            "name": "Denmark",
            "stream_id": 1
            "description": "Yet another Italian city",
            "invite_only": false,
            "name": "Rome",
            "stream_id": 2
            "description": "Located in the United Kingdom",
            "invite_only": false,
            "name": "Scotland",
            "stream_id": 3
            "description": "A northeastern Italian city",
            "invite_only": false,
            "name": "Venice",
            "stream_id": 4
            "description": "A city in Italy",
            "invite_only": false,
            "name": "Verona",
            "stream_id": 5
            "description": "New stream for testing",
            "invite_only": false,
            "name": "new stream",
            "stream_id": 6

An example JSON response for when the user is not authorized to use the include_all_active parameter (i.e. because they are not an organization administrator):

    "code": "BAD_REQUEST",
    "msg": "User not authorized for this query",
    "result": "error"