Skip to content

Latest commit

 

History

History
162 lines (122 loc) · 21.5 KB

File metadata and controls

162 lines (122 loc) · 21.5 KB
graph LR
    REST_Client_Core["REST Client Core"]
    Jira_Ecosystem_Clients["Jira Ecosystem Clients"]
    Confluence_API_Client["Confluence API Client"]
    Bitbucket_API_Client["Bitbucket API Client"]
    Bamboo_API_Client["Bamboo API Client"]
    Atlassian_Platform_Marketplace_Clients["Atlassian Platform & Marketplace Clients"]
    Utility_Error_Handling["Utility & Error Handling"]
    Jira_Ecosystem_Clients -- "uses" --> REST_Client_Core
    Jira_Ecosystem_Clients -- "handles errors with" --> Utility_Error_Handling
    Confluence_API_Client -- "uses" --> REST_Client_Core
    Confluence_API_Client -- "handles errors with" --> Utility_Error_Handling
    Bitbucket_API_Client -- "uses" --> REST_Client_Core
    Bitbucket_API_Client -- "handles errors with" --> Utility_Error_Handling
    Bamboo_API_Client -- "uses" --> REST_Client_Core
    Bamboo_API_Client -- "handles errors with" --> Utility_Error_Handling
    Atlassian_Platform_Marketplace_Clients -- "uses" --> REST_Client_Core
    Atlassian_Platform_Marketplace_Clients -- "handles errors with" --> Utility_Error_Handling
    click REST_Client_Core href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/atlassian-python-api/REST Client Core.md" "Details"
    click Jira_Ecosystem_Clients href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/atlassian-python-api/Jira Ecosystem Clients.md" "Details"
    click Confluence_API_Client href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/atlassian-python-api/Confluence API Client.md" "Details"
    click Bitbucket_API_Client href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/atlassian-python-api/Bitbucket API Client.md" "Details"
    click Bamboo_API_Client href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/atlassian-python-api/Bamboo API Client.md" "Details"
    click Atlassian_Platform_Marketplace_Clients href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/atlassian-python-api/Atlassian Platform & Marketplace Clients.md" "Details"
    click Utility_Error_Handling href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/atlassian-python-api/Utility & Error Handling.md" "Details"
Loading

CodeBoardingDemoContact

Component Details

The atlassian-python-api library provides a comprehensive Python interface for interacting with various Atlassian products. The core functionality revolves around a REST Client Core that handles all HTTP communication, including authentication, retries, and error handling. Specific API clients for products like Jira, Confluence, Bitbucket, Bamboo, and other Atlassian platform services build upon this core, abstracting the complexities of their respective APIs. The Utility & Error Handling component provides common utilities and a structured approach to managing API-related errors across all clients. The main flow involves client applications instantiating specific Atlassian product API clients, which then leverage the REST Client Core to perform operations, with errors being managed by the Utility & Error Handling component.

REST Client Core

The foundational component responsible for handling all HTTP requests and responses with Atlassian APIs. It manages session authentication (basic, token, OAuth1, OAuth2, Kerberos), implements robust retry mechanisms with exponential backoff and Retry-After header support, handles SSL verification, proxy settings, and constructs API URLs. It serves as the base for all specific Atlassian product API clients.

Related Classes/Methods:

Jira Ecosystem Clients

A consolidated interface for interacting with various Jira-related APIs, including core Jira functionalities (issues, projects, users), Jira Service Desk (customer requests, SLAs), Atlassian Assets/Insight (configuration items), Xray Test Management (tests, test runs), and Jira Portfolio/Advanced Roadmaps (planning data). This component abstracts the specific API calls for these interconnected Jira products.

Related Classes/Methods:

Confluence API Client

Facilitates interaction with the Confluence API, allowing operations on pages, spaces, comments, attachments, labels, content history, templates, and user/group permissions within Confluence.

Related Classes/Methods:

  • atlassian-python-api.atlassian.confluence.Confluence (full file reference)

Bitbucket API Client

Provides a unified interface for interacting with both Bitbucket Server and Bitbucket Cloud APIs. This component covers functionalities related to projects, repositories, branches, tags, pull requests, webhooks, users, groups, and various administrative and permission management tasks across both Bitbucket platforms.

Related Classes/Methods:

Bamboo API Client

Manages interactions with the Bamboo CI/CD API, covering projects, build plans, branches, build results, deployments, users, groups, permissions, agents, and reports.

Related Classes/Methods:

Atlassian Platform & Marketplace Clients

Provides interfaces for interacting with various Atlassian platform-level services and the Marketplace. This includes user and group management via Atlassian Crowd, public status page management through StatusPage, retrieval of application and vendor information from the Atlassian Marketplace, and administrative functions for Atlassian Cloud organizations and user profiles.

Related Classes/Methods:

Utility & Error Handling

Contains general utility functions used across the library, such as HTML formatting and email validation. It also defines custom exception classes for handling various API-related errors (e.g., ApiNotFoundError, ApiPermissionError, ApiError, ApiValueError, ApiConflictError), providing structured error information for robust error management.

Related Classes/Methods: