Prepare the inputs
Use Node.js 22.23.1 on macOS, an AntiBrow API key, and an active ProxyLane traffic balance. Sign in to AntiBrow to access your dashboard and API keys. The example installs AntiBrow SDK 2.32.0 and Playwright Core 1.63.0. It uses a US exit and a separate English-language test profile. Start without signing in to a target account.Save the ProxyLane connection
The selected rotation option and protocol must both match these settings.
1
Choose the exit country
Open Residential proxies and select US under Country.
2
Keep the same IP
Expand Advanced options. Under IP rotation, select Keep the same IP.
3
Select SOCKS5 and a gateway
Select SOCKS5 under Protocol. Choose a Gateway near the machine running AntiBrow. The gateway does not select the exit country.
4
Generate one connection
Set Endpoints to
1, then select Create proxy.5
Copy the SOCKS5 URL
Under Format, choose socks5://username:password@ip:port and select Copy.
6
Keep the saved connection
Keep the connection in Saved lists. Reuse its entire URL, including the part of the username that identifies the session. Creating another proxy can create another session.
Install and configure the checker
Start a Bash shell, create a private task directory, and install the pinned packages:antibrow-sticky.mjs in this directory. Before the first run, choose an unused PROFILE_NAME and a new PROFILE_DIR in the configuration block. Keep those values and BASELINE_FILE unchanged for subsequent runs.
Pass proxyUrl each time the profile is opened, and reuse the same profileName and profileDir from the AntiBrow profile options. Use this SDK entry point for authenticated SOCKS5; a stock Chromium launch has different proxy authentication behavior.
Each run makes a browser request to ipify for the exit IP in JSON. The service receives the request from the proxy exit IP.
Complete checker code
Complete checker code
antibrow-sticky.mjs
en-US and en for a fresh profile. An existing persona keeps its saved language. The checker reads the browser language and timezone instead of assuming country selection changed them. A non-English profile requires separate persona configuration before changing the expected country and language.
Check and restart the profile
Run the checker from the same directory and shell:Continue account work after verification
The checker closes its browser after each run. In an SDK integration, place authorized target navigation inside the existing-baseline success branch, after the comparison and beforefinally closes the session. Use the already checked page; reopening another browser requires another check.
Keep target navigation out of the first-run branch that creates the baseline. Then verify the target website’s signed-in state. An IP check does not prove successful login or that a website accepts the connection.
Troubleshoot a stopped check
The checker prints a stage label and suppresses raw exceptions that could contain proxy credentials.Configuration or saved route
Configuration or saved route
Confirm both environment variables exist and the saved URL starts with
socks5://. It must include the original username, password, host, and port. For saved route, restore the original connection, profile name, and profile directory; keep the baseline while investigating changes.Launch or exit geo
Launch or exit geo
For
launch, check the AntiBrow key, license access, browser kernel installation, and profile access. The exit geo stage checks the proxy IP and its country. Confirm proxy reachability, traffic balance, and US country selection. Stop if the SDK returns no exit identity or an unexpected country.Browser IP, profile identity, or continuity
Browser IP, profile identity, or continuity
For
browser IP, check SOCKS5 credentials and access to the IP endpoint. The browser IP must match the SDK geo lookup. For profile identity, check the saved persona language and timezone. For continuity, pause account work and investigate the changed value; do not silently accept a replacement IP.Cleanup
Cleanup
Close a remaining test browser manually before reopening the same profile. The baseline and profile directory contain private state. The restrictive file defaults protect newly created files; they do not repair an existing directory’s permissions.
Reference the SDK behavior
- AntiBrow 2.32.0 profile options define the license server, profile, and proxy fields.
- Proxy geo at launch determines the launch timezone and public IP.
- Default desktop persona defines the starting language of a fresh profile.
