---
title: "Substitution variables - Data Center"
canonical: "https://support.appfire.com/space/CSOT/68752493/Substitution%20variables%20-%20Data%20Center"
format: markdown
---
> Macro (aura-html)

# Description

Substitution variables provide powerful capabilities to customize the creation of issues. Variables provide text string representations of fields useful for inclusion in other fields.

- Setting field values from other fields and custom field values.
- Constructing conditioning values.
- For [multi-issue creation](https://appfire.atlassian.net/l/cp/uzD0199R) scenarios.

The syntax for referencing substitution variables is: **%**<variable name>**%**. All text entry fields support replacement. 

Example: **%parent_summary%**

## Substitution variables

Several example substitution variables are listed on the post function screen as an aid when creating definitions. However, the table below contains a more complete and detailed list of substitution variables available as you work with the Create Issue or Create Sub-task post function.

*Table: containing valid substitution variables and their descriptions.*

| Substitution Variable | Description |
| --- | --- |
| user_id | User ID of user that is considered to be doing the transition |
| user_name | Display name of user that is considered to be doing the transition |
| entry | Entry from multiple issues processing |
| now | Current date/time in Jira complete date/time format or a [specific format](https://appfire.atlassian.net/wiki/spaces/CSOT/pages/68752493/Substitution+variables+-+Data+Center#Configured-date-format) |
| project, parent_project, original_project, entry_project | Project key of the issue |
| project_id, parent_project_id, original_project_id, entry_project_id | Project ID (numeric) of the issue |
| project_name, parent_project_name, original_project_name, entry_project_name | Project name for the issue |
| project_category, parent_project_category, original_project_category, entry_project_category | Project category name for the project of the issue |
| project_lead, parent_project_lead, original_project_lead, entry_project_lead | User ID of the project lead. |
| project_default_security, original_project_default_security, entry_project_default_security | Default issue security level name for the project |
| project_default_security_id, original_project_default_security_id, entry_project_default_security_id | Default issue security level id for the project |
| parent_key, original_key | Issue key |
| parent_id, original_id, entry_id | Issue numeric ID |
| parent_sprint, original_sprint | For a *Sprint* custom field set the sprint value using the specified substitution variables when the parent/original issues have one or more sprints assigned. |
| parent_summary, original_summary | Summary |
| parent_description, original_description | Description |
| parent_environment, original_environment | Environment |
| parent_issuetype, original_issuetype | Issue type |
| parent_status, original_status | Issue status |
| parent_priority, original_priority | Priority |
| parent_reporter, original_reporter | Reporter user ID |
| parent_assignee, original_assignee | Assignee user ID |
| parent_components, original_components | Comma-separated list of components |
| parent_component_descriptions, original_component_descriptions | Comma-separated list of component descriptions. Some may be blank. |
| parent_affected_versions, original_affected_versions | Comma-separated list of affected version names |
| parent_fixed_versions, original_fixed_versions | Comma-separated list of fixed version names |
| parent_subtasks, original_subtasks | Comma-separated list of subtask issue keys |
| parent_duedate, original_duedate | Due date in Jira DMY date format or a [specific format](https://appfire.atlassian.net/wiki/spaces/CSOT/pages/68752493/Substitution+variables+-+Data+Center#Configured-date-format) |
| parent_created, original_created | Created date in Jira complete date/time format or a [specific format](https://appfire.atlassian.net/wiki/spaces/CSOT/pages/68752493/Substitution+variables+-+Data+Center#Configured-date-format) |
| parent_updated, original_updated | Update date in Jira complete date/time format or a [specific format](https://appfire.atlassian.net/wiki/spaces/CSOT/pages/68752493/Substitution+variables+-+Data+Center#Configured-date-format) |
| parent_resolution, original_resolution | Resolution |
| parent_resolution_date, original_resolution_date | Resolution date in Jira complete date/time format or a [specific format](https://appfire.atlassian.net/wiki/spaces/CSOT/pages/68752493/Substitution+variables+-+Data+Center#Configured-date-format) |
| parent_labels, original_labels | Blank separated list of labels |
| parent_labels_comma_separated, original_labels_comma_separated | Comma-separated list of labels |
| parent_watchers, original_watchers | Comma-separated list of watcher user IDs |
| parent_watches, original_watches | Number of watchers of the issue |
| parent_votes, original_votes | Number of votes for the issue |
| parent_time_spent, original_time_spent | Time spent on the issue in **minutes** |
| parent_estimate, original_estimate | Current estimate for the issue in **minutes** |
| parent_original_estimate, original_original_estimate | Time spent on the issue in **minutes** |
| parent_security_level, original_security_level | Security level name |
| <field name> | Parent issue's Jira issue field value<br>Deprecated but still active, recommend using specific replacements variables instead |
| <customfield name><br>parent_<customfield name> (since 3.4) | Parent issue's custom field value<br>Recommend using prefix qualified name for clarity |
| <customfield_id><br>parent_<customfield_id> (since 3.4) | Parent issue's custom field value |
| original_<customfield name> | Original issue's custom field value |
| original_<customfield_id> | Original issue's custom field value |
| transition_comment | Comment entered on the transition screen |
| transition_user_id | Actual transition user ID even if using **acting** support |
| transition_user_name | Actual transition user name even if using **acting** support |
| jql_result_count | Number of issues returned by the query |
| jql_result_list | Comma-separated list of issue keys returned from the query |
| jql_result_n | The issue key for the nth issue returned from the query where n is a number |
| pattern1_n | **n**th capture group from condition pattern 1 |
| pattern2_n | **n**th capture group from condition pattern 2 |
| property_<property name> | Transition property. Other transition functions can add transition properties that can be referenced. This provides a way to access those transition properties. You must know the property name.<br>Examples:<br>- **org.swift.jira.cot.last_created_key**
- **org.swift.jira.cot.last_created_non_subtask_key **(4.6)
- **org.swift.jira.cot.created_key_list**
- **org.swift.jira.acli.validator_message** - result message from last CLI action validator
- **org.swift.jira.acli.function_message** - result message from last CLI action post function |
| group_<group name> | Comma separated list of user ids for members in the group |
| role_<role name> | Comma separated list of user ids for users that are role actors for the project of the original issue |
| values_<customfield name><br>values_<customfield_id> | For special use cases only needing access to the field configuration.<br>Comma-separated list of custom field **option values** in the context of the original issue<br>> ✅ This is for accessing the **configuration** of the custom field and **NOT** the values of a custom field for an issue (see custom field value substitution variables mentioned above). |
| values_<customfield name>(<value or sub variable>)<br>values_<customfield_id>(<value or sub variable>) | For special use cases only needing access to the field configuration.<br>Comma-separated list of cascade select child **option values** for the specific parent value provided.<br>> ✅ This is for accessing the **configuration** of the custom field and **NOT** the values of a custom field for an issue (see custom field value substitution variables mentioned above). |
| function_<function name>(<parameters>)<br>- [earliestUnreleasedVersion(projectKey)](https://confluence.atlassian.com/display/JIRA/Advanced+Searching+Functions#AdvancedSearchingFunctions-earliestUnreleasedVersion())
- [latestReleasedVersion(projectKey)](https://confluence.atlassian.com/display/JIRA/Advanced+Searching+Functions#AdvancedSearchingFunctions-latestReleasedVersion())
- versionId(projectKey, versionName)
- fieldValue(issueKey, fieldName)
- list(startNumber, endNumber)
- findReplace(text, replacement)
- userName(userId)
- versionInfo(projectKey, versionName, request, dateFormat)
- groupMemberList(groupName)
- componentLead(projectKey, componentName)
- linkedIssues(issueKey, linkType) | Functions that derive useful text values that can be used as substitution variables. Some are similar to their equivalent JQL function (follow link). The parameter(s) may be a substitution variable.<br>> ✅ ### Make sure you use the correct syntax!
> ✅ 
> ✅ Set custom field: field:** My custom field**, value:** %function_earliestUnreleasedVersion(%project%)%** |
| cli_replace_<name> | Many Atlassian CLI products support setting replacement variables during the running of actions in order to facilitate use in a subsequent actions. [Run CLI Actions in Jira](https://appfire.atlassian.net/wiki/spaces/JCLIP) workflow functions will take these replacement variables from the running of a CLI action and populate the transition properties so they can be available in subsequent functions as substitution variables. Use the prefix and the replacement name from the lists shown on the replacement variables page after running a CLI action function that produces replacement variables. |

## Working with custom fields

Custom fields are identified by either name or id (e.g., customfield_12345). Referencing a custom field by its <u>name</u> is often easier to know what the value is referring to. Yet, by referencing custom fields by their <u>id</u> will allow the configuration to *survive* the renaming of a custom field.  
> Macro (anchor)



## Configured date format

For date substitution variables, the format of the replacement variable can be specified if the default format is not desirable. The format is specified by a [Simple Date Format](http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html) string enclosed in parenthesis following the substitution variable name. For example: %created(yyyy-MM-dd)% will result in replacement like 2013-05-28.