Skip to content

Bitbucket API API

by bitbucket.org

API keyHTTPSDevelopment
Open documentation ↗

Overview

Code against the Bitbucket API to automate simple tasks, embed Bitbucket data into your own site, build mobile or desktop apps, or even add custom UI add-ons into Bitbucket itself using the Connect framework.

Bitbucket API is a development API from bitbucket.org. Requests are authenticated with an API key. It is served over HTTPS. Its OpenAPI description documents 303 endpoints.

At a glance

Authentication
API key
HTTPS
Yes
CORS
Unknown
Category
Development
Base URL
https://api.bitbucket.org/2.0
Version
2.0
Endpoints
303
Spec updated
2023-03-06

Make a first request

Replace the placeholders; the documentation says exactly where credentials go.

cURL
curl -X GET "https://api.bitbucket.org/2.0/addon/linkers" \
  -H "Accept: application/json" \
  -H "X-API-Key: YOUR_API_KEY"
JavaScript
const response = await fetch("https://api.bitbucket.org/2.0/addon/linkers", {
  method: "GET",
  headers: {
    "Accept": "application/json",
    "X-API-Key": "YOUR_API_KEY",
  },
});
const data = await response.json();
console.log(data);
Python
import requests

response = requests.request(
    "GET",
    "https://api.bitbucket.org/2.0/addon/linkers",
    headers={
    "Accept": "application/json",
    "X-API-Key": "YOUR_API_KEY",
    },
    timeout=30,
)
print(response.json())

Endpoints

MethodPathWhat it does
PUT/addonUpdate an installed app
DELETE/addonDelete an app
GET/addon/linkersList linkers for an app
GET/addon/linkers/{linker_key}Get a linker for an app
GET/addon/linkers/{linker_key}/valuesList linker values for a linker
POST/addon/linkers/{linker_key}/valuesCreate a linker value
PUT/addon/linkers/{linker_key}/valuesUpdate a linker value
DELETE/addon/linkers/{linker_key}/valuesDelete all linker values
GET/addon/linkers/{linker_key}/values/{value_id}Get a linker value
DELETE/addon/linkers/{linker_key}/values/{value_id}Delete a linker value
GET/hook_eventsGet a webhook resource
GET/hook_events/{subject_type}List subscribable webhook types
GET/pullrequests/{selected_user}List pull requests for a user
GET/repositoriesList public repositories
GET/repositories/{workspace}List repositories in a workspace
GET/repositories/{workspace}/{repo_slug}Get a repository
POST/repositories/{workspace}/{repo_slug}Create a repository
PUT/repositories/{workspace}/{repo_slug}Update a repository
DELETE/repositories/{workspace}/{repo_slug}Delete a repository
GET/repositories/{workspace}/{repo_slug}/branch-restrictionsList branch restrictions
POST/repositories/{workspace}/{repo_slug}/branch-restrictionsCreate a branch restriction rule
GET/repositories/{workspace}/{repo_slug}/branch-restrictions/{id}Get a branch restriction rule
PUT/repositories/{workspace}/{repo_slug}/branch-restrictions/{id}Update a branch restriction rule
DELETE/repositories/{workspace}/{repo_slug}/branch-restrictions/{id}Delete a branch restriction rule
GET/repositories/{workspace}/{repo_slug}/branching-modelGet the branching model for a repository
GET/repositories/{workspace}/{repo_slug}/branching-model/settingsGet the branching model config for a repository
PUT/repositories/{workspace}/{repo_slug}/branching-model/settingsUpdate the branching model config for a repository
GET/repositories/{workspace}/{repo_slug}/commit/{commit}Get a commit
POST/repositories/{workspace}/{repo_slug}/commit/{commit}/approveApprove a commit
DELETE/repositories/{workspace}/{repo_slug}/commit/{commit}/approveUnapprove a commit
GET/repositories/{workspace}/{repo_slug}/commit/{commit}/commentsList a commit's comments
POST/repositories/{workspace}/{repo_slug}/commit/{commit}/commentsCreate comment for a commit
GET/repositories/{workspace}/{repo_slug}/commit/{commit}/comments/{comment_id}Get a commit comment
PUT/repositories/{workspace}/{repo_slug}/commit/{commit}/comments/{comment_id}Update a commit comment
DELETE/repositories/{workspace}/{repo_slug}/commit/{commit}/comments/{comment_id}Delete a commit comment
GET/repositories/{workspace}/{repo_slug}/commit/{commit}/properties/{app_key}/{property_name}Get a commit application property
PUT/repositories/{workspace}/{repo_slug}/commit/{commit}/properties/{app_key}/{property_name}Update a commit application property
DELETE/repositories/{workspace}/{repo_slug}/commit/{commit}/properties/{app_key}/{property_name}Delete a commit application property
GET/repositories/{workspace}/{repo_slug}/commit/{commit}/pullrequestsList pull requests that contain a commit
GET/repositories/{workspace}/{repo_slug}/commit/{commit}/reportsList reports
GET/repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}Get a report
PUT/repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}Create or update a report
DELETE/repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}Delete a report
GET/repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}/annotationsList annotations
POST/repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}/annotationsBulk create or update annotations
GET/repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}/annotations/{annotationId}Get an annotation
PUT/repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}/annotations/{annotationId}Create or update an annotation
DELETE/repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}/annotations/{annotationId}Delete an annotation
GET/repositories/{workspace}/{repo_slug}/commit/{commit}/statusesList commit statuses for a commit
POST/repositories/{workspace}/{repo_slug}/commit/{commit}/statuses/buildCreate a build status for a commit
GET/repositories/{workspace}/{repo_slug}/commit/{commit}/statuses/build/{key}Get a build status for a commit
PUT/repositories/{workspace}/{repo_slug}/commit/{commit}/statuses/build/{key}Update a build status for a commit
GET/repositories/{workspace}/{repo_slug}/commitsList commits
POST/repositories/{workspace}/{repo_slug}/commitsList commits with include/exclude
GET/repositories/{workspace}/{repo_slug}/commits/{revision}List commits for revision
POST/repositories/{workspace}/{repo_slug}/commits/{revision}List commits for revision using include/exclude
GET/repositories/{workspace}/{repo_slug}/componentsList components
GET/repositories/{workspace}/{repo_slug}/components/{component_id}Get a component for issues
GET/repositories/{workspace}/{repo_slug}/default-reviewersList default reviewers
GET/repositories/{workspace}/{repo_slug}/default-reviewers/{target_username}Get a default reviewer
PUT/repositories/{workspace}/{repo_slug}/default-reviewers/{target_username}Add a user to the default reviewers
DELETE/repositories/{workspace}/{repo_slug}/default-reviewers/{target_username}Remove a user from the default reviewers
GET/repositories/{workspace}/{repo_slug}/deploy-keysList repository deploy keys
POST/repositories/{workspace}/{repo_slug}/deploy-keysAdd a repository deploy key
GET/repositories/{workspace}/{repo_slug}/deploy-keys/{key_id}Get a repository deploy key
PUT/repositories/{workspace}/{repo_slug}/deploy-keys/{key_id}Update a repository deploy key
DELETE/repositories/{workspace}/{repo_slug}/deploy-keys/{key_id}Delete a repository deploy key
GET/repositories/{workspace}/{repo_slug}/deployments/List deployments
GET/repositories/{workspace}/{repo_slug}/deployments/{deployment_uuid}Get a deployment
GET/repositories/{workspace}/{repo_slug}/deployments_config/environments/{environment_uuid}/variablesList variables for an environment
POST/repositories/{workspace}/{repo_slug}/deployments_config/environments/{environment_uuid}/variablesCreate a variable for an environment
PUT/repositories/{workspace}/{repo_slug}/deployments_config/environments/{environment_uuid}/variables/{variable_uuid}Update a variable for an environment
DELETE/repositories/{workspace}/{repo_slug}/deployments_config/environments/{environment_uuid}/variables/{variable_uuid}Delete a variable for an environment
GET/repositories/{workspace}/{repo_slug}/diff/{spec}Compare two commits
GET/repositories/{workspace}/{repo_slug}/diffstat/{spec}Compare two commit diff stats
GET/repositories/{workspace}/{repo_slug}/downloadsList download artifacts
POST/repositories/{workspace}/{repo_slug}/downloadsUpload a download artifact
GET/repositories/{workspace}/{repo_slug}/downloads/{filename}Get a download artifact link
DELETE/repositories/{workspace}/{repo_slug}/downloads/{filename}Delete a download artifact
GET/repositories/{workspace}/{repo_slug}/effective-branching-modelGet the effective, or currently applied, branching model for a repository
GET/repositories/{workspace}/{repo_slug}/effective-default-reviewersList effective default reviewers
GET/repositories/{workspace}/{repo_slug}/environments/List environments
POST/repositories/{workspace}/{repo_slug}/environments/Create an environment
GET/repositories/{workspace}/{repo_slug}/environments/{environment_uuid}Get an environment
DELETE/repositories/{workspace}/{repo_slug}/environments/{environment_uuid}Delete an environment
POST/repositories/{workspace}/{repo_slug}/environments/{environment_uuid}/changes/Update an environment
GET/repositories/{workspace}/{repo_slug}/filehistory/{commit}/{path}List commits that modified a file
GET/repositories/{workspace}/{repo_slug}/forksList repository forks
POST/repositories/{workspace}/{repo_slug}/forksFork a repository
GET/repositories/{workspace}/{repo_slug}/hooksList webhooks for a repository
POST/repositories/{workspace}/{repo_slug}/hooksCreate a webhook for a repository
GET/repositories/{workspace}/{repo_slug}/hooks/{uid}Get a webhook for a repository
PUT/repositories/{workspace}/{repo_slug}/hooks/{uid}Update a webhook for a repository
DELETE/repositories/{workspace}/{repo_slug}/hooks/{uid}Delete a webhook for a repository
GET/repositories/{workspace}/{repo_slug}/issuesList issues
POST/repositories/{workspace}/{repo_slug}/issuesCreate an issue
POST/repositories/{workspace}/{repo_slug}/issues/exportExport issues
GET/repositories/{workspace}/{repo_slug}/issues/export/{repo_name}-issues-{task_id}.zipCheck issue export status
GET/repositories/{workspace}/{repo_slug}/issues/importCheck issue import status
POST/repositories/{workspace}/{repo_slug}/issues/importImport issues

Showing the first 100 of 303 endpoints; the full list is in the documentation.

Questions

Does the Bitbucket API API need an API key?

Yes. The Bitbucket API API uses API key authentication; the documentation explains how to get credentials.

Does the Bitbucket API API support HTTPS?

Yes, the Bitbucket API API is served over HTTPS.

How many endpoints does the Bitbucket API API have?

Its OpenAPI description lists 303 endpoints in version 2.0. The first 100 are shown on this page.

What are alternatives to the Bitbucket API API?

Other Development APIs include Cloudflare, Azure DevOps, IPify, App Store Connect API, StackExchange.

Compare alternatives →

Listed from APIs.guru (CC0).