Teste a API de CAPTCHA no Insomnia

Por solvethree4 min de leitura

Crie uma tarefa com um corpo JSON, copie o ID da tarefa retornado e consulte essa tarefa até que seu status seja ready ou failed. Você não precisa de encadeamento de respostas para este teste.

Nesta página

Prepare sua configuração local

Você precisa de uma chave de API do workspace, um perfil ativo para o site de destino e um proxy. Configure o perfil do site antes de enviar a tarefa: informar um hostname e uma ação não cria um perfil.

Use um ambiente local privado chamado solvethree-local com as variáveis abaixo. Esses nomes foram escolhidos para este passo a passo; não são campos adicionais da API. Não inclua a chave de API nem as credenciais do proxy em configurações compartilhadas.

Variáveis de ambiente locais
Variáveis de ambiente locais
NomeValor
api_basehttps://api.solvethree.com/v1
api_keySua chave de API privada do workspace.
siteO hostname configurado no perfil ativo do site, não uma URL de página completa.
actionA ação de reCAPTCHA usada pela requisição ao destino.
proxyA URL do seu proxy HTTP ou HTTPS, sem caminho, consulta ou fragmento.
request_idUm identificador para esta tarefa lógica: 1–64 letras ASCII, números, sublinhados ou hífens.
task_idDeixe vazio até que a resposta de criação forneça o ID da tarefa.

Crie a tarefa e copie seu ID

  1. 1.

    Configure a requisição de criação

    Crie uma requisição POST usando api_base seguido de /tasks. Adicione o parâmetro de consulta waitMs com o valor 0. Selecione a autenticação Bearer e forneça api_key como token; a requisição deve enviar um cabeçalho Authorization usando o esquema Bearer.

  2. 2.

    Monte o corpo JSON

    Escolha um corpo JSON contendo site, action, proxy e requestId. Preencha os três primeiros com as variáveis locais correspondentes e requestId com request_id. Envie exatamente um dos campos: proxy ou proxyCandidates; este passo a passo usa proxy. Não adicione type nem url. Omitir recaptchaType seleciona o padrão, enterprise-v3.

  3. 3.

    Envie e inspecione a resposta

    Verifique a resposta HTTP antes de interpretá-la como um payload de tarefa bem-sucedido. Se a criação for bem-sucedida, copie o ID da tarefa retornado para task_id. Mantenha o corpo da tarefa e request_id disponíveis caso precise recuperar a requisição.

  4. 4.

    Consulte essa tarefa

    Crie uma requisição GET usando api_base seguido de /tasks/ e do ID da tarefa copiado. Defina waitMs como 15000, use a mesma chave Bearer e deixe o corpo vazio. Copie o ID manualmente; este passo a passo não depende de uma expressão de encadeamento de respostas.

Insomnia · requisições de criação e consulta
Create task
  Method: POST
  URL: https://api.solvethree.com/v1/tasks?waitMs=0
  Auth: Bearer Token — your private workspace key
  Body: JSON — site, action, proxy and a stable requestId

Retrieve task
  Method: GET
  URL: https://api.solvethree.com/v1/tasks/PASTE_RETURNED_ID?waitMs=15000
  Auth: Bearer Token — the same workspace key
  Body: none

Keep the task's proxy in the JSON body. Insomnia's own network proxy setting
controls its API connection, not the proxy used to generate/submit the solution.

Decida o que fazer com a resposta

A requisição HTTP retorna uma resposta sem sucesso.

Inspecione o erro HTTP antes de tentar ler um payload de tarefa bem-sucedido.

Experimente: Corrija o problema de requisição ou autenticação informado. Não envie repetidamente os mesmos dados inválidos nem suponha que todo erro significa saldo insuficiente.

A tarefa está com status pending ou solving.

Nenhum desses status contém uma solução utilizável.

Experimente: Envie a requisição GET novamente para o mesmo ID de tarefa. Não crie outra tarefa só porque esta ainda não terminou.

A tarefa está com status failed.

Leia errorCode e error; site-unreachable é um dos possíveis erros de tarefa.

Experimente: Pare de consultar essa tarefa e resolva a causa informada antes de iniciar outra. Resoluções com falha são reembolsadas.

A requisição de criação excede o tempo limite sem retornar um ID.

Um tempo limite de conexão não comprova que a criação falhou.

Experimente: Reenvie o mesmo corpo de tarefa com o mesmo requestId para recuperar a tarefa existente. Alterar os dados de entrada e reutilizar esse ID causa um conflito.

Uma tarefa reCAPTCHA com status ready fornece um token. Se você o enviar ao destino, use o userAgent e o secChUa retornados com o mesmo proxy usado na resolução. Uma resposta com status ready confirma que uma solução foi gerada — não que a requisição da sua aplicação foi bem-sucedida.

Execute sua primeira tarefa.

Comece com $5 em créditos no espaço de trabalho.

Criar um espaço de trabalho
Teste a API de CAPTCHA no Insomnia · solvethree