Simple Issue Language
Support for Atlassian Server Products (and apps like Power Scripts) ended Feb.15 2024.
Are you planning a migration to Cloud? Make sure you don't lose your Power Scripts data/configurations in the process. Check out the Server to Cloud Migration page for information on how to migrate your Power Scripts data to Cloud. Contact our support team if you have any questions.
What is SIL
Simple Issue Languageā¢ (SILā¢) is an easy-to-learn scripting language used by Power Scriptsā¢ for Jira and other apps. It lets you customize Jira deeply without needing to understand Jira's internal complexity.
Why choose SIL
Fast implementation | You can quickly create custom workflows and automations. |
---|---|
Shields you from Jira internals | Thereās no need to understand Jira's complex API. |
Version consistency | Scripts work reliably across Jira updates. |
Extensibility | Create reusable functions and handle numerous custom fields. |
Cost-effective | Provides a single scripting solution that can replace multiple specialized apps. |
Environment portability | Easily move workflows from test to production environments. |
Flexibility | Scripts can be quickly adapted and modified on the fly. |
Ā
Key SIL components
Jira standard variables
SIL provides a list of standard variablesĀ that you can use to change issues fields.
For example, to change the issue description, you can use the standard variable description:
description = "Issue description";
Learn more about standard variablesĀ here.
Functions
SIL comes with a library of standard functions to use in scripts. There are functions for handling arrays, strings, dates and there are specific app functions.
Learn more about SIL functionsĀ here.
SIL example script
To get a taste of what a SIL script looks like and does, here's an example that assigns an administrator as both assignee and reporter, sets various issue fields including description and due date, handles custom fields with conditional logic, creates a new issue, and automatically transitions the original issue to a new workflow state.
string k;
assignee = "admin";
reporter = assignee;
description = "some description";
dueDate = currentDate() + "1d";
// Custom fields
if(isNull(cfnumber)){
cfnumber = 1;
} else {
cfnumber = cfnumber + 1;
}
// Create issue routine
k = createIssue("TSTP", "", issueType, "auto-created issue");
%k%.votes = %k%.votes + 1;
// Autotransition
autotransition(721, key);
Let's explore SIL together, building your knowledge step by step through practical examples and clear explanations.
Ā
Ā