Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

Query specific JIRA fields using PowerShell

Alex Rodriguesr
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
February 3, 2017

I am looking to query a specific field in a JIRA ticket and pass the value to a variable (or output to a file).

Running a curl against a URL (see example below) gives me a large block out output in JSON format as expected:

curl -u username https://jira.abc.com/rest/api/2/search?jql=key=RLG-1234

 

If I use "Invoke-RestMethod" via PowerShell the output comes back in a tabular format

Invoke-RestMethod -Credential $creds -Uri https://jira.abc.com/rest/api/2/search?jql=key=RLG-1234
startAt maxResults total issues
------- ---------- ----- ------
0 		50 			0 		{}
 
GetType()
IsPublic IsSerial Name                                     BaseType                                                                                                   
-------- -------- ----                                     --------                                                                                                   
True     False    PSCustomObject                           System.Object

Piping the output of "Invoke-RestMethod" to "Get-member -MemberType NoteProperty | Get-Member -Name issues" does not give me anything.

How do I drill down to a specific field under "issues" so that I can access its value?

1 answer

0 votes
Nic Brough -Adaptavist-
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
February 3, 2017

Add the fields you want to the rest call with an & - it's well buried in the docs, but it does work:

&fields=id,key

 

curl -u username https://jira.abc.com/rest/api/2/search?jql=key=RLG-1234&fields=id,key
Alex Rodriguesr
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
February 3, 2017

Thanks! I am able to get what I want using curl and then pipe to JQ to get specific values, but since am moving to PowerShell, I would like to know how to accomplish this using Invoke-RestMethod (or any other more appropriate way)

Nic Brough -Adaptavist-
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
February 3, 2017

That is invoking a REST method, and it's the only way to get the server to restrict its response to a sub-set of fields.

I'm no sure what pwoershell is doing, I don't use it.

Suggest an answer

Log in or Sign up to answer