Advanced JSON Mode
Mode tab: Advanced JSON. Available to everyone who can edit the page — and it is the only mode a user without the builder permission gets.
This mode shows the page's raw envelope: the single JSON document that defines everything the visual builder draws.
Under the editor: "Edit the raw envelope JSON. Builder and Preview tabs reflect changes here." — the two views are the same document, so an edit made here shows up on the canvas when you switch back.
The envelope
{
"schema_version": 3,
"page_type": "CART",
"containers": [
{
"id": "cart-header",
"type": "header",
"position": "top",
"order": 0,
"config": {
"sticky": true,
"show_cart": false,
"show_logo": true,
"show_menu": true,
"show_search": true,
"signin_slug": "account/login",
"account_slug": "account"
}
}
]
}
| Key | Meaning |
|---|---|
schema_version | The envelope format version. Migrations upgrade older pages on load. |
page_type | The page's registered type — decides which blocks the palette offers. |
containers[] | Every container, each with an id, a type, a position (the canvas zone), an order within that zone, and a config. |
containers[].config | The container's own settings — the same fields the inspector shows, under their real names. |
floating[] | Corner-pinned widgets, when the page has any. |
position values map directly onto the zones you see on the canvas: top, left, center, right, bottom.
When to use it
| Good reason | Why |
|---|---|
| Copy a block between pages | Lift a container object out of one envelope and paste it into another. |
| Bulk-edit repetitive config | Change the same field across twenty blocks in one pass. |
| Read what a control actually writes | Set something in the inspector, come here and see which key changed. |
| You lack the builder permission | This is your editor. |
| Diagnose a page that renders oddly | The envelope is the truth; the canvas is a drawing of it. |
This is a plain text area, not a validating editor. Malformed JSON, an unknown page_type, a position that is not a real zone, or a container missing its id will all break the page's rendering — and the mode will not stop you saving them.
Before editing here: press Save Draft, or Publish, so the Versions drawer holds a snapshot you can restore. Then edit, switch to Builder to confirm the canvas still draws what you expect, and only then save.
There is no Export or Import action in this mode. To move a layout between pages, select the JSON in the text area and copy it yourself. To back one up, save a version — that is what the Versions drawer is for.