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

# Importar CSV/Excel

> Suba um arquivo e o Brainchat infere automaticamente os tipos de coluna e cria a tabela.

# Importar CSV/Excel

Se você já tem os dados em uma planilha, a importação cria a tabela completa em poucos cliques. O Brainchat detecta automaticamente o tipo de cada coluna (boolean, CPF, CNPJ, e-mail, URL, telefone, moeda, número, data) com base nos valores.

***

## Formatos aceitos

| Formato                                       | Extensão |
| --------------------------------------------- | -------- |
| CSV (separado por vírgula ou ponto-e-vírgula) | `.csv`   |
| Excel                                         | `.xlsx`  |

A primeira linha do arquivo é considerada o **cabeçalho** (nome das colunas).

***

## Passo a passo

<Steps>
  <Step title="Iniciar importação">
    Em **Tabelas**, clique em **Nova Tabela → Importar CSV/Excel**.
  </Step>

  <Step title="Subir arquivo">
    Arraste o arquivo ou clique para selecionar. O Brainchat lê o arquivo no navegador (sem upload imediato) e mostra um preview das primeiras linhas.
  </Step>

  <Step title="Revisar schema inferido">
    Para cada coluna detectada, o sistema sugere:

    * **Nome** (slug gerado a partir do cabeçalho)
    * **Tipo inferido** — você pode trocar manualmente se quiser
    * **Obrigatória** e **pesquisável** — marque se aplicável

    ### Inferência automática de tipos

    O Brainchat analisa até 50 amostras por coluna e usa os seguintes padrões:

    | Tipo detectado | Critério                                             |
    | -------------- | ---------------------------------------------------- |
    | **Boolean**    | Valores como `true`, `false`, `sim`, `não`, `1`, `0` |
    | **CPF**        | 11 dígitos ou `xxx.xxx.xxx-xx`                       |
    | **CNPJ**       | 14 dígitos ou `xx.xxx.xxx/xxxx-xx`                   |
    | **E-mail**     | Padrão `usuario@dominio.tld`                         |
    | **URL**        | Começa com `http://` ou `https://`                   |
    | **Telefone**   | 10–13 dígitos, aceita `+`, `()`, `-`                 |
    | **Moeda**      | Prefixo `R$`, `$` ou `USD`                           |
    | **Número**     | Convertível para `Number`                            |
    | **Data**       | `AAAA-MM-DD` ou `DD/MM/AAAA`                         |
    | **Hora**       | `HH:MM` ou `HH:MM:SS`                                |
    | **Texto**      | Padrão (qualquer outro caso)                         |

    O critério de detecção é **80% das amostras** corresponderem ao padrão.
  </Step>

  <Step title="Configurar nome e ID">
    * Defina o **nome da tabela** e a **descrição**
    * Escolha a **coluna de ID** (ou ative `auto_id` para gerar automaticamente)
    * Defina **label** e **value**
  </Step>

  <Step title="Importar">
    Confirme. O Brainchat cria a tabela e insere todos os registros. O progresso aparece em tempo real.
  </Step>
</Steps>

***

## Atualizar uma tabela existente via CSV

Você também pode importar um CSV em uma tabela já existente para:

* **Adicionar novos registros** ao final
* **Atualizar registros existentes** (com base em uma coluna-chave que você escolhe — geralmente o ID)

No diálogo de importação, defina **"O que fazer com IDs existentes"**:

| Opção                    | Comportamento                               |
| ------------------------ | ------------------------------------------- |
| **Inserir todos**        | Sempre cria registros novos (pode duplicar) |
| **Atualizar se existir** | Compara pelo ID e atualiza os campos        |
| **Ignorar duplicatas**   | Pula registros com ID já existente          |

***

## Limites

* Tamanho máximo do arquivo: **10 MB**
* Recomendado: até **50 mil linhas** por importação
* Para volumes maiores, importe em lotes ou use a [API genérica](/dados/tabelas-api)

***

## Próximo passo

<Card title="Conectar via API" icon="plug" href="/dados/tabelas-api">
  Para dados que mudam com frequência, conecte uma fonte automática.
</Card>
