Сам по себе Make (бывший Integromat) капчу не решает. Но через обычный HTTP-модуль он передаёт её в CaptchaAI, дожидается токена и подставляет результат в следующий шаг — без единой строки кода. Ниже собран рабочий сценарий: вебхук принимает задачу, CaptchaAI решает reCAPTCHA v2, а готовый токен возвращается в ваш процесс.
Как устроен сценарий
Логика сценария состоит из четырёх шагов: вебхук принимает URL страницы и sitekey reCAPTCHA; задача уходит в CaptchaAI на решение; модуль опроса ждёт готовности; решённый токен возвращается через вебхук или в следующий модуль.
Схема подходит для автоматизации форм, ввода данных и любого процесса, где капча перекрывает автоматический путь, — например, для QA-прогонов лид-форм у агентства, которое собирает заявки без ручного участия.
Шаг 1: соберите сценарий в Make
Создайте новый сценарий и добавьте в него модули по порядку.
Модуль 1: вебхук-триггер (Custom webhook)
Заведите вебхук, который будет принимать запросы на решение капчи.
Структура данных вебхука:
{
"sitekey": "6Le-wvkSVVABCPBMRTvw0Q4Muexq1bi0DJwx_mJ-",
"pageurl": "https://example.com/form",
"captcha_type": "recaptcha_v2"
}
Порядок настройки: добавьте модуль Webhooks > Custom webhook, нажмите Add, скопируйте URL вебхука и опишите структуру данных полями sitekey, pageurl и captcha_type.
Модуль 2: HTTP-запрос — отправка задачи в CaptchaAI
Добавьте модуль HTTP > Make a request с методом GET на https://ocr.captchaai.com/in.php и включите разбор ответа как JSON (Parse response). Строку запроса заполните так:
key— ваш API-ключ CaptchaAI;method—userrecaptcha;googlekey—{{1.sitekey}}(из вебхука);pageurl—{{1.pageurl}}(из вебхука);json—1.
Чтобы решать другой тип капчи, поменяйте method: turnstile для Cloudflare Turnstile (с sitekey вместо googlekey) или geetest для GeeTest v3. После запуска модуль вернёт ответ вида:
{
"status": 1,
"request": "TASK_ID_12345"
}
Модуль 3: пауза (Sleep)
Добавьте модуль Tools > Sleep на 15 секунд — пауза даёт CaptchaAI время решить капчу до начала опроса.
Модуль 4: HTTP-запрос — опрос результата
Добавьте ещё один модуль HTTP > Make a request с методом GET на https://ocr.captchaai.com/res.php. В строку запроса передайте параметры:
key— ваш API-ключ CaptchaAI;action—get;id—{{2.data.request}}(ID задачи из модуля 2);json—1.
Модуль 5: маршрутизатор (Router)
После модуля опроса добавьте Router с двумя маршрутами:
| Маршрут | Условие фильтра | Действие |
|---|---|---|
| Капча решена | {{4.data.status}} равно 1 |
перейти к следующему модулю (ответ вебхука, запись в базу и т. д.) |
| Ещё не готово | {{4.data.request}} равно CAPCHA_NOT_READY |
вернуться к модулю 3 (Sleep) и повторить опрос |
Шаг 2: организуйте цикл опроса
Циклы в Make строятся через модуль Repeater или замыканием модулей на более ранние этапы. Добавьте Flow Control > Repeater, поместите внутрь последовательность Sleep → Poll → Router, и маршрутизатор выйдет из цикла, когда status = 1:
| Параметр | Значение |
|---|---|
| Повторы | 10 (максимум попыток опроса) |
| Начальное значение | {{2.data.request}} (ID задачи) |
Каждая итерация выжидает 5 секунд, опрашивает CaptchaAI и проверяет готовность результата.
Шаг 3: подставьте решённый токен
Как только капча решена, токен доступен в {{4.data.request}}. Дальше его можно использовать по-разному.
Вариант A: вернуть через ответ вебхука
Добавьте модуль Webhooks > Webhook response:
{
"token": "{{4.data.request}}",
"status": "solved"
}
Вариант B: отправить в форму
Добавьте модуль HTTP > Make a request с методом POST на endpoint целевой формы. В тело запроса включите данные формы вместе с полем g-recaptcha-response: {{4.data.request}}.
Вариант C: записать в базу данных
Добавьте модуль Google Sheets, Airtable или Database, чтобы фиксировать решения. Логируйте только служебные поля и те данные, которые вправе обрабатывать (для РФ — с учётом 152-ФЗ «О персональных данных»).
Схема готового сценария
[Webhook Trigger]
↓
[HTTP: Submit to CaptchaAI in.php]
↓
[Sleep: 15 seconds]
↓
[Repeater: 10 iterations]
↓ (each iteration)
[Sleep: 5 seconds]
[HTTP: Poll CaptchaAI res.php]
[Router]
Route 1 (solved) → [Use Token] → [Webhook Response]
Route 2 (not ready) → continue loop
Route 3 (error) → [Error Handler]
Тарификация и предсказуемая стоимость
Make тарифицирует операции, а CaptchaAI — потоки, а не отдельные решения. Даже тариф BASIC ($15/мес, 5 потоков) даёт неограниченное число решений в рамках потоков, поэтому стоимость решения капчи остаётся предсказуемой. Для фрилансеров и агентств в СНГ, которые ведут расчёты в нестабильной локальной валюте, фиксированная цена в USD упрощает планирование бюджета.
Обработка ошибок
Настройте обработчики на HTTP-модулях под три типовые ситуации:
- отправка не прошла (модуль 2): проверьте
ERROR_ZERO_BALANCE(пополните баланс) илиERROR_WRONG_USER_KEY(исправьте API-ключ); - опрос не прошёл (модуль 4): проверьте
ERROR_CAPTCHA_UNSOLVABLE(сверьте sitekey и pageurl) или сетевые ошибки (повторите запрос); - тайм-аут: если Repeater исчерпал итерации без решения, направьте поток к обработчику, который зафиксирует сбой.
Обработчик в Make добавляется правым щелчком по модулю → Add error handler → Resume (пропустить и продолжить) или Rollback (прервать сценарий).
Диагностика типичных проблем
| Проблема | Причина | Решение |
|---|---|---|
| Вебхук не срабатывает | URL не зарегистрирован | Проверьте, что URL вебхука активен в Make |
ERROR_WRONG_USER_KEY |
Неверный формат API-ключа | Убедитесь, что ключ — 32 символа без лишних пробелов |
| Цикл опроса не завершается | Короткая пауза или неверный ID задачи | Сверьте ID задачи; увеличьте паузу до 10 секунд |
| Тайм-аут сценария | Лимит времени Make (5 мин на бесплатном тарифе) | Повысьте тариф или сократите интервал опроса |
| Ошибка разбора JSON | Ответ не разобран как JSON | Включите «Parse response»; задайте json=1 в запросах |
Частые вопросы
Сколько операций Make расходует один цикл решения?
Каждый HTTP-запрос и запуск модуля — это одна операция. Один цикл обычно укладывается в 5–15 операций: отправка, пауза, 3–10 опросов и обработка результата. Планируйте квоту тарифа Make исходя из этого.
Что делать, если сценарий упирается в лимит времени бесплатного тарифа Make?
Один запуск на бесплатном тарифе ограничен примерно 5 минутами. Сократите паузу опроса, уменьшите число итераций Repeater или вынесите долгие ожидания в отдельный сценарий, запускаемый по ответу вебхука.
Как настроить опрос, чтобы не тратить лишние операции?
reCAPTCHA v2 обычно решается за несколько секунд, поэтому первую паузу держите около 15 секунд, а интервал опроса — 5 секунд. Слишком частый опрос сжигает операции Make впустую, слишком редкий — задерживает результат.