Memulai

CaptchaAI Quickstart: Pemecahan CAPTCHA Pertama Anda dalam 5 Menit

Panduan ini punya satu tujuan saja: membawa Anda secepat mungkin dari nol ke pemanggilan API pertama yang sukses dan token terselesaikan. Tanpa teori, tanpa pembahasan panjang — hanya langkah minimum dan kode yang jalan.

Semua tipe CAPTCHA yang didukung CaptchaAI mengikuti pola empat langkah yang sama:

  1. Submit — kirim data CAPTCHA ke in.php
  2. Simpan task ID dari response
  3. Polling — cek res.php setiap 5 detik sampai hasil siap
  4. Pakai token — injeksikan ke halaman atau request target

Langkah 0: ambil API key

  1. Daftar di captchaai.com
  2. Buka dashboard
  3. Salin API key 32 karakter

Akun Anda perlu thread aktif untuk submit task. Jika sedang mencoba, hubungi support untuk thread trial.


Langkah 1: kirim sebuah CAPTCHA

Contoh ini memecahkan Cloudflare Turnstile — salah satu tipe paling umum. Anda butuh dua nilai dari halaman target:

  • sitekey — kunci publik widget Turnstile (atribut data-sitekey atau parameter script Turnstile, diawali 0x)
  • pageurl — URL lengkap halaman tempat widget dimuat

cURL

curl -X POST "https://ocr.captchaai.com/in.php" \
  -d "key=YOUR_API_KEY" \
  -d "method=turnstile" \
  -d "sitekey=0x4AAAAAAAC3DHQFLr1GavNl" \
  -d "pageurl=https://staging.example.com/qa-login" \
  -d "json=1"

Python

import requests

response = requests.post("https://ocr.captchaai.com/in.php", data={
    "key": "YOUR_API_KEY",
    "method": "turnstile",
    "sitekey": "0x4AAAAAAAC3DHQFLr1GavNl",
    "pageurl": "https://staging.example.com/qa-login",
    "json": 1,
})
print(response.json())

Node.js

const response = await fetch("https://ocr.captchaai.com/in.php", {
  method: "POST",
  headers: { "Content-Type": "application/x-www-form-urlencoded" },
  body: new URLSearchParams({
    key: "YOUR_API_KEY",
    method: "turnstile",
    sitekey: "0x4AAAAAAAC3DHQFLr1GavNl",
    pageurl: "https://staging.example.com/qa-login",
    json: "1",
  }),
});
console.log(await response.json());

PHP

<?php
$response = file_get_contents("https://ocr.captchaai.com/in.php?" . http_build_query([
    "key"       => "YOUR_API_KEY",
    "method"    => "turnstile",
    "sitekey"   => "0x4AAAAAAAC3DHQFLr1GavNl",
    "pageurl"   => "https://staging.example.com/qa-login",
    "json"      => 1,
]));
echo $response;

Langkah 2: simpan task ID

Response sukses:

{
  "status": 1,
  "request": "71823469"
}

Field request adalah ID task Anda — dibutuhkan untuk mengambil hasilnya.

Jika status bernilai 0, ada yang salah. Kode error ada di request:

Error Arti Solusi
ERROR_WRONG_USER_KEY Format API key salah Cek 32 karakter
ERROR_KEY_DOES_NOT_EXIST API key tidak ditemukan Cocokkan dengan dashboard
ERROR_ZERO_BALANCE Tidak ada thread tersedia Top up atau tunggu thread bebas
ERROR_PAGEURL Parameter pageurl hilang Tambahkan URL lengkap
ERROR_WRONG_GOOGLEKEY sitekey kosong atau salah Ekstrak ulang sitekey (Turnstile diawali 0x)

Langkah 3: polling hasil

Tunggu 15 detik, lalu polling setiap 5 detik sampai hasil keluar.

Python

import time

time.sleep(15)

while True:
    result = requests.get("https://ocr.captchaai.com/res.php", params={
        "key": "YOUR_API_KEY",
        "action": "get",
        "id": "71823469",
        "json": 1,
    }).json()

    if result.get("request") == "CAPCHA_NOT_READY":
        time.sleep(5)
        continue

    if result.get("status") == 1:
        token = result["request"]
        print(f"Solved! Token: {token[:60]}...")
        break

    raise RuntimeError(result)

Node.js

await new Promise((r) => setTimeout(r, 15000));

while (true) {
  const r = await fetch(
    `https://ocr.captchaai.com/res.php?key=YOUR_API_KEY&action=get&id=71823469&json=1`,
  );
  const data = await r.json();
  if (data.request === "CAPCHA_NOT_READY") {
    await new Promise((r) => setTimeout(r, 5000));
    continue;
  }
  if (data.status === 1) {
    console.log("Solved:", data.request.slice(0, 60));
    break;
  }
  throw new Error(JSON.stringify(data));
}

Langkah 4: pakai token

Cara injeksi tergantung tipe CAPTCHA:

  • Turnstile / reCAPTCHA: tulis ke cf-turnstile-response atau g-recaptcha-response, atau panggil callback halaman.
  • OCR gambar: masukkan teks hasil ke input jawaban.
  • GeeTest / FunCaptcha: rangkai beberapa field hasil sesuai kebutuhan situs.

Injeksi paling sederhana di browser:

document.querySelector('[name="cf-turnstile-response"]').value = token;
document.querySelector("form").submit();

Kesalahan umum saat memulai

  • Spasi ikut tersalin di API key — hapus.
  • Protokol hilang di pageurl — wajib https://....
  • Polling terlalu cepat — tunggu 15 detik dulu.
  • Polling terlalu sering — 5 detik sudah cukup.
  • Thread habis — lihat Kode error API dan plan thread Anda.

Langkah selanjutnya

  • Cara Memecahkan reCAPTCHA v2 dengan API: Panduan Langkah demi Langkah
  • Cara Menyelesaikan Cloudflare Turnstile dengan API
  • Cara Mengatasi GeeTest v3 Menggunakan API
  • Image Captcha Solving Using Api
Komentar dinonaktifkan untuk artikel ini.