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

# fact_agent_conversations

> Conversas atendidas por agentes humanos no workspace de agentes.

# fact\_agent\_conversations

Cada linha é uma conversa atendida no workspace de agentes (Sales): quem a atendeu, como foi atribuída, quanto tempo o cliente esperou, como terminou e como o cliente a avaliou. Ela substitui a antiga `fact_conversations` — agora com **histórico completo** (a tabela antiga mantinha uma janela móvel de 3 meses) e mais detalhes de atribuição/transferência.

## Que perguntas ela responde?

* Quantas conversas cada agente/equipe atende, e como elas são resolvidas?
* Qual é o tempo de primeira resposta e como ele varia por equipe ou hora?
* Quais conversas foram transferidas, e quantas vezes?
* Qual CSAT os agentes recebem?
* Como a conversa chegou — de qual fluxo, inbound ou outbound?

## Colunas

| Coluna                      | Tipo       | Descrição                                                                                                                                                                                                                            |
| --------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `agent_conversation_id`     | Int32      | Identificador único da conversa                                                                                                                                                                                                      |
| `company_id`                | Int32      | Sua empresa (filtrada automaticamente)                                                                                                                                                                                               |
| `session_id`                | Int64      | O fluxo de conversa que fez a transferência para um agente (join com `fact_treble_sessions`); `0` se não houver                                                                                                                      |
| `contact_id`                | Int32      | Contato da Treble; `0` se não houver                                                                                                                                                                                                 |
| `created_at`                | DateTime64 | Quando a conversa entrou no workspace                                                                                                                                                                                                |
| `finished_at`               | DateTime64 | Quando foi resolvida; `NULL` se ainda aberta                                                                                                                                                                                         |
| `assigned_at`               | DateTime64 | Quando um agente foi atribuído; `NULL` se nunca atribuída                                                                                                                                                                            |
| `status`                    | String     | Status atual: `unassigned` (aguardando na fila), `assigned` (com um agente), `finished`                                                                                                                                              |
| `finish_type`               | String     | Como terminou: `MANUAL` (encerrada pelo agente) ou `AUTO` (encerrada automaticamente); vazio enquanto aberta                                                                                                                         |
| `rating`                    | Int32      | Avaliação de satisfação do cliente de 1 a 5; `0` se não avaliada                                                                                                                                                                     |
| `is_redirected`             | Bool       | `true` se a conversa foi transferida pelo menos uma vez                                                                                                                                                                              |
| `agent_id`                  | Int32      | Agente atualmente/por último responsável; `0` se não atribuída                                                                                                                                                                       |
| `agent_name`                | String     | Nome desse agente                                                                                                                                                                                                                    |
| `tag_id`                    | Int32      | Tag (fila/grupo) à qual a conversa pertence                                                                                                                                                                                          |
| `tag_name`                  | String     | Nome da tag                                                                                                                                                                                                                          |
| `team_id`                   | Int32      | Equipe dona da tag                                                                                                                                                                                                                   |
| `team_name`                 | String     | Nome da equipe                                                                                                                                                                                                                       |
| `channel_id`                | Int32      | Linha de WhatsApp                                                                                                                                                                                                                    |
| `direction`                 | String     | Origem `INBOUND` ou `OUTBOUND` do fluxo subjacente; vazio se não houver fluxo vinculado                                                                                                                                              |
| `poll_id`                   | Int32      | Fluxo que originou a conversa; `0` se não houver                                                                                                                                                                                     |
| `poll_name`                 | String     | Nome do fluxo                                                                                                                                                                                                                        |
| `transfer_count`            | UInt32     | Número de transferências                                                                                                                                                                                                             |
| `first_agent_message_at`    | DateTime64 | Primeira mensagem enviada por um agente; `NULL` se ainda não houver                                                                                                                                                                  |
| `first_response_sec`        | Int64      | Segundos entre a criação da conversa e a primeira mensagem de agente; `NULL` se ainda não houver mensagem de agente                                                                                                                  |
| `helpdesk_contact_id`       | String     | ID do contato no seu CRM, quando integrado                                                                                                                                                                                           |
| `contact_wa_id`             | String     | ID de WhatsApp do contato                                                                                                                                                                                                            |
| `transfer_waiting_time`     | Int32      | Limite configurado (minutos) de espera pelo agente dono do contato no CRM antes de atribuir ao pool. Valores especiais: `-1` = atribuir ao dono imediatamente, `-2` = esperar até o dono ficar online. `NULL` quando não configurado |
| `last_customer_interaction` | DateTime64 | Última mensagem do cliente                                                                                                                                                                                                           |
| `assign_type`               | String     | Como o agente a recebeu: `AUTO` (atribuída pela plataforma) ou `MANUAL`                                                                                                                                                              |
| `assignment_strategy`       | String     | Estratégia de atribuição por fluxo: `lowest_first`, `specific`, `owner` ou `random`; vazio quando se aplica o padrão da empresa                                                                                                      |
| `language`                  | String     | Idioma da conversa: `ES`, `PT`, `EN`, `FR`, `DE`, `IT`                                                                                                                                                                               |
| `channel`                   | String     | Tipo de canal (atualmente `WHATSAPP`)                                                                                                                                                                                                |
| `synced_at`                 | DateTime64 | Quando esta linha foi gravada/corrigida pela última vez                                                                                                                                                                              |

## Exemplos de consultas

### Volume e resolução por equipe, últimos 30 dias

```sql theme={null}
SELECT
    team_name,
    count()                                        AS conversations,
    countIf(status = 'finished')                   AS finished,
    round(avg(first_response_sec) / 60, 1)         AS avg_first_response_min,
    round(avgIf(rating, rating != 0), 2)           AS csat
FROM fact_agent_conversations
WHERE created_at >= today() - 30
GROUP BY team_name
ORDER BY conversations DESC
```

### Conversas transferidas mais de uma vez

```sql theme={null}
SELECT agent_conversation_id, agent_name, transfer_count, created_at
FROM fact_agent_conversations
WHERE created_at >= today() - 7
  AND transfer_count > 1
ORDER BY transfer_count DESC
```

<Note>
  Para ver a conversa completa com o bot que precedeu a transferência, faça join de `session_id` contra [`fact_treble_sessions`](/pt/docs/data-warehouse-v2/fact-treble-sessions) e [`fact_treble_session_messages`](/pt/docs/data-warehouse-v2/fact-treble-session-messages).
</Note>
