On this page
One of the most important features of JWT is the easy accessibility to Jira data stored in system fields, custom fields and a significant number of other virtual fields that are made available by the JWT implementation.
You can access, validate, do mathematical calculations and manipulate the values found in these fields through the use of field codes .
A field code is a unique identifier (key) that can be used in any parser expression. At the same time a field code is a safety feature that makes your expressions immune to custom field renaming.
Overview
Field codes will be automatically added to your expression when you insert them anywhere using the expression parser field code injector.
SCREENCAST, but a better one
Potentially with text / like the getting started video?
- This is a text
- This is a number
- This is a value from the parent....
Field codes for Jira standard or system fields will display the attribute in a legible form like
%{issue.summary}
.
All selected custom field will be notated like
%{issue.cfnnnnn}
where nnnnn
contains the Jira custom field ID.
Once an expression has been saved, the real name will be displayed in the configuration element.
The purpose of using the cfnnnnn
notation is quite simple - custom fields can be renamed .
Field code notation
Depending on the context in which they are being used, field codes will contain a prefix following this notation :
{origin.field}
What is a context?
A context basically determines where JWT will pull data from. Available contexts (or
origins
) in JWT are:
Context | Description | Example |
---|---|---|
issue
| The issue that currently being processed by a workflow function or automation rule. The most commonly used context in JWT. |
The description of the current issue. |
parent | The parent of the issue that is processed by a workflow post function or an automation rule. Only valid for sub-tasks. |
The summary of the parent issue. |
seed.issue
| The issue currently being processed by a workflow function that is capable of analyzing multiple issues (e.g. subtasks()). These issues are called seed issues. Alternatively you can add ^ as a prefix. Read more about Seeds. |
The summary of a seed issue. |
Additional contexts for automation rules
An issue is tied to a workflow. This is why most field codes in JWT workflow functions have their issue context. Automation rules are not tied to individual issues. This is why sometimes it is necessary to define their context separately.
Numbers vs. text (strings)
Field codes must always be enclosed by curly brackets {} but if they are used for text-strings, the brackets must be preceded by a percent sign % .
- Numeric fields can be referenced as numbers using the following notation: {issue.
somenumberfield
}. ( no preceding % sign)- If a field is not set or does not return a number (e.g. a text field ), it is evaluated to
null
.
- If a field is not set or does not return a number (e.g. a text field ), it is evaluated to
- Text fields : Any field type or data type can be transformed to text, so any field can be referenced as a text-string value using the following notation:
%{issue.somefield}.
- If a field has no value (
null)
, an empty text will be returned.
- If a field has no value (
- Cascading Select fields are treated as text fields, where i is the index that represents the level to be accessed. ( i = 0 is used for base level) are notated as
%{issue.somefield.i}
A complete list of all available data types can be found here.
Available field codes
Check out the following pages to familiarize yourself with field codes.
or search for a specific field code: