Atlassian API

By Abhishek Kumar
7 min read
Explore Atlassian's API to integrate and enhance tools like Jira, Confluence, and Trello. Leverage REST APIs and webhooks for seamless collaboration and improved project management.

Table of Contents

Millions of users globally rely on Atlassian products every day for improving software development, project management, collaboration, and code quality.

API Overview

Atlassian is a leading provider of collaboration and productivity software for teams. Its flagship products include Jira, Confluence, Trello, Bitbucket, and Jira Service Management. These tools are used by millions of teams worldwide to plan, track, and manage their work. Atlassian's mission is to unleash the potential of teams by providing them with the tools they need to collaborate effectively, innovate faster, and deliver better results. The company is headquartered in Sydney, Australia, and has offices around the world.

Atlassian's API overview provides a comprehensive set of resources for developers looking to integrate with Atlassian products. The documentation includes detailed API reference guides, tutorials, and code samples. Atlassian's REST APIs are designed to be easy to use and provide access to a wide range of data and functionality. Webhooks allow developers to receive real-time notifications when events occur in Atlassian products. Rate limits are in place to ensure that the APIs are used fairly and to prevent abuse. By providing a robust and well-documented API, Atlassian enables developers to build powerful integrations that extend the functionality of its products and create new and innovative solutions for teams.

API Request Limits

Cloud Standard

10,000 API calls per hour

Cloud Premium

20,000 API calls per hour

Cloud Enterprise

50,000 API calls per hour

Server

No rate limit

APIs

Jira

Method: GET

Description: Gets the list of projects. A project is a set of issues.

Endpoint: filters

Parameters: and permissions.

Jira

Method: GET

Description: Gets the list of custom field options for a custom field..

Endpoint: /rest/api/2/customFieldOption/list

Parameters: customFieldId

Jira

Method: GET

Description: Gets the list of available issue types..

Endpoint: /rest/api/2/issuetype

Parameters:

Jira

Method: GET

Description: Gets a field by ID..

Endpoint: /rest/api/2/field

Parameters:

Jira

Method: GET

Description: Gets the specified project..

Endpoint: /rest/api/2/project/PROJECT_KEY_OR_ID

Parameters:

Jira

Method: GET

Description: Gets a list of projects that match the search string in the project name..

Endpoint: /rest/api/2/project/search

Parameters: query

Jira

Method: GET

Description: Gets a list of all issues associated with a project..

Endpoint: /rest/api/2/search

Parameters: jql

Jira

Method: GET

Description: Gets the list of all issues that match the search criteria..

Endpoint: /rest/api/2/search

Parameters: jql

Jira

Method: GET

Description: Gets a list of all issue types in a project..

Endpoint: /rest/api/2/project/{projectIdOrKey}/issuetypes

Parameters:

Jira

Method: GET

Description: Gets the metadata for an issue type..

Endpoint: /rest/api/2/issuetype/{issueTypeIdOrKey}

Parameters:

Jira

Method: GET

Description: Gets the list of issue types that are allowed for the specified project..

Endpoint: /rest/api/2/project/{projectIdOrKey}/issuetypes/allowed

Parameters:

Jira

Method: GET

Description: Gets the list of statuses that are allowed for the specified issue..

Endpoint: /rest/api/2/issue/{issueIdOrKey}/transitions

Parameters:

Jira

Method: POST

Description: Creates an issue..

Endpoint: /rest/api/2/issue

Parameters: fields

Jira

Method: POST

Description: Performs a search query against issues..

Endpoint: /rest/api/2/search

Parameters: jql

Jira

Method: POST

Description: Updates an issue..

Endpoint: /rest/api/2/issue/{issueIdOrKey}

Parameters: fields

Jira

Method: PUT

Description: Updates a comment on an issue..

Endpoint: /rest/api/2/issue/{issueIdOrKey}/comment/{commentId}

Parameters: body

Jira

Method: PUT

Description: Updates an issue type..

Endpoint: /rest/api/2/issuetype/{issueTypeId}

Parameters: name, description, iconUrl

Jira

Method: PUT

Description: Updates a project..

Endpoint: /rest/api/2/project/{projectIdOrKey}

Parameters: name, description, lead, avatarUrl

Jira

Method: DELETE

Description: Deletes an issue type..

Endpoint: /rest/api/2/issuetype/{issueTypeId}

Parameters:

Jira

Method: DELETE

Description: Deletes a project..

Endpoint: /rest/api/2/project/{projectIdOrKey}

Parameters:

Confluence

Method: GET

Description: Get all pages.

Endpoint: content in the system.

Parameters: /wiki/rest/api/content

Confluence

Method: GET

Description: Get the metadata and HTML content for a page in Confluence..

Endpoint: /wiki/rest/api/content/{contentId}

Parameters: expand

Confluence

Method: GET

Description: Get the comments on a Confluence page..

Endpoint: /wiki/rest/api/content/{contentId}/comment

Parameters: start, limit

Confluence

Method: GET

Description: Gets the list of all labels..

Endpoint: /wiki/rest/api/label

Parameters:

Confluence

Method: GET

Description: Gets information about a single content history item..

Endpoint: /wiki/rest/api/content/{contentId}/history/{version}

Parameters: expand

Confluence

Method: GET

Description: Gets the list of all pages in a space..

Endpoint: /wiki/rest/api/space/{spaceKey}/content

Parameters: type, title, spaceKey, start, limit

Confluence

Method: GET

Description: Gets the list of all spaces..

Endpoint: /wiki/rest/api/space

Parameters: type, start, limit

Confluence

Method: GET

Description: Gets a space by its key..

Endpoint: /wiki/rest/api/space/{spaceKey}

Parameters: expand

Confluence

Method: GET

Description: Gets the list of all versions for a page..

Endpoint: /wiki/rest/api/content/{contentId}/version

Parameters: start, limit, expand

Confluence

Method: GET

Description: Gets the list of all watch configurations for a page or space..

Endpoint: /wiki/rest/api/watch

Parameters: pageId, spaceKey

Confluence

Method: GET

Description: Gets a page's watchers..

Endpoint: /wiki/rest/api/content/{contentId}/watch

Parameters: start, limit, expand

Confluence

Method: POST

Description: Creates a page in the given space..

Endpoint: /wiki/rest/api/content

Parameters: title, spaceKey, body, parentId, representation

Confluence

Method: POST

Description: Creates a comment on a page..

Endpoint: /wiki/rest/api/content/{contentId}/comment

Parameters: body

Confluence

Method: PUT

Description: Updates the page with the given ID..

Endpoint: /wiki/rest/api/content/{contentId}

Parameters: title, spaceKey, body, representation

Confluence

Method: PUT

Description: Updates the labels on a page..

Endpoint: /wiki/rest/api/content/{contentId}/label

Parameters: labels

Confluence

Method: DELETE

Description: Deletes a page..

Endpoint: /wiki/rest/api/content/{contentId}

Parameters:

Confluence

Method: DELETE

Description: Deletes a comment on a page..

Endpoint: /wiki/rest/api/content/{contentId}/comment/{commentId}

Parameters:

Bitbucket

Method: GET

Description: Gets a list of all comments on the given pull request..

Endpoint: /2.0/repositories/{workspace}/{repo_slug}/pullrequests/{pullrequest_id}/comments

Parameters:

Bitbucket

Method: GET

Description: Gets a paginated list of commits from a repository..

Endpoint: /2.0/repositories/{workspace}/{repo_slug}/commits

Parameters: page

Bitbucket

Method: GET

Description: Gets the details of a specific commit..

Endpoint: /2.0/repositories/{workspace}/{repo_slug}/commit/{commit}

Parameters:

Bitbucket

Method: GET

Description: Gets a paginated list of issues on the given pull request..

Endpoint: /2.0/repositories/{workspace}/{repo_slug}/pullrequests/{pullrequest_id}/issues

Parameters: page

Bitbucket

Method: GET

Description: Gets a paginated list of all the pull requests in a repository..

Endpoint: /2.0/repositories/{workspace}/{repo_slug}/pullrequests

Parameters: state, sort, page

Bitbucket

Method: GET

Description: Gets the details of a given pull request..

Endpoint: /2.0/repositories/{workspace}/{repo_slug}/pullrequests/{pullrequest_id}

Parameters:

Bitbucket

Method: GET

Description: Gets a paginated list of all the repositories in a workspace..

Endpoint: /2.0/workspaces/{workspace}/repositories

Parameters: page

Bitbucket

Method: GET

Description: Gets a list of all labels on the given pull request..

Endpoint: /2.0/repositories/{workspace}/{repo_slug}/pullrequests/{pullrequest_id}/labels

Parameters:

Bitbucket

Method: GET

Description: Gets the details of a specific user..

Endpoint: /2.0/users/{username}

Parameters:

Bitbucket

Method: GET

Description: Gets a paginated list of all the teams in a workspace..

Endpoint: /2.0/teams

Parameters: page

Bitbucket

Method: GET

Description: Gets a paginated list of all the workspaces in which the user has access..

Endpoint: /2.0/workspaces

Parameters: page

Bitbucket

Method: GET

Description: Gets the details of a specific workspace..

Endpoint: /2.0/workspaces/{workspace}

Parameters:

Bitbucket

Method: POST

Description: Creates the given issue for the given pull request..

Endpoint: /2.0/repositories/{workspace}/{repo_slug}/pullrequests/{pullrequest_id}/issues

Parameters: title, content, kind

Bitbucket

Method: POST

Description: Creates a comment on the given pull request..

Endpoint: /2.0/repositories/{workspace}/{repo_slug}/pullrequests/{pullrequest_id}/comments

Parameters: content

Bitbucket

Method: POST

Description: Creates a new pull request..

Endpoint: /2.0/repositories/{workspace}/{repo_slug}/pullrequests

Parameters: title, source, destination, description, reviewers, close_source_branch

Bitbucket

Method: POST

Description: Adds/Removes labels on the given pull request..

Endpoint: /2.0/repositories/{workspace}/{repo_slug}/pullrequests/{pullrequest_id}/labels

Parameters: labels

Bitbucket

Method: PUT

Description: Updates the title.

Endpoint: description

Parameters: destination branch

Bitbucket

Method: PUT

Description: Updates the specified label on the given pull request..

Endpoint: /2.0/repositories/{workspace}/{repo_slug}/pullrequests/{pullrequest_id}/labels/{label_id}

Parameters: name, color

Bitbucket

Method: DELETE

Description: Deletes the specified label on the given pull request..

Endpoint: /2.0/repositories/{workspace}/{repo_slug}/pullrequests/{pullrequest_id}/labels/{label_id}

Parameters:

FAQ

What is the authentication process for Atlassian APIs?

Atlassian APIs use OAuth 2.0 for authentication. You'll need to create an API token and use it in your API requests.

Are there any rate limits for using Atlassian APIs?

Yes, there are rate limits in place to prevent abuse of the APIs. The specific limits vary depending on the API and your subscription plan.

How can I get a sandbox account to test Atlassian APIs?

You can create a sandbox account at https://developer.atlassian.com/platform/forge/environment/

What is the difference between a developer account and a production account?

A developer account is for testing and development purposes, while a production account is for use in live, production environments.

How can I get help if I encounter issues while using Atlassian APIs?

You can get help from the Atlassian Developer Community at https://community.developer.atlassian.com/

Last Update: September 03, 2024