> ## Documentation Index
> Fetch the complete documentation index at: https://docs.leavo.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Listar Conversas

> Retorna lista paginada de conversas

## Query Parameters

<ParamField query="channel_id" type="string">
  Filtrar por ID do canal
</ParamField>

<ParamField query="status" type="string">
  Filtrar por status: `all`, `unread`, `active`, `ai_active`, `agent_active`
</ParamField>

<ParamField query="search" type="string">
  Buscar por nome ou telefone do lead
</ParamField>

<ParamField query="limit" type="integer" default="50">
  Limite de resultados
</ParamField>

<ParamField query="offset" type="integer" default="0">
  Deslocamento para paginação
</ParamField>

## Response

<ResponseField name="conversations" type="array">
  Lista de conversas
</ResponseField>

<ResponseField name="total" type="integer">
  Total de conversas
</ResponseField>

<ResponseField name="page" type="integer">
  Página atual (baseado no offset)
</ResponseField>

<ResponseField name="limit" type="integer">
  Limite usado
</ResponseField>

<Expandable title="Propriedades da Conversa">
  <ResponseField name="lead_id" type="string">
    UUID do lead
  </ResponseField>

  <ResponseField name="lead_name" type="string">
    Nome do lead
  </ResponseField>

  <ResponseField name="lead_phone" type="string">
    Telefone do lead
  </ResponseField>

  <ResponseField name="last_message" type="string">
    Última mensagem
  </ResponseField>

  <ResponseField name="last_message_time" type="string">
    Hora da última mensagem
  </ResponseField>

  <ResponseField name="last_message_role" type="string">
    Quem enviou: `user`, `assistant`, `agent`
  </ResponseField>

  <ResponseField name="unread_count" type="integer">
    Número de mensagens não lidas
  </ResponseField>

  <ResponseField name="is_ai_active" type="boolean">
    Se a IA está ativa nesta conversa
  </ResponseField>

  <ResponseField name="is_active" type="boolean">
    Se a conversa está ativa
  </ResponseField>
</Expandable>

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET "https://api.leavo.ai/backend/conversations?status=unread&limit=20" \
    -H "Authorization: Bearer sua_chave_aqui"
  ```

  ```javascript JavaScript theme={null}
  const params = new URLSearchParams({
    status: 'unread',
    limit: '20'
  });

  const response = await fetch(
    `https://api.leavo.ai/backend/conversations?${params}`,
    {
      headers: {
        'Authorization': 'Bearer sua_chave_aqui'
      }
    }
  );

  const data = await response.json();
  ```

  ```python Python theme={null}
  import requests

  response = requests.get(
      'https://api.leavo.ai/backend/conversations',
      params={
          'status': 'unread',
          'limit': 20
      },
      headers={'Authorization': 'Bearer sua_chave_aqui'}
  )

  data = response.json()
  ```
</RequestExample>

<ResponseExample>
  ```json 200 OK theme={null}
  {
    "conversations": [
      {
        "lead_id": "550e8400-e29b-41d4-a716-446655440000",
        "lead_name": "João Silva",
        "lead_phone": "+5511999999999",
        "last_message": "Olá, gostaria de mais informações",
        "last_message_time": "2024-01-15T10:30:00Z",
        "last_message_role": "user",
        "unread_count": 3,
        "is_ai_active": true,
        "is_active": true
      },
      {
        "lead_id": "550e8400-e29b-41d4-a716-446655440001",
        "lead_name": "Maria Santos",
        "lead_phone": "+5511988888888",
        "last_message": "Obrigado pelo atendimento!",
        "last_message_time": "2024-01-15T09:00:00Z",
        "last_message_role": "user",
        "unread_count": 1,
        "is_ai_active": false,
        "is_active": true
      }
    ],
    "total": 100,
    "page": 0,
    "limit": 20
  }
  ```
</ResponseExample>
