---
title: "Optional rules - Cloud"
canonical: "https://support.appfire.com/space/CSOT/68748570/Optional%20rules%20-%20Cloud"
format: markdown
---
> Macro (aura-html)

# <span style="color: #333333">Description</span>

<span style="color: #333333">Create Issue, </span><span style="color: #333333">Update Issues</span><span style="color: #333333">, and Create Subtask post functions can be configured to create or update the issue only if certain conditions have been met by the issue that is in transition.</span>

## <span style="color: #333333">Conditions</span>

<span style="color: #000000">Define the conditions under which to create the new issue(s) or subtask(s) or update existing issue(s) or subtask(s). If these conditions are not met, then no issues or subtasks are created or updated. If you do not define any conditions, then your issues and subtasks are always created when the associated workflow transition occurs. </span>There are two types of conditioning:

- **Subtask conditioning** - prevents the creation of subtasks if the original issue is a subtask and the configuration indicates not to create a subtask. It has the optional capability to create a subtask which is a sibling of the original issue.
- **Pattern matching conditioning** - takes advantage of the find/replace capabilities to provide a very flexible way to condition issue creation based on matching issue information with a [regex pattern](http://www.regular-expressions.info/reference.html). Although this is a more complex configuration, it is highly powerful and covers a great number of use cases.

| Field | Create Issue  
(Available) | Create Subtask  
(Available) | Update Issues  (Available) | Default | Description |
| --- | --- | --- | --- | --- | --- |
| Create if original issue is a subtask | :cross_mark: | :check_mark: | :cross_mark: | Off | Switch this toggle ON only when you want to create the subtask when the original issue is subtask. |
| Condition 1 | :check_mark: | :check_mark: | :check_mark: |  | Use [Substitution variables](https://appfire.atlassian.net/wiki/spaces/CSOT/pages/68749234) to specify a value or exact match.<br>> ⚠️ You may encounter a condition failed error at times when you use custom fields in your conditions. In such an event, it is recommended to try one of the following workarounds:
> ⚠️ 
> ⚠️ - Use only the *original_customfield_<name> *substitution variable
> ⚠️ - Use the *customfield_Park New *format where *Park New* is the custom field name
> ⚠️ 
> ⚠️ Note that when you use *customfield_id*, only the ID of value is processed. |
| Condition 2 | :check_mark: | :check_mark: | :check_mark: |  | Use [Substitution variables](https://appfire.atlassian.net/wiki/spaces/CSOT/pages/68749234) to specify a value or exact match. If both Condition 1 and Condition 2 are specified, both conditions must match in order for the issues to be created or updated.<br>> ⚠️ You may encounter a condition failed error at times when you use custom fields in your conditions. In such an event, it is recommended to try one of the following workarounds:
> ⚠️ 
> ⚠️ - Use only the *original_customfield_<name> *substitution variable
> ⚠️ - Use the *customfield_Park New *format where *Park New* is the custom field name
> ⚠️ 
> ⚠️ Note that when you use *customfield_id*, only the ID of value is processed.<br>AND operation is performed on *Condition 1 *and *Condition 2.* |
| Regular expression pattern | :check_mark: | :check_mark: | :check_mark: |  | Specify a regex pattern for conditional matching. The pattern is applied on the *Condition* field to the left (e.g., Condition 1, or Condition 2). |
| Exact, Literal, Negative | :check_mark: | :check_mark: | :check_mark: |  | Specify how the regex pattern should be evaluated.<br>- **Exact** - The pattern must be an exact match.
- **Literal** - Treat any special characters in the pattern as literal characters.
- **Negative** - Reverse the condition so that the condition is true if the match is false and vice versa. |

## <span style="color: #333333">Configuration</span>

<span style="color: #000000">Define additional configurations for the issues or </span><span style="color: #000000">subtasks being created or updated.</span>

| Field | Create Issue  
(Available) | Create Subtask  
(Available) | Update Issues  (Available) | Default | Description |
| --- | --- | --- | --- | --- | --- |
| Acting user | :check_mark: | :check_mark: | :check_mark: | The user logged in who is transitioning the workflow | Define a user to emulate that user's permissions when creating the issue(s). Select a user from the available list or start typing in the field to select a user from the respective auto-suggestions. Alternatively, you can also set user by using substitution variables by switching to the *Set value *mode. |
| JQL query | :check_mark: | :check_mark: | :check_mark: |  | You can define a JQL query either by entering the query in the text field or availing **Use JQL editor.**<br>Enter a JQL query to populate substitution variables that can be used within individual fields or conditions and regular expressions. The substitution variables include:<br>- %jql_result_count%
- %jql_result_list%
- %jql_result_1%<br>To validate your query, click **Use JQL editor** to open Jira’s native JQL editor, where you can view and modify your query as needed.<br>To define a JQL query using JQL editor:<br>1. Click **Use JQL editor** to navigate to the *JQL query* window.
2. Start typing in the intended text. You see auto-suggestions from which you can select a value that suits your requirement. In your query field, you see a > Macro (inline-external-image)

 icon if your query is valid and a > Macro (inline-external-image)

 icon if your query is invalid.
3. Click *Search *to see the query results or to find and fix any errors.
4. Click* ***Use this JQL **to insert the query into the *JQL query *field. |
| Create multiple issues | :check_mark: | :check_mark: | :cross_mark: |  | Use [Substitution variables](https://appfire.atlassian.net/wiki/spaces/CSOT/pages/68749234) to specify a value or exact match to create multiple issues. |
| Regular expression pattern | :check_mark: | :check_mark: | :cross_mark: |  | Specify a regex pattern for conditional matching. The pattern is applied to the *Condition* field to the left (e.g., Condition 1, or Condition 2). |
| Exact, Literal, Negative | :check_mark: | :check_mark: | :cross_mark: |  | Specify how the regex pattern should be evaluated.<br>- **Exact** - The pattern must be an exact match.
- **Literal** - Treat any special characters in the pattern as literal characters.
- **Negative** - Reverse the condition so that the condition is true if the match is false and vice versa. |