Pular para o conteúdo
StatusPainel

Tipos de tarefa

Cloudflare Turnstile

Esta página foi traduzida automaticamente da versão em chinês e pode conter erros. Prevalece a versão em chinês.

IlustraçãoO Turnstile fica dentro de um formulário. Na maioria das vezes ele verifica sozinho e mostra uma marca de confirmação; a página não é redirecionada.

Uma tarefa do Cloudflare Turnstile retorna um token (token) que você envia ao site de destino para passar na verificação. TurnstileTaskProxyless custa 25 pontos (≈ US$3.75 / 1k) por tarefa e é assíncrona: primeiro createTask, depois getTaskResult a cada 5 segundos. Tarefas com falha ou que expiram têm reembolso de pontos automático.

POSThttps://api.yescaptcha.com/createTaskEndpoint global
POSThttps://cn.yescaptcha.com/createTaskEndpoint China

O corpo da requisição é JSON, autenticado com clientKey. Consulte o resultado no mesmo endpoint em que criou a tarefa.

Um widget de verificação do Cloudflare (“Confirme que você é humano”) está embutido em um formulário da página, e a página carrega um script de challenges.cloudflare.com/turnstile.

Se a página inteira é bloqueada pelo Cloudflare e exibe “Just a moment…” ou “Verificando seu navegador”, isso é a página de desafio do Cloudflare, não o Turnstile; use página de desafio do Cloudflare. A diferença está em Identificar o tipo de captcha.

Tipo de tarefaPreçoModoObservações
TurnstileTaskProxylessUS$3.75 / 1k; 25 pontos/tarefa · ¥25 / 1kAssíncrono
TurnstileTaskProxylessM1US$4.50 / 1k; 30 pontos/tarefa · ¥30 / 1kAssíncrono
TurnstileTaskUS$3.75 / 1k; 25 pontos/tarefa · ¥25 / 1kAssíncronoProxy próprio

Os preços em dólares americanos são estimativas com base em US$1 ≈ ¥6.67; as tarefas são cobradas em pontos.

  • TurnstileTaskProxyless e TurnstileTaskProxylessM1 têm os mesmos parâmetros e rotas diferentes; um pode servir de reserva para o outro.
  • TurnstileTask carrega o captcha pelo seu próprio proxy e exige os campos de proxy.
CampoTipoObrigatórioDescrição
typestringSimTipo de tarefa; veja "Tipos de tarefa e preços" nesta página
websiteURLstringSimURL completa da página que exibe o captcha. Use o site em que você vê o captcha, não o domínio do fornecedor do captcha
websiteKeystringSimA chave do site (sitekey) do Turnstile, normalmente começando com 0x
pageActionstringNãoA action que a página passa ao Turnstile (uma opção de turnstile.render, ou data-action no elemento do widget), por exemplo login. Não é necessária na maioria dos casos; adicione somente quando as tarefas continuarem falhando
datastringNãoO cData que a página passa ao Turnstile (uma opção de turnstile.render, ou data-cdata no elemento do widget), por exemplo c0bd4b36-7419-4e18-83c6-378699f2a9a2. Não é necessário na maioria dos casos; adicione somente quando as tarefas continuarem falhando
proxyTypestringAlguns tiposProtocolo do proxy: http, https, socks4 ou socks5 (Obrigatório para TurnstileTask)
proxyAddressstringAlguns tiposEndereço IP ou nome de host do proxy. Endereços locais ou privados, como 127.0.0.1 ou 192.168.x.x, não funcionam porque nossos servidores não conseguem acessá-los (Obrigatório para TurnstileTask)
proxyPortintegerAlguns tiposPorta do proxy (Obrigatório para TurnstileTask)
proxyLoginstringNãoNome de usuário do proxy, se o proxy exigir autenticação (somente TurnstileTask)
proxyPasswordstringNãoSenha do proxy, se o proxy exigir autenticação (somente TurnstileTask)
userAgentstringNãoUser-Agent do navegador. Se o resultado contiver um userAgent, use esse valor ao enviar o token (somente TurnstileTask)

websiteKey geralmente começa com 0x. Como encontrá-lo: Encontrar os parâmetros do Turnstile.

Se as tarefas continuam falhando: pageAction e data

Seção intitulada “Se as tarefas continuam falhando: pageAction e data”

Na maioria dos casos, basta enviar websiteURL e websiteKey; esses dois parâmetros não são necessários. Se você tem certeza de que websiteURL e websiteKey estão corretos e a tarefa ainda falha, verifique se a página passa action e cData ao Turnstile (opções de turnstile.render, ou data-action e data-cdata no elemento do widget). Se passar, envie-os exatamente como estão:

  • pageAction: o action da página, por exemplo login
  • data: o cData da página, por exemplo c0bd4b36-7419-4e18-83c6-378699f2a9a2
POST https://api.yescaptcha.com/createTask
{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "TurnstileTaskProxyless",
"websiteURL": "https://example.com/login",
"websiteKey": "0x4AAAAAAA_SITE_KEY",
"pageAction": "login",
"data": "c0bd4b36-7419-4e18-83c6-378699f2a9a2"
}
}
POST https://api.yescaptcha.com/createTask
{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "TurnstileTaskProxyless",
"websiteURL": "https://example.com/login",
"websiteKey": "0x4AAAAAAA_SITE_KEY"
}
}
curl -s https://api.yescaptcha.com/createTask \
-H 'Content-Type: application/json' \
-d '{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "TurnstileTaskProxyless",
"websiteURL": "https://example.com/login",
"websiteKey": "0x4AAAAAAA_SITE_KEY"
}
}'
# Returns {"errorId":0,"taskId":"..."}; then poll every 5 seconds:
curl -s https://api.yescaptcha.com/getTaskResult \
-H 'Content-Type: application/json' \
-d '{"clientKey": "YOUR_CLIENT_KEY", "taskId": "TASK_ID"}'

Substitua websiteURL e websiteKey pelos valores do site de destino.

{
"errorId": 0,
"status": "ready",
"solution": {
"token": "0.ufq5RgSVZd11DPSX1brdrxnEs28KcVlKj2ORchqxSy2q9yAW6ciq3hriXDF4x...",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/155.0.0.0 Safari/537.36"
}
}
CampoTipoDescrição
tokenstringO token a ser enviado ao site de destino. Uso único; envie-o o quanto antes
userAgentstringO User-Agent usado para obter o token. Use este valor ao enviar o token, mesmo que seja diferente do que você enviou

Preencha o campo cf-turnstile-response da página (ou o campo exigido pela API do site de destino) com o token e envie, usando como User-Agent da requisição o userAgent retornado.

Enquanto a tarefa está em andamento, a resposta é {"errorId": 0, "status": "processing"}; consulte novamente após 5 segundos. Em caso de erro, trate conforme o errorCode; veja Códigos de erro.

É de uso único. Envie-o o quanto antes após recebê-lo (o token do Turnstile geralmente expira em alguns minutos, conforme definido pelo Cloudflare).

Confirme que websiteURL é a página em que o widget aparece, que websiteKey está correto e que o envio usa o userAgent retornado. Se a página passa action e cData, envie-os como pageAction e data; veja Se as tarefas continuam falhando. Se o site também verifica o IP, use TurnstileTask e faça o envio pelo mesmo proxy.