Nstbrowser Mobile Proxies for Automation: Puppeteer and API Setup
Nstbrowser is an anti-detect browser aimed squarely at automation. Alongside the desktop client it ships an API and integrations for Puppeteer, Playwright and Selenium, plus cloud profile storage so a team can run the same profile from different machines. It is a good fit for scheduled account tasks, regional QA, ad verification and price monitoring, all of which depend on the browser looking like a real user on a real network. NeonProxies supplies the network half: US carrier IPs on physical SIMs, sticky until you rotate, controllable through an API. Here is how the two fit together, first by hand and then in code.
What Nstbrowser needs from a proxy
Each Nstbrowser profile stores its own proxy with type, host, port, username and password. The profile can inherit timezone, language and geolocation from the proxy IP, and there is a proxy check that reports the external address before you launch. The same proxy fields exist in the API, so a script can create or update profiles with the proxy already attached.
Automation adds a few needs of its own. The proxy must be stable for the length of a job, it must be rotatable on demand between jobs, and it must be quick enough that page timeouts do not dominate your run time. A mobile proxy from a modem we own, with a rotation link and API control, meets those needs without extra layers.
- Per-profile proxy: HTTP or SOCKS5 with credentials
- Timezone and geolocation derived from the proxy IP
- Proxy check before launch, both in the app and via the API
- Cloud profiles so the same proxy pairing follows the profile between machines
Manual setup in the Nstbrowser client
From your NeonProxies dashboard, note the host, the HTTP and SOCKS5 ports, the username and the password. In Nstbrowser, create a profile and go to the proxy part of its settings. Choose SOCKS5 for full tunnelling including DNS and UDP, or HTTP if a tool downstream prefers it. Enter the values and run the proxy check.
Confirm the returned city matches the metro you bought. Keep the timezone and geolocation on automatic so they track the IP. Launch the profile and check the IP from inside the browser. When both readings match, the values are correct and can go into your automation configuration.
- Copy host, port, username and password from the dashboard
- Pick SOCKS5 or HTTP and the port that goes with it
- Run the proxy check and confirm the city
- Keep timezone and geolocation on automatic
Creating profiles and attaching proxies via the API
Nstbrowser's API lets your code create a profile, set its proxy, start it and receive a connection endpoint that Puppeteer, Playwright or Selenium can attach to. The proxy is passed as part of the profile definition, so the browser is already routed through NeonProxies the moment it opens.
A reliable pattern is to keep a mapping of profile identifiers to proxy identifiers in your own database. The job runner reads the pair, asks our API for the proxy's current status, optionally rotates it, waits until the proxy reports online, then starts the Nstbrowser profile with that proxy. When the job finishes, it stops the profile so the cloud copy is saved.
Credentials belong in environment variables or a secrets manager. Nstbrowser can also update an existing profile's proxy through the API, which is handy after a location move: change the host in the mapping, push the update, and the next run uses the new metro.
- Look up the profile-to-proxy pair
- Rotate through the NeonProxies API if the job wants a fresh IP
- Create or update the Nstbrowser profile with the proxy attached
- Start, attach Puppeteer or Playwright, run, stop
Sticky versus rotating in automated runs
Sticky is the default with our proxies and the right choice for any job that logs into an account. Rotate before the job, not during it. Monitoring and verification jobs usually want a new IP per iteration; rotate at the top of the loop. Rotations are unlimited on every NeonProxies plan, and there is no wait between changes, so per-iteration rotation adds only the modem's reconnect time.
Avoid rotating while a request is in flight. A rotation reconnects the modem and briefly drops connections, which can fail a form submission or a download. Wrapping the rotation in a check that the profile is stopped prevents that class of error.
Scaling profiles, proxies and workers
One proxy per profile is the rule for anything stateful. For stateless jobs, a proxy can be shared across sequential profiles with a rotation between them. Group proxies by city and name profiles the same way so that a Houston job never picks a Phoenix proxy by accident. Nstbrowser's profile groups and team sharing make it easy for an operator to open a script-created profile and see its proxy.
If you scale across several worker machines, partition the proxy list so that each modem has exactly one owner at any time. Two workers rotating the same proxy will step on each other. Cloud profiles help here because a profile can migrate between workers while keeping its proxy pairing.
When a target region changes, use the free self-service location moves from your dashboard, update the mapping, and push the proxy change through Nstbrowser's API. Nothing else in the pipeline needs to change.
Troubleshooting
Authentication errors: verify the username and password and confirm the port matches the type. Start failures right after a rotation: poll the proxy status through our API until it reports online. Wrong timezone after a move: clear any manual timezone in the profile and let the IP drive it. Leaks: use SOCKS5 with remote DNS and set WebRTC in the profile to follow the proxy.
If a job reports an IP you did not expect, look for a second worker or a scheduled task calling the rotation link. Assigning a lock per proxy in your job runner removes the race.
- Auth error: recheck credentials and port-to-type
- Start timeout: wait for the proxy to be online after rotation
- Wrong city: reset the manual timezone after a location move
- Surprise IP: enforce one worker per proxy
Why NeonProxies carrier IPs for Nstbrowser
Our modems hold real SIM cards on AT&T, T-Mobile and Verizon and live in hardware we own in New York, Los Angeles, Chicago, Houston, Phoenix, Miami, North Carolina and Boston. Every proxy offers HTTP(S) and SOCKS5 with UDP, a rotation link and API control. 4G typically delivers 20–45 Mbps and 5G 50+ Mbps, with unlimited data on every plan, so a job queue can run all day without an allowance getting in the way.
Plans are daily, weekly or monthly from $5/day. Because we built the service around an API, integrating it with Nstbrowser's own API is a short piece of code rather than a project.
Frequently asked
Can Nstbrowser attach a proxy through its API?
Yes. The profile definition includes proxy fields for type, host, port, username and password, and existing profiles can have their proxy updated. Pass the values from your NeonProxies dashboard or fetch them from our API.
How do I rotate between automated runs?
Call the proxy's rotation link or our API endpoint before starting the profile, then wait until the proxy reports online. There is no wait between changes and rotations are unlimited, so you can rotate on every iteration if the job calls for it.
Does Puppeteer need any proxy code?
No. The proxy is attached to the Nstbrowser profile, so when Puppeteer, Playwright or Selenium connects to the endpoint Nstbrowser returns, all traffic already goes through the mobile proxy.
How should I split proxies across worker machines?
Give each worker its own slice of the proxy list so a modem has one owner at a time. Nstbrowser cloud profiles can move between workers while keeping their proxy pairing, which makes rebalancing simple.
What happens to the profile's timezone after a location move?
After a free self-service location move from your dashboard, run the proxy check again or restart the profile. Nstbrowser derives timezone and geolocation from the new IP automatically as long as those settings are on automatic.