Transition an Issue Using jira-python.

David Anderson July 9, 2016

I am simply trying to change an issue's status and resolution to resolved.

Per the docs.

My transition IDs

>>> issue = jira.issue('TES-2')
>>> transitions = jira.transitions(issue)
>>> [(t['id'], t['name']) for t in transitions
... ]
[(u'11', u'To Do'), (u'21', u'In Progress'), (u'31', u'Done')]

My Code:

#try 1
jira.transition_issue(issue, '31', resolution={'id': '10000'})
#try 2
jira.transition_issue(issue, '31', resolution={'name': 'Done'})

This yields a 500 error with no message.

 

Per this thread and this other one, I tried:

jira.transition_issue(issue, transitionId='31')

 

This throws an error stating transition issue requires 3 arguments and 2 are given.

I then tried

jira.transition_issue(issue, transitionId='31', assignee={'name': 'admin'})

I get the same error despite having three arguments.

I'm running jira-python 1.3.

I have also downloaded from source and tried 1.7.

My account is an admin.

Any help is greatly appreciated!

2 answers

2 votes
Nikhil Raman February 7, 2017

My use case was only to change status of ticket.  

All you need to change in your previous attempt is do not explicitly mention the word "transitionId="  

jira.transition_issue(issue, '31')

This should work.

Alex Ribeiro September 7, 2018

omg I spent hours trying to solve this! yes, it works thanks!

Like Jonathan Doan likes this
0 votes
mini trivedi May 31, 2021


jira.transition_issue(issue, transition='Deployed')

it was working while i was using python 2.7 doesn't work with python 3 ..any idea why ?

i even tried 

jira.transition_issue(issue, 'id')

thanks in advance. 

Suggest an answer

Log in or Sign up to answer