Google Sheets — API профилей WhatsApp
Проверьте столбец телефонных номеров непосредственно в Google Таблицах с помощью Apps Script. Вставьте номера, выполните команду в меню и получите результаты в соседних столбцах.
Настраивать
- Откройте лист.
- Расширения → Скрипты приложений.
- Вставьте скрипт ниже.
- Замените YOUR_DIRECT_KEY.
- Сохраните. Перезагрузите таблицу. Появится новое меню WhatsApp API.
- Введите номера телефонов в столбец A (с кодом страны, без знака «+»). Запустите WhatsApp API → Проверьте столбец 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);
}
}Рекомендации по объему
- В Google Sheets Apps Script установлено ограничение на время выполнения в 6 минут. При частоте запросов 2 в секунду (BASIC/PRO/ULTRA) обрабатывается около 700 чисел за один запуск; в MEGA при частоте запросов 4 в секунду — около 1400.
- Для списков, содержащих более 1000 номеров, воспользуйтесь нашим сервисом пакетной обработки — один вызов, загрузка CSV-файла и вставка результатов.
- У приложения UrlFetchApp от Apps Script есть отдельная квота на суточное использование — 20 000 вызовов для бесплатных аккаунтов и 100 000 для Workspace. Необходимо отслеживать обе стороны.
Запуск при редактировании строки
Для реализации алгоритма "проверка при вставке" добавьте устанавливаемый триггер:
function onEditValidate(e) {
if (e.range.getColumn() !== 1 || e.range.getRow() < 2) return;
// ... call validateSingleRow(e.range.getRow())
}Установить через Триггеры → Добавить триггер → onEditValidate → Из электронной таблицы → При редактировании.
Связанный
Что говорят наши пользователи
Настоящие отзывы от наших довольных клиентов
Отзывы пока недоступны