POST /api/sites/:slug/workflows/:name
Executes a workflow: an ordered sequence of steps (navigate, fill, select, click, submit) composed from discovered actions on a page. The server routes the instruction to the Chrome extension, which replays each step in order on the live page.
Workflows are the recommended way to perform form submissions and multi-input interactions. Rather than issuing individual action calls for each field, you supply all inputs in one request body and BrowserWire coordinates the full sequence.
Path parameters
The site identifier, e.g.
example-com. Use GET /api/sites to list available slugs.The workflow name as it appears in the manifest and OpenAPI spec, e.g.
submit_login. Use GET /api/sites/:slug/openapi.json to see all available workflow names and their input schemas.Request body
All workflow inputs in a single flat JSON object. The required and optional fields differ per workflow and are documented in the OpenAPI spec’srequestBody schema for the operation.
Example
Response fields
true on success.The page state the browser is in after the workflow completes. Reflects the
leads_to of the workflow’s submit step.Ordered list of steps executed, each prefixed with its type. For example:
"navigate:https://example.com/login", "action:fill_email".Error responses
| Status | Body |
|---|---|
404 | { "ok": false, "error": "Workflow 'submit_login' not found" } |
400 | { "ok": false, "error": "Invalid JSON body" } |
500 | { "ok": false, "error": "<execution error message>" } |
Workflow names and their input schemas are derived automatically during discovery. To see all workflows available for a site — including the exact field names and types — fetch the OpenAPI spec at
GET /api/sites/:slug/openapi.json or open the Swagger UI at GET /api/sites/:slug/docs.