Skip to content

Automation

Repeat the same task in many profiles without doing it by hand. Record it, edit the steps, run it in parallel with values from a spreadsheet, or skip the recorder and start profiles from your own scripts.

Record once, replay across profiles

Click through a task in one profile while the recorder captures it, adjust the steps in the editor, then run them across many profiles.

13 step types
  • goto
  • click
  • type
  • keypress
  • scroll
  • wait
  • move
  • hover
  • select
  • waitFor
  • submit
  • check
  • clear

Any step can be marked optional, so a missing element is logged and skipped instead of failing the run.

Up to 10 profiles at once
A run can go profile by profile or in parallel, capped at 10.
Values from a spreadsheet
Placeholders like {{email}} in a URL or typed text are filled from each profile’s row.
Recent runs kept
The last 50 runs stay in the history with their status.

Or drive profiles from your own code

Turn on the local API in Settings, under Developer API Access, and generate an API key. It listens on 127.0.0.1 only, so nothing outside your computer can reach it. Starting a profile returns a DevTools endpoint you can attach to.

curl -X POST http://127.0.0.1:8080/api/v1/profiles/42/start \
  -H "Authorization: Bearer sg_…"
{
  "ok": true,
  "profileId": 42,
  "sessionId": "…",
  "wsEndpoint": "ws://127.0.0.1:…/devtools/browser/…"
}
const browser = await puppeteer.connect({
  browserWSEndpoint: wsEndpoint
});
The profile id and key are placeholders. Keys are stored as SHA-256 hashes.

Step reference

A macro is a list of these steps, saved with the workspace. The recorder produces the same steps you’d build by hand, so recorded macros open in the editor like any other.

Macro step types and their fields
StepFields
gotourl
clickselector
typeselector, value
keypresskey
scrollsteps (optional)
waitms
moveselector, or x and y
hoverselector, ms (optional)
selectselector, value, by: auto, value, label or index
waitForselector, state: visible or hidden
submitselector (a form, or any field inside one)
checkselector, state: checked or unchecked
clearselector

Every step that targets an element also takes a timeout in milliseconds and can be marked optional. An optional step that fails is logged as skipped and the run carries on.

Running a macro

Run on one open profile to test, then across a selection.

Parallel runs

Pick a macro, select profiles and set concurrency from 1 to 10. Profiles that are already open are reused. The ones the run opens are closed when they finish. A failed step is logged and the macro moves on to the next one.

Spreadsheet data

Bind a .xlsx, .xls and .csv file and each row goes to one profile, in order. Use a column name in double braces in a URL or text field. Only those two fields are filled, and extra profiles run without values.

Schedules

Run a macro on chosen profiles every set number of minutes, for as long as the app is open.

Run console and history

Each profile shows as queued, launching, running, passed or failed while the run streams to a console. The console never carries typed values, cookies or credentials. Macro runs, parallel runs and cookie warm-ups go into Task History, which keeps the last 50.

Cookie Warmer

Opens a list of sites in the selected profiles for a set number of seconds each, either just browsing, clicking at random or following links. It can loop until stopped or run without windows. Cookies and cache stay in each profile.

Local API reference

Off until you turn it on under Developer API Access. It listens on 127.0.0.1, port 8080, and only answers requests addressed to your own computer.

Local API routes
RouteAuthReturns
GET /api/v1/healthNoneStatus check
GET /api/v1/profilesAPI keyProfile configurations
POST /api/v1/profiles/:id/startAPI keyok, profileId, sessionId, wsEndpoint

Download SoftGlaze Browser

Windows 10 and 11, 64-bit. 7-day trial, no card needed.

The download page lists the SHA-256 checksum for each release and shows what to do when Windows SmartScreen warns about the installer, which is not code-signed yet.