Skip to main content
Os Endpoints Customizados permitem a criação, edição, exclusão e utilização de APIs próprias desenvolvidas em JavaScript, diretamente na plataforma Invenio. Essa funcionalidade oferece autonomia técnica para implementar regras de negócio, validações e integrações externas, sem depender de serviços intermediários. Com os endpoints customizados, é possível potencializar fluxos, IDRs e automações, garantindo maior flexibilidade, escalabilidade e controle sobre as integrações da operação.

Visão Geral

Os endpoints são executados sob demanda, a partir de chamadas externas realizadas por:
  • Flows dinâmicos;
  • IDRs/Chatbots, por meio da ação “API – Chamada Externa”;
  • Ferramentas externas, como Postman ou sistemas integrados.

Principais Benefícios

  • Flexibilidade total: Crie APIs sob medida para validações e regras específicas.
  • Integração inteligente: Enriqueça decisões em tempo real em flows e IDRs.
  • Agilidade: Reduza o tempo de implementação concentrando a lógica na plataforma.
  • Manutenção simplificada: Centralize a lógica em um único ponto.
Permissões de acesso:
Para realizar o CRUD (criação, edição, visualização e exclusão), o usuário deve possuir as permissões adequadas habilitadas em seu perfil no Invenio Center. Acesse Usuários - Permissões de página - Invenio Center e saiba mais.

Como Localizar

Para acessar os Endpoints Customizados:
  1. Acesse o Invenio Center.
  2. No canto superior direito, clique no ícone do seu perfil.
  3. Selecione a opção Integrações.
  4. Escolha a opção Endpoints Customizados.
Integrações - Invenio Center

Gerenciamento de Endpoints

Criação

1

Iniciar

Clique no botão + Criar endpoint.
2

Identificar

Informe o nome (obrigatório) e uma descrição clara sobre a finalidade.
3

Desenvolver

No editor de código, implemente a lógica em JavaScript (manipulação de dados, validações, chamadas externas).

Testes

Utilize ferramentas como o Postman para validar a estrutura da requisição, parâmetros, códigos de status e tempo de execução antes de publicar em produção.

Regras e Funcionamento

Palavras Reservadas

Não é permitido criar variáveis ou constantes com os seguintes nomes, pois são funções nativas do sistema:
  • logger
  • loggerHistory
  • response
  • request

Limitações de Execução

LimitaçãoRegraErro Retornado
Tempo Máximo10 segundos{ "error": "The JavaScript code took more than 10 seconds to execute" }
RetornoObrigatório via response(){ "error": "Endpoint has no data returned" }

Variáveis e Métodos Globais

Objeto request

Contém as informações da requisição recebida:
  • method: Método HTTP (GET, POST, etc.)
  • headers: Cabeçalhos da requisição
  • body: Corpo da requisição
  • query: Parâmetros da URL

Métodos Disponíveis

logger(data: any)

Registra informações no log para debugging.
logger({ data: request, tipo: "Chamada externa" });

response(data: object, status: number = 200, success: boolean = true)

Responsável por retornar a resposta do endpoint. Parâmetros:
  • data: objeto de retorno;
  • status: código HTTP da resposta (padrão: 200);
  • success: indica sucesso ou falha da execução.
Exemplos:
// Retorno de sucesso
return response({ success: true });

// Retorno de erro
return response({ error: true }, 400);

Bibliotecas Disponíveis

Para facilitar o desenvolvimento, é possível utilizar bibliotecas externas nos endpoints customizados. Após criar o endpoint, durante a edição, basta acessar a opção Editar dados e selecionar as bibliotecas desejadas.
NomeExemplo de usoDocumentação
Axiosaxios.get()Documentação
Day.jsdayjs().now()Documentação
Lodashlodash.sortBy()Documentação
Moment.jsmoment().now()Documentação

Gerenciamento dos Endpoints Customizados

Na tela inicial de Endpoints Customizados, é possível gerenciar todos os endpoints existentes no ambiente. Ao clicar no ícone de três pontos localizado ao lado de cada endpoint, são exibidas as seguintes opções:
  • Editar: Direciona para a tela principal de edição do código em JavaScript.
  • Deletar: Exclui permanentemente o endpoint do ambiente.

Boas práticas recomendadas

  • Sempre documente o objetivo do endpoint nas anotações;
  • Utilize logger() durante o desenvolvimento e remova logs excessivos em produção;
  • Valide entradas de dados antes de processá-las;
  • Padronize o formato das respostas;
  • Teste o endpoint via Postman antes de utilizá-lo em flows ou IDRs.

Usuários

Como configurar usuários

Ação de Chamada Externa

Como integrar endpoints no IDR

Webhook

Webhook Invenio

⁉️ Perguntas Frequentes (FAQ)

O tempo máximo de execução de um endpoint é de 10 segundos. Caso esse limite seja ultrapassado, o sistema retornará um erro de timeout.
Sim. É obrigatório retornar uma resposta utilizando o método response(). Caso nenhum retorno seja realizado, o endpoint exibirá um erro de ausência de dados.
Não. Você deve evitar as palavras reservadas: logger, loggerHistory, response e request. O uso delas para definir variáveis ou constantes resultará em erro.
Você pode utilizar o recurso de Anotações dentro do próprio endpoint para inserir descrições, observações ou exemplos de uso para outros desenvolvedores.