Form Layouts

Every form in the application renders from a layout definition. If no one has written one, it renders its built-in default. This page is where a layout is written, and — just as importantly — where it is taken away again.

Where to find it

ScreenWhere it livesWhat you need
Form layouts — /admin/formsSettings → Data model → Form LayoutsThe View form definitions permission; saving a space layer, locking and resetting need Customize/lock form definitions, and the global layer also needs Write GLOBAL-scope settings, forms, and widgets

Three layers, most specific wins

A layout can be saved at three levels, and a form uses the most specific one that exists:

Save forWho gets it
Just meonly you
Spaceeveryone in the space who has no personal layer
Globalevery space that has no space layer (offered only to holders of the global-write permission)

The list has three columns: Form, Layers and Comes from. Comes from says what is actually in force for you right now — Personal override, Inheriting from Space, Inheriting from Global, or Built-in default. The Layers column shows which levels have a definition at all, so you can see at a glance that a form is customised somewhere even when you are not the one seeing the customisation.

Resetting a layer

Press Edit on a row, pick the layer under Save for, and press Reset beside it — each layer is reset on its own. Resetting does not restore a factory layout — it clears that layer, and the form starts inheriting again from the layer beneath it. The confirmation says exactly that: Layer cleared — inheriting again.

This is the honest way out of a customisation that went wrong: you are never left having to reconstruct the original by hand.

Locking a layer

A space or global layer can be locked with the Lock button on its row (Unlock takes the lock off again). A locked layer can only be overwritten by somebody who holds the Force-lock form definitions permission; the editor marks the layer with This layer is locked — only a super-admin can overwrite it. Use it for a layout that has been agreed and should not drift.

Writing a definition

The definition is edited as JSON in the Definition (JSON) box. If what you type is not valid JSON, the page says so before anything is sent — the message is The definition is not valid JSON., and nothing is saved.

Note
This page is the only place a layout definition is written. Where a form lets you drag its fields into a new order, that order lasts only while the form is open; it is not saved as a layout.

Layouts that came from a template

If a layer's value arrived from an applied template, the row is badged From template. Overriding it asks you to confirm first, because of what the confirmation says: overriding detaches it — template updates will no longer change it. Say yes if that is what you want; say no if you would rather keep following the template. See Templates.

Adding a layout for a form that has none

Press + Add layout, type the form's key in Form — for example contact_edit — and press Continue to open the editor. Until a layout exists, the empty state is not an error: it reads No form layouts yet — forms render their built-in defaults.

Tip
Routing form answers into work items is a different job and lives on its own page — follow Intake rules → on a form's row (shown to people who may manage intake rules), or see Work Items.