List open streams

October 12, 2026 (November 1, 2026)

Table of contents

  1. Request Headers
  2. Query Parameters
  3. Responses
  4. Model
  5. Examples
  6. Try It

List the chat streams open on a Muse account, see GET /chats/chatId/stream. Each account can have about 50 streams open at the same time.

The count is approximate. A connection you close is noticed within about a minute, so right after a quick burst of reconnects the list can show more streams than are really open. Keep one stream per chat.

A stream that fails also shows in your usage stats (bot=muse) as model muse-stream, with status failed or dropped. Streams that open normally do not appear there, so this list is the place to spot a reconnect loop.

https://api.useapi.net/v1/muse/chats/streams?email=email

Request Headers
Authorization: Bearer {API token}
Query Parameters
  • email is optional when the API token has one Muse account, and required when it has more. URL-encode it.
Responses
  • 200 OK

    {
      "email": "[email protected]",
      "count": 2,
      "limit": 50,
      "approximate": true,
      "streams": [
        {
          "chatId": "c-u12345-email:[email protected]:30db952d-8996-4e58-b679-cd469ce6d711-bot:muse",
          "opened": "2026-10-13T03:16:03.120Z",
          "seen": "2026-10-13T03:21:03.402Z"
        },
        {
          "chatId": "c-u12345-email:[email protected]:272b73f4-6fcb-42c2-9ec7-75cc0c020940-bot:muse",
          "opened": "2026-10-13T03:18:41.877Z",
          "seen": "2026-10-13T03:18:41.877Z"
        }
      ]
    }
    
  • 400 Bad Request — the token has more than one Muse account and email is missing.

    {
      "error": "Pass email: this token has 3 Muse accounts",
      "code": 400
    }
    
  • 401 Unauthorized

    Invalid API token.

    {
      "error": "useapi.net ⁝ Unauthorized",
      "code": 401
    }
    
  • 404 Not Found — the account named by email is not added.

    {
      "error": "Account [email protected] is not configured",
      "code": 404
    }
    
Model
{ // TypeScript, all fields are optional
  email: string
  count: number             // open streams, approximate
  limit: number             // about how many streams the account can have open
  approximate: true
  streams: {
    chatId: string          // the chat the stream follows
    opened: string          // ISO 8601, when it opened
    seen: string            // ISO 8601, when the connection last reported in (about every 5 minutes while open)
  }[]
  error?: string            // errors only
  code?: number             // errors only
}
Examples
  • curl -H "Authorization: Bearer …" \
         "https://api.useapi.net/v1/muse/chats/streams?email=example%40gmail.com"
    
  • const token = "API token";
    const email = "Previously added account email";
    const apiUrl = `https://api.useapi.net/v1/muse/chats/streams?email=${encodeURIComponent(email)}`;
    const response = await fetch(apiUrl, {
      headers: {
        "Authorization": `Bearer ${token}`,
      },
    });
    console.log("response", response.status, await response.json());
    
  • import requests
    token = "API token"
    email = "Previously added account email"
    apiUrl = "https://api.useapi.net/v1/muse/chats/streams"
    headers = {
        "Authorization" : f"Bearer {token}"
    }
    response = requests.get(apiUrl, headers=headers, params={"email": email})
    print(response, response.json())
    
Try It