Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

ScriptRunner - How to form a get request inside Jira ScriptRunner

Roberto L
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.
September 29, 2017

 

Hi Community,

I have been looking for ways to construct a get request inside Jira.

I want to use the rest API inside a Behavior to fetch certain board related data: 

<jira Base URL>/rest/agile/1.0/board/{board Id}/configuration

Would anyone know how I can form a get request inside Jira as to receive a response from the url mentioned.

I have tried using the examples in the article but I have been getting this error: 

groovyx.net.http.HttpResponseException: Unauthorized

 I am doing the following in my code:

import groovyx.net.http.ContentType
import groovyx.net.http.RESTClient

def boardId = '3';
def activitiRestClient = new RESTClient("<Jira Base URL>/rest/agile/1.0/board/")
activitiRestClient.auth.basic "USERNAME", "PASWORD"

def response = activitiRestClient.get(
path: boardId+'/configuration'
)

output+="\nresponse: "+response+"\n"

Could someone provide some pointers as to why this isn't working for me?

Thank you!!

-Roberto

1 answer

Suggest an answer

Log in or Sign up to answer
2 votes
Daniel Yelamos [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.
October 3, 2017

Hello Roberto.

If you look further down the article, you will see that the user was wrong on his first approach, and later on, was able to work it out with this:

import groovyx.net.http.HTTPBuilder
import static groovyx.net.http.ContentType.*
import groovyx.net.http.ContentType
import static groovyx.net.http.Method.*
import groovy.json.JsonSlurper
import net.sf.json.groovy.JsonSlurper

def http = new HTTPBuilder('http://IP/authentication')
http.request(POST) {
    requestContentType = ContentType.JSON
    body =  [username: 'USERNAME', password: 'PASSWORD']

        response.success = { resp, JSON ->

  return JSON
            
    }
    
        response.failure = { resp ->
        return "Request failed with status ${resp.status}"
            
        

Could you give that a try and letme know if it works?

Cheers

DYelamos

Deleted user May 28, 2019

syntax errors

Like Deleted user likes this
TAGS
AUG Leaders

Atlassian Community Events