📽️Dados do Google Sheets para dentro do SprintHub

Script de Exemplo. Altere conforme sua realidade,

function onEdit(e) {
  var sheetName = 'Leads'; 
  var sheet = e.source.getSheetByName(sheetName);
  
  if (!sheet || e.range.getSheet().getName() !== sheetName) {
    return;
  }
  
  // Verifica se a edição é na última linha (supõe que uma nova linha seja adicionada manualmente)
  var lastRow = sheet.getLastRow();
  if (e.range.getRow() === lastRow) {
    enviarLinhasParaWebhook(sheet, lastRow, lastRow);
  }
}

function enviarLinhasParaWebhook(sheet, startRow, endRow) {
  var url = 'https://sprinthub-api-master.sprinthub.app/api/hook/gxxxxxets?i=temxxxxp&access_token=ziqTxxxxxx0-X_';

  for (var row = startRow; row <= endRow; row++) {
    var linha = sheet.getRange(row, 1, 1, sheet.getLastColumn()).getValues()[0];

    // Verifica se os campos obrigatórios estão preenchidos
    if (linha[0] === '' || linha[2] === '') {
      Logger.log('A linha ' + row + ' contém células vazias obrigatórias.');
      continue;
    }

    // Preparando os dados para enviar no payload
    var payload = {
      'nome': linha[0],
      'sobrenome': linha[1],
      'celular': linha[2],
      'email': linha[3]
    };

    Logger.log('Payload enviado:', payload);

    var options = {
      'method' : 'post',
      'contentType': 'application/json',
      'payload' : JSON.stringify(payload),
      'muteHttpExceptions': true  
    };

    try {
      var response = UrlFetchApp.fetch(url, options);
      Logger.log('Resposta do webhook para a linha ' + row + ':', response.getContentText());
    } catch (e) {
      Logger.log('Erro ao enviar o payload para a linha ' + row + ':', e.message);
    }

    // Aguardar 1 segundo antes de enviar a próxima linha
    Utilities.sleep(1000);
  }
}

Atualizado

Isto foi útil?