Ya, Anda bisa menyelesaikan CAPTCHA di dalam skenario Make (dulu Integromat) tanpa menulis satu baris kode pun — cukup modul HTTP yang memanggil API CaptchaAI. Saat alur otomatis Anda berhenti di reCAPTCHA v2, modul HTTP mengirim tantangan itu ke CaptchaAI, menunggu hasilnya, lalu meneruskan token ke modul berikutnya.
Panduan ini membangun satu skenario Make yang utuh: dari webhook pemicu, pengiriman task ke CaptchaAI, loop polling, hingga token siap dipakai di aksi downstream. Tidak ada plugin khusus — semuanya berjalan di modul bawaan Make.
Prasyarat
Sebelum membangun skenario, siapkan tiga hal:
- Akun Make aktif — paket gratis bisa untuk uji coba, tetapi ingat batas eksekusi 5 menit per skenario.
- API key CaptchaAI dari dashboard akun Anda.
- Sitekey reCAPTCHA v2 dan URL halaman target yang ingin Anda proses.
Kapan pola ini cocok dipakai
Skenario yang dibangun di sini menerima webhook berisi URL halaman dan sitekey reCAPTCHA, lalu menjalankan pola empat langkah yang konsisten:
- Kirim tantangan ke CaptchaAI lewat
in.php. - Simpan task ID dari respons pertama.
- Polling ke
res.phpsampai solusi siap. - Pakai token di aksi downstream — webhook response, submit form, atau database.
Pola ini pas untuk beberapa jenis alur:
- Otomatisasi pengisian form yang terhalang reCAPTCHA v2.
- Alur entri data yang berhenti di layar verifikasi.
- Skenario no-code apa pun ketika CAPTCHA memblokir jalur otomatis.
Bagi banyak freelancer automation dan tim data di Indonesia, memindahkan penanganan CAPTCHA ke satu skenario no-code menghemat waktu setup dibanding menulis worker sendiri. Perhatikan dua model biaya yang berjalan bersamaan:
| Layanan | Model penagihan |
|---|---|
| Make | Per operasi — tiap modul dan HTTP request dihitung satu operasi |
| CaptchaAI | Per thread dengan solve tak terbatas — paket BASIC ($15/bulan, 5 threads) cukup untuk beberapa skenario paralel |
Otomatiskan hanya form pada situs yang Anda kelola atau yang mengizinkannya, sejalan dengan UU PDP.
Langkah 1: bangun skenario di Make
Di Make, buat skenario baru dengan rangkaian modul berikut.
Modul 1: webhook trigger (custom webhook)
Buat custom webhook yang menerima request solve CAPTCHA:
Struktur data webhook:
{
"sitekey": "6Le-wvkSVVABCPBMRTvw0Q4Muexq1bi0DJwx_mJ-",
"pageurl": "https://example.com/form",
"captcha_type": "recaptcha_v2"
}
Konfigurasi webhook di Make:
- Tambahkan modul Webhook > Custom Webhook
- Klik Add untuk membuat webhook baru
- Salin URL webhook
- Tentukan struktur data dengan field
sitekey,pageurl, dancaptcha_type
Modul 2: HTTP request — kirim task ke CaptchaAI
Tambahkan modul HTTP > Make a request dengan konfigurasi:
- URL:
https://ocr.captchaai.com/in.php - Method: GET
- Parse response: Ya, set ke JSON
Isi parameter Query String berikut:
key— API key CaptchaAI Andamethod—userrecaptchagooglekey—{{1.sitekey}}(dipetakan dari webhook)pageurl—{{1.pageurl}}(dipetakan dari webhook)json—1
Setelah modul ini berjalan, respons berisi task ID:
{
"status": 1,
"request": "TASK_ID_12345"
}
Modul 3: modul sleep
Tambahkan modul Tools > Sleep yang diset ke 15 detik. Jeda ini memberi CaptchaAI waktu untuk menyelesaikan CAPTCHA sebelum polling pertama Anda mulai.
Modul 4: HTTP request — polling hasil
Tambahkan satu lagi modul HTTP > Make a request:
- URL:
https://ocr.captchaai.com/res.php - Method: GET
Isi parameter Query String berikut:
key— API key CaptchaAI Andaaction—getid—{{2.data.request}}(task ID dari Modul 2)json—1
Modul 5: router — cek status hasil
Tambahkan Router setelah modul polling dengan dua rute:
- Rute 1 (CAPTCHA selesai): filter
{{4.data.status}}sama dengan1→ lanjutkan ke aksi berikutnya (webhook response, insert database, dan seterusnya). - Rute 2 (belum siap): filter
{{4.data.request}}sama denganCAPCHA_NOT_READY→ hubungkan kembali ke Modul 3 (Sleep) untuk membentuk loop polling.
Langkah 2: susun loop polling
Bangun loop dengan modul Repeater atau dengan menghubungkan modul kembali ke tahap sebelumnya:
- Tambahkan modul Repeater yang diset ke 10 iterasi (batas maksimum polling)
- Di dalam repeater, letakkan urutan Sleep → Poll → Router
- Router keluar dari loop begitu
status = 1
Alternatifnya, pakai modul Flow Control > Repeater dengan pengaturan Repeats = 10 dan Initial value = {{2.data.request}} (task ID). Setiap iterasi akan sleep 5 detik, polling ke CaptchaAI, dan mengecek apakah hasilnya sudah siap.
Langkah 3: pakai token yang sudah diselesaikan
Setelah CAPTCHA selesai, token tersedia di {{4.data.request}}. Gunakan di modul berikutnya sesuai kebutuhan alur Anda.
Opsi A: kirim ke form
Tambahkan modul HTTP > Make a request yang mengirim token ke endpoint form situs target:
- URL: URL action form target
- Method: POST
- Body: form data termasuk
g-recaptcha-response: {{4.data.request}}
Opsi B: kembalikan lewat webhook response
Tambahkan modul Webhook > Webhook Response:
{
"token": "{{4.data.request}}",
"status": "solved"
}
Opsi C: simpan ke database
Tambahkan modul Google Sheets, Airtable, atau Database untuk logging dan pelacakan hasil.
Alur skenario lengkap
Berikut rangkaian utuh skenario dalam satu tampilan:
[Webhook Trigger]
↓
[HTTP: Submit to CaptchaAI in.php]
↓
[Sleep: 15 seconds]
↓
[Repeater: 10 iterations]
↓ (setiap iterasi)
[Sleep: 5 seconds]
[HTTP: Poll CaptchaAI res.php]
[Router]
Rute 1 (solved) → [Use Token] → [Webhook Response]
Rute 2 (not ready) → lanjutkan loop
Rute 3 (error) → [Error Handler]
Menangani error dan kegagalan
Pasang error handler pada modul HTTP agar skenario tidak berhenti mendadak:
- Error di Modul 2 (submit gagal): periksa
ERROR_ZERO_BALANCE(isi ulang saldo akun) atauERROR_WRONG_USER_KEY(perbaiki API key). - Error di Modul 4 (polling gagal): periksa
ERROR_CAPTCHA_UNSOLVABLE(verifikasi sitekey dan page URL) atau error jaringan (coba ulang). - Timeout: jika repeater menghabiskan seluruh iterasi tanpa hasil, arahkan ke error handler yang mencatat kegagalan.
Di Make, tambahkan error handler dengan klik kanan pada modul → Add error handler → pilih Resume (lewati lalu lanjutkan) atau Rollback (batalkan skenario).
Pemecahan masalah umum
- Webhook tidak ter-trigger — URL belum terdaftar. Pastikan URL webhook aktif di Make.
ERROR_WRONG_USER_KEY— format API key tidak valid. Cek API key: harus 32 karakter, tanpa spasi tambahan.- Loop polling tidak pernah selesai — sleep terlalu pendek atau task ID salah dipetakan. Verifikasi pemetaan task ID, lalu naikkan sleep ke 10 detik.
- Skenario timeout — batas waktu eksekusi Make (5 menit di paket gratis). Upgrade paket Make atau kurangi interval polling.
- Error parsing JSON — respons tidak dibaca sebagai JSON. Aktifkan "Parse response" di modul HTTP dan set
json=1di request.
Pertanyaan umum
Berapa lama waktu penyelesaian reCAPTCHA v2 lewat CaptchaAI?
Umumnya beberapa belas detik. Karena itu skenario di atas memasang sleep awal 15 detik sebelum polling pertama, lalu polling tiap 5 detik. Sesuaikan angka ini bila reCAPTCHA v2 di situs target Anda terasa lebih lambat atau lebih cepat direspons.
Apakah ada batas jumlah CAPTCHA yang bisa diselesaikan tiap bulan?
Tidak ada batas per solve dari sisi CaptchaAI. Penagihan berbasis thread — satu thread adalah satu CAPTCHA yang sedang diproses — dan setiap paket memberi solve tak terbatas per thread selama bulan berjalan. Yang perlu Anda pantau justru kuota operasi Make, karena satu siklus solve memakai beberapa operasi.
Selain reCAPTCHA v2, tipe CAPTCHA apa yang bisa saya proses dari skenario ini?
Struktur skenario yang sama berlaku untuk tipe lain — cukup ganti parameter method dan field sitekey:
- reCAPTCHA v3 dan GeeTest v3 — sesuaikan
methodsesuai tipe. - Cloudflare Turnstile — set
methodketurnstile, lalu pakaisitekeybukangooglekey.
hCaptcha belum didukung.
Bagaimana agar loop polling tidak memboroskan operasi Make?
Jaga dua angka tetap wajar:
- Jangan set sleep awal terlalu pendek — 15 detik sudah pas untuk memberi CaptchaAI waktu menyelesaikan.
- Jangan buat iterasi berlebih — polling tiap 5 detik dengan batas 10 iterasi cukup untuk mayoritas kasus reCAPTCHA v2, sekaligus menjaga konsumsi operasi tetap rendah.
Artikel Terkait
- Cara menyelesaikan callback reCAPTCHA v2 via API
- Menangani reCAPTCHA v2 dan Turnstile di satu situs yang sama
- n8n + CaptchaAI: penanganan CAPTCHA self-hosted
- Panduan webhook callback URL CaptchaAI