Pular para o conteúdo principal

HTTP

Visão Geral

O componente HTTP realiza chamadas por meio do protocolo HTTP utilizando os métodos GET, POST, PUT, PATCH e DELETE.

Configuração

Aqui estão os parâmetros gerais para a configuração do componente. Todos os parâmetros de campos de texto aceitam o uso de variáveis. Parâmetros que suportam expressões de template estão marcados com (Tmpl).

Informação adicional

O uso de variáveis em parâmetros de campos de texto é feito utilizando a expressão {{var.nome_da_variavel}}. Para saber mais sobre o uso de variáveis na criação de integrações, acesse a seção Canvas de integrações.

Alguns parâmetros suportam expressões de template para utilização de valores dinâmicos. Para saber mais sobre o funcionamento dessa linguagem e como utilizar expressões de template para referenciar dados para valores dinâmicos, acesse a seção Go Template de integrações.

Parâmetros

  • ID do Componente: Obrigatório. Identificador do componente no fluxo de integração.
Informação adicional

Os IDs são únicos por fluxo. Não é possível ter mais de um componente com o mesmo ID.

O ID do Componente não pode conter espaços, deve iniciar com número e pode conter apenas letras sem acentos, números e o caractere _.

  • Nome: Rótulo opcional para identificar o componente visualmente no canvas.
  • Método: Obrigatório. Método utilizado para realizar a requisição HTTP. Opções: GET, POST, PUT, PATCH, DELETE
  • Payload: Corpo enviado na chamada http. O valor desde campo precisa obrigatoriamente ser a saída de algum componente já executado no fluxo, no formato id_do_componenteOut. Ex: buildPayloadOut
  • URL (Tmpl): Obrigatório. URL completa que será chamada. É possível misturar templates e variáveis. Ex: {{var.URL}}/{{.inputBody.URLDestino}}
  • Headers (Tmpl): Opcional. Headers que serão enviados na requisição HTTP. Aceita um json com chave e valores. Ex: {"Authorization": "Bearer xxxxxxxxx", "MessageId": "xxxxxx"}
  • Ignorar validação SSL: Obrigatório. Quando habilitado, o client aceitará qualquer certificado do servidor.
  • Formato de retorno: Obrigatório. Opções: JSON, XML
  • Converter retorno: Obrigatório. Quando selecionado "Sim", o Dhuo armazenará o body de retorno da API em um objeto que será acessível em outros componentes (Ex: ). Quado selecionado "Não", o Dhuo armazenará o body de retorno da API em formato String não acessível em outros componentes.
  • Timeout de requisição: Obrigatório. Define o tempo limite da chamada à API.
  • Configurar Arquivo SSL/TLS: Opcional. Permite informar os arquivos para conexão SSL/TLS.
  • Certificado: Selecione na lista o certificado que deseja que seja usado na chamada https.
  • Chave pública: Selecione na lista a chave pública que deseja que seja usada na chamada https.
  • Propagar Trace ID: Quando habilitado, propaga o trace id no header da chamada HTTP para melhorar a observabilidade. Necessário habilitar a observabilidade no cluster.

Saída

Após a execução do componente, uma estrutura chave-valor será gerada com os dados de saída. Os dados podem ser acessados pelo contexto de execução em outros componentes em etapas posteriores do fluxo a partir da sintaxe .id_do_componenteOut.atributo_da_estrutura, onde:

  • id_do_componente: valor configurado do parâmetro ID do Componente
  • Out: sufixo padrão obrigatório
  • atributo_da_estrutura: atributo retornado na estrutura chave-valor de saída da execução do componente
Atenção!

Caso ocorra algum erro durante a execução do componente, a estrutura chave-valor de saída não é gerada.

Aqui estão os atributos gerais da estrutura de saída do componente:

  • header: Na estrutura "header" conterá todos os campos que a API retornou no header do HTTP. Também dentro do header haverá o campo "httpStatus" com o http code retornado, em formato string.
  • body: Na estrutura "body" conterá toda a estrutura JSON/XML retornada no body do HTTP. O formato de retorno do conteúdo dependerá de como foi configurado o campo "Converter retorno":
    • caso seja Sim, o retorno será convertido em JSON e seus campos serão acessíveis na estrutura chave-valor de saída do componente
    • caso seja Não, o retorno será armazenado como um texto (string) dentro do campo body

Exemplo - Converter retorno = Sim:

// ID do Componente: httpStep
{
"httpStepOut": {
"header": {
"httpStatus": "200"
},
"body": {
"tag": "valor"
}
}
}

Exemplo - Converter retorno = Não:

// ID do Componente: httpStep
{
"httpStepOut": {
"header": {
"httpStatus": "200"
},
"body": "{\"tag\": \"valor\"}"
}
}