Integrações

Power Automate + CaptchaAI: Solução Microsoft Flow CAPTCHA

O Microsoft Power Automate (anteriormente Flow) automatiza processos de negócios em todo o ecossistema da Microsoft e em centenas de serviços de terceiros. Quando esses fluxos de trabalho encontram formulários web ou APIs protegidos por CAPTCHA,CaptchaAIpode resolvê-los por meio do conector HTTP do Power Automate.

Este guia mostra como criar um fluxo do Power Automate que envia CAPTCHAs para CaptchaAI, pesquisa resultados e usa o token resolvido para concluir envios de formulários.

Cenário do mundo real

Sua equipe financeira precisa automatizar a recuperação de dados de um portal de fornecedor que mostre reCAPTCHA v2. Em vez de intervenção manual, um fluxo do Power Automate:

  1. Recebe os parâmetros CAPTCHA (sitekey, URL da página)
  2. Envia-os para CaptchaAI
  3. Aguarde a solução
  4. Usa o token para autenticar e recuperar os dados

Etapa 1: crie o fluxo

No Power Automate, crie um fluxo de nuvem instantâneo com um gatilho manual (ou qualquer gatilho de sua escolha).

Adicione parâmetros de entrada ao gatilho

Adicione duas entradas de texto ao gatilho manual:

  • sitekey — A chave do site reCAPTCHA v2
  • pageurl — O URL da página com o CAPTCHA

Etapa 2: enviar tarefa CAPTCHA

Adicione uma ação HTTP (conector Premium):

Configuração Valor
Método OBTER
URI https://ocr.captchaai.com/in.php

Consultas:

Chave Valor
chave Sua chave de API CaptchaAI
método userrecaptcha
chave do Google @{triggerBody()['text']} (entrada da chave do site)
URL da página @{triggerBody()['text_1']} (entrada de URL da página)
JSON 1

Analisar a resposta: Adicione uma ação Analisar JSON após a ação HTTP:

Esquema:

{
  "type": "object",
  "properties": {
    "status": { "type": "integer" },
    "request": { "type": "string" }
  }
}

Conteúdo: @{body('HTTP')}

Etapa 3: validar enviar resposta

Adicione uma ação Condição:

  • Condição: @{body('Parse_JSON')?['status']} é igual a 1

Se Não (falha no envio):

  • Adicione uma ação Encerrar com status "Falha" e mensagem: Submit error: @{body('Parse_JSON')?['request']}

Se sim:

  • Continuar para o ciclo de votação

Etapa 4: construir o ciclo de votação

Dentro do branch "If Yes", adicione um loop Do Until:

Condição de loop: @{variables('solveStatus')} não é igual a pending

Antes do loop, inicialize duas variáveis:

  • solveStatus (String) = pending
  • solvedToken (String) = vazio

Dentro do loop Do Until, adicione estas ações em sequência:

4a. Atraso

Adicione uma ação de Atraso: 5 segundos.

4b. HTTP – Pesquisa de resultado

Configuração Valor
Método OBTER
URI https://ocr.captchaai.com/res.php

Consultas:

Chave Valor
chave Sua chave de API CaptchaAI
ação get
identificação @{body('Parse_JSON')?['request']}
JSON 1

4c. Analisar JSON - resposta à enquete

Use o mesmo esquema da Etapa 2.

4d. Condição - Verifique o status

Condição: @{body('Parse_JSON_2')?['status']} é igual a 1

Se sim (resolvido):

  • Defina a variável solvedToken = @{body('Parse_JSON_2')?['request']}
  • Defina a variável solveStatus = solved

Se Não:

  • Adicione outra condição: @{body('Parse_JSON_2')?['request']} não é igual a CAPCHA_NOT_READY
  • Se verdadeiro (erro), defina solveStatus = error
  • Se for falso (ainda pendente), não faça nada (o loop continua)

Defina o limite do loop Fazer até:

  • Contagem: 20 (iterações máximas)
  • Tempo limite: PT3M (3 minutos)

Etapa 5: use o token resolvido

Após o loop, adicione uma Condição para verificar @{variables('solveStatus')}:

Se for igual a "resolvido":

  • Use @{variables('solvedToken')} em um HTTP POST para enviar o formulário
  • Ou envie por e-mail, mensagem do Teams ou qualquer outro conector

Exemplo HTTP POST para enviar um formulário:

Configuração Valor
Método POSTAR
URI URL do formulário de destino
Corpo {"g-recaptcha-response": "@{variables('solvedToken')}", "other_field": "value"}

Se não for "resolvido":

  • Envie uma notificação de erro via Teams ou email

Estrutura de Fluxo Completa

[Manual Trigger (sitekey, pageurl)]
    ↓
[Initialize Variables: solveStatus, solvedToken]
    ↓
[HTTP: Submit to CaptchaAI /in.php]
    ↓
[Parse JSON]
    ↓
[Condition: status = 1?]
    ↓ Yes
[Do Until: solveStatus ≠ pending]
    ├── [Delay: 5 seconds]
    ├── [HTTP: Poll CaptchaAI /res.php]
    ├── [Parse JSON]
    └── [Condition: Solved or Error?]
    ↓
[Condition: solveStatus = solved?]
    ↓ Yes
[HTTP: Submit form with token]
    ↓
[Compose: Success response]

Solução de problemas

Problema Causa Correção
Conector HTTP não disponível O plano gratuito não inclui conectores Premium Atualize para o Power Automate Premium ou use um conector personalizado
A análise JSON falha O corpo da resposta é texto, não JSON Certifique-se de que json=1 esteja nos parâmetros de consulta
Loop é executado indefinidamente Variável solveStatus não atualizada Verifique se os nomes das variáveis correspondem exatamente nas ações Definir variável
Erro 403 de CaptchaAI Restrição de IP ou chave de API errada Verifique a chave API; verifique se a lista de permissões de IP está habilitada em sua conta
Tempo limite de fluxo O tempo limite padrão de 30 dias é adequado, mas o tempo limite de ações individuais é de 2 minutos O tempo limite Do Until (PT3M) cuida disso; aumente se necessário

Perguntas frequentes

Isso requer uma licença Premium Power Automate?

Sim, o conector HTTP é um recurso Premium. Se você estiver em um plano gratuito, considere usar um conector personalizado ou roteamento por meio do Azure Functions.

Posso resolver outros tipos de CAPTCHA?

Sim. Altere o parâmetro method para turnstile para Cloudflare Turnstile ou post para Image CAPTCHAs. Ajuste os parâmetros necessários de acordo.

Como posso armazenar a chave API com segurança?

Use o conector Variáveis ​​de Ambiente ou Azure Key Vault do Power Automate para evitar codificar a chave de API na definição de fluxo.

Posso acionar esse fluxo no Power Apps?

Sim. Use o conector Power Automate no Power Apps para chamar esse fluxo, passando sitekey e pageurl como parâmetros e recebendo o token de volta.

Artigos relacionados

Próximas etapas

Adicione a solução CAPTCHA aos seus fluxos de trabalho do Power Automate —obtenha sua chave API CaptchaAIe construir o fluxo.

Guias relacionados:

Os comentários estão desativados para este artigo.