UNLOCK API
reCAPTCHA v2 Enterprise

reCAPTCHA v2 Enterprise

Cara mengirim tugas reCAPTCHA v2 Enterprise ke UNLOCK API dengan createTask atau in.php: nama tipe tugas, semua parameter, objek solution, field proxy, dan contoh kode dalam 7 bahasa.
Harga
$0.50 $0.0005 per tugas
Yang Anda kirim
URL halaman, site key, dan payload enterprise jika situs memakainya
Yang Anda terima
Token untuk g-recaptcha-response

Ringkasan dan harga

Nama tipe tugas

Pakai nama pertama untuk memecahkan tanpa proxy. Pakai nama kedua dan tambahkan field proxy untuk memecahkan lewat proxy Anda sendiri. Harganya sama.
RecaptchaV2EnterpriseTaskProxylessTanpa proxy
RecaptchaV2EnterpriseTaskLewat proxy Anda

Objek task

type
StringWajib
Nama tipe tugas. Huruf besar atau kecil tidak berpengaruh. RecaptchaV2EnterpriseTaskProxyless | RecaptchaV2EnterpriseTask
websiteURL
StringWajib
Alamat lengkap halaman tempat CAPTCHA muncul, diawali http:// atau https://.
websiteKey
StringWajib
Site key widget CAPTCHA, ada di source halaman (misalnya data-sitekey).
enterprisePayload
ObjectOpsional
Nilai tambahan yang diberikan halaman ke grecaptcha.enterprise.render, seperti s.
isInvisible
BooleanOpsional
true untuk versi widget yang tidak terlihat (invisible).
userAgent
StringOpsional
User-Agent browser yang dipakai saat memecahkan. Kirim yang sama saat Anda mengirim jawabannya.
cookies
StringOpsional
Cookie untuk halaman, sebagai pasangan name=value yang dipisahkan titik koma.
apiDomain
StringOpsional
Domain asal widget dimuat: google.com atau recaptcha.net.

Field yang tidak tercantum di sini diteruskan ke pemecah apa adanya.

Field proxy

Hanya untuk nama tipe proxy. Kirim field terpisah atau satu string proxy.
proxyType
StringWajib
http, https, socks4, atau socks5.
proxyAddress
StringWajib
Alamat IP atau nama host proxy.
proxyPort
IntegerWajib
Port proxy.
proxyLogin
StringOpsional
Nama pengguna proxy, jika proxy memerlukannya.
proxyPassword
StringOpsional
Kata sandi proxy, jika proxy memerlukannya.
proxy
String
Semua field proxy dalam satu string, misalnya http://user:pass@1.2.3.4:8080.

Memakai proxy

Request

POST /createTask
{
  "clientKey": "YOUR_API_KEY",
  "task": {
    "type": "RecaptchaV2EnterpriseTaskProxyless",
    "websiteURL": "https://example.com/login",
    "websiteKey": "6LcR_RsTAAAAAFJR_5ZdbQd0SMxL7yIDmSXH1-lo"
  }
}

Objek solution

Dikembalikan di solution saat status ready.
gRecaptchaResponse
String
Token-nya. Masukkan ke field g-recaptcha-response (atau h-captcha-response untuk hCaptcha), atau berikan ke callback halaman.
POST /getTaskResult
{
  "errorId": 0,
  "taskId": 1001,
  "status": "ready",
  "solution": {
    "gRecaptchaResponse": "03AGdBq25SxXT-pmSeBXjzScW..."
  },
  "cost": "0.0005",
  "createTime": 1791640000,
  "endTime": 1791640014,
  "solveCount": 1
}

Contoh kode

import time, requests

API = "https://unlock-api.com"
KEY = "YOUR_API_KEY"

task = requests.post(f"{API}/createTask", json={
    "clientKey": KEY,
    "task": {
      "type": "RecaptchaV2EnterpriseTaskProxyless",
      "websiteURL": "https://example.com/login",
      "websiteKey": "6LcR_RsTAAAAAFJR_5ZdbQd0SMxL7yIDmSXH1-lo"
    }
}).json()
if task["errorId"]:
    raise SystemExit(task["errorCode"])

for _ in range(60):   # 60 x 5 s = the 5 minute task limit
    time.sleep(5)
    r = requests.post(f"{API}/getTaskResult", json={"clientKey": KEY, "taskId": task["taskId"]}).json()
    if r["errorId"]:
        raise SystemExit(f"{r['errorCode']}: {r.get('errorDescription', '')}")   # failed tasks are refunded
    if r["status"] == "ready":
        print(r["solution"]["gRecaptchaResponse"])
        break
else:
    raise SystemExit("timed out")

Metode form in.php

Tugas yang sama dengan request form klasik. res.php mengembalikan jawaban sebagai teks.
in.php, res.php
curl -s "https://unlock-api.com/in.php" -d "key=YOUR_API_KEY&method=userrecaptcha&enterprise=1&googlekey=SITE_KEY&pageurl=https://example.com/login&json=1"
# {"status":1,"request":"1001"}

curl -s "https://unlock-api.com/res.php?key=YOUR_API_KEY&action=get&id=1001&json=1"
# {"status":0,"request":"CAPCHA_NOT_READY"}  then  {"status":1,"request":"ANSWER"}

Form API: in.php dan res.php