List chats

October 12, 2026

Table of contents

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

List the chats of a Muse account, newest first. The list holds every chat on the account: the ones you start with POST /chats, the ones made in the muse.ai app, and the ones the jobs create, because every job is a Muse chat too. Any listed chatId works with the other chat endpoints.

https://api.useapi.net/v1/muse/chats?email=email&limit=limit&cursor=cursor

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.
  • limit is optional, the number of chats per page.
    Range: 1 to 100. Default: 50.
  • cursor is optional, the cursor from the previous page, to read the next one.
Responses
  • 200 OK

    {
      "email": "[email protected]",
      "chats": [
        {
          "chatId": "c-u12345-email:[email protected]:272b73f4-6fcb-42c2-9ec7-75cc0c020940-bot:muse",
          "title": "Write a sea story",
          "snippet": "Write a 600-word essay about lighthouses. Text only.",
          "status": "interrupted",
          "created": "2026-10-12T23:19:01.000Z",
          "updated": "2026-10-12T23:19:53.000Z"
        },
        {
          "chatId": "c-u12345-email:[email protected]:3b945e81-6112-4035-a14a-f1c8ac47c9ec-bot:muse",
          "title": "Animate image to video",
          "snippet": "Here's your video.",
          "status": "completed",
          "created": "2026-10-12T23:09:50.000Z",
          "updated": "2026-10-12T23:11:02.000Z"
        }
      ],
      "cursor": "v3:0:0:-:1791846958:1791846950:3b945e81-6112-4035-a14a-f1c8ac47c9ec"
    }
    

    cursor is null on the last page.

  • 400 Bad Request — the token has more than one Muse account and email is missing, or a parameter is invalid.

    {
      "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
    }
    
  • 503 Service Unavailable — Muse could not be reached. Retry shortly.

    {
      "error": "Could not connect to the Muse workspace of account [email protected] (…), please retry shortly",
      "code": 503
    }
    
  • 596 Account Error

    The account needs your attention, and it is paused until you add it again. You receive an email when this happens. There are two causes.

    Meta asks for a security check on the account. Sign in once at muse.ai in a browser, complete the check, then add the account again with POST /accounts using the same email and password. The API keeps using its session, so no new sign-in is needed.

    {
      "error": "Account [email protected]: Meta asks for a security check on account [email protected] (\"This account must complete a security checkpoint on the web\"). Sign in once at https://muse.ai in a browser, complete the check, then add the account again with POST /accounts",
      "code": 596
    }
    

    Or Muse refused to sign the account in again when its session needed renewing, most often because the password was changed. Add the account again with the current password.

    {
      "error": "Account [email protected]: Muse refused to sign in account [email protected] (…). Update its password with POST /accounts, or sign in at https://muse.ai to clear the block, then re-add it",
      "code": 596
    }
    
Model
{ // TypeScript, all fields are optional
  email: string
  chats: {
    chatId: string            // c-u<id>-email:<email>-chat:<Muse chat id>-bot:muse
    title: string | null      // the title Muse gave the chat
    snippet: string | null    // the start of the latest message
    status: string | null     // e.g. running, completed, interrupted
    created: string | null    // ISO 8601
    updated: string | null    // ISO 8601
    pinned?: true             // pinned in the muse.ai app
    archived?: true           // archived in the muse.ai app
  }[]
  cursor: string | null       // pass it as cursor for the next page, null on the last page
  error?: string              // errors only
  code?: number               // errors only
}
Examples
  • curl -H "Authorization: Bearer …" \
         "https://api.useapi.net/v1/muse/chats?email=example%40gmail.com&limit=10"
    
  • const token = "API token";
    const email = "Previously added account email";
    const apiUrl = `https://api.useapi.net/v1/muse/chats?email=${encodeURIComponent(email)}&limit=10`;
    const response = await fetch(apiUrl, {
      headers: {
        "Authorization": `Bearer ${token}`,
      },
    });
    const result = await response.json();
    console.log("response", response.status, result);
    
  • import requests
    token = "API token"
    email = "Previously added account email"
    apiUrl = "https://api.useapi.net/v1/muse/chats"
    headers = {
        "Authorization" : f"Bearer {token}"
    }
    response = requests.get(apiUrl, headers=headers, params={"email": email, "limit": 10})
    print(response, response.json())
    
Try It