Tutorial integrasi Google Form dengan Alat WA. Setiap submission form otomatis kirim WhatsApp notif ke admin + konfirmasi ke responden via Apps Script.
Tutorial lengkap menghubungkan Google Form dengan Alat WA. Setiap kali ada submission baru, otomatis kirim WhatsApp ke admin (notifikasi lead masuk) dan ke responden (konfirmasi terima) - tanpa perlu integrasi rumit.
Cocok untuk:
Setiap kali ada user submit Google Form:
628111111111)Buka forms.new dan buat field minimal:
| Field | Tipe | Wajib |
|---|---|---|
| Nama Lengkap | Short answer | Ya |
| Nomor WhatsApp | Short answer (validasi: angka, min 10) | Ya |
| Short answer | Opsional | |
| Pesan / Pertanyaan | Paragraph | Opsional |
Tips validasi nomor WA: klik titik 3 di field → Response validation → Number → Greater than → 1000000000 (10 digit minimum). Ini cegah responden ngetik nomor invalid.
Hapus semua kode default Code.gs, copy paste kode berikut:
// ============== KONFIGURASI ==============
const ALATWA_URL = "https://api.alatwa.com/send/text";
const API_KEY = "PASTE_API_KEY_DISINI"; // dari Profile -> API Key di app.alatwa.com
const DEVICE_ID = "628111111111"; // Device ID dari menu Device (bukan nomor WA)
const ADMIN_PHONE = "628123456789"; // Nomor admin yang nerima notifikasi (format 62)
const COMPANY = "Toko XYZ"; // Nama brand kamu
// Mapping nama kolom Google Form ke field
// Sesuaikan dengan label pertanyaan di form kamu
const FIELD_NAMA = "Nama Lengkap";
const FIELD_PHONE = "Nomor WhatsApp";
const FIELD_EMAIL = "Email";
const FIELD_PESAN = "Pesan / Pertanyaan";
// ============== TRIGGER ON FORM SUBMIT ==============
function onFormSubmit(e) {
try {
const data = e.namedValues;
const nama = (data[FIELD_NAMA] || [""])[0].trim();
const phone = (data[FIELD_PHONE] || [""])[0].trim();
const email = (data[FIELD_EMAIL] || [""])[0].trim();
const pesan = (data[FIELD_PESAN] || [""])[0].trim();
if (!nama || !phone) {
Logger.log("Skip: nama atau phone kosong");
return;
}
// 1. Kirim notifikasi ke ADMIN
const adminMsg =
"*Lead Baru Masuk*
" +
"Nama: " + nama + "
" +
"WA: " + phone + "
" +
(email ? "Email: " + email + "
" : "") +
(pesan ? "
Pesan:
" + pesan + "
" : "") +
"
_via Google Form " + COMPANY + "_";
sendWA(ADMIN_PHONE, adminMsg);
// 2. Kirim konfirmasi ke RESPONDEN
const replyMsg =
"Halo " + nama + "
" +
"Terima kasih sudah menghubungi *" + COMPANY + "*. " +
"Data kamu sudah kami terima dan tim kami akan menghubungi kamu dalam 1x24 jam.
" +
"Salam hangat,
Tim " + COMPANY;
sendWA(phone, replyMsg);
} catch (err) {
Logger.log("Error: " + err);
}
}
// ============== HELPER: Kirim ke API Alat WA ==============
function sendWA(toPhone, message) {
const url = ALATWA_URL +
"?token=" + encodeURIComponent(API_KEY) +
"&device_id=" + encodeURIComponent(DEVICE_ID) +
"&to=" + encodeURIComponent(toPhone) +
"&msg=" + encodeURIComponent(message);
const res = UrlFetchApp.fetch(url, {
method: "get",
muteHttpExceptions: true
});
Logger.log(toPhone + " -> " + res.getResponseCode() + " " + res.getContentText());
}
// ============== TEST MANUAL (jalankan dari editor) ==============
function testKirimAdmin() {
sendWA(ADMIN_PHONE, "Test dari Apps Script - kalau pesan ini sampai berarti integrasi sukses!");
}
Apps Script tidak otomatis jalan saat form di-submit - perlu dipasang trigger:
onFormSubmitFrom spreadsheetOn form submitPenting: Pilih On form submit, BUKAN On change atau On edit. Trigger On form submit hanya nyala saat ada submission baru (bukan saat row di-edit manual).
testKirimAdmin dari dropdownKalau test 1 gagal:
API_KEY, DEVICE_ID, ADMIN_PHONE (format 62, bukan 08)Misal mau tambah field "Produk yang diminati":
const FIELD_PRODUK = "Produk yang diminati";
// di onFormSubmit:
const produk = (data[FIELD_PRODUK] || [""])[0].trim();
const adminMsg =
"*Lead Baru*
" +
"Nama: " + nama + "
" +
"WA: " + phone + "
" +
"Produk: " + produk + "
";
let replyMsg;
if (produk === "Hoodie") {
replyMsg = "Halo " + nama + ", ada promo Hoodie bulan ini! Cek di toko kami...";
} else {
replyMsg = "Halo " + nama + ", terima kasih sudah daftar...";
}
sendWA(phone, replyMsg);
// di awal onFormSubmit:
if (email && email.endsWith("@yourcompany.com")) {
Logger.log("Skip notif untuk submission internal");
return;
}
Kalau form publik dan takut di-spam, simpan timestamp pengiriman per nomor di sheet:
function isAllowed(phone) {
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("SentLog")
|| SpreadsheetApp.getActiveSpreadsheet().insertSheet("SentLog");
const last = sheet.getRange("A:B").getValues()
.filter(function(r){ return r[0] === phone; })
.map(function(r){ return new Date(r[1]).getTime(); })
.sort().pop();
if (last && (Date.now() - last) < 60000) return false; // 1 menit cooldown
sheet.appendRow([phone, new Date()]);
return true;
}
// di onFormSubmit, sebelum sendWA:
if (!isAllowed(phone)) { Logger.log("Throttled: " + phone); return; }
| Gejala | Penyebab | Solusi |
|---|---|---|
401 Unauthorized di log | API Key salah / paket trial | Pastikan paket Standard/Professional, regenerate API Key |
400 Unknown device | DEVICE_ID salah / device disconnect | Cek menu Device, pastikan hijau, copy ID device dengan benar |
| Pesan kirim tapi tidak sampai | Format nomor salah | Pakai format 628xxx, bukan 08xxx atau +62 xxx |
| Trigger tidak jalan | Belum dipasang / pilih event type salah | Cek menu Triggers, pastikan On form submit |
| Pesan dobel | Trigger ke-pasang 2x | Hapus trigger lama, sisakan satu |
| Quota Apps Script habis | Free Google account limit 6 jam/hari script execution | Upgrade ke Workspace, atau pindah trigger ke server (webhook) |
| Pesan masuk ke spam admin | Pesan dari nomor sama, terlalu sering | Pakai device berbeda, atau kasih jeda dengan Utilities.sleep(2000) |
Untuk volume tinggi (>100 submission/hari), Apps Script sering kena rate limit Google. Alternatif:
Lihat juga: Integrasi Google Sheets ke Broadcast WhatsApp
Terakhir diperbarui: 27 Apr 2026

Rasakan sensasi produktivitas yang lebih baik dengan menggunakan Alat WA, Anda tidak perlu membalas secara manual satu persatu karena sudah dihandle oleh robot. Anda cukup follow up customer yang membutuhkan hal spesifik yang tidak bisa dilayani oleh robot.
Anda tidak perlu menyiapkan server, anda hanya perlu berlangganan dan bisa langsung digunakan, cukup scan qrcode whatsapp maka whatsapp anda akan terhubung dengan sistem Alat WA