# How to use row macros?

**Macros** run a process or action for one row or selected rows. Basic setup is on the editor **UI settings** tab (**Macros**); advanced keys use **JSON** → **front_json (advanced)**.

## When you need this

- Operators need a Send to process button on a record.
- Bulk action for selected rows (e.g. start workflow for several requests).
- Table integration with a bot without opening the builder manually.

## Key terms

- **Row button** — **macrosSingle**; one action per record.
- **Selection button** — **macrosMultiple**; appears after selecting rows (**{count} selected**).
- **Run macro…** — selection menu item in the records table.
- **Bot ID** — bot identifier for the macro.

## Before you start

- [x] **Custom Data model editor** is open.
- [x] Target process or action jail exists.
- [x] Operators may run macros per role settings.

## Step-by-step

1. Open the table → **Edit** → **UI settings**.
2. Expand **Macros**.
3. Configure **Row button** — macro for a single record.
4. Configure **Selection button** — macro for multi-select.
5. Set **Bot ID** if your setup requires it.
6. For advanced params, open **JSON** → **front_json (advanced)** — extra keys are preserved.
7. **Save** the editor.
8. In the records table:
   - Single row — macro button in the row or actions menu.
   - Multiple — select rows → **Run macro…**.

## What happens next

Macro buttons appear in the table. Click passes record context (id, fields) to the configured process or action.

## How to verify

- Button shows in the row or selection bar.
- Macro runs without errors on a test record.
- **Selection button** works for multi-select.

## Related guides

- [Edit a table](./edit-model.md)
- [Bulk edit records](./bulk-edit-records.md)
- [Use the process tab on a table](./use-scenario-tab-on-model.md)
