zulip/templates/zerver/api/get-all-streams.md

1.6 KiB

Get all streams

Get all streams that the user has access to.

GET {{ api_url }}/v1/streams

Usage examples

{start_tabs} {tab|python}

{generate_code_example(python)|/streams:get|example}

{tab|js}

More examples and documentation can be found here.

const zulip = require('zulip-js');

// Pass the path to your zuliprc file here.
const config = {
    zuliprc: 'zuliprc',
};

zulip(config).then((client) => {
    // Get all streams that the user has access to
    client.streams.retrieve().then(console.log);
});

{tab|curl}

curl {{ api_url }}/v1/streams -u BOT_EMAIL_ADDRESS:BOT_API_KEY

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

curl {{ api_url }}/v1/streams?include_public=false \
    -u BOT_EMAIL_ADDRESS:BOT_API_KEY

{end_tabs}

Arguments

Note: The following arguments are all URL query parameters.

{generate_api_arguments_table|zulip.yaml|/streams:get}

Response

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:

{generate_code_example|/streams:get|fixture(200)}

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):

{generate_code_example|/streams:get|fixture(400)}