atlassian-python-api

Python Atlassian REST API Wrapper

Apache-2.0 231 个版本
Matt Harasymczuk <matt@astrotech.io>
安装
pip install atlassian-python-api
poetry add atlassian-python-api
pipenv install atlassian-python-api
conda install atlassian-python-api
描述

============================ Atlassian Python API wrapper

|Build Status| |PyPI version| |PyPI - Downloads| |License| |Codacy Badge| |Docs| |Discord|

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 and made with love for Atlassian.

Documentation


Documentation_

.. _Documentation: https://atlassian-python-api.readthedocs.io

How to Install?


From PyPI

.. code-block:: console

$ pip install atlassian-python-api

From Source

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

Examples


More examples in :code:examples/ directory.

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

.. code-block:: python

from atlassian import Confluence
import requests
# If you want to use a session, you can create it like this:
session =  requests.Session()
# and pass it to the Confluence constructor
confluence = Confluence(
    url='http://localhost:8090',
    username='admin',
    password='admin',
    session=session,)

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:

.. code-block:: python

from atlassian import Jira
import requests

session = requests.Session()
jira = Jira(
    url='http://localhost:8080',
    username='admin',
    password='admin',
    session=session)  # Optional: use a session for persistent connections
JQL = 'project = DEMO AND status IN ("To Do", "In Progress") ORDER BY issuekey'
data = jira.jql(JQL)
print(data)

The traditional jql method is deprecated for Jira Cloud users, as Atlassian has transitioned to a nextPageToken-based pagination approach instead of startAt. Use enhanced_jql for improved performance and future compatibility.

.. code-block:: python

from atlassian import Jira
import requests
session = requests.Session()
jira = Jira(
    url='https://your-jira-instance.atlassian.net',
    username='your-email@example.com',
    password='your-api-token',
    cloud=True,  # Ensure this is set to True for Jira Cloud
    session=session  # Optional: use a session for persistent connections
)
JQL = 'project = DEMO AND status IN ("To Do", "In Progress") ORDER BY issuekey'
# Fetch issues using the new enhanced_jql method
data = jira.enhanced_jql(JQL)
print(data)

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

.. code-block:: python

from atlassian import Bitbucket
import requests

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

data = bitbucket.project_list()
print(data)

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

.. code-block:: python

from atlassian import ServiceDesk
import requests
sd = ServiceDesk(
        url='http://localhost:7990',
        username='admin',
        password='admin',
        session=requests.Session())

data = sd.get_my_customer_requests()
print(data)

Using Insight (CMDB Tool for Jira):

.. code-block:: python

from atlassian import Insight
import requests

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

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

Using Xray (Test Management tool for Jira):

.. code-block:: python

from atlassian import Xray
import requests

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

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

Using Bamboo:

.. code-block:: python

from atlassian import Bamboo
import requests

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

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:

.. code-block:: python

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.

.. _Contribution Guidelines for this project: CONTRIBUTING.rst .. |Build Status| image:: https://github.com/atlassian-api/atlassian-python-api/workflows/Test/badge.svg?branch=master :target: https://github.com/atlassian-api/atlassian-python-api/actions?query=workflow%3ATest+branch%3Amaster :alt: Build status .. |PyPI version| image:: https://badge.fury.io/py/atlassian-python-api.svg :target: https://badge.fury.io/py/atlassian-python-api :alt: PyPI version .. |License| image:: https://img.shields.io/pypi/l/atlassian-python-api.svg :target: https://pypi.python.org/pypi/atlassian-python-api :alt: License .. |Codacy Badge| image:: https://app.codacy.com/project/badge/Grade/2cca43995cf041b8b181e2b2ff04cee6 :target: https://app.codacy.com/gh/atlassian-api/atlassian-python-api/dashboard :alt: Codacy Badge .. |PyPI - Downloads| image:: https://static.pepy.tech/badge/atlassian-python-api/month :alt: PyPI - Downloads .. |Docs| image:: https://readthedocs.org/projects/atlassian-python-api/badge/?version=latest :target: https://atlassian-python-api.readthedocs.io/?badge=latest :alt: Documentation Status .. |Discord| image:: https://img.shields.io/discord/756142204761669743.svg?label=&logo=discord&logoColor=ffffff&color=7389D8&labelColor=6A7EC2 :alt: Discord Chat :target: https://discord.gg/FCJsvqh

Credits


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

  • Atlassian_ for developing such a powerful ecosystem.
  • JetBrains_ for providing us with free licenses of PyCharm_
  • Microsoft_ for providing us with free licenses of VSCode_
  • GitHub_ for hosting our repository and continuous integration

.. _Atlassian: https://www.atlassian.com/ .. _JetBrains: http://www.jetbrains.com .. _PyCharm: http://www.jetbrains.com/pycharm/ .. _GitHub: https://github.com/ .. _Microsoft: https://github.com/Microsoft/vscode/ .. _VSCode: https://code.visualstudio.com/

版本列表
4.0.7 2025-08-21
4.0.6 2025-08-20
4.0.5 2025-08-20
4.0.4 2025-05-12
4.0.3 2025-03-31
4.0.2 2025-03-31
4.0.1 2025-03-30
4.0.0 2025-03-25
3.41.21 2025-03-17
3.41.19 2025-01-23
3.41.18 2025-01-10
3.41.16 2024-09-16
3.41.15 2024-08-30
3.41.14 2024-06-14
3.41.13 2024-05-21
3.41.12 2024-05-21
3.41.11 2024-02-27
3.41.10 2024-02-09
3.41.9 2024-01-21
3.41.8 2024-01-17
3.41.7 2024-01-17
3.41.6 2024-01-16
3.41.5 2024-01-16
3.41.4 2023-11-28
3.41.3 2023-10-19
3.41.2 2023-09-07
3.41.1 2023-08-27
3.41.0 2023-08-16
3.40.1 2023-08-13
3.40.0 2023-07-28
3.39.0 2023-06-17
3.38.0 2023-05-28
3.37.0 2023-05-16
3.36.0 2023-04-04
3.35.0 2023-03-15
3.34.0 2023-02-24
3.33.0 2023-02-17
3.32.2 2023-01-04
3.32.1 2022-12-06
3.32.0 2022-12-04
3.31.1 2022-11-23
3.31.0 2022-11-12
3.28.1 2022-09-17
3.28.0 2022-09-03
3.27.0 2022-08-22
3.26.0 2022-08-10
3.25.0 2022-05-25
3.24.0 2022-05-24
3.23.0 2022-05-13
3.22.0 2022-04-28
3.21.0 2022-04-18
3.20.1 2022-02-15
3.20.0 2022-02-14
3.19.0 2022-02-07
3.18.1 2022-01-25
3.18.0 2022-01-09
3.17.0 2022-01-02
3.15.0 2021-12-18
3.14.1 2021-10-02
3.14.0 2021-09-19
3.13.2 2021-09-06
3.13.1 2021-08-31
3.13.0 2021-08-04
3.12.1 2021-07-09
3.12.0 2021-07-07
3.11.0 2021-06-12
3.10.0 2021-05-10
3.9.1 2021-05-05
3.9.0 2021-05-03
3.8.0 2021-03-15
3.7.1 2021-03-13
3.7.0 2021-03-13
3.6.0 2021-03-08
3.5.3 2021-02-25
3.5.2 2021-02-15
3.5.1 2021-02-10
3.5.0 2021-02-09
3.4.1 2021-02-01
3.4.0 2021-01-29
3.3.1 2021-01-28
3.3.0 2021-01-27
3.2.0 2021-01-25
3.1.1 2021-01-25
3.1.0 2021-01-23
3.0.0 2021-01-21
2.7.0 2021-01-20
2.6.0 2021-01-14
2.5.0 2021-01-08
2.4.4 2021-01-05
2.4.3 2021-01-03
2.4.2 2021-01-03
2.4.1 2021-01-03
2.4.0 2020-12-31
2.3.0 2020-12-26
2.2.0 2020-12-17
2.1.2 2020-11-28
2.1.1 2020-11-19
2.1.0 2020-11-17
2.0.1 2020-11-05
1.17.7 2020-11-02
1.17.6 2020-10-11
1.17.5 2020-09-15
1.17.4 2020-09-13
1.17.3 2020-09-10
1.17.2 2020-09-01
1.17.1 2020-08-31
1.17.0 2020-08-28
1.16.1 2020-08-19
1.16.0 2020-06-16
1.15.9 2020-06-03
1.15.8 2020-06-02
1.15.7 2020-05-08
1.15.6 2020-03-05
1.15.5 2020-03-02
1.15.4 2020-02-28
1.15.3 2020-02-12
1.15.2 2020-02-05
1.15.1 2020-01-27
1.15.0 2020-01-22
1.14.9 2020-01-14
1.14.8 2020-01-08
1.14.7 2019-12-22
1.14.6 2019-12-05
1.14.5 2019-11-28
1.14.4.1 2019-11-25
1.14.3 2019-11-10
1.14.2 2019-10-28
1.13.24 2019-07-24
1.13.23 2019-07-18
1.13.22 2019-07-12
1.13.21 2019-07-09
1.13.20 2019-07-05
1.13.19 2019-07-01
1.13.18 2019-06-28
1.13.17 2019-06-28
1.13.16 2019-06-26
1.13.15 2019-06-21
1.13.14 2019-06-17
1.13.13 2019-06-15
1.13.12 2019-06-14
1.13.11 2019-06-11
1.13.10 2019-06-10
1.13.9 2019-06-07
1.13.8 2019-06-04
1.13.7 2019-05-30
1.13.6 2019-05-24
1.13.5 2019-05-23
1.13.4 2019-05-22
1.13.4.dev0 2019-05-22
1.13.3 2019-05-22
1.13.1 2019-05-21
1.13.0 2019-05-21
1.12.20 2019-05-20
1.12.19 2019-05-17
1.12.18 2019-05-15
1.12.17 2019-05-14
1.12.16 2019-05-13
1.12.15 2019-05-10
1.12.14 2019-05-09
1.12.13 2019-05-07
1.12.12 2019-05-06
1.12.11 2019-05-06
1.12.10 2019-05-04
1.12.9 2019-05-01
1.12.8 2019-04-24
1.12.7 2019-04-23
1.12.6 2019-04-23
1.12.5 2019-04-12
1.12.4 2019-04-11
1.12.3 2019-04-09
1.12.2 2019-04-01
1.12.1 2019-03-29
1.12.0 2019-03-14
1.11.19 2019-01-21
1.11.18 2019-01-20
1.11.17 2019-01-07
1.11.16 2018-12-22
1.11.15 2018-12-18
1.11.14 2018-12-04
1.11.13 2018-11-27
1.11.12 2018-11-19
1.11.11 2018-11-09
1.11.10 2018-11-03
1.11.9 2018-10-31
1.11.8 2018-10-31
1.11.7 2018-10-30
1.11.6 2018-10-29
1.11.5 2018-10-26
1.11.4 2018-10-24
1.11.3 2018-10-22
1.11.2 2018-10-18
1.11.1 2018-10-17
1.11.0 2018-10-04
1.10.2 2018-09-17
1.10.1 2018-09-17
1.10.0 2018-09-11
1.9.6 2018-08-31
1.9.5 2018-08-29
1.9.4 2018-08-22
1.9.3 2018-08-20
1.9.2 2018-08-17
1.9.1 2018-08-08
1.9.0 2018-08-08
1.8.2 2018-08-02
1.8.1 2018-07-31
1.8.0 2018-07-27
1.7.5 2018-07-26
1.7.4 2018-07-25
1.7.3 2018-07-22
1.7.2 2018-07-21
1.7.1 2018-07-10
1.6.0 2018-05-24
1.5.1 2018-05-22
1.5.0 2018-05-22
1.4.0 2018-05-11
1.3.0 2018-05-03
1.2.3 2018-03-31
1.2.2 2018-03-31
1.2.1 2018-02-23
1.2.0 2018-02-14
1.0.2 2018-02-02
1.0.0 2018-01-30
0.13.2 2015-08-19
0.13.1 2015-08-18
0.13 2015-08-17
0.12.5 2015-07-28
0.12.4 2015-07-28
0.12.3 2015-03-31
0.12.2 2015-03-31
0.12.0 2015-03-31
0.11.5 2015-03-27