It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

Function in JQL for current sprint?

If I had a filter that always dealt with the latest sprint, is there a way to eliminate my hard-coding the current sprint name?

Ex: Project = WA and Sprint = currentSprint() ?

13 answers

1 accepted

95 votes
Answer accepted
You should use this : sprint in openSprints ()

Seems to do what I need, thanks!

Like # people like this

I believe this includes active and future sprints. Can you exclude future sprints?

confirming it does include future sprints, i would love to know how to exclude them

Like # people like this

i tried "and sprint not in futureSprints()" but that doesn't work to exclude future sprints, looks like the function doesn't work properly unless i am missing something, or the definition of 'future sprint' is not what you and i think of what is future (i.e. everything that is neither current nor closed'

+1, this needs to be fixed. How about a function currentSprint() instead of open sprints.

Like # people like this

+1, there needs to be currentSprint()

Like # people like this
Paul Stallworth Community Leader Jun 24, 2015

+1 for currentSprint() of some kind, just got this request from our web team today

+1 for currentSprint(), though I'm not sure how that would work exactly since there can be multiple currently open sprints, so perhaps instead newestOpenSprint() and oldestOpenSprint() if the sprint start time is tracked

+1 for CurrentSprint() Would also to add CurrentActiveSprints() which should work on the Active Sprints Scrum Board and utilize the sprints which are selected

+1, this would also resolve my issue of finding items that are not in the currentSprint()

 You can use "AND sprint in openSprints() and sprint not in futureSprints()"

Like # people like this

+1 for currentSprint() or activeSprints(), openSprints() is not intuitive and doesn't match  the terminology used elsewhere in Jira. 

If you have only sprint per project the query below is nice:

sprint in openSprints()


But I have a project with multiple active sprints, how can I differentiate between those?

My goal is to create a filter that shows per sprint, the stories that we added after the sprint started.

What would be nice is something like:

sprint in openSprints('added stories') to show feature creep

maybe even:

sprint in openSprints('removed stories') 

Like # people like this

Just realized you can use "sprint in openSprints() and sprint not in futureSprints()" to get only the current sprint

Yes. 'sprint in openSprints()' shows only active sprints. I'm not sure if the behavior changed, but this is very handy. This and the futureSprints() function cover most of my use cases.

Like Anders Dyhrberg likes this

Yay, this worked for me! thanks!

Ignacio Pulgar Community Leader Nov 20, 2016

"sprint in openSprints()" never returns any issues returned by "sprint in futureSprints()".

So, your suggested JQL can be simplified to "sprint in openSprints()", as indicated by the accepted answer.

Like Anders Dyhrberg likes this

project = REPLACE_WITH_YOUR_PROJECT_ID AND sprint in openSprints() AND status in (Open, "In Progress") ORDER BY priority DESC, updated DESC

I want a data field that indicates an issue's current sprint association. Right now the "sprint" field contains every sprint an issue has ever been associated with. This makes sense for long term reporting but it makes it difficult to see which sprint an issue is in right now. The currentSprint() and openSprint() don't provide that information.

Completely agree, Joey, that this would be useful. Ideally, the team finishes all stories in one sprint, but that doesn't always happen.

Like Colin Ayer likes this

+1, this would be really useful for us. A distinction between sprint history and current sprint is really important, currently it's all rolled into one.

Like Colin Ayer likes this

If you have multiple open Sprints in your Backlog for forecasting and you want to view only your active Sprint, this JQL works:

project = MIG AND Sprint in openSprints() AND sprint not in futureSprints() ORDER BY status DESC, issuetype

There seems to be a bit of confusion on the functionality of openSprint()

I think it's because the name suggests that it returns all sprints that are not closed whis includes future sprints. I was also confused by this.

This is NOT the case. From openSprint() documentation it clearly states: "Search for issues that are assigned to a sprint that was started, but has not yet been completed"

So in order to find tasks in the active sprint you only need to write "sprint in openSprints()" no need to exclude future sprints.

Remember: There can be many active sprints. Typically one per Scrum team. Hence you still need to include only the tasks that relates to your team.

I need to see last 4 sprints. The function currentSprint() would help here if it existed. I don't see how openSprints() can help here, so the original question seems to be still relevant.

Paul Stallworth Community Leader May 18, 2016

You can use closedSprints() to get at issues in past sprints.  Not sure about limiting it to the last 4 though, maybe using updatedDate would get you close.  Something like:

Sprint in closedSprints() AND updatedDate >= -8w

What about open sprints of current project or of a specific project (like openSprints(current project) )?

I used Sprint in openSprints() AND Sprint not in futureSprints()

 currentSprint() not working for me 


Error : Unable to find JQL function 'currentSprint()'.

Thomas Schlegel Community Leader Aug 23, 2017

a function called currentSprint() does not exist. OpenSprints() is what you are looking for.

An open Sprint is any Sprint that is not in a close status.  We have several open Sprints because we are Product Roadmapping.  I need a search function that only returns the current "Active" sprint that has been "started" and that we are current working in. Open Sprints returns too many issues. 

Paul Stallworth Community Leader Jan 05, 2018

Starting with the 7.2 Jira Agile REST API, you can set properties on sprints.  Depending on what resources you have available to you, you could set an "active" property on the desired sprint and update as needed.

Not sure if you can use that in JQL yet like you can, but if you have ScriptRunner @Jamie Echlin might have a suggestion or two.  

I keep getting the error 'An option provided by the function 'openSprints' for the field 'sprint' does not exist.'

We definitely have an active sprint with issues in it.

Are you using 'sprint in openSprints()' in the JQL search?

This is useful info for me. Thank you.

Please upvote useful comments, so others will see them. :)

for the current sprint use:

and sprint in(openSprints()) and sprint not in(futureSprints())

Suggest an answer

Log in or Sign up to answer
Community showcase
Posted in Jira

How InVision centralized their tools and scaled their remote team with Atlassian and Slack

Hi Atlassian Community, We recently published a case study that we thought you might be interested in. Learn about how InVision built their fully remote company’s culture using Atlassian and Slack ...

246 views 0 1
Join discussion

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you