The Adaptavist Group LogoDocumentation

Introduction to ScriptRunner

ScriptRunner is your go-to automation tool for Jira. If you have a business need that you can't solve with native Jira, you can most likely solve it with ScriptRunner.

Using JavaScript, ScriptRunner lets you interact with Jira's APIs and processes to automate time‑consuming manual tasks. It also provides powerful field customization, from creating scripted fields that display calculated information to controlling how fields behave based on user actions, field selections, project and issue types, user roles, and more.

What you can use ScriptRunner for

ScriptRunner is built around a small set of powerful features. Each solves a different kind of problem.

  • Run scripts ad-hoc or on a schedule
    • Use the Script console to run custom scripts without setting up permanent automations. Use it to run one-off tasks, test code, experiment with Jira's APIs and perform bulk updates.
    • Use Scheduled jobs to run scripts automatically at set times (for reports, cleanups, and regular syncs).
  • React to changes in Jira
    • Use Event listeners to trigger scripts when issues are created, updated, transitioned, commented on, and more. Use this to auto-create subtasks, send Slack messages, keep fields in sync, and more.
    • Use Workflow rules to attach custom logic to specific workflow transitions (for example, enforcing restrictions before a transition or running automation after it).
  • Make fields smarter
    • Use Scripted fields to show calculated or dynamic values in a field (for example, totals from subtasks or linked issues, specific date values, and more).
    • Use Work item picker fields to create custom fields that let users select one or more work items returned by a JQL query (for example, linking to a related work item from a curated list, or dynamically surfacing work items based on other field values).
    • Use Field behaviours to change how fields behave on screens so you can show or hide fields, make them required, prefill values, or relabel them based on set values, and more.
  • Integrate and extend

Which feature should I use?

Event listeners or Workflow rules?

If your automation is tied to a specific workflow transition, use Workflow rules as they're scoped to that transition and easier to manage. If you need to react to any issue change across multiple workflows or projects, use Event listeners.

Scripted fields, Field behaviours, or Work item picker fields?

Scripted fields are read-only and display calculated values. Field behaviours let you change how fields work on screens (show/hide, set values, make required). Work item picker fields let users select one or more work items from a JQL-filtered list. If you need to show data, use Scripted fields. If you need to control fields, use Field behaviours. If you need users to select certain related work items, use Work item picker fields.

Script console or Scheduled jobs?

Use the Script console for one-off tasks you run manually. You can also save scripts for later use. Use Scheduled jobs when you need the same script to run automatically on a schedule.

Do I need to know how to script?

No. Basic knowledge of TypeScript is helpful to get the most out of ScriptRunner, but it's not required.

We provide plenty of example scripts in the app via the Example scripts modal, so you can copy and paste them with only minor changes for your setup.

Get started

All ScriptRunner features use TypeScript to define custom logic. Whether you're automating workflows, creating dynamic fields, or building custom integrations, you'll write scripts that interact directly with Jira's APIs to accomplish your goals.

If you've migrated from Data Center and are not sure about the differences between scripting in Groovy and JavaScript, see our Scripting in TypeScript guide.

Ready to start? Choose a feature above and see what you can do.

Search documentation

Start typing to search the docs.