Cloudflare Turnstile
widget- Où tu le vois
- Un widget dans une page ou un formulaire
- Ce qu'il retourne
- Un token dans
cf-turnstile-response - Page CapMonster
- Solveur Cloudflare Turnstile
cf_clearance, afin que votre automatisation se poursuive sans étape manuelle.Dernière mise à jour:
Un Cloudflare Challenge et un widget Turnstile peuvent se ressembler. Un défi n'est pas toujours une page distincte « Juste un instant… » : il peut être stylisé, intégré au site ou conçu pour ressembler à un widget Turnstile classique, de sorte que vous ne pouvez pas les distinguer par leur apparence.
cf-turnstile-responsechallenge-form avec __cf_chl_f_tk=cf_clearanceSi ces signes sont présents, il s'agit d'un Cloudflare Challenge : utilisez le solveur Cloudflare Challenge sur cette page, qui renvoie un cookie token ou un cookie cf_clearance. Sinon, utilisez le solveur Cloudflare Turnstile.
Le tableau indique le prix pour 1 000 résolutions, le temps de résolution moyen et le taux de réussite de résolution pour quatre services de résolution Cloudflare Challenge.
| Paramètre | CapMonster Cloud | 2Captcha | Anti-Captcha | MeilleurCaptchaSolver |
|---|---|---|---|---|
Prix pour 1000 solutions | $ 1.30 | $1.45 | $2.00 | $1.80 |
Temps de résolution moyen | 12 – 14 s | 14 – 18 s | 18 – 22 s | 22 – 30 s |
Taux de réussite en résolution | 99% | 97% | 95% | 80% |
Prix Cloudflare Turnstile indiqué par le fournisseur ; Cloudflare Challenge n’est pas répertorié séparément.
2Captcha, Anti-Captcha et BestCaptchaSolver sont des marques commerciales de leurs propriétaires respectifs. CapMonster Cloud n'est pas affilié à ces entités. Les mesures de performance sont basées sur une analyse comparative interne réalisée le 26.08.2026. Les comparaisons de prix sont basées sur des données accessibles au public à partir de 30.09.2026.
99% de passes réussies. Testez dès maintenant la stabilité sur vos propres sites cibles. Nous ne garantissons pas un taux de réussite de 100 % : les types de CAPTCHA et la configuration du site cible peuvent changer à tout moment.
$0.10
Les nouveaux utilisateurs reçoivent un solde de test de 0,10 $ pour essayer CapMonster Cloud.
1. Inscrivez-vous sur CapMonster Cloud.
2. Contactez le support via le chat en direct ou support@capmonster.cloud avec l’e-mail lié à votre compte.
Exécutez les flux d'inscription, de paiement et de formulaire dans CI/CD avec Playwright, Puppeteer ou Selenium sur les pages que vous possédez ou que vous êtes autorisé à tester.
Vérifiez que les pages derrière Cloudflare Challenge restent accessibles après les versions et les modifications de règles.
Collectez des données accessibles au public à partir de pages ouvertes protégées par un Cloudflare Challenge.
Prend en charge les flux de travail d'assistance automatisés sur les sites qui affichent une page de vérification avant le chargement.
Permettez à un agent de demander un cookie token ou cf_clearance via MCP lorsqu'un flux de travail atteint un défi.
Utilisez CapMonster Cloud pour les données accessibles au public et sur les sites que vous possédez ou que vous êtes autorisé à tester. La collecte de données tierces derrière un identifiant ou un paywall sans autorisation est interdite.
Cloudflare propose trois types de pages de défi : JS Challenge, Managed Challenge et Interactive Challenge. Le fait qu'un défi soit affiché est décidé par les règles WAF ou Bot Management. CapMonster Cloud couvre les trois types de défis ci-dessous ; WAF / Bot Management est un produit plus large et est répertorié séparément.
Sources : Documentation Cloudflare — Comment fonctionnent les défis · Pages de défi interstitielles · En mode Attaque
"Défi de 5 secondes"
Un test interstitiel non interactif : le navigateur exécute JavaScript et Cloudflare note le résultat avant le chargement de la page. Aucun utilisateur action n’est requis.
cf_clearance (par défaut)y compris Under Attack Mode
Avec Cloudflare Managed Challenge, Cloudflare sélectionne dynamiquement le contrôle à partir des caractéristiques de la demande et des signaux du navigateur. Under Attack Mode utilise Managed Challenge.
cf_clearance (par défaut)widget sur la page interstitielle
Les pages Interactive Challenge nécessitent qu'un visiteur interagisse avec le défi pour réussir.
cf_clearance (par défaut)Couche de règles et de notation qui décide quand un défi de robot Cloudflare est lancé. Cloudflare calcule cette décision à l'aide de moteurs de détection, notamment :
Plus large que les trois types de défis et n’en est pas synonyme.
Sources : Scores des robots · Moteurs de détection de robots · Détections JavaScript
Le navigateur demande une page protégée. Cloudflare Bot Management évalue la demande en fonction de l'empreinte digitale TLS, de la réputation IP et des signaux comportementaux.
Les moteurs d'heuristique, de détection JS et d'apprentissage automatique produisent le Bot Score de 1 à 99, et les règles WAF décident de répondre ou non à un défi.
Si la demande semble suspecte, Cloudflare renvoie la page « Juste un instant… » avec le code d'état 403 et exécute JS Challenge, Managed Challenge ou Interactive Challenge.
Lorsque le contrôle réussit, Cloudflare émet un cookie cf_clearance lié au visiteur et à l'appareil et valable pour une durée limitée.
Le navigateur charge la page d'origine avec le cookie. Cloudflare continue de réévaluer le comportement de la session (Precursor clearance) et peut constituer un nouveau défi.
cf_clearance est le cookie Cloudflare émis après qu'un visiteur passe un Cloudflare Challenge. Le navigateur l'envoie avec les requêtes suivantes au site protégé et la page s'ouvre sans contestation répétée.
Propriétés du cookie, selon Documentation de Cloudflare :
Lié au visiteur et à l’appareil auquel il a été délivré.
Valable pour une durée limitée (30 minutes par défaut ; le site le définit avec Challenge Passage) : un script à exécution longue doit réussir à nouveau le contrôle une fois son expiration terminé.
Ce n'est pas une garantie en soi : Precursor clearance réévalue en permanence le comportement de la session et peut déclencher une contestation répétée même si le cookie n'a pas expiré.
L'accès est réinitialisé : le cookie est lié au visiteur et à l'appareil sur lequel il a été émis
Le cookie cesse de fonctionner ; le script doit réussir à nouveau le contrôle
Cloudflare peut réduire ou réinitialiser le niveau d'autorisation et lancer un défi répété si le trafic semble suspect
Le paramètre cloudflareTaskType de TurnstileTask décide de ce que CapMonster Cloud renvoie. Choisissez l'option en fonction de ce que nécessite le site cible : un token pour le challenge callback sur la page, ou un cookie cf_clearance pour vos demandes ultérieures.
| Paramètre | Jeton | cf_clearance |
|---|---|---|
cloudflareTaskType | token | cf_clearance |
| Mandataire | Facultatif s'exécute par défaut sur les proxys CapMonster Cloud | Obligatoire votre propre proxy |
websiteKey | Clé Cloudflare Challenge, par ex. 0x4AAAAAAABUYP0XeMJF0xoy | N'importe quelle chaîne, par ex. xxxxxx |
| Données de page | pageAction, data (cData), pageData (chlPageData) | htmlPageBase64 — Base64 de la page 403 « Juste un instant » |
| Résultat | solution.token | solution.cf_clearance |
| Où l'utiliser | Le défi callback sur la page | En-tête Cookie: cf_clearance=<value> ou contexte du navigateur |
| proxyType | Descriptif |
|---|---|
http | Proxy HTTP régulier |
https | Utiliser pour certains proxys personnalisés |
socks4 | Proxy SOCKS4 |
socks5 | Proxy SOCKS5 |
Référence complète des paramètres : Documentation des tâches Cloudflare Challenge.
Le CapMonster Cloud API agit comme un solveur cf_clearance : il accepte les paramètres de la tâche, les traite sur ses serveurs et renvoie un cookie token ou cf_clearance. La résolution d'un Cloudflare Challenge nécessite quatre étapes : obtenir une clé API, envoyer la tâche, interroger le résultat et utiliser le token ou le cookie renvoyé dans vos propres requêtes.
clientKey dans vos requêtes.Appelez createTask avec le type TurnstileTask. Le paramètre cloudflareTaskType décide de ce que vous obtenez en retour : un token ou un cf_clearance cookie. Choisissez l'option en fonction des besoins du site cible. Voir Comment distinguer le défi du tourniquet.
Option 1 · Défi (token) — s'exécute par défaut sur les proxys CapMonster Cloud. Champs obligatoires :
| Paramètre | Descriptif |
|---|---|
| tapez | TurnstileTask |
| websiteURL | URL de la page où le défi est résolu |
| websiteKey | Clé Cloudflare Challenge, par ex. 0x4AAAAAAABUYP0XeMJF0xoy |
| cloudflareTaskType | token |
| pageAction | Le champ action du captcha callback, généralement managed ou non-interactive |
| userAgent | UA actuel pris en charge par CapMonster Cloud. Vous pouvez obtenir la dernière valeur sur https://capmonster.cloud/api/useragent/actual. |
| données | Valeur du paramètre cData |
| pageData | Valeur du paramètre chlPageData |
Facultatif : apiJsUrl et les champs proxy. Les propres proxys ne sont nécessaires que lorsque le site n'accepte pas le token ou que les services intégrés sont restreints ; avec autorisation IP, liste blanche 65.21.190.34.
Exemple de demande :
{
"clientKey": "API_KEY",
"task": {
"type": "TurnstileTask",
"websiteURL": "https://yourwebsite.com/page-with-cf-challenge",
"websiteKey": "your-website-key",
"cloudflareTaskType": "token",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36",
"pageAction": "your-page-action",
"pageData": "your-page-data",
"data": "your-data"
}
}Option 2 · Défi (cookie) — nécessite votre propre proxy. Champs obligatoires :
| Paramètre | Descriptif |
|---|---|
| tapez | TurnstileTask |
| websiteURL | URL de la page où le défi est résolu |
| websiteKey | N'importe quelle chaîne peut être transmise, par ex. xxxxxx |
| cloudflareTaskType | cf_clearance |
| htmlPageBase64 | Base64 de la page « Juste un instant » renvoyé avec le statut 403 |
| userAgent | UA actuel pris en charge par CapMonster Cloud. Vous pouvez obtenir la dernière valeur sur https://capmonster.cloud/api/useragent/actual. |
| proxyType | http, https (pour certains proxys personnalisés), socks4, socks5 |
| proxyAddress, proxyPort, proxyLogin, proxyPassword | Votre mandataire. Les proxys transparents et locaux ne sont pas autorisés. |
Exemple de demande :
{
"clientKey": "API_KEY",
"task": {
"type": "TurnstileTask",
"websiteURL": "https://yourwebsite.com/page-with-cf-challenge",
"websiteKey": "xxxxxxxxxx",
"cloudflareTaskType": "cf_clearance",
"htmlPageBase64": "PCFET0NUWVBFIGh0...vYm9keT48L2h0bWw+",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36",
"proxyType": "your-proxy-type",
"proxyAddress": "your-proxy-address",
"proxyPort": 1234,
"proxyLogin": "your-proxy-login",
"proxyPassword": "your-proxy-password"
}
}Point de terminaison et réponse – identiques pour les deux options :
POST https://api.capmonster.cloud/createTask
{
"errorId": 0,
"taskId": 407533072,
"errorCode": null,
"errorDescription": null
}Interrogez getTaskResult avec le taskId jusqu'à ce que status devienne ready. La demande est identique pour les deux options ; l'objet solution contient le résultat que vous avez demandé.
Point de terminaison et demande :
POST https://api.capmonster.cloud/getTaskResult
{
"clientKey": "API_KEY",
"taskId": 407533072,
"errorCode": null,
"errorDescription": null
}Option 1 · Défi (token) — solution.token
{
"errorId": 0,
"status": "ready",
"solution": {
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36",
"token": "0.iGX3xsyFCkbGePM3jP4P4khLo6TrLukt8ZzBvwuQOvbC...f61f3082"
}
}Utilisez le token lors de l'appel de la fonction callback sur la page.
Option 2 · Défi (cookie) — solution.cf_clearance
{
"errorId": 0,
"status": "ready",
"solution": {
"cf_clearance": "1tarGvbY2_ZhQdYxpSBloao.FoOn9VtcJtmb_IQ_hCE-1761217338-1.2.1.1-vyVPoLYIGX0...ZHi.w"
}
}Cookie spécial Cloudflare que vous ajoutez à votre navigateur ou envoyez avec des requêtes HTTP brutes.
Si vous utilisez le cookie, transmettez sa valeur dans l'en-tête Cookie: cf_clearance=<value> sur les requêtes brutes HTTP, ou définissez-la dans le contexte du navigateur avant de demander à nouveau l'URL protégée.
Si vous utilisez le token, transmettez-le au défi callback sur la page.
L'option token nécessite les valeurs que la page transmet à turnstile.render lorsque le défi démarre : sitekey (websiteKey), action (pageAction), cData (données) et chlPageData (pageData). L'option cookie nécessite le HTML de la page du défi dans htmlPageBase64 ; websiteKey peut être n’importe quelle chaîne.
createTask et récupérer le résultat avec getTaskResult à l'aide de nos bibliothèques clientes.Pour les flux de travail low-code, utilisez le CapMonster Cloud officiel nœud n8n.
GET https://example.com/protected-page
User-Agent: <userAgent from the task>
Cookie: cf_clearance=<value>Transmettez la valeur renvoyée dans l'en-tête Cookie: cf_clearance=<value> sur les requêtes brutes HTTP, ou définissez-la dans le contexte du navigateur avant de demander à nouveau l'URL protégée. Dans les exemples officiels, le même proxy et le même User-Agent sont utilisés pour charger la page, résoudre la tâche et envoyer la requête avec le cookie.
Dans Selenium, Playwright ou Puppeteer, définissez le cookie avec la propre méthode du framework avant de naviguer vers l'URL protégée — le navigateur ouvre ensuite la page sans contestation répétée. Si vous avez demandé un token, transmettez-le plutôt au défi callback sur la page.
cf_clearance expiré ou ne correspondant pas, d'un proxy que le service n'accepte pas ou de paramètres de page obsolètes. Chaque carte ci-dessous nomme l'erreur et le correctif.cf_clearance valide, le cookie a expiré ou Cloudflare a revérifié la session (Precursor clearance). Demandez un nouveau cookie.userAgent que dans la tâche lors de la demande de la page protégée, comme dans les exemples officiels. Cloudflare note également qu'un Managed Challenge résolu à partir d'une adresse IP différente de celle à laquelle il a été émis n'est pas valide et peut provoquer une boucle de défi — voir la documentation Cloudflare.http, https, socks4 ou socks5.Cloudflare Challenge est une vérification intermédiaire que Cloudflare affiche avant d'accorder l'accès à une page protégée lorsqu'une règle WAF, Bot Management ou une limitation de débit juge la demande suspecte (par exemple, sur la base d'une empreinte digitale TLS, d'une réputation IP ou de signaux comportementaux). Pendant la vérification, le visiteur voit une page intermédiaire « Juste un instant… ». Si la vérification réussit, Cloudflare émet un cookie cf_clearance — il est lié au visiteur et à l'appareil et est valable pour une durée limitée — après quoi le navigateur accède à la page d'origine.
Tous les trois s'appuient sur les signaux côté client du navigateur. JS Challenge (non interactif) s'exécute en arrière-plan, généralement en moins de cinq secondes ; s'il n'est pas réussi, Cloudflare affiche une autre page de défi. Managed Challenge permet à Cloudflare de choisir le contrôle de manière dynamique à partir des caractéristiques de la demande et des signaux du navigateur, jusqu'à une étape interactive. Turnstile est un widget intégrable qui renvoie un token à valider via le Siteverify API ; avec l'autorisation préalable facultative, il peut également émettre un cookie cf_clearance.
Un défi répété ou un 403 signifie que la demande ne contient pas de cookie cf_clearance valide, que le cookie a expiré ou que la demande provient d'un visiteur ou d'un appareil différent de celui auquel le cookie a été émis. Même un cookie valide ne garantit pas l'accès : Cloudflare maintient Precursor clearance — une réévaluation continue du comportement de session qui peut abaisser ou réinitialiser le niveau d'autorisation et déclencher une contestation répétée si le modèle de trafic commence à paraître suspect.
CapMonster Cloud résout la tâche de manière asynchrone via deux appels API : createTask avec les paramètres de la tâche, suivi d'une interrogation de getTaskResult jusqu'à ce que la solution soit prête. Selon le type de tâche, le service renvoie soit un token — qui est inséré dans le callback sans proxy — soit un cookie cf_clearance, pour lequel un proxy est obligatoire. Vous transmettez ensuite la valeur résultante dans l'en-tête Cookie: cf_clearance=<value> des requêtes HTTP régulières, ou la définissez dans le contexte du navigateur, après quoi la page protégée s'ouvre sans passer manuellement la vérification.
Envoyez une requête POST à createTask avec votre clientKey (clé API) et les paramètres de la tâche, attendez que le résultat soit prêt en interrogeant getTaskResult (jusqu'à ce que le statut soit ready), puis utilisez le token ou le cookie résultant dans votre client HTTP ou l'automatisation de votre navigateur. Pour des intégrations prêtes à l'emploi, utilisez les SDK officiels dans les dépôts CapMonster Cloud sur GitHub : ils regroupent le cycle createTask / getTaskResult en un seul appel.
Un proxy est obligatoire uniquement pour la tâche qui renvoie un cookie cf_clearance. Dans les exemples officiels, le même proxy est ensuite utilisé pour les requêtes suivantes. Pour un résultat token, aucun proxy n'est requis — CapMonster Cloud utilise ses proxys intégrés par défaut (si vous mettez en liste blanche par IP, ajoutez 65.21.190.34). Types pris en charge : http, https, socks4, socks5 ; les proxys transparents et les proxys sur les machines locales ne sont pas autorisés.
Oui. Pour n8n, il existe un nœud CapMonster Cloud officiel — installé depuis l'interface ou via npm install @zennolab_com/n8n-nodes-capmonstercloud sur des instances auto-hébergées. Dans d'autres cas, votre code envoie d'abord une requête HTTP régulière au CapMonster API (via des requêtes, axios ou tout autre client HTTP), puis le résultat est transmis au framework du navigateur (Selenium, Playwright, Puppeteer, etc.) en utilisant sa propre méthode. Le cookie cf_clearance doit être défini avec cette méthode avant de naviguer vers l'URL protégée — le navigateur ouvrira alors la page avec une vérification déjà valide, sans contestation répétée.
La résolution de Cloudflare Challenge est une opération technique, et sa licéité dépend de la manière dont l’accès qui en résulte est utilisé, et non de l’outil lui-même. CapMonster Cloud est destiné à l'automatisation juridique (tests, surveillance et collecte de données accessibles au public), tandis que la responsabilité du respect de la loi et des conditions d'utilisation de la ressource cible incombe à l'utilisateur.
Nous ne garantissons pas un taux de réussite de 100 % : les types de CAPTCHA et la configuration du site cible peuvent changer à tout moment. La vitesse de résolution réelle et le taux de réussite varient en fonction du site cible, de la charge du serveur et des conditions du réseau.
Cloudflare est une marque commerciale de Cloudflare, Inc. CapMonster Cloud n'est ni affilié ni approuvé par Cloudflare. Le Service est destiné aux données accessibles au public, au test de vos sites Web propres ou autorisés, à la reconnaissance d'images et à l'accessibilité. La collecte de données tierces derrière un identifiant ou un paywall sans autorisation est interdite ; vos propres comptes ne sont pas affectés. Vous déterminez le statut juridique de vos données avant de commencer à travailler.