Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Table of Contents

Python

...

3 code using requests library

Code Block
languagepy

...

...

#!/usr/bin/env python
# -*- coding: utf-8 -*-

...

import 

...

requests
import 

...

base64

...


...


...

JIRA_URL = "http://localhost:2990/jira/plugins/servlet/jirauserexport/admin/xml"
BASIC_AUTH = "Basic " + base64.b64encode(b"admin:admin").decode("utf-8")
HEADERS = {"Content-

...

type": "application/x-www-form-urlencoded", "Authorization": BASIC_AUTH}
FILE_NAME = "jira-users.xml"


def call_export_endpoint(

...

url, 

...

payload, 

...

headers):
    

...

r = 

...

requests.

...

post(url=url, data=payload, headers=headers)
    print("Response 

...

status code: 

...

" 

...

+ str(r.status_code))
    return r._content


...

def write_to_file(file_data, file_name):
    with open(

...

file_

...

name, '

...

w') as 

...

file:

...


        

...

file.write(

...

file_data.decode("utf-8"))
    

...

print("File " + file_name + " was written to disk!")


if 

...

__name__ == "__main__":
    body = {
        

...

"userexport_searchstring": "

...

admin",
        "userexport_activeUsers": True,
    

...

  

...

 

...

 

...

"userexport_

...

inactiveUsers": True,
        "userexport_download": True,
        "userexport_

...

group": "

...

",
        "userexport_

...

application": "

...

"}

...


    final_result = call_export_endpoint(

...

url=

...

JIRA_URL, payload=body, headers=HEADERS

...

)
    write_to_file(file_data=final_result, file_name=FILE_NAME)


cURL example

cURL command
Code Block
languagebash

...

# Call XML export
curl -vk -u admin:admin -H "Content-Type: application/x-www-form-urlencoded" \
"http://localhost:2990/jira/plugins/servlet/jirauserexport/admin/xml" \
-d "userexport_searchstring=&userexport_activeUsers=true&userexport_inactiveUsers=true" >> jira-users.xml