Send post http request via scriptrunner post function

Hello :)


Im wondering is there a way to send post http request via the scriptrunner postfunction feature?


The current script i have is JAVA:

OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\r\n\"username\":\"USERNAME\",\r\n\"password\":\"PASSWORD\"\r\n}");
Request request = new Request.Builder()
  .url("http://IP ADDRESS/authentication")
  .addHeader("content-type", "application/json")
  .addHeader("cache-control", "no-cache")
  .addHeader("postman-token", "dabd56ae-0efb-db67-72fe-657b5682a466")

Response response = client.newCall(request).execute();

Anyone care to help to convert into groovyscript.


Many thanks!




1 answer

1 accepted

Hi Pon:

Doing a search on this I found a community question that might be helpful to you.

Here you will find a descriptive example on how to do this with Jira and Scriptrunner. If this isn't working for you, give me a thorough example on what you want to do and I will try to provide a custom script for you.




Hey Daniel, 

Thanks for the reply!

Im quite new to this, basically what im trying to do is call rest api to return a sucessful response which: 


i attempted the above, i dont see where i can place the auth/payload when sending the request, i tried searching also around and gotten around this far:


package com.hybris.activity


 def activitiRestClient = new RESTClient("")
        activitiRestClient.auth.basic "USERNAME", "PASSWORD"

def response = activitiRestClient.get(
                   path: "/devices"

I have a python 3 code which is as follows (and works in python):

import http.client

conn = http.client.HTTPConnection("")

payload = "{\r\n\"username\":\"USERNAME\",\r\n\"password\":\"PASSWORD\"\r\n}"

headers = {
    'content-type': "application/json",
    'cache-control': "no-cache",
    'postman-token': "aace72a6-d5d2-1f44-23bf-4a10b6306b4c"

conn.request("POST", "/authentication", payload, headers)

res = conn.getresponse()
data =


which im trying to convert over to groovy script. 

Any guidance would be very helpful :)






Hi Pon:

In this link you will find official documentation as to how to use httpBuilder to send a post request. That is the utility that we use to build post request in Adaptavist.




Thanks Daniel :) got it working. 


It was so simple all along:

import static*
import static*
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}"

Glad you did mate! Thanks for the upvote and good luck in future programming! 



Suggest an answer

Log in or Sign up to answer
Atlassian Community Anniversary

Happy Anniversary, Atlassian Community!

This community is celebrating its one-year anniversary and Atlassian co-founder Mike Cannon-Brookes has all the feels.

Read more
Community showcase
Published Apr 19, 2018 in Marketplace Apps

Calling all developers––You're invited to Atlas Camp 2018

 Atlas Camp   is our developer event which will take place in Barcelona, Spain  from the 6th -7th of   September . This is a great opportunity to meet other developers and get n...

366 views 0 6
Read article

Atlassian User Groups

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

Find a group

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

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you