> ## 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.

# Dimensões

> Tabelas de catálogo para enriquecer suas consultas de fatos: agentes, equipes, templates, fluxos, canais e nós de fluxo.

# Dimensões

As dimensões são pequenas tabelas de catálogo que descrevem as entidades referenciadas pelos seus fatos. As tabelas de fatos já trazem os nomes mais comuns inline (`agent_name`, `poll_name`, `team_name`…), então você só precisa de um join com uma dimensão quando quer atributos além do nome — o email de um agente, o status de aprovação de um HSM, a configuração de IA de um nó.

## dim\_agents

Uma linha por conta de agente.

| Coluna       | Tipo   | Descrição                                                   |
| ------------ | ------ | ----------------------------------------------------------- |
| `id`         | Int32  | Identificador do agente (faz join com `agent_id` nos fatos) |
| `company_id` | Int32  | Sua empresa (filtrada automaticamente)                      |
| `first_name` | String | Nome                                                        |
| `last_name`  | String | Sobrenome                                                   |
| `email`      | String | Email do agente                                             |
| `active`     | Bool   | Se o agente está disponível (online) no momento             |
| `agent_type` | String | Papel: `AGENT`, `ADMIN` ou `SUPERVISOR`                     |

## dim\_teams

Uma linha por equipe.

| Coluna       | Tipo   | Descrição               |
| ------------ | ------ | ----------------------- |
| `id`         | Int32  | Identificador da equipe |
| `company_id` | Int32  | Sua empresa             |
| `name`       | String | Nome da equipe          |

## dim\_tags

Uma linha por tag (fila/grupo dentro de uma equipe).

| Coluna       | Tipo   | Descrição                    |
| ------------ | ------ | ---------------------------- |
| `id`         | Int32  | Identificador da tag         |
| `company_id` | Int32  | Sua empresa                  |
| `name`       | String | Nome da tag                  |
| `team_id`    | Int32  | Equipe à qual a tag pertence |

## dim\_agent\_tags

Uma linha por atribuição agente–tag — quais agentes trabalham em quais filas.

| Coluna       | Tipo   | Descrição       |
| ------------ | ------ | --------------- |
| `agent_id`   | Int32  | O agente        |
| `company_id` | Int32  | Sua empresa     |
| `tag_id`     | Int32  | A tag atribuída |
| `tag_name`   | String | Nome da tag     |
| `team_id`    | Int32  | Equipe da tag   |
| `team_name`  | String | Nome da equipe  |

## dim\_hsms

Uma linha por HSM (template de WhatsApp).

| Coluna          | Tipo   | Descrição                                                                                                                                                                       |
| --------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`            | Int32  | Identificador do template (faz join com `hsm_id` nos fatos)                                                                                                                     |
| `company_id`    | Int32  | Sua empresa                                                                                                                                                                     |
| `name`          | String | Nome do template                                                                                                                                                                |
| `status`        | String | Status do ciclo de vida: `APPROVED`, `PROCESSING`, `REJECTED`, `PAUSED`, `DISABLED`, `ARCHIVED`, `PENDING_DELETION`                                                             |
| `category`      | String | Categoria da Meta: `MARKETING`, `UTILITY`, `AUTHENTICATION`, além de categorias legadas em templates mais antigos (`ACCOUNT_UPDATE`, `ALERT_UPDATE`, `TRANSACTIONAL`, `OTP`, …) |
| `template_type` | String | `TEXT`, `RICH` ou `MEDIA`                                                                                                                                                       |
| `content`       | String | Conteúdo de texto do template                                                                                                                                                   |
| `provider_id`   | String | ID do template na Meta                                                                                                                                                          |

## dim\_polls

Uma linha por **versão** de fluxo. Quando você edita um fluxo no editor, uma nova versão (novo `poll_id`) é criada; `original_poll_id` agrupa todas as versões do mesmo fluxo lógico.

| Coluna             | Tipo   | Descrição                                                           |
| ------------------ | ------ | ------------------------------------------------------------------- |
| `poll_id`          | Int32  | Identificador da versão do fluxo (faz join com `poll_id` nos fatos) |
| `poll_name`        | String | Nome do fluxo                                                       |
| `original_poll_id` | Int32  | Identificador do fluxo através das versões                          |
| `version`          | UInt64 | Número da versão                                                    |
| `hidden`           | Bool   | Se esta versão está oculta na plataforma                            |
| `company_id`       | Int32  | Sua empresa                                                         |

<Note>
  Para analisar um fluxo ao longo de suas edições, agrupe os fatos por `original_poll_id` através desta dimensão, em vez de pelo `poll_id` bruto.
</Note>

## dim\_channels

Uma linha por linha de WhatsApp.

| Coluna          | Tipo       | Descrição                                                    |
| --------------- | ---------- | ------------------------------------------------------------ |
| `company_id`    | Int32      | Sua empresa                                                  |
| `channel_id`    | Int32      | Identificador do canal (faz join com `channel_id` nos fatos) |
| `whatsapp_line` | String     | O número de telefone da linha                                |
| `display_name`  | String     | O nome de exibição da linha                                  |
| `created_at`    | DateTime64 | Quando a linha foi criada                                    |

## dim\_poll\_nodes

Uma linha por nó de cada versão de fluxo — a estrutura por trás de [`fact_treble_session_nodes`](/pt/docs/data-warehouse-v2/fact-treble-session-nodes). Para nós de IA, inclui a configuração completa do agente de IA.

| Coluna                      | Tipo   | Descrição                                                                                                                        |
| --------------------------- | ------ | -------------------------------------------------------------------------------------------------------------------------------- |
| `node_id`                   | Int32  | Identificador do nó (faz join com `node_id` / `last_node_id` nos fatos)                                                          |
| `company_id`                | Int32  | Sua empresa                                                                                                                      |
| `poll_id`                   | Int32  | Versão do fluxo à qual o nó pertence                                                                                             |
| `node_type`                 | String | Tipo do nó: `QUESTION`, `AI_TASK_AUTOMATOR`, `AI_AGENT`, `WHATSAPP_FLOW`, `META_EVENTS`, `HELPDESK_INTEGRATION`, entre outros    |
| `question_id`               | Int32  | Identificador da pergunta, quando o nó faz uma; `0` caso contrário                                                               |
| `question_text`             | String | O texto da pergunta                                                                                                              |
| `question_type`             | String | `OPEN` (texto livre), `CLOSED` (opções predefinidas) ou `AGENT` (transfere para um agente); vazio para nós que não são perguntas |
| `hsm_id`                    | Int32  | Template HSM que o nó envia, se houver; `0` caso contrário                                                                       |
| `ai_automator_id`           | Int64  | Agente de IA configurado no nó, se houver; `0` caso contrário                                                                    |
| `ai_automator_name`         | String | Nome do agente de IA                                                                                                             |
| `ai_automator_description`  | String | Descrição do agente de IA                                                                                                        |
| `ai_automator_version`      | Int32  | Última versão do agente de IA vinculado a este nó                                                                                |
| `ai_automator_active`       | Bool   | Se essa última versão está ativa                                                                                                 |
| `ai_automator_tools`        | String | Ferramentas habilitadas para o agente de IA (JSON)                                                                               |
| `ai_automator_instructions` | String | As instruções do agente de IA                                                                                                    |

## Exemplo: enriquecer um funil com o texto dos nós

```sql theme={null}
SELECT
    f.node_id,
    n.node_type,
    n.question_text,
    uniqExact(f.session_id) AS conversations_reached
FROM fact_treble_session_nodes AS f
LEFT JOIN dim_poll_nodes AS n
    ON n.company_id = f.company_id AND n.poll_id = f.poll_id AND n.node_id = f.node_id
WHERE f.poll_id = {your_poll_id}
  AND f.entered_at >= today() - 30
GROUP BY f.node_id, n.node_type, n.question_text
ORDER BY conversations_reached DESC
```
