Skip to main content
Select Keep the same IP and SOCKS5 in ProxyLane. Pass the saved connection URL to the AntiBrow software development kit (SDK), then reuse the same profile and URL after each restart. A sticky connection requests the same exit IP, the address a website sees, while the residential session remains available. It does not reserve an address for weeks. Jump to proxy settings, SDK setup, or the restart check.

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.
Proxy requests consume traffic. The connection URL contains a proxy password, and browser profile files contain cookies. Keep both private. Enter secrets through hidden terminal input; revoke exposed credentials. SOCKS5 authentication does not encrypt the proxy connection, so use HTTPS destinations and an approved network.

Save the ProxyLane connection

The selected rotation option and protocol must both match these settings.
ProxyLane Advanced options with Keep the same IP selected, Protocol SOCKS5, and Gateway Europe
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.
The connection formats explain host, port, proxy username, and proxy password. Copy the exported URL unchanged; do not substitute the ProxyLane account password or encode the URL again.

Install and configure the checker

Start a Bash shell, create a private task directory, and install the pinned packages:
Run these commands in the same shell. Paste the API key at the first prompt and the saved SOCKS5 URL at the second. Press Enter after each value. Input stays hidden and is not saved as a literal shell command.
Save the following code as 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.
antibrow-sticky.mjs
The default desktop persona uses 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:
On the first successful run, the checker saves the observed IP, timezone, and language to the private baseline file and closes the browser. Expected output:
Run the same command again. The checker reopens the profile and compares the browser connection with the saved values. Expected output when they match:
A changed proxy URL, profile name, or profile directory stops before launch. A changed IP, timezone, or language stops before account work. Preserve the baseline when investigating a mismatch; replacing it removes the comparison point. Repeat at the restart intervals used by the workflow. Matching samples prove those checks, not uninterrupted or future IP continuity. For a fresh terminal, reopen the same directory and enter the same secrets again.

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 before finally 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.
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.
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.
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.
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.
ProxyLane support can investigate a failed connection. Include the stage label and Node/SDK versions; omit passwords, API keys, and raw exception logs. Connection troubleshooting covers traffic and connection checks.

Reference the SDK behavior