| beds | No | How many identical beds (1–20). Needs shape. Price and parts are for all of them. | |
| link | No | Optional: a ready GridGarden Studio link (https://gridgarden.eu/studio/<lang>/design/new?v=1&…). Its query is used as the input; the other fields below override it. Normally leave this out and pass the fields. | |
| plot | No | Plot shape: rect | narrow | l | other (other = rectangle for now). | |
| entry | No | Where the gate/entrance is: left | middle | right (on the street side unless entrySide). | |
| house | No | Where the house stands (street at the bottom): street | middle | back | corner | none. | |
| north | No | North direction in degrees 0–360 (accepted, not used yet) | |
| plotD | No | Plot depth away from the street, mm (3000–200000) | |
| plotW | No | Plot width at the street, mm (3000–200000; 12 m = 12000) | |
| shape | No | Raised bed / wall type: rectangle | lshape | ushape | wall. Needs its dimensions and layers (see studio_design_options). | |
| style | No | Garden style: modern-minimal | cottage | scandinavian | naturalistic | family-productive | mediterranean-gravel | japanese | formal | open (let the design decide). | |
| wants | No | What the user wants: veg, seating, kids, pets, lowcare, nolawn. | |
| width | No | rectangle: outer width, mm | |
| entryX | No | Entrance position along the boundary, mm | |
| houseD | No | House depth, mm | |
| houseW | No | House width, mm | |
| houseX | No | House x, mm from the lower-left plot corner at the street (with houseY) | |
| houseY | No | House y, mm from the street (with houseX) | |
| layers | No | Brick layers (raised beds 2–13, walls 1–25; each ≈120 mm tall). | |
| length | No | rectangle: outer length, mm | |
| locale | No | Language of the Studio page the user will open (sk cs de en fr hu it nl pl ro). Use the language the user speaks. Default en. | |
| plants | No | Plant keys from studio_plant_catalog. They are saved as the user's planting wishes in the design; the planting itself (where each plant stands) is done in Studio. | |
| width1 | No | lshape: first leg width, mm | |
| width2 | No | lshape: second leg width, mm | |
| assumed | No | Fields the user did NOT say and you guessed (they are shown as "estimated" in Studio). Always list them honestly. | |
| country | No | Delivery country, ISO-3166-1 alpha-2 (DE, AT, SK…). Prices differ by market; ask the user. Omit only if unknown (then SK base prices, said in the result). | |
| length1 | No | lshape: first leg length, mm | |
| length2 | No | lshape: whole second leg length incl. the corner, mm | |
| plotCut | No | plot=l: which corner is missing (default ne = back right; the street is at the bottom). | |
| terrace | No | Existing terrace as a grid cell "1"–"9" (or "none"). | |
| plotArea | No | Plot area in m2 if the user knows only that (9–40000); the plot becomes a rectangle estimate | |
| plotCutD | No | plot=l: depth of the missing corner, mm | |
| plotCutW | No | plot=l: width of the missing corner, mm | |
| terraceX | No | Terrace x, mm (with terraceY) | |
| terraceY | No | Terrace y, mm (with terraceX) | |
| topWidth | No | ushape: back width, mm | |
| arm1Width | No | ushape: arm 1 width, mm | |
| arm2Width | No | ushape: arm 2 width, mm | |
| entrySide | No | Boundary of the entrance: street (default) | left | right | back. | |
| houseCell | No | House position as a 3x3 grid cell 1–9, keypad layout 7 8 9 / 4 5 6 / 1 2 3 (street below 1 2 3). | |
| houseSide | No | house=corner: which side. | |
| topLength | No | ushape: back length, mm | |
| arm1Length | No | ushape: arm 1 length, mm | |
| arm2Length | No | ushape: arm 2 length, mm | |
| from_agent | No | Which assistant you are (chatgpt, claude, perplexity, gemini, copilot, or mcp/agent). Used only for anonymous counting. Default mcp. | |
| wallLength | No | wall: length, mm | |