Docs

Automation

Rules that react to events or run on a schedule: triggers, conditions and actions, testing a rule, reading the execution history and common recipes.

What a rule is

An automation rule does repetitive work for you: when something happens, if some conditions hold, then do these actions. Open More → Automation for the list; Create Rule opens the editor. A rule has a name, a description, and at least one trigger and at least one action. On the list, use Disable / Enable to switch a rule off and on without deleting it.

Triggers — when

TriggerFires
issue_createda new issue is created
issue_updateda field changes
issue_commenteda comment is added
issue_transitionedthe status changes
sprint_starteda sprint is started
scheduledon a schedule given as a cron expression (for example 0 9 * * 1-5 for weekdays at 09:00)
manualwhen you run it yourself

Conditions — if

Conditions decide whether the actions run. Combine them with AND or OR.

  • jql_match — the issue matches a JQL query (the most flexible condition).
  • field_equals, field_changed — a system field (summary, description, status, priority, assignee, reporter, project, issuetype, key, resolution…) has a value, or has just changed.
  • issue_type_is, priority_is, status_is, assignee_is — shortcuts for the common fields.
  • reporter_is_current_user, issue_is_subtask.

Actions — then

ActionDoes
transition_issuemoves the issue to a status through its workflow
assign_issuesets the assignee
add_commentposts a comment
update_fieldsets a field
set_prioritysets the priority
add_label / remove_labeledits labels
create_issuecreates another issue
link_issuelinks to another issue
send_emailsends an e-mail
send_webhookcalls an external URL
log_actionwrites a line to the rule’s history (useful while testing)

Testing a rule

Save the rule first (“Save the rule before testing”), enter a Test Issue Key and press Test to run the rule once against that issue. The result — success, failed or skipped — appears at once. A rule is skipped when its conditions did not match.

Execution history

Every run is recorded: when, which issue, whether it succeeded, was skipped or failed, and why. Open a rule’s history first when it “did not work”. The usual reasons are a condition that did not match, a transition the workflow does not allow, or a permission the rule’s actor lacks.

Recipes

  • Assign new bugs to the component lead: trigger issue_created, condition issue_type_is Bug, action assign_issue.
  • Tell the reporter when work starts: trigger issue_transitioned, condition status_is In Progress, action add_comment.
  • Escalate stale work: trigger scheduled (cron 0 8 * * *), condition jql_match status = "In Progress" AND updated < -14d, action add_label stale.
  • Notify a chat bot: trigger issue_transitioned, action send_webhook.

Service desks have their own automation (based on SLA and customer events); see Queues, SLA & email. Administrators can switch the whole feature off from Features and modules.