JIRA enables you to subscribe to an issue filter (a saved search). JIRA will then run the search according to your specified schedule, and will email the results to you.
You can specify when and how often you would like to receive the search results, e.g. 'Every hour between 9.00AM-5.00PM, Monday-Friday', or 'The last Friday of every month at 7.00AM'.
Emails can only be sent if your administrator has configured an SMTP mail server. The filter results will only send the first 200 results of a filter.
Subscribing to a Filter
- Choose Issues > Manage Filters.
- A list of available filters is displayed:
- Locate the filter you are interested in and click on its Subscribe link. The Filter Subscription form is displayed:
- In the Recipients box, either choose 'Personal Subscription' (if you only wish to subscribe yourself), or select a group of recipients from the dropdown list.
Note: You cannot select a group unless your JIRA administrator has granted you the 'Manage Group Filter Subscriptions' global permission.
- Select one of the following types of schedule:
- Daily — choose this if you want to receive one or more emails every day.
- Days per Week — choose this if you want to receive one or more emails on particular days of every week.
- Days per Month — choose this if you want to receive an email on a particular day of every month.
- Advanced — see Advanced scheduling ('cron') below.
- Click Subscribe.
- You will now be shown a subscription summary page. If you wish, click Run now to test your subscription.
Advanced scheduling ('cron')
You can use a 'Cron Expression' to specify a custom schedule to suit your particular requirements.
Cron expressions consist of the following fields, separated by spaces:
Allowed special characters
, - * /
, - * /
, - * /
, - * / ? L W C
1-12 or JAN-DEC
, - * /
1-7 or SUN-SAT
, - * / ? L C #
, - * /
The special characters operate as follows:
Specifies a list of values. For example, in the Day-of-week field, 'MON,WED,FRI' means 'every Monday, Wednesday, and Friday'.
Specifies a range of values. For example, in the Day-of-week field, 'MON-FRI' means 'every Monday, Tuesday, Wednesday, Thursday and Friday'.
Specifies all possible values. For example, in the Hour field, '*' means 'every hour of the day'.
Specifies increments to the given value. For example, in the Minute field, '0/15' means 'every 15 minutes during the hour, starting at minute zero'.
Specifies no particular value. This is useful when you need to specify a value for one of the two fields Day-of-month or Day-of-week, but not the other.
Specifies the last possible value; this has different meanings depending on context. In the Day-of-week field, 'L' on its own means 'the last day of every week' (i.e. 'every Saturday'), or if used after another value, means 'the last xxx day of the month' (e.g. 'SATL' and '7L' both mean 'the last Saturday of the month). In the Day-of-month field, 'L' on its own means 'the last day of the month', or 'LW' means 'the last weekday of the month'.
Specifies the weekday (Monday-Friday) nearest the given day of the month. For example, '1W' means 'the nearest weekday to the 1st of the month' (note that if the 1st is a Saturday, the email will be sent on the nearest weekday within the same month, i.e. on Monday 3rd). 'W' can only be used when the day-of-month is a single day, not a range or list of days.
Specifies the nth occurrence of a given day of the week. For example, 'TUES#2' (or '3#2') means 'the second Tuesday of the month'.
Here are some sample cron expressions:
Every day at 8.15 pm.
Every day at 8.15 am.
Every minute starting at 2.00 pm and ending at 2:59 pm, every day.
Every 5 minutes starting at 2.00 pm and ending at 2:55 pm, every day.
Every 5 minutes starting at 2.00 pm and ending at 2:55 pm, AND every 5 minutes starting at 6.00 pm and ending at 6:55 pm, every day.
Every minute starting at 2.00 pm and ending at 2:05 pm, every day.
Every 10 minutes, forever.
2:10 pm and 2:44 pm every Wednesday in the month of March.
8:15 am every Monday, Tuesday, Wednesday, Thursday and Friday.
8:15 am on the 15th day of every month.
8:15 am on the last day of every month.
8:15 am on the last weekday of every month.
8:15 am on the last Friday of every month.
8:15 am on the second Friday of every month.
8:15 am on the second Friday of every month during the years 2007, 2008 and 2009.
Cron expressions are not case-sensitive
Each time that a subscription is activated, the saved filter for the subscription is used to find the relevant issues. This search is executed for each user in the group that will receive the subscription email. This means that any filter that uses JQL function such as
currentUser() will be evaluated with a different user each time. This also means that if one user doesn't have permission to see some of the issues returned by the search then the list of issues that they receive in email will be different from other users' email. This has two other consequences:
- If you share a subscription with a group with many members it can take a long time to generate the emails to be sent. This can make JIRA very slow for minutes. This is a good reason be careful with allowing the Manage Group Filter Subscriptions permission.
- If a group contains a user whose email address is actually a distribution list (i,e. a group email alias), then everyone on that distribution list will receive the same email, since JIRA doesn't know who the users on the list are.
Managing Other User's Shared Filters
A shared filter is a filter whose creator has shared that filter with other users. Refer to Sharing a Filter for details. When a shared filter is created by a user, that user:
- Initially 'owns' the shared filter.
- Being the owner, can edit and modify the shared filter.
If you have the 'JIRA Administrators' global permission, you can manage shared filters that were created by other users.
To access the 'Shared Filters' feature: