Skip to content

Profiles & States API

Profiles are persistent Chromium user data directories stored at ~/.brow/profiles/{name}/. They retain cookies, localStorage, and browser state between sessions.

GET /profiles

Response: {"profiles": ["default", "gmail", "github"]}

DELETE /profiles/{name}

Deletes the profile directory and all its data. Fails with 409 if a session currently holds that profile — delete the session first.

Response: {"deleted": "gmail"}


States are snapshots of a session’s cookies and storage, saved as JSON files at ~/.brow/states/{name}.json. Unlike profiles (which are full Chromium directories), states are portable and can be restored into any session.

POST /states/save
{"name": "logged-in-github", "session_id": "1"}

Response: {"saved": "logged-in-github"}

POST /states/restore
{"name": "logged-in-github", "session_id": "2"}

Restores cookies and localStorage into the target session.

Response: {"restored": "logged-in-github"}

GET /states

Response: {"states": ["logged-in-github", "logged-in-gmail"]}