Early bird discounts live! Claim your offer

list_support_conversations

List member support conversations, newest activity first, with optional status / assignee / unread filters.

Purpose

Triage the support inbox. Returns one row per conversation, newest activity first, each carrying the member's name, unread count and a preview of the last message — enough to decide what needs answering without a follow-up call per row.

Use get_support_conversation once you know which thread to open.

Member names and message previews are returned verbatim. Scrub them before forwarding anywhere outside the conversation with the creator.

Required ability

support-conversation:view-any

Input schema

{
  "type": "object",
  "properties": {
    "project_id": {
      "type": "string",
      "description": "Optional project UUID to narrow the result."
    },
    "status": {
      "type": "string",
      "enum": ["open", "pending", "snoozed", "resolved"],
      "description": "Conversation status filter."
    },
    "assigned_to": {
      "type": "string",
      "description": "Only conversations assigned to this team-member user UUID."
    },
    "unread_only": {
      "type": "boolean",
      "description": "Only conversations with messages the creator has not opened."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "description": "Maximum conversations to return per page (1..100)."
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "description": "1-indexed page number."
    }
  }
}

Output shape

{
  "data": [
    {
      "id": "sup_01HX...",
      "project_id": "prj_01HX...",
      "subscriber_id": "usr_01HX...",
      "member_name": "Jane Doe",
      "channel": "telegram",
      "status": "open",
      "assigned_to_user_id": null,
      "unread_count": 2,
      "blocked": false,
      "last_message_at": "2026-08-20T10:05:00Z",
      "last_message_preview": "My invite link expired before I could join"
    }
  ],
  "meta": {
    "page": 1,
    "limit": 25,
    "total": 7,
    "has_more": false
  }
}

Example prompts

"What support conversations are waiting on me?"

"Show me unread support threads for my Research Premium project."

"List support conversations assigned to nobody."

Failure modes

  • TOKEN_MISSING_ABILITY — token lacks support-conversation:view-any.
  • An empty data array is not an error. It means nothing matched, most often because status defaulted the caller's expectation — resolved threads are excluded only if you filter for open.

Caveats

  • last_message_preview is the raw last message body, which is null for a media message with no caption. A null preview does not mean an empty conversation.
  • Results span every project the token can reach unless you pass project_id.
  • blocked: true means inbound messages from that member are being dropped. The thread is history only.

How is this guide?

On this page

Subscriby is a product designed by you — for you.

No boardroom full of executives deciding what we ships next. Our roadmap always shaped by you with your feedback.

Share feedback or a request