Skip to content

Dados de Entrada

O runner de Dados de Entrada (DADOS_ENTRADA) é o componente core responsável por aplicar regras de validação estrutural sobre os dados recebidos na chamada HTTP de entrada antes que o fluxo prossiga para etapas de negócio.

Ele consome os parâmetros armazenados na transação inicial ($entrada), valida campos de query params ou do corpo da requisição contra regras de obrigatoriedade e Expressões Regulares (Regex). Caso qualquer validação falhe, o runner interrompe imediatamente a execução da sessão e sinaliza o erro para o orquestrador.


  1. Leitura da Transação

    O runner acessa os parâmetros de entrada gravados no contexto da sessão (entrada.queryParams e entrada.body).

  2. Validação de Query Params

    Se a validação de consulta estiver ativa, varre a lista de parâmetros configurados e compara seus valores contra as Expressões Regulares (Regex) esperadas.

  3. Validação de Corpo (Body)

    Se a validação do corpo estiver ativa, realiza o parse da estrutura enviada e valida a presença e o formato dos atributos contra as regras de Regex.

  4. Decisão do Processamento

    • Sucesso: Atualiza o indicador de validação de entrada na sessão e devolve o controle ao orquestrador para avançar para a próxima etapa do fluxo.

    • Falha: Lança uma exceção de entrada inválida, interrompendo a sessão com status 400 Bad Request.


Parâmetros e Formulário de Configuração

Section titled “Parâmetros e Formulário de Configuração”

Os parâmetros deste runner são configurados no formulário do Editor Visual e armazenados no documento de definição da etapa (DefinicaoDeEtapa):

Campo no Formulário / Atributo JSON Tipo Obrigatório Descrição
bdot:validaQuery Boolean Não Habilita ou desabilita a chave de validação sobre os query params da requisição.
bdot:queryParams String (JSON) Condicional Documento JSON que define a lista de atributos esperados na URL e suas respectivas Expressões Regulares (Regex) para validação. Obrigatório se bdot:validaQuery = true.
bdot:validaBody Boolean Não Habilita ou desabilita a chave de validação sobre o corpo (body) da requisição.
bdot:body String (JSON) Condicional Documento JSON que define os campos esperados no corpo da requisição e suas respectivas Expressões Regulares (Regex) de validação. Obrigatório se bdot:validaBody = true.

Abaixo está um exemplo da estrutura do mapa definicao gerado pelo formulário do Editor Visual para este runner:

definicao.json
{
"bdot:validaQuery": true,
"bdot:queryParams": "{\"status\": \"^(ATIVO|INATIVO)$\", \"pagina\": \"^[0-9]+$\"}",
"bdot:validaBody": true,
"bdot:body": "{\"cliente\": {\"cpf\": \"^\\\\d{11}$\", \"email\": \"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\\\.[a-zA-Z]{2,}$\"}}"
}