Skip to main content

boa tarde,


preciso fazer uma requisição enviando minha variável CNPJ como um array, porem não estou conseguindo, passar essa variável para o modelo em que a api recebe. alguém teria uma sugestão de como consigo deixar o minha variável CNPJ igual ao modelo abaixo? E eu preciso passar essa variável pelo body em uma requisição POST.


Pode ser erro do banco ou api que está enviando, tenta tirar as ] e as aspas, se quiser manda o link da doc api a gente da uma olhadinha aqui.


@Marcos_Rodrigues1 a api tem que receber um array contendo [“cnpj”], a chave é referente ao array e a aspas faz parte do request, sem ela a api não retorna valor. Eu preciso transformar a entrada de usuário CNPJ igual ao modelo do print e passar esse array no body da requisição.


Hey @Rangel.Alves! Como vai?



Essa me parece uma missão para o @BrunoC! Ele entende tudo de programação e acredito que vai conseguir te ajudar 😊


olá @Rangel.Alves



Se você quer só transformar o CNPJ (String) para uma String no format d"######"], você pode usar o script abaixo:



function run(cnpj){

var value = "";

var value = value.concat("a",'"', cnpj, '"', "]");

return value;

}

Olá, @BrunoC.


Eu preciso passar no body da requisição um objeto json de uma lista de strings. essa lista de string seria o meu cnpj. Eu teria que passar essa variável CNPJ com as aspas para um array e enviar esse array no body da requisição.



@Rangel.Alves o Blip só trafega Strings fora da área de Scripts. Se você tem um objeto/array, ele automaticamente converte para String.



O que o script acima faz, é justamente simular um array transformado em string.



Você também pode fazer assim:



function run(cnpj){

var objeto = e];

objeto.push(cnpj)

return objeto; //vai retornar um String t"######"], no final das contas

}



A menos que eu esteja entendendo errado o seu problema/dúvida, isso deveria resolver.


@BrunoC O endpoint está esperando receber um array. Então, se eu colocar no body qualquer outro tipo de objeto, não vai dar certo.


Mas muito obrigado pelo suporte.


Rangel, ao meu ver, por baixo dos panos, é tudo Strings mesmo.



Como você está fazendo a sua requisição no Builder? O body, no caso. Está criando um JSON e preenchendo lá os campos? Poderia mandar aqui, por favor?


Como tenho pouco conhecimento em apis, a minha esta da seguinte forma.





e o body estou passando apenas o {{cnpj}}


image


Você tentou passar o returno disso aqui?




Tentei, coloquei o retorno do script na variável cnpj1, e passei no body {{cnpj1}}.


Existe algum método que eu consiga verificar o que esta sendo enviado no body?


Você pode verificar ou nos logs:





Menu '...' > Logs





Ou você pode usar o Debug também, direto no canal de testes do Builder



image


Bruno, pelo que entendi, esta sendo passado as informações abaixo, sabe dizer se esta correto o body? peço desculpas por te amolar tanto.


Aparentemente está correto sim. Qual o erro é apontado pela sua API?



Ps.: cuidado com a divulgação do seu token, como na imagem 😓


o status da requisição é o seguinte.


“stsboletoavencer: 400”


Oi gente!


Posso estar falando besteira (tem mil anos que não programo, 😬), mas se você usar o string.split("") ele retornaria um array contendo todos os caracteres da variável, não?



p.s1.: não montei o código aqui por motivos de nem lembro mais 🤣


p.s2: cai de paraquedas nesse tópico!


Pessoal @BrunoC @KarennCris , muito obrigado pelas dicas, meu problema é no body, e aparentemente assim ele retorna algo, por que a api aceita somente o valor da variável que é um array(string), nada além disso.


c762c69b-243c-42f5-9506-7f0e380048db


@Rangel.Alves, o status 400 é realmente um problema na request. Não dá pra saber se é exatamente isso.



Você não tem acesso ao código da API para fazer uma depuração, né? Tente fazer por alguma ferramenta de consumo de API como o Postman ou Insomnia e faça essa mesma requisição, e veja se funciona. Se sim, sabemos que o problema está na comunicação Blip x sua API.


Passando a variável dessa forma o status retornou 200, e trouxe as informações da api.


c762c69b-243c-42f5-9506-7f0e380048db


Aaah, entendi errado a sua mensagem anterior.



Que bom que encontrou sua solução, @Rangel.Alves !


Comente