Google Form dapat digunakan untuk mengumpulkan data pendaftaran, pemesanan, permintaan layanan, atau informasi pelanggan. Namun, hasil pengisian formulir secara default hanya tersimpan di Google Sheets dan notifikasi biasanya bergantung pada email.
Agar setiap pengisian Google Form dapat langsung memicu notifikasi WhatsApp, Google Apps Script dapat digunakan untuk membaca data respons dan mengirimkannya ke WhatsApp melalui API.
Dengan alur ini, setiap respons baru pada Google Form dapat diproses secara otomatis tanpa harus mengirim pesan secara manual.

Cara Kerja Google Form Mengirim Notifikasi WhatsApp
Integrasi Google Form dengan WhatsApp dapat dibuat dengan menghubungkan Google Form, Google Sheets, Google Apps Script, dan API WhatsApp.
Alur sederhananya:
Google Form
↓
Google Sheets
↓
Google Apps Script
↓
API Whapi
↓
WhatsApp
`
Ketika pengguna mengisi Google Form, respons akan masuk ke Google Sheets. Trigger pada Google Apps Script kemudian menjalankan fungsi tertentu saat respons baru diterima.
Script mengambil data dari baris respons, menyusun isi pesan, lalu mengirim request ke API Whapi.
Dengan pendekatan ini, Google Form dapat digunakan sebagai pemicu untuk berbagai kebutuhan seperti:
- Notifikasi pendaftaran
- Notifikasi pesanan baru
- Notifikasi permintaan layanan
- Konfirmasi pengisian formulir
- Notifikasi ke admin
- Follow-up data pelanggan
Yang Dibutuhkan
Sebelum membuat integrasi, siapkan beberapa komponen berikut:
- Google Form yang sudah terhubung dengan Google Sheets.
- Google Apps Script untuk menjalankan proses otomatis.
- API key dari Whapi.
- Nomor WhatsApp tujuan.
- Device WhatsApp Whapi dalam kondisi terhubung.
Google Form tidak mengirim pesan WhatsApp secara langsung. Google Apps Script berfungsi sebagai penghubung antara data formulir dan API WhatsApp.
Hubungkan Google Form dengan Google Sheets
Buka Google Form yang digunakan untuk menerima data.
Masuk ke tab Responses, kemudian pilih ikon Google Sheets untuk membuat atau menghubungkan spreadsheet respons.
Setiap kali formulir dikirim, Google Sheets akan membuat baris baru berisi data respons.
Contohnya:
| Timestamp | Nama | Nomor WhatsApp | Produk |
|---|---|---|---|
| 26/09/2026 10:15 | Budi | 628123456789 | Paket A |
Data inilah yang nantinya dibaca oleh Google Apps Script.
Buat Google Apps Script
Buka spreadsheet yang terhubung dengan Google Form.
Pilih:
Extensions > Apps Script
Kemudian buat fungsi untuk membaca data respons dan mengirim notifikasi WhatsApp.
Contoh sederhana:
function sendWhatsAppNotification(e) {
const apiKey = 'API_KEY_WHAPI';
const phone = '628123456789';
const nama = e.namedValues['Nama'][0];
const produk = e.namedValues['Produk'][0];
const message =
`Ada pengisian Google Form baru.\n\n` +
`Nama: ${nama}\n` +
`Produk: ${produk}`;
const url = 'https://gate.whapi.cloud/messages/text';
const payload = {
apiKey: apiKey,
phone: phone,
message: message
};
const options = {
method: 'post',
payload: payload,
muteHttpExceptions: true
};
const response = UrlFetchApp.fetch(url, options);
Logger.log(response.getContentText());
}
Struktur kode tersebut terdiri dari beberapa bagian:
apiKeydigunakan untuk autentikasi request ke API.phonemenentukan nomor WhatsApp penerima.e.namedValuesmengambil nilai dari kolom Google Form.messagemenyusun isi notifikasi.UrlFetchApp.fetch()mengirim request dari Google Apps Script ke API.
Endpoint dan parameter pengiriman perlu disesuaikan dengan dokumentasi API Whapi yang digunakan.
Mengambil Data dari Google Form
Google Apps Script menyediakan object event ketika fungsi dipanggil melalui trigger pengiriman formulir.
Contohnya:
function sendWhatsAppNotification(e) {
const nama = e.namedValues['Nama'][0];
const nomor = e.namedValues['Nomor WhatsApp'][0];
const layanan = e.namedValues['Layanan'][0];
const message =
`Halo ${nama},\n\n` +
`Data formulir sudah diterima.\n\n` +
`Layanan: ${layanan}\n` +
`Nomor: ${nomor}`;
// proses pengiriman WhatsApp
}
e.namedValues memungkinkan script mengambil data berdasarkan nama kolom, sehingga tidak perlu bergantung pada posisi kolom secara manual.
Pastikan nama yang digunakan dalam script sama dengan nama pertanyaan atau header yang tersedia pada respons Google Form.
Mengirim Pesan WhatsApp melalui API
Setelah data formulir berhasil dibaca, Google Apps Script dapat mengirim request HTTP ke API Whapi.
Contoh menggunakan UrlFetchApp:
const url = 'https://gate.whapi.cloud/messages/text';
const payload = {
apiKey: apiKey,
phone: phone,
message: message
};
const options = {
method: 'post',
payload: payload,
muteHttpExceptions: true
};
const response = UrlFetchApp.fetch(url, options);
Logger.log(response.getContentText());
API kemudian memproses request tersebut dan mengirim pesan ke WhatsApp yang ditentukan.
Untuk detail parameter request dan format respons, gunakan dokumentasi pengiriman pesan Whapi:
Dokumentasi API Pengiriman Pesan Whapi
Membuat Trigger Otomatis
Script tidak cukup hanya dibuat. Fungsi harus dijalankan otomatis setiap kali Google Form menerima respons baru.
Di Google Apps Script, buka menu Triggers atau ikon jam pada sidebar.
Kemudian buat trigger dengan pengaturan:
- Choose which function to run:
sendWhatsAppNotification - Choose which deployment should run:
Head - Select event source:
From spreadsheet - Select event type:
On form submit
Simpan trigger tersebut.
Pada pertama kali menjalankan trigger, Google akan meminta izin akses. Berikan izin yang diperlukan agar Apps Script dapat membaca spreadsheet dan melakukan request HTTP.
Setelah trigger aktif, prosesnya berjalan otomatis:
User mengisi Google Form
↓
Form response masuk ke Google Sheets
↓
Trigger "On form submit" aktif
↓
Apps Script membaca data
↓
Apps Script membuat pesan
↓
Request dikirim ke API Whapi
↓
WhatsApp menerima notifikasi
Contoh Notifikasi WhatsApp dari Google Form
Misalnya Google Form digunakan untuk pendaftaran konsultasi.
Data yang dikirim:
Nama: Andi
Nomor: 628123456789
Layanan: Konsultasi Website
Script dapat mengubahnya menjadi:
Pendaftaran Baru
Nama: Andi
Layanan: Konsultasi Website
Data pendaftaran telah masuk melalui Google Form.
Notifikasi tersebut dapat dikirim ke nomor admin setiap kali terdapat pendaftaran baru.
Untuk kebutuhan yang berbeda, format pesan dapat disesuaikan dengan data yang tersedia di Google Form.
Mengirim Notifikasi ke Nomor dari Form
Selain mengirim notifikasi ke nomor admin yang tetap, nomor WhatsApp juga dapat diambil dari respons formulir.
Contohnya:
function sendWhatsAppNotification(e) {
const apiKey = 'API_KEY_WHAPI';
const nama = e.namedValues['Nama'][0];
const phone = e.namedValues['Nomor WhatsApp'][0];
const layanan = e.namedValues['Layanan'][0];
const message =
`Halo ${nama},\n\n` +
`Terima kasih. Pendaftaran untuk ${layanan} sudah diterima.`;
const url = 'https://gate.whapi.cloud/messages/text';
const payload = {
apiKey: apiKey,
phone: phone,
message: message
};
const options = {
method: 'post',
payload: payload,
muteHttpExceptions: true
};
const response = UrlFetchApp.fetch(url, options);
Logger.log(response.getContentText());
}
Dengan pola ini, satu Google Form dapat digunakan untuk mengirim pesan kepada masing-masing pengisi formulir.
Contohnya:
Google Form
↓
Data nama + nomor WhatsApp
↓
Google Apps Script
↓
Nomor WhatsApp dari respons
↓
API Whapi
↓
Pesan konfirmasi
Menangani Error Pengiriman
Integrasi otomatis perlu menangani kemungkinan request gagal.
Gunakan try...catch untuk menangkap error pada saat request dilakukan:
try {
const response = UrlFetchApp.fetch(url, options);
const statusCode = response.getResponseCode();
const responseBody = response.getContentText();
Logger.log(statusCode);
Logger.log(responseBody);
} catch (error) {
Logger.log('Gagal mengirim WhatsApp: ' + error.message);
}
Response juga dapat diperiksa berdasarkan HTTP status code.
Contoh:
const response = UrlFetchApp.fetch(url, options);
const statusCode = response.getResponseCode();
if (statusCode >= 200 && statusCode < 300) {
Logger.log('Pesan berhasil dikirim');
} else {
Logger.log('Pengiriman gagal: ' + response.getContentText());
}
Pemeriksaan seperti ini membantu menemukan masalah ketika API key salah, device belum terhubung, nomor tujuan tidak valid, atau request tidak sesuai dengan format API.
Menyimpan API Key dengan Lebih Aman
API key sebaiknya tidak ditulis langsung di dalam kode yang berpotensi dibagikan.
Untuk implementasi yang lebih terstruktur, nilai konfigurasi dapat disimpan menggunakan Script Properties pada Google Apps Script.
Contohnya:
function sendWhatsAppNotification(e) {
const properties = PropertiesService.getScriptProperties();
const apiKey = properties.getProperty('WHAPI_API_KEY');
// proses pengiriman pesan
}
API key kemudian dapat disimpan sebagai property dengan nama:
WHAPI_API_KEY
Dengan pendekatan tersebut, konfigurasi API tidak perlu ditulis berulang kali pada setiap fungsi.
Contoh Integrasi Lengkap
Berikut contoh sederhana yang menggabungkan pembacaan data Google Form, penyusunan pesan, dan pengiriman WhatsApp:
function sendWhatsAppNotification(e) {
const properties = PropertiesService.getScriptProperties();
const apiKey = properties.getProperty('WHAPI_API_KEY');
const nama = e.namedValues['Nama'][0];
const layanan = e.namedValues['Layanan'][0];
const phone = e.namedValues['Nomor WhatsApp'][0];
const message =
`Halo ${nama},\n\n` +
`Data pendaftaran sudah diterima.\n\n` +
`Layanan: ${layanan}\n\n` +
`Terima kasih.`;
const url = 'https://gate.whapi.cloud/messages/text';
const payload = {
apiKey: apiKey,
phone: phone,
message: message
};
const options = {
method: 'post',
payload: payload,
muteHttpExceptions: true
};
try {
const response = UrlFetchApp.fetch(url, options);
Logger.log(
'Status: ' +
response.getResponseCode() +
' | Response: ' +
response.getContentText()
);
} catch (error) {
Logger.log('Gagal mengirim WhatsApp: ' + error.message);
}
}
Kode tersebut dapat dikembangkan sesuai struktur kolom pada Google Form.
Misalnya data formulir memiliki:
Nama
Nomor WhatsApp
Email
Produk
Jumlah
Catatan
Maka setiap nilai dapat dibaca melalui e.namedValues dan dimasukkan ke dalam format pesan yang diperlukan.
Hal yang Perlu Diperhatikan
Beberapa hal perlu diperiksa ketika membuat integrasi Google Form dengan WhatsApp.
Pastikan Nama Kolom Sesuai
Jika script menggunakan:
e.namedValues['Nomor WhatsApp'][0]
maka nama field harus sesuai dengan header yang tersedia pada data respons.
Perubahan nama pertanyaan atau kolom dapat menyebabkan data tidak ditemukan.
Pastikan Device WhatsApp Terhubung
API membutuhkan device WhatsApp yang aktif agar pesan dapat dikirim.
Jika device terputus, request dapat mengalami kegagalan meskipun Google Form dan Apps Script tetap berjalan.
Validasi Nomor WhatsApp
Nomor yang berasal dari Google Form sebaiknya divalidasi sebelum dikirim ke API.
Format nomor juga perlu disesuaikan dengan format yang diterima API.
Jangan Menyimpan API Key di Google Form
API key merupakan kredensial akses API. Simpan pada konfigurasi Apps Script dan hindari memasukkannya ke pertanyaan Google Form atau data spreadsheet yang dapat diakses banyak pengguna.
Contoh Penggunaan Google Form dan WhatsApp
Integrasi ini dapat digunakan pada berbagai alur sederhana.
Pendaftaran
Google Form
→ Pendaftaran masuk
→ WhatsApp admin menerima notifikasi
Konfirmasi Pengguna
Google Form
→ Data nomor WhatsApp diterima
→ WhatsApp mengirim konfirmasi
Permintaan Layanan
Form permintaan layanan
→ Data masuk ke Google Sheets
→ WhatsApp admin menerima detail permintaan
Pesanan
Form pemesanan
→ Data pesanan masuk
→ Apps Script memproses data
→ WhatsApp mengirim notifikasi
Google Form berfungsi sebagai sumber data dan trigger, sedangkan Google Apps Script menangani logika integrasi sebelum request diteruskan ke API WhatsApp.
Kesimpulan
Cara mengirim notifikasi WhatsApp dari Google Form dapat dilakukan dengan menghubungkan Google Form ke Google Sheets, kemudian menggunakan Google Apps Script sebagai penghubung ke API WhatsApp.
Alur dasarnya adalah:
Google Form
↓
Google Sheets
↓
Google Apps Script
↓
API Whapi
↓
WhatsApp
Dengan trigger On form submit, proses pengiriman dapat berjalan otomatis setiap kali terdapat respons baru. Data seperti nama, nomor WhatsApp, produk, layanan, atau informasi lainnya dapat diambil dari respons formulir dan digunakan untuk membentuk pesan secara dinamis.
Mekanisme ini cocok untuk membangun notifikasi pendaftaran, konfirmasi formulir, pemberitahuan pesanan, maupun notifikasi internal tanpa perlu membuat backend khusus hanya untuk menangani event dari Google Form.


