> For the complete documentation index, see [llms.txt](https://docs.gridmate.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.gridmate.io/product-tour/kanban/user-kanban-board.md).

# User Kanban Board

Create Kanban boards as records, configure them with the Config Wiz and reuse them anywhere.

The **GM - User Kanban Board** lets users manage Salesforce records as cards moving across stages. Unlike the App Builder–configured Kanban, each board is **stored as a record**: it's created from a tab, configured from the board itself with the **Config Wiz**, and can be cloned, shared and reused on any Lightning page.

Boards work on any standard or custom object, and support filtering, search, sorting, grouping, aggregation, conditional coloring, mass actions and record actions.

## Prerequisites

An admin must assign **both** permission sets to each user (**Setup → Users →&#x20;*****user*****&#x20;→ Permission Set Assignments → Edit Assignments**):

<table><thead><tr><th width="272.416015625">Permission set</th><th>Why it's needed</th></tr></thead><tbody><tr><td><strong>GridMate User</strong></td><td>Core GridMate access used by every board (data loading, stage updates)</td></tr><tr><td><strong>GridMate Kanban User</strong></td><td>Access to the <strong>GM - User Kanban Boards</strong> tab and to create, view and edit boards</td></tr></tbody></table>

<figure><img src="https://4046919449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MEsSbGy_U_OhthKUpxu%2Fuploads%2FjoawBcyNR9OSE4bBgiZ3%2FScreenshot%202026-09-28%20at%2012.31.59%E2%80%AFPM.png?alt=media&#x26;token=ed18cb8d-9fb1-4447-b247-a2251a4ecd05" alt="Permission set assignments"><figcaption><p>Assign the GridMate User and GridMate Kanban User permission sets</p></figcaption></figure>

<figure><img src="https://4046919449-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MEsSbGy_U_OhthKUpxu%2Fuploads%2FAmBAD5Jzas9GliOjv28b%2FScreenshot%202026-09-28%20at%2012.32.17%E2%80%AFPM.png?alt=media&#x26;token=850262e6-50ab-46f4-b9b4-c66e9f143b29" alt="Assigned permission sets"><figcaption></figcaption></figure>

{% hint style="info" %}
Users also need the usual Salesforce access to the object the board displays. A board never grants more than the user's profile and permission sets allow.
{% endhint %}

## Create a Board

{% stepper %}
{% step %}

### Open the tab

From the **App Launcher**, open **GM - User Kanban Boards** and click **New**.
{% endstep %}

{% step %}

### Fill in the form

Fill in the **New Kanban Board** form:

<table><thead><tr><th width="198.197265625">Field</th><th>Description</th></tr></thead><tbody><tr><td><strong>Board Name</strong></td><td>The board's label, e.g. <em>Opportunity Kanban Board</em></td></tr><tr><td><strong>Object Name</strong></td><td>The object whose records become cards, e.g. <em>Opportunity</em>. It can't be changed later.</td></tr><tr><td><strong>Stage Field</strong></td><td>The field that drives the columns. Must be a <strong>picklist</strong> or a <strong>lookup</strong> field.</td></tr><tr><td><strong>Title Field</strong></td><td>The field shown as each card's headline, e.g. <em>Opportunity Name</em></td></tr><tr><td><strong>Comments</strong></td><td>A description, useful when an org has several boards on the same object</td></tr></tbody></table>
{% endstep %}

{% step %}

### Submit

Click **Submit**. The board opens, ready to use.
{% endstep %}
{% endstepper %}

{% hint style="info" %}
**Stage Field** and **Title Field** become available once an object is selected.
{% endhint %}

## Using the Board

| Action                                 | How                                                                                                         |
| -------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| **Move a record to another stage**     | Drag the card to another column. The stage field is saved immediately; validation errors appear as a toast. |
| **Reorder cards in a column**          | Drag the card up or down. Requires a **Reorder Field** (see Cards).                                         |
| **Open a record**                      | Click the card title.                                                                                       |
| **Preview fields**                     | Hover the card's info icon to open the popover.                                                             |
| **Create a record**                    | Click **New Record** at the bottom of a column. The stage is pre-filled.                                    |
| **Edit / delete a record**             | Use the card menu.                                                                                          |
| **Mass update / delete / run actions** | Select cards with their checkboxes, then use the toolbar.                                                   |
| **Search**                             | Type in **Search...** and press **Enter**. Clear the box to reset.                                          |
| **Filter**                             | Click **Filter** to add your own Quick or Advanced filters.                                                 |
| **Refresh**                            | Click **Reload**.                                                                                           |

## Configure the Board

Click **Config. Wiz** in the board toolbar. When you're done, click **Save**: the page reloads with the new configuration.

{% hint style="warning" %}
Only users with **edit access to the board record** see **Config. Wiz**. By default that's the board owner; share the record to let others configure it.
{% endhint %}

### General settings

At the top of the wizard, above the tabs:

* **Label**: the board's name (required).
* **Row Limit**: the maximum number of records loaded, from 10 to 2,000 (default 1,000). Lower it on high-volume objects to keep the board responsive.
* **Show Border**: draws a border around the board.
* **Compact Density**: shows smaller cards. In compact mode, click a card to expand its fields.

### Stage

The stage field defines the board's columns.

* **Stage Field**: a picklist or lookup field on the object.
* **Stage Values** (picklist only): the values to show as columns. Leave empty to show all active values. Unselected values are hidden, which is handy for keeping closed stages off the board.

For a **lookup** stage field, each related record becomes a column. Extra settings let you control them:

* **Stage Sort Field** / **Stage Sort Order**: the order of the columns.
* **Stage Row Limit**: the maximum number of columns (default 50).
* **Stage Filter**: which related records become columns.

{% hint style="warning" %}
A record only appears if its stage value matches a displayed column. Hiding a stage value, or changing the stage field, hides the records in that stage. It doesn't move or change them.
{% endhint %}

### Cards

* **Title Field**: the card headline (required).
* **Custom Icon**: an SLDS icon name, e.g. `standard:opportunity`. Useful for telling apart boards built on different objects.
* **Card Fields**: extra fields displayed on each card.
* **Popover Fields** / **Popover Columns**: the fields shown when hovering the card's info icon, laid out in 1–4 columns. For example: *Amount*, *Sponsor*, *Created Date*.
* **Reorder Field**: a **number, currency or percent** field that stores each card's position in its column. Set it to let users reorder cards by dragging; the order is saved on the record, so it persists for everyone.

{% hint style="info" %}
Without a **Reorder Field**, cards can still be moved between columns but not reordered within one.
{% endhint %}

### Filter

Limits the board to the records matching your criteria. Build conditions on any field of the object and combine them as needed. Records outside the filter don't appear and aren't counted in aggregates.

This filter applies to everyone. If **End-User Filter** is enabled (see Advanced), users can filter further on top of it.

{% hint style="info" %}
Use `$recordId` in a condition to filter on the current record when the board is placed on a record page, e.g. show only the opportunities of the account being viewed.
{% endhint %}

### Sort/Grouping

* **Sort By** / **Sort Order**: the order of cards within each column.
* **Group By**: optional. Clusters cards within each column by a field's value (records without a value go into an *Empty* group).
* **Collapse Groups**: shows groups collapsed by default.

### Aggregate

Adds summaries of number, currency or percent fields, for example the total **Amount** per stage. Results are shown in the board header, under each column header, and within each group.

Supported operations: **Sum**, **Average**, **Min** and **Max**.

{% hint style="info" %}
In multi-currency orgs, amounts in a single currency are shown in that currency; mixed currencies are converted to the corporate currency.
{% endhint %}

### Search

Select one or more **text, email, phone, URL, picklist or text-area** fields. The toolbar's **Search...** box finds records whose value in any of these fields contains the search term.

### Coloring

Highlights cards that meet a condition so exceptions stand out at a glance.

1. Pick a **Color** and enter a **Label**.
2. Define the **Color Conditions**.
3. Click **Add Coloring**.

Rules are evaluated in order, and a card takes the color of the **first** rule it matches. The labels appear in the board's **Conditional Formatting** legend. For example, color opportunities where *Amount is less than 500*.

{% hint style="info" %}
Use `$USER.Id` in a condition to highlight the current user's records, e.g. *Owner ID equals $USER.Id*.
{% endhint %}

### Advanced

**Object Access**

Enable or disable what users can do on the board:

| Setting             | What it allows                                                 |
| ------------------- | -------------------------------------------------------------- |
| **Create**          | Adding records with a column's **New Record** button           |
| **Update**          | Editing a card and dragging cards between stages               |
| **Mass Update**     | Editing several selected cards at once                         |
| **Delete**          | Deleting a record from the card menu                           |
| **Mass Delete**     | Deleting several selected records at once                      |
| **End-User Filter** | Letting users add their own filters with the **Filter** button |

{% hint style="warning" %}
These settings can only **restrict** access. A user still needs the matching Salesforce permission on the object; for example, **Update** has no effect for a user without edit access.
{% endhint %}

**Mass Actions**

Actions run on the selected cards from the toolbar. Choose actions in **Available / Selected**, then:

* **Actions as Buttons**: shows actions as labeled buttons instead of icons.
* **Visible Actions**: how many actions are shown directly; the rest go into the **...** menu.

**Record Actions**

Actions added to each card's menu, after **Edit** and **Delete**. You can pick GridMate actions and the object's quick actions.

### Description

Shows the board's **API Name** and **Object Name** (read-only), and a **Comment** field for describing the board's purpose.

## Clone a Board

Open the board record and click **Clone**. Enter a new **Name** (and optionally **Comments**), then click **Submit**. The copy keeps the full configuration and opens right away. It's a quick way to create variants, for example the same pipeline for another region.

## Add a Board to a Lightning Page

Boards can also be embedded on **App**, **Home** and **Record** pages, as well as **Experience Cloud** sites.

{% stepper %}
{% step %}

### Edit the page

Edit the page in the **Lightning App Builder**.
{% endstep %}

{% step %}

### Add the component

Drag the **GM - User Kanban Board** component onto the page.
{% endstep %}

{% step %}

### Set the properties

Set its properties:

| Property                            | Description                                                                                                       |
| ----------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| **UserKanban Id or Developer Name** | The board to display. Use the board's **API Name** (see Description) so the page keeps working after deployments. |
| **Board Height**                    | The board's height in pixels. Use `9999` for dynamic height.                                                      |
| {% endstep %}                       |                                                                                                                   |
| {% endstepper %}                    |                                                                                                                   |

{% hint style="warning" %}
Always set **UserKanban Id or Developer Name**. If it's left empty on a record page, the component looks for a board with the page's record ID and shows *User Kanban Board not found*.
{% endhint %}

## User Kanban Demo

GridMate's User Kanban Board feature allows users to build reusable Kanban boards on any standard or custom object, configured entirely from the board itself. Below is a step-by-step tutorial on how to configure and use the User Kanban Board feature 👇.

{% embed url="<https://youtu.be/G6uMI9t3mtc>" %}

## Next steps

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>GM - User Kanban Board</strong></td><td>Every property of the component.</td><td><a href="/package-reference/components-library/gm-user-kanban-board.md">GM - User Kanban Board</a></td></tr><tr><td><strong>Kanban Board</strong></td><td>Track records as cards across stages, with grouping, totals, filters, card ordering and stage controls.</td><td><a href="/product-tour/kanban/kanban-board.md">Kanban Board</a></td></tr><tr><td><strong>Grid - Mass/Record Actions</strong></td><td>Configure the mass and record actions used on the board.</td><td><a href="/advanced-guides/grid-actions/actions-library.md">Grid - Mass/Record Actions</a></td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.gridmate.io/product-tour/kanban/user-kanban-board.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
