# Página de desafio do Cloudflare

> Use o YesCaptcha para passar pela página de verificação "Just a moment..." do Cloudflare e obter cookies como cf_clearance, o User-Agent e o conteúdo da página. Parâmetros de CloudFlareTaskS2 e CloudFlareTaskS3, requisitos de proxy, resultado, como usá-lo e erros comuns.

Source: https://docs.yescaptcha.com/pt/tasks/cloudflare-challenge/ · Last verified: 2026-10-19

> This page was machine-translated from the Chinese version. If anything differs, the Chinese version prevails: https://docs.yescaptcha.com/zh/tasks/cloudflare-challenge/

A página de desafio do Cloudflare é a página de verificação que bloqueia o site inteiro e exibe “Just a moment…” ou “Verificando seu navegador”. O YesCaptcha abre a página pelo proxy que você informa, passa pela verificação e retorna cookies como `cf_clearance`, o User-Agent usado, os cabeçalhos da requisição e da resposta e o HTML da página após a verificação. `CloudFlareTaskS2` custa 25 pontos (≈ US$3.75 / 1k) por tarefa e `CloudFlareTaskS3` custa 20 pontos (≈ US$3.00 / 1k) por tarefa; os dois tipos têm os mesmos parâmetros, resultado e eficácia, e diferem apenas no preço. As tarefas são assíncronas e normalmente levam de 6 a 35 segundos, com grande variação entre sites. Tarefas que falham ou expiram têm reembolso de pontos automático.

- POST `https://api.yescaptcha.com/createTask` (Endpoint global)
- POST `https://cn.yescaptcha.com/createTask` (Endpoint China)

## Quando usar

-   O código-fonte da página contém `__cf_chl_rt_tk` ou `cdn-cgi/challenge-platform` e o título é `Just a moment...`: trata-se da página de desafio. Páginas de verificação que pedem para marcar a caixa “Confirmar que você é humano” também são resolvidas aqui.
-   Se há apenas um widget do Cloudflare incorporado em um formulário, é o [Turnstile](https://docs.yescaptcha.com/pt/tasks/turnstile.md), e não esta página.
-   Se, ao usar uma biblioteca como requests, você recebe 403 com “Just a moment…” mas o navegador abre a página normalmente, provavelmente o bloqueio é só pela impressão digital TLS. Use uma biblioteca que imite a impressão digital TLS de um navegador (como curl\_cffi); não é necessário resolver o desafio.

## Tipos e preços

| Tipo de tarefa | Preço | Modo | Observações |
| --- | --- | --- | --- |
| `CloudFlareTaskS2` | US$3.75 / 1k; 25 pontos/tarefa · ¥25 / 1k | Assíncrono | Proxy próprio |
| `CloudFlareTaskS3` | US$3.00 / 1k; 20 pontos/tarefa · ¥20 / 1k | Assíncrono | Proxy 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.

## Parâmetros da requisição

| Campo | Tipo | Obrigatório | Descrição |
| --- | --- | --- | --- |
| `type` | string | Sim | Tipo de tarefa; veja "Tipos de tarefa e preços" nesta página |
| `websiteURL` | string | Sim | URL completa da página protegida pelo desafio. Deve ser uma URL pública `http://` ou `https://`; endereços IP privados e nomes de host locais ou internos, como `localhost`, são rejeitados |
| `proxy` | string | Sim | Proxy em uma única string: `http://user:pass@proxy.example.com:8080` (proxy HTTP, credenciais opcionais) ou `socks5://proxy.example.com:1080` (sem credenciais). Proxies `https://` e SOCKS5 com credenciais não são suportados, e endereços locais ou privados são rejeitados. Todas as requisições à página de destino passam por esse proxy |
| `userAgent` | string | Não | Normalmente deixe de fora. Apenas um User-Agent do Chrome para desktop no Linux é utilizado; qualquer outro (Windows, macOS, celular, outros navegadores) é ignorado. Use sempre o `user_agent` do resultado nas requisições seguintes |
| `waitLoad` | boolean | Não | O padrão é false. Se true, depois de passar na verificação a tarefa espera a atividade de rede da página se estabilizar antes de retornar, de modo que `content` inclua mais conteúdo carregado dinamicamente; leva alguns segundos a mais |
| `requiredCookies` | array | Não | Nomes dos cookies que devem ser obtidos, como um array de strings, por exemplo `["cf_clearance"]`. Se definido, a tarefa só tem sucesso quando todos forem obtidos; caso contrário, retorna `ERROR_CAPTCHA_UNSOLVABLE` e há reembolso de pontos. Se omitido, a tarefa ainda tenta obter `cf_clearance`, mas tem sucesso (com cobrança de pontos) com quaisquer outros cookies obtidos; portanto, informe-o explicitamente se precisar de `cf_clearance` |
| `blockImage` | boolean | Não | Se true, as imagens da página de destino não são carregadas (exceto as que a própria verificação do Cloudflare precisa), economizando tráfego do proxy |
| `postData` | object | Não | Se definido, é enviado a `websiteURL` como um POST de formulário HTML comum (`application/x-www-form-urlencoded`): cada chave é um campo do formulário e os valores são enviados como strings, por exemplo `{"name": "hi"}`. Deve ser um objeto |

### Requisitos de proxy

`proxy` é obrigatório, e todas as requisições para abrir a página de destino passam por ele. O `cf_clearance` está vinculado ao IP de saída, portanto use o mesmo proxy ao acessar o site depois.

| Formato | Suporte |
| --- | --- |
| `http://user:pass@proxy.example.com:8080` | Sim: proxy HTTP com usuário e senha |
| `http://proxy.example.com:8080` | Sim: proxy HTTP sem usuário e senha |
| `socks5://proxy.example.com:1080` | Sim: proxy SOCKS5 sem usuário e senha; `socks5h://` é tratado como `socks5://` |
| `socks5://user:pass@proxy.example.com:1080` | Não, retorna `ERROR_PROXY_INCORRECT`; se precisar de usuário e senha, use um proxy HTTP |
| `https://proxy.example.com:443` ou outros protocolos, ou sem porta | Não, retorna `ERROR_PROXY_INCORRECT` |
| Endereços locais, de rede interna ou reservados, como `127.0.0.1`, `192.168.x.x`, `10.x.x.x`, ou domínios que resolvem para eles | Recusado, retorna `ERROR_PROXY_BANNED` |

> **Verificado na criação da tarefa:** Se a URL ou o proxy forem inválidos, `createTask` retorna o erro imediatamente, sem cobrança de pontos. Se um mesmo proxy falhar ao conectar várias vezes em pouco tempo, por um período as tarefas criadas com ele também retornam `ERROR_PROXY_BANNED`; troque de proxy ou tente novamente mais tarde.

### User-Agent

Em geral, não informe `userAgent`. A verificação é feita com o Chrome desktop para Linux, então só é usado um User-Agent do Chrome desktop para Linux; qualquer outro (Windows, macOS, celular ou outros navegadores) é ignorado: em nossos testes, a verificação do Cloudflare não passa quando o User-Agent não corresponde ao ambiente real do navegador. Nas requisições seguintes, use sempre o `user_agent` do resultado.

## Exemplo de requisição

POST https://api.yescaptcha.com/createTask

```json
{
  "clientKey": "YOUR_CLIENT_KEY",
  "task": {
    "type": "CloudFlareTaskS3",
    "websiteURL": "https://example.com/",
    "proxy": "http://user:pass@proxy.example.com:8080",
    "requiredCookies": ["cf_clearance"]
  }
}
```

-   Para usar `CloudFlareTaskS2`, altere apenas `type`; o restante permanece igual.
-   Com `requiredCookies` definido como `["cf_clearance"]`, a tarefa falha e há reembolso de pontos se o `cf_clearance` não for obtido. Sem esse parâmetro, se a tarefa obtiver outros cookies mas não o `cf_clearance`, ela ainda é considerada bem-sucedida e os pontos são cobrados.
-   Para enviar um formulário, adicione `postData`, por exemplo `{"name": "hi"}`; ele é enviado a `websiteURL` como um formulário POST.

Depois de criar a tarefa, chame `getTaskResult` a cada 5 segundos, como em qualquer outra tarefa assíncrona; veja [getTaskResult](https://docs.yescaptcha.com/pt/api/get-task-result.md).

## Resultado

```json
{
  "errorId": 0,
  "status": "ready",
  "solution": {
    "user_agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/155.0.0.0 Safari/537.36",
    "cookies": {
      "cf_clearance": "Wq3vXk9...-1760860800-1.2.1.1-..."
    },
    "request_headers": {
      "accept-language": "en-US,en;q=0.9",
      "user-agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/155.0.0.0 Safari/537.36"
    },
    "headers": {
      "content-type": "text/html; charset=UTF-8",
      "server": "cloudflare"
    },
    "content": "<!DOCTYPE html>..."
  }
}
```

O valor do cookie e os cabeçalhos acima são ilustrativos; use o que a API retornar.

| Campo | Tipo | Descrição |
| --- | --- | --- |
| `cookies` | object | Todos os cookies do navegador após passar na verificação (objeto de nome para valor), normalmente incluindo `cf_clearance`; se você informou `requiredCookies`, todos eles estarão incluídos. Use-os junto com o `user_agent` retornado e o proxy que você informou |
| `user_agent` | string | O User-Agent que o navegador realmente usou para passar na verificação (Chrome desktop no Linux). O `cf_clearance` está vinculado a ele, então use-o em todas as requisições seguintes |
| `request_headers` | object | Cabeçalhos de requisição que o navegador enviou na última requisição à página de destino; reutilize-os nas requisições seguintes |
| `headers` | object | Cabeçalhos de resposta da página de destino após passar na verificação |
| `content` | string | Código-fonte HTML da página de destino após passar na verificação |

## Como usar o resultado

1.  Nas requisições seguintes, use **ao mesmo tempo** os `cookies` retornados, o `user_agent` retornado e o mesmo proxy usado ao criar a tarefa. O `cf_clearance` está vinculado ao User-Agent e ao IP de saída; se qualquer um dos três mudar, a página de desafio volta a aparecer.
2.  Envie também os cabeçalhos de `request_headers`, sempre que possível, e use uma impressão digital TLS compatível com a de um navegador (por exemplo, a opção `impersonate` do curl\_cffi).
3.  O `cf_clearance` tem prazo de validade (definido pelo site de destino; em alguns casos chega a 1 hora). Dentro desse prazo não é preciso passar pelo desafio de novo, mas uma frequência de requisições muito alta pode levar o Cloudflare a bloquear o IP.
4.  Se você só precisa do conteúdo da página, use `content` diretamente, sem fazer outra requisição.

## Erros comuns

Erros retornados na criação da tarefa não geram cobrança de pontos; tarefas que falham ou expiram depois de criadas têm reembolso de pontos automático. A API retorna apenas o código de erro e uma descrição genérica; consulte a tabela abaixo para identificar a causa.

| Código de erro | Quando é retornado | O que fazer |
| --- | --- | --- |
| `ERROR_REQUIRED_FIELDS` | Na criação da tarefa: falta `websiteURL` ou `proxy` | Informe os dois campos obrigatórios |
| `ERROR_ILLEGAL_PARAMETERS` | Na criação da tarefa: `websiteURL` não é uma URL pública iniciada por `http://` / `https://`, `postData` não é um objeto ou `requiredCookies` não é um array de strings. Na consulta do resultado: não foi possível resolver o domínio de destino pelo proxy | Corrija os parâmetros; verifique a grafia da URL e se o proxy consegue acessar o site |
| `ERROR_PROXY_INCORRECT` | Na criação da tarefa: formato de proxy incorreto, sem porta, proxy `https://` ou SOCKS5 com usuário e senha | Use um dos formatos de “Requisitos de proxy”; se precisar de usuário e senha, use um proxy HTTP |
| `ERROR_PROXY_BANNED` | Na criação da tarefa: o proxy é um endereço local, de rede interna ou reservado, ou falhou ao conectar várias vezes em pouco tempo. Na consulta do resultado: o Cloudflare do site bloqueou diretamente o IP do proxy (páginas “Sorry, you have been blocked” e “Access denied”) | Troque de proxy; quanto melhor a qualidade do IP, mais fácil é passar |
| `ERROR_PROXY_CONNECT_REFUSED` | Não foi possível conectar ao proxy (conexão recusada, domínio do proxy não resolvido) ou a conexão foi recusada ou redefinida ao abrir a página pelo proxy | Verifique o endereço e a porta do proxy e confirme que ele está online e aceita acesso externo; se continuar falhando, troque de proxy |
| `ERROR_PROXY_CONNECT_TIMEOUT` | Tempo esgotado ao conectar ao proxy ou ao abrir a página por ele | Use um proxy mais rápido e estável |
| `ERROR_PROXY_NOT_AUTHORISED` | Usuário ou senha do proxy incorretos | Verifique o usuário e a senha em `proxy`; codifique caracteres especiais com URL encoding |
| `ERROR_PROXY_TLS_ERROR` | Erro no handshake TLS ao abrir a página pelo proxy | Confirme que o endereço, a porta e o protocolo do proxy estão corretos; se continuar falhando, troque de proxy |
| `ERROR_CAPTCHA_UNSOLVABLE` | A verificação não foi aprovada no tempo previsto, a página continuou no desafio após a aprovação ou não foi possível obter o cookie exigido em `requiredCookies` | Tente novamente com outro proxy; para sites específicos, entre em contato com o suporte |
| `ERROR_NO_SLOT_AVAILABLE` | Na criação da tarefa: a fila está cheia. Na consulta do resultado: a tarefa esperou tempo demais na fila sem começar, e os pontos foram reembolsados | Aguarde alguns segundos e crie a tarefa novamente |
| `ERROR_TASK_TIMEOUT` | A tarefa não foi concluída no tempo previsto | Crie a tarefa novamente; timeouts repetidos geralmente indicam que o proxy está lento demais |

Veja todos os códigos de erro em [Códigos de erro](https://docs.yescaptcha.com/pt/api/errors.md).

## Relacionados

-   [Identificar o tipo de captcha](https://docs.yescaptcha.com/pt/guides/identify-captcha.md): diferença entre a página de desafio e o Turnstile
-   [Cloudflare Turnstile](https://docs.yescaptcha.com/pt/tasks/turnstile.md)
