MFA and Captcha Support¶
The Browser Actions authentication preset supports Time-based One-Time Password (TOTP) multi-factor authentication and simple captcha solving during the authentication flow.
MFA Authentication¶
Advanced MFA Methods
Support for email and SMS-based multi-factor authentication is planned for Q2 2026. For now, only TOTP-based MFA is supported through the Browser Actions preset.
TOTP codes are automatically generated from a provided secret and filled into the authentication form. The TOTP secret must be provided in the same format as used by authenticator applications (e.g., Google Authenticator, Authy).
Example: Login with TOTP
presets:
- type: browser_actions
login_url: https://example.com/login
users:
- username: user@example.com
actions:
- action: fill
locator: input[name="username"]
value: user@example.com
- action: fill
locator: input[name="password"]
value: password123
- action: click
locator: button[type="submit"]
- action: wait_element
locator: input[name="totp_code"]
timeout: 10
- action: fill_totp
locator: input[name="totp_code"]
secret: JBSWY3DPEHPK3PXP
auto_submit: true
The fill_totp action generates a TOTP code from the provided secret and fills it character by character into the specified field. The auto_submit option can be enabled to automatically submit the form after the code is entered.
Captcha Solving¶
Advanced Captcha Protection
For advanced captcha systems (e.g., reCAPTCHA, hCaptcha, Cloudflare Turnstile), automatic solving is not supported. These systems require IP allowlisting to bypass captcha challenges. Refer to the Firewall Configuration documentation to configure IP allowlisting for Escape's Public Locations.
Simple text-based captchas are solved automatically using AI vision capabilities. The captcha image is captured from the page and analyzed to extract the text, which is then filled into the captcha input field.
Example: Login with Captcha
presets:
- type: browser_actions
login_url: https://example.com/login
users:
- username: user@example.com
actions:
- action: fill
locator: input[name="username"]
value: user@example.com
- action: fill
locator: input[name="password"]
value: password123
- action: solve_captcha
locator: input[name="captcha"]
auto_submit: false
- action: click
locator: button[type="submit"]
The solve_captcha action captures a screenshot of the page, extracts the captcha text, and fills it into the specified field. The form submission must be handled by a subsequent action unless auto_submit is enabled.