Estou recebendo uma mensagem de erro no URL

O Gabriel Campos mandou:

Olá,

Estou tentando realizar uma consulta via Google Planilhas (AppsScript) para retornar uma tabela. Contudo, seguindo o mesmo modelo que está descrito na documentação, estou recebendo uma mensagem de erro no URL. Já realizei essa mesma consulta em Phyton e obtive sucesso. Segue o código abaixo.

var options = {
“method” : “POST”,
“headers” : {
“Accept”: “application/json”,
“Content-Type”: “application/json”,
“Authorization”: “Bearer --”
},
“body”: JSON.stringify({
“object_type”: “acomodacoes”,
“sort”: “name asc”,
“page”: 1,
“size”: “10000”})
};

var response = UrlFetchApp.fetch(“https://[EMPRESA].api.jestor.com/object/list”, options)

Opa @fernando.nakandakari consegue ajudar?

Hey, @gabriel

There’s nothing inherently wrong with the format, I believe. The issue you’re encountering here seems to arise out of Google’s AppsScript methods.

In this case, I believe AppsScript doesn’t recognize the parameter “body”. It should be “payload” instead. I’ve tried it here and it worked just fine!

Here’s the code, if you’re wondering:

function myFunction() {
  var options = {
  "method" : "POST",
  "headers" : {
    "Accept" : "application/json",
    "Content-Type" : "application/json",
    "Authorization" : "Bearer TOKEN"
  },
  "payload" : JSON.stringify({ 
    "object_type":"orders",
    "sort":"name desc",
    "page":1,
    "size":10000
  })
}
var response = UrlFetchApp.fetch("https://ORG.api.jestor.com/object/list", options);
Logger.log(response);

}

If you need any more help, just let me know :slight_smile:


Opa @gabriel ,

Não há nada inerentemente errado com esse formato, acredito. O problema que você está encontrando parece decorrer dos métodos do AppsScript do Google, mesmo.

Nesse caso, acredito que o AppsScript não reconhece o parâmetro “body”. Ao invés disso, deveria ser “payload”. Fiz um teste aqui e funcionou certinho!

Aqui está o código, se quiser consultar.

function myFunction() {
  var options = {
  "method" : "POST",
  "headers" : {
    "Accept" : "application/json",
    "Content-Type" : "application/json",
    "Authorization" : "Bearer TOKEN"
  },
  "payload" : JSON.stringify({ 
    "object_type":"orders",
    "sort":"name desc",
    "page":1,
    "size":10000
  })
}
var response = UrlFetchApp.fetch("https://ORG.api.jestor.com/object/list", options);
Logger.log(response);

}

Se precisar de mais alguma ajuda, é só avisar :slight_smile: