Introdução
Vamos configurar um script que permite usar o "Latenode" para criar e atualizar um registro em uma tabela do banco de dados "Airtable";
Preparação do Airtable
Acesse o site do "Airtable";
Os links para todos os sites estão no final do artigo;
Se você já tinha tabelas, volte à página inicial, crie uma nova usando o botão "Começar do zero" e selecione "Kanban";
![]()
![]()
![]()
Após criar, selecione a coluna "Prioridade" no menu inferior e verifique se "Status" e "Responsável" também foram selecionados;
![]()
Se você acabou de se cadastrar, selecione "Tarefas" na etapa intitulada "Agora, vamos adicionar algumas informações" para criar um quadro Kanban pré-configurado com as três tarefas já adicionadas;
![]()
![]()
Adicionando um token pessoal
Acesse o link "criar token pessoal do Airtable";
Clique no botão "Criar novo token" no canto superior direito;
![]()
Insira o nome que preferir, por exemplo, "AirtableLatenode";
![]()
Em "Escopo", adicione o seguinte: data.records:read data.records:write schema.bases:read;
![]()
Em "Permissões", selecione o "workspace" desejado ao qual você quer conceder acesso para gerenciá-lo usando a "API";
![]()
Clique em "Criar token";
![]()
Salve o token gerado, por exemplo, temporariamente em um bloco de notas;
Criando um projeto no Latenode
Acesse nossa lista de projetos no "Latenode";
Vamos criar um novo projeto;
![]()
Em seguida, crie o primeiro nó "Webhook";
![]()
![]()
Copie o endereço dele para seu cliente REST ou bloco de notas;
Salve o nó;
![]()
Crie um nó "JavaScript" (JS) e copie o código do artigo para ele;
Código para o nó JS
let apiURI, personalToken, newTask, recordID;
apiURI = "https://api.airtable.com/v0";
personalToken = "Bearer [Insira seu token pessoal no lugar destes colchetes]";
newTask = {
name: , // Após os dois-pontos e antes da vírgula, selecione o campo name da consulta recebida
status: , // Após os dois-pontos e antes da vírgula, selecione o campo status da consulta resultante
priority: , // Após os dois-pontos e antes da vírgula, selecione o campo priority da consulta resultante
};
if () { // Dentro dos parênteses, selecione o campo recordID da consulta resultante
recordID = ; // Após o sinal de igual e antes do ponto e vírgula, selecione o campo recordID da consulta recebida
} else {
recordID = false;
}
return {
apiURI,
personalToken,
newTask,
recordID,
}
Por enquanto, sem alterar nada, apenas salve;
![]()
Vamos iniciar o projeto;
![]()
Usando o cliente REST, faça uma solicitação inserindo o endereço do nó webhook na barra de endereço;
![]()
Solicitação para o cliente REST
curl --request POST --url [insira o endereço do seu webhook no projeto Latenode no lugar destes colchetes]
--header 'Content-Type: application/x-www-form-urlencoded'
--header 'Accept: application/json'
--data 'name=Enviar dados do Latenode!'
--data 'priority=Em andamento'
--data 'status=Média'
--data 'recordID='
Volte ao nó "JS" e edite-o;
Verifique se, ao posicionar o cursor de texto dentro do nó, esses dados aparecem no menu lateral. Caso não apareçam, repita a execução e a chamada do webhook;
![]()
Insira os dados enviados na solicitação nos locais indicados;
![]()
Salve as alterações;
![]()
Crie quatro novos nós de "solicitação HTTP" para obter a lista de bancos de dados;
Em cada um deles, copie o código abaixo e salve. O mais importante é não confundi-los; você pode dar a cada um um nome descritivo;
REQ01 Obter lista de bases
curl --request GET --url '[insira a variável apiURL do nó JS no lugar destes colchetes]/meta/bases'
--header 'Accept: application/json'
--header 'Authorization: [Insira o token pessoal no lugar destes colchetes]'
REQ02 Obter o esquema e o conteúdo da base
curl --request GET --url '[insira a variável apiURL do nó JS no lugar destes colchetes]/meta/bases/[o ID da sua base da consulta REQ01]/tables'
--header 'Accept: application/json'
--header 'Authorization: [Insira o token pessoal]'
REQ03 Criar uma nova entrada na tabela de tarefas
curl --request POST --url '[insira a variável apiURL do nó JS no lugar destes colchetes]/[O ID do seu banco de dados recebido na consulta REQ01]/[O ID da sua tabela recebido na consulta REQ02]' --header 'Authorization: [Insira o token pessoal]'
--header 'Content-Type: application/json'
--data '{
"records": [
{
"fields": {
"Priority": [Substitua pela variável priority do nó JS],
"Name": [Substitua pela variável name do nó JS],
"Status": [Substitua pela variável status do nó JS]
}
}
]
}'
Agora, vamos adicioná-los um a um à cadeia e chamá-los para configurar a obtenção dos dados;
Substitua tudo que estiver entre colchetes por dados das consultas e de outros nós;
Em cada um, você precisa adicionar o token pessoal criado;
Nos locais em que ele for usado para acessar arrays, informe o índice desejado. Ele começa em zero, como nos demais casos, apesar de o primeiro item aparecer como número um no menu lateral;
Na solicitação de adição, não se esqueça de verificar se POST está selecionado como tipo de método;
Abaixo estão capturas de tela de como cada um desses nós deve ficar ao final, depois de todas as edições;
![]()
![]()
![]()
Após chamar a consulta que adiciona um registro, acesse nossa tabela no Airtable e verifique se há uma nova tarefa com o texto "Enviar dados do Latenode!". Caso não haja, verifique cada consulta individualmente; talvez algum dado não tenha sido substituído ou você tenha se esquecido de inserir um token;
Vamos excluir essa tarefa;
Ao final da cadeia, adicione um nó "Resposta do webhook" para facilitar;
Vamos configurá-lo para retornar o ID do novo registro criado;
![]()
Inicie o projeto e chame o Webhook;
Vamos verificar se o objeto com record_id é retornado como resposta à solicitação;
Volte à tabela de tarefas e verifique se ela foi criada;
Espero que tenha dado certo para você também;
Links úteis:
Básico:
Criação de token pessoal do Airtable (Airtable Developers)
Informações:
https://developers.google.com/gmail/api/reference/rest/v1/users.messages/send
https://developers.google.com/gmail/api/reference/rest/v1/users.messages#Message


