Skip to main content
The list element renders an ordered (numbered) or unordered (bulleted) list. Lists nest up to 5 levels deep. Parent and nested lists can each use their own loop. The type value is "list", and each child must be a "list-item" element. When to use:
  • Display ordered sequences (steps, rankings)
  • Show unordered items (features, benefits, options)
  • Create nested hierarchical structures
  • Display dynamic lists from data (products, items, etc.)
Basic example
Fields
string
required
One of "ordered" (numbered) or "unordered" (bulleted).
ListItemElement[]
required
An array of list item elements. Each must be of type "list-item". See the List item fields section below.
string
Renders bullets as a custom image, for unordered lists only. The image URL becomes the bullet.
string
URL for the bullet image, if used. Makes the bullet image clickable.
string
An expression that generates the list from data. See .
string | object[]
A condition that determines whether the list renders. Accepts a string expression or a structured condition array. See .
string[]
An array of channel names. The list renders only for the listed channels. See .
List item fields Each item in the elements array must be a list item element with the following properties:
string
required
Must be "list-item".
CourierElement[]
required
Content of the list item. Can include:
  • string elements for text
  • link elements for clickable links
  • img elements for inline images
  • Nested list elements for sub-lists
string
Background color for the list item. Any valid CSS color value.
string
An expression that repeats the list item. See .
string | object[]
A condition that determines whether the list item renders. Accepts a string expression or a structured condition array. See .
Examples and variants Unordered list Simple bulleted list:
Ordered list Numbered list:
Nested lists Lists can be nested up to 5 levels deep:
List items with links Include clickable links in list items:
Dynamic lists with loops Generate lists from data:
Nested dynamic lists Dynamic lists with nested loops:
Custom bullet images Use custom images for bullets:
Lists can be nested up to 5 levels deep. Nested lists can have different list types (ordered/unordered) than their parent lists.
Channel support
  • Email: ✅ Full support with proper list rendering
  • Push: ✅ Supported (may render as plain text in some cases)
  • SMS: ⚠️ Limited support (may render as plain text)
  • Inbox: ✅ Full support