v3 API reference
Every endpoint in the OpenBrowse v3 REST API, the same surface the browser-use-sdk client already speaks, generated from the running application's OpenAPI schema.
OpenBrowse serves the same v3 REST surface as Browser Use Cloud, so an existing browser-use-sdk client works against it once you change baseUrl and apiKey. These 13 operations are generated directly from the application's own OpenAPI schema, so they cannot drift from what your instance actually serves.
Base URL and authentication
Every request goes to your own instance, under /v3, and carries your bearer token:
curl https://your-host/v3/sessions \
-H "Authorization: Bearer $OPENBROWSE_API_KEY"The token is the API_KEY value written to .env during installation. There is no separate account system and no per-task billing: your instance answers to whoever holds that token, which is why exposing it safely matters.
Profiles
A profile is a persistent browser storage jar, cookies plus localStorage per origin. Attach one to a session and the agent starts already signed in.
| Operation | Method | Path |
|---|---|---|
| List Profiles | GET | /v3/profiles |
| Create Profile | POST | /v3/profiles |
| Get Profile | GET | /v3/profiles/{profile_id} |
| Update Profile | PUT | /v3/profiles/{profile_id} |
| Update Profile | PATCH | /v3/profiles/{profile_id} |
| Delete Profile | DELETE | /v3/profiles/{profile_id} |
| Put Storage State | PUT | /v3/profiles/{profile_id}/storage-state |
Sessions
A session is one agent run. Create one with a task, a model and an output schema, then poll it or read its message stream while it works.
| Operation | Method | Path |
|---|---|---|
| List Sessions | GET | /v3/sessions |
| Create Session | POST | /v3/sessions |
| Get Session | GET | /v3/sessions/{session_id} |
| Delete Session | DELETE | /v3/sessions/{session_id} |
| List Messages | GET | /v3/sessions/{session_id}/messages |
| Stop Session | POST | /v3/sessions/{session_id}/stop |
Errors
Validation failures return 422 with a body describing which field failed and why. Anything that would exceed a session's maxCostUsd cap stops the run rather than continuing to spend.