VeilBrowserDocs

Launching

Open a profile from the dashboard or start it headless through the Local API.

A launch is a running instance of a profile. There are two ways to launch, and both produce an isolated browser session tied to that profile's fingerprint.

Open the profile from the dashboard to get a full, interactive browser window. Best for manual work, setup and verification.

Start the profile headless (or headful) on your own machine through the Local API. Best for automation and scale.

terminal
curl -X POST http://localhost:3000/sessions/profile \
  -H "X-API-Key: $WORKER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "profileId": "<profile-uuid>" }'

The response contains a webSocketDebuggerUrl (a CDP URL) you can connect to. For a one-step, load-balanced launch over a single socket, see Cluster mode.

The session lifecycle

Launch

A launch authorizes against the cloud concurrency limit, applies the profile's fingerprint and proxy, and starts the browser.

Automate or interact

Drive the session over CDP, or use it interactively.

Stop

Closing the window or calling DELETE /sessions/:id on the Local API ends the session. Profile state persistence depends on how the browser process exits — do not assume every kill path flushes cookies and storage.

One launch per profile

A profile represents a single device. Launch a given profile once at a time to keep its state coherent.

Next steps

  • Automation — attach Puppeteer, Playwright or Selenium.
  • API reference — provision profiles and inspect session activity.
Was this page helpful?

On this page