Google Sheets — API de perfil do WhatsApp

Valide uma coluna de números de telefone diretamente no Google Sheets usando o Apps Script. Cole os números, execute um comando de menu e obtenha os resultados em colunas adjacentes.

Configurar

  1. Abra uma folha.
  2. Extensões → Apps Script.
  3. Cole o texto abaixo.
  4. Substitua YOUR_DIRECT_KEY.
  5. Salve. Recarregue a planilha. Um novo menu, a API do WhatsApp, será exibido.
  6. Insira os números de telefone na coluna A (com o código do país, sem o sinal de +). Execute a API do WhatsApp → Valide a coluna A.

Apps Script

// Direct proxy: use your direct-purchase key from our dashboard.
// RapidAPI marketplace: set API_BASE = "https://wp-data.p.rapidapi.com"
// AND uncomment the x-rapidapi-host header below.
const API_KEY = "YOUR_DIRECT_KEY";
const API_BASE = "https://whatsapp-proxy.checkleaked.cc";

function onOpen() {
  SpreadsheetApp.getUi()
    .createMenu("WhatsApp API")
    .addItem("Validate column A", "validateColumnA")
    .addToUi();
}

function validateColumnA() {
  const sheet = SpreadsheetApp.getActiveSheet();
  const lastRow = sheet.getLastRow();
  if (lastRow < 2) return;
  const numbers = sheet.getRange(2, 1, lastRow - 1, 1).getValues();

  // Header row
  sheet.getRange(1, 2, 1, 4).setValues([["isWAContact", "about", "isBusiness", "profilePic"]]);

  for (let i = 0; i < numbers.length; i++) {
    const number = String(numbers[i][0]).replace(/[^0-9]/g, "");
    if (!number) continue;

    try {
      const res = UrlFetchApp.fetch(
        `${API_BASE}/number/no_picture/${number}`,
        {
          headers: {
            "x-rapidapi-key": API_KEY,
            // "x-rapidapi-host": "wp-data.p.rapidapi.com",  // RapidAPI only
          },
          muteHttpExceptions: true,
        }
      );
      const data = JSON.parse(res.getContentText());
      sheet.getRange(i + 2, 2, 1, 4).setValues([[
        data.isWAContact || false,
        data.about || "",
        data.isBusiness || false,
        data.profilePic || "",
      ]]);
    } catch (e) {
      sheet.getRange(i + 2, 2).setValue("ERROR");
    }

    // Respect tier burst limits — sleep 500 ms between requests (2/sec). MEGA tier: 250 ms (4/sec).
    Utilities.sleep(500);
  }
}

Orientação de volume

  • O Google Sheets Apps Script tem um limite de 6 minutos por execução. Com 2 requisições/seg (BASIC/PRO/ULTRA), ele processa cerca de 700 números por execução; o MEGA, com 4 requisições/seg, processa cerca de 1.400.
  • Para listas com mais de 1.000 números, utilize nosso endpoint para listas em lote — uma única chamada, download do arquivo CSV e colagem dos resultados.
  • O aplicativo UrlFetchApp do Apps Script possui uma cota diária separada: 20.000 chamadas para contas gratuitas e 100.000 para o Workspace. Monitore ambos os lados.

Acionamento na edição da linha

Para um fluxo de trabalho de "validação ao colar", adicione um gatilho instalável:

function onEditValidate(e) {
  if (e.range.getColumn() !== 1 || e.range.getRow() < 2) return;
  // ... call validateSingleRow(e.range.getRow())
}

Instale em Gatilhos → Adicionar Gatilho → onEditValidate → Da planilha → Ao editar.

Relacionado

O Que Nossos Usuários Dizem

Avaliações reais de nossos clientes satisfeitos

Nenhuma avaliação disponível ainda