Démarrage Rapide

Démarrage rapide CaptchaAI : votre première résolution de CAPTCHA en 5 minutes

Ce guide poursuit un seul objectif : vous emmener le plus vite possible de zéro à un premier appel API réussi et un token résolu. Pas de théorie, pas de détours — uniquement les étapes minimales et du code qui fonctionne.

Tous les types de CAPTCHA pris en charge par CaptchaAI suivent le même modèle en quatre étapes :

  1. Envoyer les données du CAPTCHA à in.php
  2. Sauvegarder l'ID de la tâche depuis la réponse
  3. Interroger res.php toutes les 5 secondes jusqu'à obtention du résultat
  4. Utiliser le token — l'injecter dans la page ou la requête cible

Étape 0 : récupérez votre clé API

  1. Inscrivez-vous sur captchaai.com
  2. Ouvrez votre tableau de bord
  3. Copiez la clé API de 32 caractères

Votre compte doit disposer de threads actifs pour soumettre des tâches. Si vous évaluez le service, contactez le support pour des threads d'essai.


Étape 1 : envoyez un CAPTCHA

L'exemple résout un Cloudflare Turnstile, l'un des types les plus répandus. Vous avez besoin de deux valeurs depuis la page cible :

  • sitekey — la clé publique du widget Turnstile (attribut data-sitekey ou paramètres du script Turnstile, commence par 0x)
  • pageurl — l'URL complète où le widget est chargé

cURL

curl -X POST "https://ocr.captchaai.com/in.php" \
  -d "key=YOUR_API_KEY" \
  -d "method=turnstile" \
  -d "sitekey=0x4AAAAAAAC3DHQFLr1GavNl" \
  -d "pageurl=https://example.com/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://example.com/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://example.com/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://example.com/login",
    "json"      => 1,
]));
echo $response;

Étape 2 : sauvegardez l'ID de la tâche

Réponse en succès :

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

Le champ request est l'ID de votre tâche — vous en aurez besoin pour récupérer le résultat.

Si status vaut 0, quelque chose n'a pas fonctionné. Le code d'erreur est dans request :

Erreur Signification Solution
ERROR_WRONG_USER_KEY Format de clé API invalide Vérifiez les 32 caractères
ERROR_KEY_DOES_NOT_EXIST Clé introuvable Comparez avec votre tableau de bord
ERROR_ZERO_BALANCE Aucun thread disponible Rechargez ou attendez la libération
ERROR_PAGEURL Paramètre pageurl manquant Ajoutez l'URL complète
ERROR_WRONG_GOOGLEKEY sitekey vide ou mal formé Réextraivez le sitekey (Turnstile commence par 0x)

Étape 3 : interrogez le résultat

Patientez 15 secondes, puis interrogez toutes les 5 secondes jusqu'à réponse.

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));
}

Étape 4 : utilisez le token

Le mode d'injection dépend du type de CAPTCHA :

  • Turnstile / reCAPTCHA : écrire dans cf-turnstile-response ou g-recaptcha-response, ou appeler le callback de la page.
  • OCR d'image : placer le texte reconnu dans l'input réponse.
  • GeeTest / FunCaptcha : assembler les différents champs renvoyés selon les attentes du site.

Injection minimale dans le navigateur :

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

Erreurs fréquentes au démarrage

  • Espace dans la clé API copiée — supprimez-le.
  • Protocole manquant dans pageurl — il faut https://....
  • Premier sondage trop tôt — attendez 15 secondes.
  • Sondage trop fréquent — toutes les 5 s suffit.
  • Threads épuisés — voir Codes d'erreur de l'API et votre plan.

Étapes suivantes

Continuez selon le type de CAPTCHA que vous rencontrez le plus :

Récupérez votre clé API sur captchaai.com/api.php et bouclez votre première résolution réussie en moins de 5 minutes.

Les commentaires sont désactivés pour cet article.