Skip to main content
BLS International runs visa and consular appointment portals for multiple countries, protected by a number-grid captcha. Use Captcha.autoSolve for BLS. This type is handled by the external provider integration; sending it to Captcha.solve returns an error.

Before you start

Enable the solver when starting the browser:
Your account needs the corresponding external provider configuration. Check solver balance and provider settings if solving does not begin.

Automatic captcha solving

Use the Playwright or Puppeteer lifecycle, adding the settings above to the start request. Create a page-level CDP session and attach listeners before enabling automatic mode:
Replace the target URL with your page. Add a bounded wait for the form result or protected content after navigation. {"status": "started"} only confirms that automatic mode started.

BLS challenge

BLS captchas typically show up at three points in the booking flow: checking appointment availability, submitting applicant details, or continuing through a protected booking step. The exact trigger point varies by portal — the same regional site can ask for it more than once in a single session. The challenge itself is a 3×3 number grid with distorted, noisy, or color-shifted digits — a static OCR-style puzzle, not a behavioral or token-based check like reCAPTCHA or Turnstile. This means detection and solving both work differently here: there’s no score to interpret and no widget state to watch, just an image to read. BLS runs separate regional portals — Spain, Italy, Hungary, Portugal, and others — each under its own domain, but the captcha format and the Captcha.autoSolve flow are the same across them.
BLS portal sessions commonly time out after 15–20 minutes of inactivity, and some regional sites clear the form on a failed captcha attempt rather than just reprompting. Budget for that when setting timeouts — a slow solve can cost more than the captcha attempt itself if it triggers a session reset.

Verify bypass worked

The BLS integration uses the external solver for the challenge on the page. It does not book appointments or complete the surrounding form. Continue those steps in your automation after the site accepts verification. Keep the CDP connection open while solving. Avoid running a second solver against the same challenge. If verification completes but the page is still blocked, inspect the next network response or form validation error.

Troubleshooting

If nothing happens, confirm that the external integration was loaded, "bls" is allowed in auto_captcha_types, and the challenge is present. Observe failure events and check provider availability before retrying. See CAPTCHA troubleshooting for shared errors and DevTools to inspect a running attempt. Stop the browser after the job completes.

BLS captcha FAQ

No — BLS only supports automatic mode through Captcha.autoSolve. Sending "bls" to Captcha.solve returns an error; there is no manual solving path for this type.
Yes. Spain, Italy, Hungary, Portugal, and other regional BLS sites use the same captcha format, so the same auto_captcha_types configuration and Captcha.autoSolve call apply regardless of which portal you’re automating.
BLS can trigger the challenge at more than one step — availability checks, form submission, and final confirmation are common trigger points, and some portals reprompt at each one rather than once per session.
It only confirms automatic mode began — not that a challenge was found, solved, or accepted. Attach Captcha.solveCompleted and Captcha.solveFailed listeners and wait for the actual page result before treating the job as done.
Questions? Contact support.