[Resolvido] Payload da Requisição HTTP a partir de uma variável


#1

Estou com um problema esquisito.
No Corpo da Requisição HTTP eu coloquei apenas uma variável que tem todo o payload montado previamente.
Mas a api não aceita, dá erro 400.
O retorno de erro apresenta vários caracteres extras ao conteúdo que eu montei, parecendo que existe um tratamento que o builder faz pra processar o conteúdo da variável.
Eu descobri isso pois se eu pegar o conteúdo do payload exibido pelo bot e testar a api, neste caso funciona.
Não é possível usar uma variável para montar todo o payload?
Preciso montar o payload fora pois ele é dinâmico!


[Resolvido] Corpo dinâmico da Requisição HTTP
#2

Existe uma limitação que encontrei neste caso do payload dinâmico.
O processamento dos valores das variáveis dentro do corpo retorna o resultado ainda dentro das aspas.
Ou seja, as variáveis devem ser usadas apenas pra retornar valores prontos e não um array de valores.
Isso é uma limitação bem grande, pois eu terei que fazer enumeras requisições com um corpo de tamanho 1 ao invés de usar um corpo com tamanho multidimensional conforme a demanda do bot.
Isso limita muito nosso trabalho sem falar no desperdício de processamento, requisições e tráfego.

Ao invés de eu poder fazer uma requisição assim:

{
  "values": [
    ["1a","1b","1c"],
    ["2a","2b","2c"],
    ["3a","3b","3c"]
]}

Terei que fazer 3 requisições assim:

{
  "values": [
    ["na","nb","nc"]
]}

#3

Olá @Jhoni_Desb,

basta construir a variável através de um Script JS e depois utilizá-la no lugar do body da requisição:

Veja meu exemplo:

  1. Crie uma ação do tipo Script JS que constrói um objeto JSON com diferentes tipos de propriedades, incluindo um vetor.

  1. Crie uma ação do tipo Requisição HTTP e utilizei o objeto retornado pela função anterior no corpo.

  1. Faça o teste e veja que tudo funciona corretamente


[Resolvido] Corpo dinâmico da Requisição HTTP
#4

Eu fiz isso, montei todo o corpo fora, mas acho que errei no excesso de aspas kkk.
É mais simples que eu pensava. Vou montar conforme você explicou e retorno aqui.
Obrigado.