GET /api/sites/:slug/manifest
Returns the full BrowserWireManifest JSON for the specified site. The manifest is the source of truth for the site’s structure — the OpenAPI spec, route table, and all executable endpoints are derived from it.
Path parameters
The site identifier. Derived from the site’s origin by lowercasing and replacing non-alphanumeric characters with hyphens. For example,
https://example.com → example-com.Example
Manifest structure
| Field | Type | Description |
|---|---|---|
contractVersion | string | Semver of the BrowserWire contract DSL used to produce this manifest. |
manifestVersion | string | Semver version of this specific manifest; increments on re-discovery. |
metadata | object | ID, site URL, and creation/update timestamps. |
domain | string | LLM-assigned domain label for the site (e.g. "authentication", "e-commerce"). |
domainDescription | string | Human-readable description of what the site does. |
entities | array | Identified UI entities (buttons, forms, fields) with locator strategies and confidence scores. |
actions | array | Executable interactions — each has a name, input schema, locator set, pre/postconditions, and error codes. |
views | array | Structured data extraction definitions — each specifies what data to read and how to locate it. |
pages | array | Route-organized groupings of views and actions by URL pattern. |
workflowActions | array | High-level task workflows composed from ordered sequences of navigate, fill, click, and submit steps. |
errors | array | Named error definitions referenced by actions, with classification (recoverable, fatal, security). |
Error responses
| Status | Body |
|---|---|
404 | { "ok": false, "error": "No manifest found for site 'example-com'" } |
The manifest is generated after you finish an exploration session. If you receive a 404, the site has not been discovered yet or the slug is incorrect. Check
/api/sites to see all available slugs.