capi-utils

Funções guiadas para manipular JSON, arrays, objetos e textos no n8n sem precisar escrever código.

Package Information

Released: 11 mo ago
Downloads: 3 weekly / 8 monthly
Latest Version: 0.2.0
Author: Thawam Michels

Documentation

n8n-nodes-capi-utils

Custom node para o n8n que disponibiliza funções utilitárias de JavaScript focadas em manipulação de JSON, arrays, strings e expressões regulares – tudo sem precisar recorrer ao node Code para tarefas simples.

📦 Instalação

npm install n8n-nodes-capi-utils

Após a instalação, reinicie o n8n (se necessário) para carregar o novo node.

🚀 Como usar

  • Localização no editor: Nodes → Utility → CAPI Utils
  • Categoria: Utility
  • Compatibilidade: n8n >= 1.0.0

Passos básicos

  1. Adicione o node CAPI Utils ao seu fluxo.
  2. Use o assistente do node:
    • Passo 1 – Escolha o tipo de dado: Dados (JSON, arrays ou objetos) ou Textos (strings).
    • Passo 2 – Defina a ação desejada. Os campos seguintes mudam automaticamente para guiar o preenchimento.
    • Passo 3 – Informe o caminho (JSON path) de entrada e onde salvar o resultado.
  3. Execute o fluxo para ver o resultado dentro do próprio item (json) do n8n.

🧩 Funções disponíveis

Dados (JSON / Arrays / Objetos)

  • Filtrar itens por campo (filterByField)
  • Remover um campo (removeField)
  • Manter apenas alguns campos (pickFields)
  • Remover duplicados por campo (uniqueByField)
  • Ordenar pelo valor de um campo (sortByField)
  • Extrair valores de um campo (pluckField)
  • Contar quantos itens existem (countItems)
  • Pegar o primeiro item (firstItem)
  • Pegar o último item (lastItem)

Textos (strings)

  • Extrair com Regex (extractRegex)
  • Substituir tudo (replaceAll)
  • Slugificar (slugify)
  • Normalizar texto (normalizeText)
  • Extrair números (extractNumbers)
  • Transformar em maiúsculas (toUpperCase)
  • Transformar em minúsculas (toLowerCase)
  • Remover espaços extras nas pontas (trimWhitespace)
  • Compactar espaços duplicados (removeExtraSpaces)
  • Dividir texto por separador (splitBySeparator)
  • Verificar se contém um texto (containsText)

🛠 Exemplos rápidos

1. Remover campos indesejados

Suponha um array de objetos em {{$json["data"]}}. Configure:

  • Operação: Manipular JSON/Arrays
  • Função: Remover Campo
  • Propriedade de entrada: data
  • Propriedade de saída: data
  • Nome do campo: senha

O node retornará data sem o campo senha em cada objeto.

2. Gerar slug de um título

Com o texto em {{$json["text"]}}:

  • Operação: Manipular Strings
  • Função: Slugificar
  • Propriedade de entrada: text
  • Propriedade de saída: result

Resultado: {{$json["result"]}} conterá o slug (titulo-do-post).

3. Extrair números de uma string

  • Operação: Manipular Strings
  • Função: Extrair Números
  • Propriedade de entrada: text
  • Propriedade de saída: result

Useful para limpar códigos e telefones.

📁 Estrutura do projeto

n8n-nodes-capi-utils/
├── package.json
├── tsconfig.json
├── src/
│   ├── main.ts
│   └── nodes/
│       └── CapiUtils/
│           ├── CapiUtils.node.ts
│           └── CapiUtilsFunctions.ts
└── README.md

🧪 Scripts

  • npm run build – compila o TypeScript e copia os recursos para dist
  • npm run dev – executa o compilador em modo watch (útil durante o desenvolvimento)
  • npm run lint – validação com ESLint/Prettier

📤 Publicação no npm

  1. Rode npm run build para compilar.
  2. Garanta que o campo version no package.json foi incrementado.
  3. Execute npm publish.

✍️ Autor

Licença: MIT (licença explícita será aplicada no momento da publicação).

Discussion