# Section Types



A section with a `type` shows built-in content, such as pricing or documents, instead of the fields in its `include`. Its settings go in the section's `config`. For the properties every section takes, see [Sections and Layout](/configuration/configurable-ui/sections). For example:

```json
{
	"title": "Pricing Preview",
	"type": "pricing-review",
	"config": { "presentation": { "hideReferenceRate": true } }
}
```

Types [#types]

| `type`                         | Renders                                                                                                                                                                                                                                        |
| ------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| (none)                         | A standard section of the `include` fields.                                                                                                                                                                                                    |
| `note`                         | Static markdown help text from `config.asset`, styled with `config.type`: `neutral` (default), `info`, `warning`, or `alert`.                                                                                                                  |
| `buttons`                      | A row of action buttons, listed in `config`.                                                                                                                                                                                                   |
| `producer-summary`             | A read-only summary of a producer, laid out by the producer's `overview` (see [Producers](/configuration/configurable-ui/overview#producers)). `config` can set `title`, `hideTitle`, and `sections` to replace that layout here.              |
| `plugin`                       | A registered frontend plugin. `config.pluginName` is required.                                                                                                                                                                                 |
| `documents`                    | The quote's or policy's generated and uploaded documents.                                                                                                                                                                                      |
| `transactions`                 | The policy's transaction history.                                                                                                                                                                                                              |
| `underwriting`                 | Underwriting flag results, optionally grouped by category.                                                                                                                                                                                     |
| `underwriting-original`        | The flag table: active and cleared flags with clear actions, as on the Underwriting page. Takes the same `config` as `underwriting`. Use either this or `underwriting`, not both.                                                              |
| `pricing`                      | The pricing breakdown.                                                                                                                                                                                                                         |
| `pricing-review`               | A read-only pricing snapshot that persists after pricing and issue.                                                                                                                                                                            |
| `previous-term-pricing-review` | On a transaction's pricing step, the committed pricing before the transaction: for a change, the affected term; for a renewal, the preceding issued term. Shows as unavailable on issuance. Takes `config.presentation` like `pricing-review`. |
| `rater-selection`              | A rater picker with a pricing preview per rater.                                                                                                                                                                                               |
| `validation-preview`           | Validation results, shown only while the quote or transaction can be edited.                                                                                                                                                                   |
| `tasks`                        | Tasks for the current quote or policy. Hidden when work management is off or the user lacks read access.                                                                                                                                       |
| `work-management`              | Work management tasks for the quote or policy. Hidden under the same conditions as `tasks`.                                                                                                                                                    |
| `notes`                        | Add-only notes backed by diary entries. Notes attach to the current quote unless `config.referenceType` points elsewhere.                                                                                                                      |
| `schedules`                    | A large, like-typed list attached to an element, with file import and a preview. Name the element with `elementName`.                                                                                                                          |
| `aux-data`                     | A single aux data value, display only.                                                                                                                                                                                                         |

Configuration by Type [#configuration-by-type]

The following types read a type-specific `config`. The `transactions`, `validation-preview`, `tasks`, and `work-management` types take no `config`; they render from platform data and the section's own `title` and `hideTitle`.

Note [#note]

| Property  | Type   | Description                                                                                     |
| --------- | ------ | ----------------------------------------------------------------------------------------------- |
| `type`    | string | Callout style: `neutral` (default), `info`, `warning`, or `alert`.                              |
| `asset`   | string | Path to a markdown file in the config assets. The note's body. Takes precedence over `content`. |
| `content` | string | Legacy. The file name of a markdown file built into the app. Read only when `asset` is not set. |

Buttons [#buttons]

For this type, `config` is an array of buttons. Each takes the same properties as a step button; see [Buttons and Navigation](/configuration/configurable-ui/editor#buttons-and-navigation).

Plugin [#plugin]

| Property        | Type   | Description                                                                         |
| --------------- | ------ | ----------------------------------------------------------------------------------- |
| `pluginName`    | string | Required. The registered frontend plugin to mount.                                  |
| `pluginOptions` | object | Options passed to the plugin, such as a grid plugin's `gridTypes` and `addBtnText`. |
| `pluginParams`  | object | Maps parameter keys to Automation Plugin targets, as `{ name, action, … }`.         |

Documents [#documents]

| Property                 | Type    | Description                                                                                                                    |
| ------------------------ | ------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `exclude`                | array   | Hides documents by metadata tag (`document.metadata.tag`). To hide generated documents by static name, use `excludeGenerated`. |
| `external`               | boolean | Shows only external (`true`) or only generated (`false`) documents.                                                            |
| `showAttachButton`       | boolean | Shows the attach button and a delete control on each row. Defaults to `false`.                                                 |
| `attachButtonFieldLabel` | string  | The label shown above the attach button.                                                                                       |
| `attachmentTag`          | string  | The tag added to attached documents. Defaults to `__ADDITIONAL_ATTACHMENTS__`.                                                 |
| `excludeGenerated`       | array   | Hides generated documents by static name. Each entry is a static name, or `{ staticName, scope }`.                             |

Underwriting [#underwriting]

| Property              | Type    | Description                                                                                                                                       |
| --------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tag`                 | string  | Shows only flags with this tag.                                                                                                                   |
| `categories`          | array   | The groups to render. Each entry is a category name, or `{ name, title, collapse, displayOrder }`, where `collapse` is `expanded` or `collapsed`. |
| `statuses`            | object  | Maps your tenant's status values to `fail`, `warning`, or `pass`.                                                                                 |
| `defaultStatus`       | string  | The status used when a flag's status can't be read: `fail`, `warning` (default), or `pass`.                                                       |
| `uncategorized`       | object  | A final group for flags with no known category, as `{ title, hide }`. `hide` drops them.                                                          |
| `hideEmptyCategories` | boolean | Omits groups that have no flags.                                                                                                                  |

<Callout>
  `underwriting-original` reads the same properties, but `tag` doesn't filter its table, and `uncategorized.hide`, `hideEmptyCategories`, and `collapse` are ignored, so every flag stays clearable.
</Callout>

Pricing and Pricing Review [#pricing-and-pricing-review]

Both types take the same `config`.

| Property               | Type   | Description                                                                                                               |
| ---------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------- |
| `tag`                  | string | The pricing tag to show.                                                                                                  |
| `tagFieldName`         | string | A form field whose value supplies the tag. Takes precedence over `tag`.                                                   |
| `rateComponents`       | object | Reads rate-component rows from aux data, as `{ "source": "auxData", "key": … }`.                                          |
| `presentation`         | object | A single [presentation preset](#presentation-presets).                                                                    |
| `pricingPresentations` | object | Presentation presets keyed by tag value.                                                                                  |
| `source`               | string | `pricing-review` only. Which term's premium the snapshot shows: `term`, `resultingTerm`, or `resultingAnnualizedPremium`. |

Rater Selection [#rater-selection]

| Property               | Type   | Description                                                                               |
| ---------------------- | ------ | ----------------------------------------------------------------------------------------- |
| `raters`               | array  | The raters users can choose from.                                                         |
| `raterFieldName`       | string | The form field that holds the chosen rater.                                               |
| `raterTitleTemplate`   | string | A `${…}` template for each rater's title.                                                 |
| `rateComponents`       | object | Reads each rater's rate components from aux data, as `{ "source": "auxData", "key": … }`. |
| `pricingPresentations` | object | [Presentation presets](#presentation-presets) keyed by rater.                             |

Presentation Presets [#presentation-presets]

A presentation preset is the value of `presentation`, and of each entry in `pricingPresentations`.

| Property                | Type    | Description                                                                                                          |
| ----------------------- | ------- | -------------------------------------------------------------------------------------------------------------------- |
| `hideReferenceRate`     | boolean | Hides the per-day reference rate column. Hidden by default; set `false` to show it.                                  |
| `groupUnderElementName` | string  | The element type that holds the policy-level charges.                                                                |
| `elementTitleTemplates` | object  | Heading templates per element type, such as `{ "HO3Dwelling": "Dwelling ${data.propertyCity}" }`.                    |
| `policyLevelCharges`    | array   | Ordered charge rows, as `{ chargeType, displayName }`, or `{ "match": "*" }` to keep every unlisted charge in place. |

Notes [#notes]

| Property                   | Type    | Description                                                                                                                                                  |
| -------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `referenceType`            | string  | The entity the notes are attached to, such as `quote`, `policy`, or `elements`. Defaults to `quote`.                                                         |
| `referenceLocatorTemplate` | string  | A `${…}` template that resolves the reference locator, such as `element.locator`, `element.staticLocator`, or `quote.locator`.                               |
| `createAction`             | object  | Creates notes attached to a quote element, as `{ "type": "quoteElement", quoteLocatorTemplate, staticElementLocatorTemplate }`. Both templates must resolve. |
| `categoryTemplate`         | string  | A `${…}` template for the diary category of new notes.                                                                                                       |
| `showCreateForm`           | boolean | Shows the add-note form. Defaults to `true`.                                                                                                                 |

Schedules [#schedules]

| Property                | Type            | Description                                                                         |
| ----------------------- | --------------- | ----------------------------------------------------------------------------------- |
| `previewColumns`        | array           | Columns in the read-only preview. Each entry is a field name or `{ field, label }`. |
| `previewItemCount`      | number          | How many items the preview shows. Defaults to `10`.                                 |
| `acceptedFileTypes`     | string or array | The file types users can import, such as `[".csv", ".xlsx"]`.                       |
| `deserializationParams` | object          | Parameters passed to the product's deserialization plugin, for non-CSV schedules.   |

Aux Data [#aux-data]

| Property | Type   | Description                                  |
| -------- | ------ | -------------------------------------------- |
| `key`    | string | Required. The aux data key to read and show. |
| `format` | string | `markdown` renders the value as markdown.    |

Next Steps [#next-steps]

* [Scope, Access, and Conditions](/configuration/configurable-ui/scope-and-access)

See Also [#see-also]

* [Configurable UI Overview](/configuration/configurable-ui/overview)
* [Sections and Layout](/configuration/configurable-ui/sections)
* [Build Sections](/learning/configurable-ui/sections)
* [Build Steps and Workflows](/learning/configurable-ui/steps-and-workflows)
