> For the complete documentation index, see [llms.txt](https://help.hyperflow.global/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.hyperflow.global/docs/builder-hyperflow/gerenciamento-de-aplicativos/fluxos/acao/supabase.md).

# Supabase

O módulo **Supabase** permite consultar, inserir, atualizar ou remover dados em um banco de dados Supabase, ou chamar uma função personalizada (RPC) cadastrada no seu projeto, sem sair do fluxo.

{% hint style="danger" %}
A conexão com o Supabase usada por este módulo tem **acesso total ao banco de dados**, ignorando as regras de segurança por linha (RLS) configuradas no seu projeto. Sempre preencha o campo **Filtros** com uma condição específica nas operações de Atualizar e Remover — deixá-lo vazio pode afetar **todas as linhas da tabela**.
{% endhint %}

**📷 Inserir print:** visão geral do módulo Supabase na área de trabalho do fluxo

## 🧭 Como acessar

1. No menu lateral, clique em **Gerenciamento de aplicativos**.
2. Em seguida, clique em **Fluxos**.
3. Abra ou crie um fluxo e acesse a área de trabalho do fluxo.
4. No painel de módulos, localize a categoria **Ação**.
5. Arraste o módulo **Supabase** para a área de trabalho do fluxo.

**📷 Inserir print:** painel de módulos com a categoria Ação expandida e o módulo Supabase visível

{% hint style="warning" %}
**Antes de usar este módulo:** é necessário ter uma integração do tipo **Supabase** já cadastrada, com o endereço do projeto e a chave de acesso.
{% endhint %}

## 🔍 Conhecendo o módulo

Ao clicar duas vezes no módulo na área de trabalho do fluxo, um painel de configuração é aberto na lateral da tela.

**📷 Inserir print:** painel de configuração do módulo Supabase aberto

### 🔌 Integração

Selecione a integração Supabase já cadastrada.

**📷 Inserir print:** campo Integração com a credencial Supabase selecionada

### 🗂️ Fonte

Selecione a **tabela** ou a **função** do seu projeto Supabase com a qual deseja trabalhar. A lista é carregada automaticamente do seu projeto.

**📷 Inserir print:** campo Fonte com tabelas e funções disponíveis

### 🧩 Configuração — Tabelas

Ao selecionar uma tabela, escolha a **Operação**:

* **Listar** — busca vários registros.
* **Buscar um** — busca um único registro.
* **Inserir** — cria um novo registro.
* **Inserir/Atualizar vários** — cria ou atualiza vários registros de uma vez.
* **Atualizar** — edita registros existentes.
* **Remover** — exclui registros.

Dependendo da operação, preencha:

| Campo       | Quando aparece                               | O que preencher                                                |
| ----------- | -------------------------------------------- | -------------------------------------------------------------- |
| **Filtros** | Listar, Buscar um, Atualizar, Remover        | Condição em formato JSON para selecionar os registros afetados |
| **Dados**   | Inserir, Atualizar, Inserir/Atualizar vários | Os valores a serem gravados, em formato JSON                   |
| **Limite**  | Listar                                       | Quantidade máxima de registros retornados                      |

{% hint style="danger" %}
Nas operações **Atualizar** e **Remover**, sempre preencha o campo **Filtros** com uma condição específica (por exemplo, `{"id": "{{input.id}}"}`). Deixar o filtro vazio afeta todos os registros da tabela.
{% endhint %}

**📷 Inserir print:** configuração de uma operação em tabela, com Filtros preenchidos

### 🧩 Configuração — Funções

Ao selecionar uma função (RPC), os campos exibidos correspondem aos parâmetros esperados por ela, preenchidos automaticamente conforme a definição da função no seu projeto Supabase.

{% hint style="info" %}
Se a tabela selecionada tiver colunas de busca vetorial (embeddings), o módulo pode exigir também uma integração com a **OpenAI** para gerar o vetor de busca automaticamente.
{% endhint %}

**📷 Inserir print:** configuração de uma função com seus parâmetros

### 🔀 Saídas do módulo

O módulo tem duas saídas:

* **Sucesso** — a operação foi concluída, com o resultado disponível para os próximos módulos do fluxo.
* **Erro** — não foi possível concluir a operação (por exemplo, tabela/função inexistente, dados inválidos ou falha de conexão).

**📷 Inserir print:** módulo na área de trabalho do fluxo mostrando as saídas Sucesso e Erro

## 💡 Caso de uso

**Cenário:** uma empresa quer consultar o histórico de pedidos de um cliente, armazenado em uma tabela do Supabase.

**Configuração:**

1. Adicione o módulo **Supabase** ao fluxo.
2. Selecione a integração Supabase e a tabela "pedidos" como **Fonte**.
3. Na **Operação**, selecione **Listar**.
4. No campo **Filtros**, informe `{"telefone": "{{input.phone}}"}`.
5. Conecte a saída **Sucesso** a um módulo que use o resultado na conversa.

**Resultado:** o fluxo consulta automaticamente os pedidos do cliente pelo telefone informado.

## 📌 Dicas úteis

* Sempre preencha o campo **Filtros** com uma condição específica nas operações de Atualizar e Remover.
* Teste a operação com dados reais antes de publicar o fluxo em produção.
* Sempre conecte a saída **Erro** a algum tratamento, já que operações de banco de dados podem falhar por diversos motivos.
* Para usar busca vetorial (embeddings), tenha uma integração OpenAI configurada.

## 📝 Resumo

* O módulo **Supabase** consulta, insere, atualiza ou remove dados em tabelas, ou chama funções do seu projeto Supabase.
* A conexão usada tem acesso total ao banco — use sempre filtros específicos em Atualizar e Remover.
* Suporta busca vetorial (embeddings) integrada com a OpenAI.
* O módulo tem uma saída de **Sucesso** e uma de **Erro**.
