Сценарий использования

Автоматизация веб-форм через API с ИИ-заполнением

Отправьте цель и URL. ИИ-агент заполнит и отправит форму в настоящем браузере, войдёт с 2FA, приложит файлы и спросит вас перед отправкой. Оплата за шаг.

Предоплата, без подпискиREST или MCPОдин ключ для моделей, данных и агентов
portal.example.com/applyПолное имяAda LovelaceEmailada@example.comПароль••••••••••Код 2FA492 817Отправитьagentopen pagetype nametype emailfill passwordenter 2FAclick Submit✓ done

У части работы в вебе нет API: портал поставщика, форма запроса цены, отклик на вакансию, страница аккаунта за логином. Браузерный агент автоматизирует такие веб-формы одним вызовом API. Вы описываете задачу обычными словами и даёте стартовый URL. ИИ-агент выполняет её в настоящем браузере Chromium: заполняет поля, входит с секретами, которых сам никогда не видит, прикладывает ваши файлы, ждёт вашего подтверждения перед отправкой и возвращает результат текстом и в JSON.

Передайте это своему ИИ-агенту

Скопируйте этот промпт в Claude Code, Cursor, Codex или любой кодинг-агент. Он подскажет агенту, где документация и как использовать ваш API-ключ.

Automate a web form or multi-step web task for me with the Lovely Router browser agent: a real browser that fills forms, signs in (including 2FA), attaches files and asks before it submits.

- Docs (read first): https://lovelyrouter.com/docs/browser-agent.md and https://lovelyrouter.com/docs/browser-agent/logins.md and https://lovelyrouter.com/docs/browser-agent/human-in-the-loop.md
- Start: POST https://lovelyrouter.com/v1/browser/runs with `{"goal": "...", "start_url": "...", "approve": "submit", "output_schema": {...}}`. Put every value the form needs in the goal. Poll the `poll` path; when it waits (`needs`), show me the fields and only reply `{"approve": true}` at .../reply after I say so.
- Never put passwords or codes in the goal: store them with PUT https://lovelyrouter.com/v1/browser/vault/<name> (`value`, `kind`, `origins`) and pass the names in `secrets`.
- Billed per step. Use it only on accounts I own or may use.
- Auth: read my API key from the LOVELY_API_KEY environment variable and send it as `Authorization: Bearer $LOVELY_API_KEY`. Never print or commit the key. If it is not set, ask me to create one at https://lovelyrouter.com/app/keys.
- Billing is prepaid: every call is charged to my balance, so test with a small request before running anything large.
- Every docs page is plain Markdown; the full index is https://lovelyrouter.com/llms.txt.

My task: <the site, what to fill in or do, and what proves it worked>
01

Как это работает

010203
  1. Опишите задачу

    Сформулируйте цель так, как поставили бы задачу внимательному ассистенту: все значения, которые нужны форме, и что считается успехом («сообщи номер подтверждения»). Если URL формы известен, начинайте прямо с неё.

  2. Агент заполняет форму

    На каждом шаге агент читает страницу и делает одно действие: кликает, вводит текст, выбирает вариант, загружает файл или подставляет сохранённый секрет. Прежде чем нажать кнопку отправки формы, он сверяет каждое поле с вашей целью и исправляет несовпадающие значения.

  3. Вы подтверждаете, он отправляет

    По умолчанию агент останавливается перед покупками, бронированиями, сообщениями, удалениями и подачей заявок и показывает вам значения формы. Вы отвечаете подтверждением, и запуск завершается с answer, а если вы задали схему — ещё и с data по ней.

02

Заполнить и отправить форму одним запросом

cURL
curl https://lovelyrouter.com/v1/browser/runs \
  -H "Authorization: Bearer $LOVELY_API_KEY" \
  -H "content-type: application/json" \
  -d '{
    "goal": "Request a quote for 500 blue 750 ml water bottles with our logo, delivered to 12 Main St, Springfield, IL 62701 by December 1, 2026. Contact: Ada Lovelace, ada@example.com. Submit the form and tell me the quote reference.",
    "start_url": "https://supplier.example.com/quote",
    "approve": "submit",
    "output_schema": {"quote_reference": "string", "confirmation_message": "string"},
    "webhook": "https://api.example.com/hooks/browser"
  }'

Запрос сразу возвращает 202, а агент работает в фоне. С "approve": "submit" он останавливается перед кнопкой отправки, и ваш вебхук получает подписанное событие run.waiting: его needs содержит prompt для человека, значения формы в fields, надпись кнопки в action и скриншот. Подтвердите:

cURL
curl https://lovelyrouter.com/v1/browser/runs/brun_5b7d9f1a3c5e7a9b1d3f5a7c/reply \
  -H "Authorization: Bearer $LOVELY_API_KEY" \
  -H "content-type: application/json" \
  -d '{"approve": true}'

Агент нажимает кнопку и завершает работу; приходит run.finished с answer и JSON в data. Если вместо этого ответить {"approve": false, "reason": "Wrong address"}, агент не отправит форму: он прочитает причину и попробует другой путь или сообщит, почему не получилось.

03

Вход и коды двухфакторной аутентификации

Сохраните каждую учётную запись один раз через PUT /v1/browser/vault/{name}: её value, kind (password, username, text или totp) и origins, где её разрешено вводить. Передайте имена в secrets запуска. Модель видит только имена вроде portal_password; значение вводится лишь на разрешённом вами сайте, поэтому поддельная страница входа его не получит.

Приложения-аутентификаторы

Сохраните TOTP-сид как секрет типа totp, и агент будет вводить актуальный 6-значный код.

Коды по SMS или email

Агент останавливается с вопросом, а вы отвечаете {"secret": "481923"}. Он вводит код, не видя его.

Оставаться в аккаунте

Добавьте save_profile к запуску со входом, а последующие запуски начинайте с profile, чтобы пропустить вход.

Учётные данные ваших пользователей

Передавайте ephemeral_secrets для данных, которые должны жить только один запуск; после его окончания они удаляются.

05

Рецепты

Отклики на вакансии с нужным вложением

Загрузите резюме и сопроводительное письмо через PUT /v1/browser/files/{name}, передайте оба в files и укажите в цели, что куда прикладывать. Агент сопоставляет каждое поле загрузки с назначением документа, а не только с типом файла.

Многостраничные формы запроса цены

Задайте webhook, пересылайте подтверждения run.waiting в чат команды и отправляйте их ответ на путь reply запуска.

Чтение страницы аккаунта за логином

Начните с сохранённого profile, передайте также secrets, чтобы агент мог войти заново, если сессия истекла, и запросите сумму последнего счёта через output_schema.

Внутренние формы без присмотра

Для форм, которые можно доверить отправлять самостоятельно, например учёт рабочих часов во внутреннем инструменте, задайте "human": false и "approve": "none". Тогда запуск ничего не резервирует под время ожидания.

Чтобы наблюдать за запуском, добавьте "stream": true, "screen": true и получайте каждый шаг и экран браузера по мере выполнения. Когда на странице появляется CAPTCHA, агент даёт вам ссылку Live View; вы решаете её, отвечаете {"done": true}, и он продолжает. Используйте агента только в аккаунтах, которыми вы владеете или которые вам разрешено использовать; подробности — в Политике допустимого использования.

06

Сколько это стоит

Вы платите за шаг: $0.006 в быстром режиме и $0.012 в точном режиме для выбора дат, карт и нестандартных виджетов. Модели включены в цену, платы за запуск нет. Вход занимает от 4 до 8 шагов, длинная многостраничная форма — от 15 до 25. В каждый шаг входит одна минута; более долгое ожидание человека стоит $0.005 в минуту, а сами паузы как шаги не тарифицируются. Запуск резервирует max_steps, умноженное на цену шага, плюс одно ожидание длительностью до human_timeout_minutes, а затем списывает фактически использованное. Запуск, который завершился ошибкой или был остановлен вами, оплачивает только выполненные шаги. См. цены и страницу браузерного агента с результатами бенчмарка.

07

Частые вопросы

?
Может ли ИИ заполнять формы за логином с двухфакторной аутентификацией?+

Да. Сохраните пароль и TOTP-сид как секреты в хранилище, и агент войдёт и введёт актуальный 6-значный код. Если код приходит по SMS или email, агент остановится, а вы ответите кодом.

Видит ли модель мои пароли?+

Нет. Агент работает с именами секретов, а каждое значение расшифровывается только в момент ввода в подходящее поле на разрешённом вами сайте. Любое значение секрета длиной от шести символов вычищается из текста страниц, ответов, данных и журнала шагов.

Что происходит, когда сайт показывает CAPTCHA?+

Агент не умеет решать CAPTCHA. Он передаёт браузер человеку через ссылку Live View, действующую один час, и продолжает, как только тот ответит, что закончил.

Можно заставить его ждать моего подтверждения перед отправкой?+

Да. Значение по умолчанию, approve "risky", ставит паузу перед покупками, заказами, бронированиями, сообщениями, удалениями и подачей заявок. Задайте approve "submit", чтобы пауза была перед каждой отправкой, или "none", чтобы агент отправлял сам.

Может ли Claude Code или другой агент заполнять формы с его помощью?+

Да. MCP-сервер предоставляет API браузерного агента как browser_run, browser_status, browser_reply и browser_takeover. Агенты передают имена секретов из хранилища, а не их значения.

Если нужно читать данные, а не отправлять их, см. извлечение данных из веба; полный API описан в документации браузерного агента.

Один предоплаченный ключ для моделей, данных и агентов

Без подписки. Пополняйте баланс, используйте сколько нужно и смотрите каждое списание в логах.