Observação: após adicionar novos nós à cadeia da Latenode em um projeto, para acessar os dados dos nós anteriores, você precisa executar o projeto e chamar a cadeia com todos os dados necessários. Dados substituídos do nó "JavaScript" para o nó "HTTP request" geralmente precisam ser escapados com aspas duplas. Objetos complexos ou arrays recebidos como resposta a uma solicitação de servidores remotos e que chegam como string devem ser processados por JSON.parse para que seja possível trabalhar com eles nos nós "JavaScript" usando o tipo de dados correspondente.
Primeiro, vamos garantir que você obtenha o token de acordo com as instruções do nosso artigo. Apenas selecione, na lista, o escopo "Google Sheets API v..." "www.googleapis.com/auth/spreadsheets" e "www.googleapis.com/auth/drive";
Crie uma nova tabela; você pode, por exemplo, chamá-la de "LatenodeTestSheet4Add", com duas colunas: "ID" e "Name";
![]()
REQ01: Solicitação para cliente REST
curl --request POST --url 'https://webhook.latenode.com/69/dev/becaa2c2-fcf6-4ef8-89a9-f375b3c0ba26?='
--header 'Content-Type: application/x-www-form-urlencoded'
--data 'token=[Replace the square brackets with the content of your token]'
--data 'tableName=LatenodeTestSheet4Add'
--data 'id=3'
--data 'name=Latenode'
Vamos substituir pelo nosso token obtido na etapa inicial;
![]()
Crie um nó "Webhook": "+ Add node" => "Http" => "Webhook";
Copie o endereço do Webhook e cole-o na barra de endereço do cliente REST;
![]()
![]()
Em seguida, adicione outro nó "JavaScript": "+ Add Node" => "Code" => "JavaScript";
Salve;
Conecte os nós;
Vamos iniciar e chamar a cadeia para transferir dados entre os nós;
Vamos copiar o conteúdo para ele:
const apiDriveURI = "https://www.googleapis.com/drive/v3/files";
const apiSheetURI= "https://sheets.googleapis.com/v4";
const bToken = "Bearer " + data["{{1.body.token}}"];
const tableFileName = data["{{1.body.tableName}}"];
const newID = data["{{1.body.id}}"];
const newName = data["{{1.body.name}}"];
return {
apiDriveURI,
apiSheetURI,
bToken,
tableFileName,
newID,
newName
}
Vamos verificar em todas as construções como "data["{{1.body.name}}"]" se o número do Webhook corresponde àquele do qual estamos obtendo os dados. Caso contrário, substitua-o pelo número necessário (lembrando que 1 é o número do nó escrito logo abaixo do nome do nó, acima do tipo de nó; então, se for uma consulta, é selecionado o campo do objeto responsável pelo tipo de dados enviados/recebidos — body para formulários ou query para parâmetros de consulta);
Salve as alterações;
![]()
Crie o nó "HTTP request" para obter o ID do arquivo da tabela: "+ Add node" => "Http" => "HTTP request";
Salve;
Conecte os nós;
Vamos iniciar e chamar a cadeia para transferir dados entre os nós;
Vamos preencher o campo "Url": no início, substitua a variável "apiDriveURI" do "JavaScript"; depois dela, especifique ?:q=name "a variável tableFileName do "JavaScript"";
Certifique-se de que o método padrão seja "Get";
Vamos adicionar o cabeçalho "Autorization" e a variável "bToken" do "JavaScript" ao seu valor;
Clique em "Save";
![]()
Crie o nó "HTTP request" para adicionar dados: "+ Add node" => "Http" => "HTTP request";
Salve;
Conecte os nós;
Vamos iniciar e chamar a cadeia para transferir dados entre os nós;
Vamos preencher o campo "Url": no início, substitua a variável "apiSheetURI" do "JavaScript"; depois, /spreadsheets/; em seguida, substitua o valor obtido no nó anterior {{ 3.body.files[ 0 ].id}}; e, ao final, /values/A:B:append?valueInputOption=USER_ENTERED&insertDataOption=INSERT_ROWS&includeValuesInResponse=true;
Altere o método para "Post";
No corpo "raw", substitua por:
{
"range": "A:B",
"majorDimension": "ROWS",
"values": [[{{2.newID}}, "{{2.newName}}"]]
}
Vamos adicionar o cabeçalho "Autorization" e a variável "bToken" do primeiro nó "JavaScript" ao seu valor;
Adicione também um cabeçalho "Content-Type" com o valor "application/json";
Clique em "Save";
![]()
Vamos iniciar e chamar a cadeia para transferir dados entre os nós;
Verifique nossa tabela; deve haver uma nova entrada;
![]()
Ao final, toda a cadeia na Latenode ficará assim:
![]()
Até os próximos artigos
Links úteis:
Básico:
Latenode
Google OAuth 2.0 Playground


