UNLOCK API

API para sa pag-solve ng Cloudflare Turnstile

Magpadala ng Cloudflare Turnstile task sa API at matatanggap mo ang sagot na isusumite ng code mo sa page. URL ng page at site key, pati action at cData kung mayroon ang widget. Matatanggap mo: Token para sa cf-turnstile-response.

Sa madaling salita

Presyo bawat 1,000
$0.55 ($0.00055 bawat task)
createTask type
TurnstileTaskProxyless, TurnstileTask
in.php method
turnstile
Ipapadala mo
URL ng page at site key, pati action at cData kung mayroon ang widget
Matatanggap mo
Token para sa cf-turnstile-response

Saan makikita ang mga value

Nasa data-sitekey sa Turnstile element ang site key. Kung may data-action o data-cdata ang widget, ipadala ang mga ito bilang action at data.

createTask at getTaskResult

Gawin ang task, maghintay ng mga 5 segundo, saka i-check ang resulta bawat 5 segundo hanggang ready na ang status. Kung mag-fail ang task, magbabalik ang API ng error at babalik ang singil sa balance mo.

import time, requests

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

task = requests.post(f"{API}/createTask", json={
    "clientKey": KEY,
    "task": {
      "type": "TurnstileTaskProxyless",
      "websiteURL": "https://example.com/login",
      "websiteKey": "0x4AAAAAAAC3DHQFLr1GavRN"
    }
}).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"]["token"])
        break
else:
    raise SystemExit("timed out")

in.php at res.php

Parehong task gamit ang classic na form API. Idagdag ang json=1 para sa JSON na sagot; kung wala ito, plain text ang sagot gaya ng OK|1001.

curl -s "https://unlock-api.com/in.php" -d "key=YOUR_API_KEY&method=turnstile&sitekey=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"}

Kumpletong API reference: bawat parameter at ang solution object