Skip to content

atlassian-api/atlassian-python-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

e9520ab · Aug 30, 2024
May 24, 2024
Aug 30, 2024
Aug 23, 2024
Apr 22, 2024
Aug 30, 2024
Nov 15, 2020
Nov 15, 2020
Aug 16, 2023
May 10, 2018
Apr 25, 2024
Sep 19, 2019
Aug 27, 2023
Oct 19, 2023
Jul 28, 2023
Dec 3, 2022
Aug 16, 2023
Aug 23, 2022
Aug 17, 2023
Dec 31, 2020
Jun 12, 2024
Jun 12, 2024
Jun 12, 2024
May 24, 2023
Jan 17, 2024
Jan 16, 2024

Repository files navigation

Atlassian Python API wrapper

Build status PyPI version PyPI - Downloads License Codacy Badge Documentation Status Discord Chat

What is it?

The atlassian-python-api library provides a simple and convenient way to interact with Atlassian products (such as Jira Service management, Jira Software, Confluence, Bitbucket and apps Insight, X-Ray) using Python. It is based on the official REST APIs of these products, as well as additional private methods and protocols (such as xml+rpc and raw HTTP requests). This library can be used to automate tasks, integrate with other tools and systems, and build custom applications that interact with Atlassian products. It supports a wide range of Atlassian products, including Jira, Confluence, Bitbucket, StatusPage and others, and is compatible with both Atlassian Server and Cloud instances.

Overall, the atlassian-python-api is a useful tool for Python developers who want to work with Atlassian products. It is well-documented and actively maintained, and provides a convenient way to access the full range of functionality offered by the Atlassian REST APIs.

Documentation

Documentation

How to Install?

From PyPI

$ pip install atlassian-python-api

From Source

  • Git clone repository
  • Use pip install -r requirements.txt to install the required packages
  • or pipenv install && pipenv install --dev

Examples

More examples in examples/ directory.

Here's a short example of how to create a Confluence page:

from atlassian import Confluence

confluence = Confluence(
    url='http://localhost:8090',
    username='admin',
    password='admin')

status = confluence.create_page(
    space='DEMO',
    title='This is the title',
    body='This is the body. You can use <strong>HTML tags</strong>!')

print(status)

Please, note Confluence Cloud need to be used via token parameter. And here's another example of how to get issues from Jira using JQL Query:

from atlassian import Jira

jira = Jira(
    url='http://localhost:8080',
    username='admin',
    password='admin')
JQL = 'project = DEMO AND status IN ("To Do", "In Progress") ORDER BY issuekey'
data = jira.jql(JQL)
print(data)

Also, you can use the Bitbucket module e.g. for getting project list

from atlassian import Bitbucket

bitbucket = Bitbucket(
        url='http://localhost:7990',
        username='admin',
        password='admin')

data = bitbucket.project_list()
print(data)

Now you can use the Jira Service Desk module. See docs. Example to get your requests:

from atlassian import ServiceDesk

sd = ServiceDesk(
        url='http://localhost:7990',
        username='admin',
        password='admin')

data = sd.get_my_customer_requests()
print(data)

Using Insight (CMDB Tool for Jira):

from atlassian import Insight

insight = Insight(
        url='http://localhost:7990',
        username='admin',
        password='admin')

data = insight.get_object(88)
print(data)

Using Xray (Test Management tool for Jira):

from atlassian import Xray

xr = Xray(
       url='http://localhost:7990',
        username='admin',
        password='admin')

data = xr.get_tests('TEST-001')
print(data)

Using Bamboo:

from atlassian import Bamboo

bamboo = Bamboo(
        url='http://localhost:6990/bamboo/',
        token="<TOKEN>")

data = bamboo.get_elastic_configurations()
print(data)

If you want to see the response in pretty print format JSON. Feel free for use construction like:

from pprint import pprint
# you code here
# and then print using pprint(result) instead of print(result)
pprint(response)

How to contribute?

First of all, I am happy for any PR requests. Let's fork and provide your changes :) See the Contribution Guidelines for this project for details on how to make changes to this library.

Credits

In addition to all the contributors we would like to thank these vendors: