Listar Conversas

Listar as conversas de um workspace, com a atividade mais recente primeiro. Todo filtro restringe dentro do workspaceId, e q busca ao mesmo tempo no nome do contato, no e-mail do contato e no texto das mensagens. A paginação é por page/perPage em vez de cursor, então uma conversa cuja atividade muda entre duas requisições pode ser vista duas vezes ou ser pulada. Toda operação é delimitada pelo workspaceId obrigatório. Uma API key com escopo de workspace que nomeie qualquer outro workspace é recusada com 403 antes de qualquer consulta rodar, então uma API key de workspace só consegue alcançar o próprio workspace.

GET/api/v1/chat/conversations
X-API-Key<token>

Sua API key do Studio, pessoal ou com escopo de workspace. Gere uma em Settings e depois API Keys. As operações que rejeitam API keys de workspace dizem isso na própria descrição.

Em: header

Parâmetros de query

page?integer

Número da página, começando em 1. O padrão é 1.

Padrão1
Intervalo1 <= value <= 9007199254740991
perPage?integer

Itens por página, entre 1 e 100. O padrão é 25.

Padrão25
Intervalo1 <= value <= 100
workspaceId*string

Workspace cujas conversas são listadas.

Tamanho1 <= length
status?string

Restringir a um único status de ciclo de vida. Omita para incluir todos os status.

Valor em"open" | "resolved" | "pending" | "snoozed" | "waiting_csat"
assigneeId?string

Restringir às conversas atribuídas a este agente.

Tamanho1 <= length
inboxId?string

Restringir às conversas nesta caixa de entrada.

Tamanho1 <= length
teamId?string

Restringir às conversas mantidas por esta equipe.

Tamanho1 <= length
priority?string

Restringir a uma única prioridade.

Valor em"none" | "low" | "medium" | "high" | "urgent"
q?string

Busca sem diferenciar maiúsculas de minúsculas no nome do contato, no e-mail do contato e no texto de qualquer mensagem da conversa.

Tamanho1 <= length <= 200

Corpo da resposta

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://agent-studio.seeyu.ai/api/v1/chat/conversations?workspaceId=string" \  -H "X-API-Key: YOUR_API_KEY"
{
  "conversations": [
    {
      "id": "conv_01J9M4Q0X6R7",
      "workspaceId": "ws_01J8F2K3N5P7",
      "inboxId": "inb_01J8F2K3N5P8",
      "contactId": "cnt_01J8F2K3N5P9",
      "assigneeId": "usr_01J8F2K3N5PA",
      "teamId": null,
      "status": "open",
      "priority": "high",
      "lastActivityAt": "2026-08-28T14:22:05.000Z",
      "createdAt": "2026-08-27T09:10:44.000Z",
      "contact": {
        "id": "cnt_01J8F2K3N5P9",
        "name": "Ana Ribeiro",
        "email": "ana@example.com",
        "phone": "+5511987654321",
        "avatarUrl": null
      },
      "inbox": {
        "id": "inb_01J8F2K3N5P8",
        "name": "Support — WhatsApp",
        "channelType": "whatsapp"
      },
      "assignee": {
        "id": "usr_01J8F2K3N5PA",
        "name": "Marcos Lima",
        "avatarUrl": null
      },
      "lastMessage": {
        "id": "msg_01J9M4Q0X6RA",
        "content": "Thanks, that fixed it!",
        "messageType": "incoming",
        "createdAt": "2026-08-28T14:22:05.000Z"
      },
      "agentLastSeenAt": "2026-08-28T14:20:00.000Z",
      "additionalAttributes": null,
      "customAttributes": {
        "plan": "pro"
      },
      "unreadCount": 2
    }
  ],
  "pagination": {
    "page": 1,
    "perPage": 25,
    "total": 1,
    "totalPages": 1
  }
}
{
  "error": "Invalid input: expected string, received undefined",
  "details": [
    {
      "code": "invalid_type",
      "expected": "string",
      "path": [
        "phone"
      ],
      "message": "Invalid input: expected string, received undefined"
    }
  ]
}
{
  "error": "Unauthorized"
}
{
  "error": "API key is not authorized for this workspace"
}
{
  "error": "Rate limit exceeded",
  "message": "API rate limit exceeded. Please retry after 2026-09-13T12:00:00.000Z",
  "retryAfter": 1789286400000
}
{
  "error": "Internal server error",
  "requestId": "req_01J9Z2K3M4N5P6Q7R8S9T0"
}