Field Groups

Gathering a record type's custom fields under headings you order by hand: creating a group, the permanent stable key, ordering, deleting, global groups, and what a group does not affect.

A field group gathers several of one record type's custom fields under a heading, in an order you set by hand. Without groups, custom fields simply appear in Sort Order under a single Custom Fields heading; with them, you can separate contact details from medical details from kit preferences on the same form. Groups are managed on the Field Groups screen, reached from a link in the Custom Fields page header.

What a group is made of

Groups belong to exactly one record type, so the screen shows nothing until you pick one — and the empty state says so rather than looking broken.

SettingWhat it isChangeable later?
Entity TypeThe record type whose fields this group can gather.No — permanent once saved
Stable KeyA machine name for the group, unique within the record type. Lower case, starts with a letter, letters, digits and underscores only.No — permanent once saved
Label (English)The English heading shown above the group's fields.Yes, at any time
Label (Arabic)The Arabic heading.Yes, at any time
Sort OrderWhere the group sits relative to the record type's other groups.Yes, at any time
ScopeWhether the group belongs to your workspace or to the whole platform.No — permanent once saved

Creating a group

Four steps, on the Field Groups screen.

  1. Pick the record type

    Nothing is listed before you do. A group is only ever valid for one record type, so there is no all-record-types view to start from.
  2. Give it a stable key

    The form requires one. It lowercases as you type and refuses characters outside the grammar. Choose carefully — this one is permanent.
  3. Give it labels and an order

    An English heading, an Arabic heading, and a number deciding where the group sits among the record type's other groups.
  4. Save, then assign fields to it

    The group appears in the list. Open any custom field definition for the same record type and a Field Group picker now offers it, alongside a no group entry.

The stable key

The stable key is the group's machine name. It follows the same grammar as a field key — lower case, starting with a letter, letters, digits and underscores — and it must be unique among that record type's groups.

Stable keyWhat happens
contact_detailsAccepted.
Contact_DetailsAccepted, and lowercased as you type. You will see it become contact_details.
contact-detailsRefused as you type. The input rejects characters outside the grammar.
1st_sectionRefused. A stable key must start with a letter.
A key already used by another group on the same record typeRefused, naming the key: a field group with that key already exists for this record type.

Once the group is saved, the stable key is visible but greyed out and cannot be changed by anybody. That is deliberate rather than an oversight: exported schema names a group by this key, so renaming it would silently turn a future re-import from an update into a create, against a bundle that has already shipped. Being able to see the key still matters — you need it to match an exported bundle to the group it refers to — which is why it is shown rather than hidden.

Assigning a field to a group

Assignment happens on the field, not on the group. There is no drag-fields-into-a-group screen.

  • Open a custom field definition for the same record type. A Field Group picker offers every group on that record type, plus a no group entry.
  • Choosing no group is the only way to ungroup a field. There is no separate unset control anywhere else.
  • Changing the record type on a create form clears any group already chosen, because a group from one record type is never valid for another.
  • A field can belong to at most one group. There is no way to show one field under two headings.

Ordering groups

Groups are ordered on the Field Groups screen, by dragging a row or by using its Move up and Move down buttons. Both do the same thing and both persist.

The buttons are not a convenience feature. A keyboard-only user has no drag gesture, so the buttons are the accessible path and are expected to work identically — if a row moves by dragging but not by button, that is a defect.

Deleting a group

Deleting a group never deletes fields. The confirmation says so explicitly, and afterwards the fields still exist and are simply ungrouped, appearing under the default Custom Fields heading again.

One edge worth knowing: if you start editing a group and then delete that same group from its row while the edit panel is still open, the panel closes and no new group is created. Saving at that point does not resurrect the group under a new identity.

Global groups

A platform administrator with no workspace selected creates a global group, and a notice on the screen explains that. The scope switch appears on create and never on edit, because a group's scope is permanent in the same way a field's is.

Inside a workspace, a global group shows a Global badge and offers no edit, delete or move controls at all. That is not the interface hiding something arbitrarily — the server would refuse those operations, so the controls are not offered.

What a group does and does not affect

  • A group does

    • Put related fields together under one heading on the record form
    • Let you order groups by hand, by dragging or with Move up and Move down
    • Carry its own English and Arabic heading, translated like everything else
    • Survive a field being deleted, and let a field leave it via the no group entry
  • A group does not

    • Control who can see a field — that is field-level security, which is unrelated
    • Delete its fields when the group itself is deleted
    • Carry across record types, or apply to more than one record type at once
    • Change how a value is validated, stored, exported or displayed

Group errors you may see

SituationWhat you see
A stable key already used on that record typeRefused, naming the key: a field group with that key already exists for this entity type.
Assigning a field to a group from another record typeRefused: the selected field group belongs to a different entity type.
Reordering more than 100 groups at onceRefused, naming the maximum: more than that many groups cannot be reordered in one request.
The same group listed twice in one reorderRefused: the same field group appears more than once in the reorder list.
Groups from two record types in one reorderRefused: all field groups in one reorder request must belong to the same entity type.
Creating a global group without being a platform Super AdminRefused: only a platform Super Admin can create a global field group.
Assigning a group to a field with no definition record yetRefused, explaining that the field has no definition record and that the definitions backfill has to be run first. This only happens in an environment upgraded from an older version.