Customize look & feel of custom fields
The second step in configuring a connected custom field consists in setting up how the data retrieved from an external source will be displayed in your Jira work item.
This page aims at presenting all possible configuration.
Field Types overview
When configuring a Text connected custom field, you must choose how the field stores and displays data.
Three types are available (depending on the base Connected custom field type):
Type | Available For | Stores | Use When |
|---|---|---|---|
Snapshot |
| Only the displayed text | You don't need dependencies or dynamic refresh More details below |
Object |
| ID + Display template | You need dependencies, dynamic recalculation, or stable identifiers More details below |
Multi (read-only) |
| List of values | You need to display several values retrieved from a data source More detail below |
Once this choice has been made during the first configuration of your field, it cannot be modified. Please make sure that you know the differences between types.
Snapshot
A Snapshot field stores exactly what is displayed—nothing more.
Use Snapshot when:
No dependency is needed on this field, or
Dependencies only rely on the field’s display value.
No dynamic recalculation is needed
Technically, this kind of field will only store the configured display value (more info in Data storage format page)
Object
Use Object when the field needs richer behavior or must participate in dependencies.
You should choose Object if you need:
The ability to configure dependencies on this field
“Live” behavior (value recalculated when viewing the issue) ==> Dynamic recalculation
Object attributes
Each Object has two attributes:
Attribute | Purpose |
|---|---|
ID | Stored internally and used in dependencies |
Template | Defines what the user sees in the issue view |
To go deeper on Object fields possibilities, jump to Object field in detail.
Multi (Read-Only Text)
With this type, available only for read-only text fields, you can display multiple values returned by your data source. The values will be shown one after another in the field.
Example with a Read Only Text Multi “Projects list”, displaying all the project keys on my local Jira:
Data source: Jira’s API
Path:
/projectTemplate:
${data.key}
How it looks in a work item:

Known limitations
Here are a few known limitations when using multiple value read-only custom fields:
Only 55 values can be stored in this field type (Altassian limitation),
each value will display 25 characters maximum in the display view (but full value available at edition)
Object Fields in detail
Object fields are the most powerful option.
Using Object Attributes in Dependencies
You can use Object attributes inside queries:
Single Select
.id.value(template output)
Multi Select
.ids(list of IDs).values(list of display values)
You can learn more about fields dependencies in our dedicated page: Dependencies between connected fields.
Live Fields (Dynamic Recalculation)
Object fields can become “Live”, meaning their display value updates each time the issue is viewed.
More details in Live update page.
Known limitations
Here are a few known limitations when using Object custom fields:
Integration with Jira Automation
update triggers work, but you can't easily push a value into the field, it must follow the right object format.
💡 Check out this tutorial to see an example in action: Set custom field value in Automation rule based on a Jira Text field.
Some Dashboard gadgets don't work with Object custom fields
you can vote for the feature request here.
The “Live” update takes into account the cache, which means that it can take some time to reflect data source changes in the connected custom field, depending on what you’ve configured in your datasource & field.
For Live fields, the value is only updated when the issue is viewed, nowhere else, which can lead to discrepancies on reports or JQL filters.
Template
Templates define what is displayed after the data is retrieved.
Process:
A query retrieves a result set
A template formats it into text or select options
For select lists, you can use the following template:
${row.name}
For read-only fields, you can use the following template:
${data.name}
Learn a lot more in our Template guide.