Skip to main content

API wrapper for Bitbucket written in Python

Project description

bitbucket-python is an API wrapper for Bitbucket written in Python

Installing

pip install bitbucket-python

Usage

from bitbucket.client import Client
from bitbucket import AsyncClient

client = Client('EMAIL', 'PASSWORD')

# Or to specify owner URL to find repo own by other user
client = Client('EMAIL', 'PASSWORD', 'Owner')

# Async client
async with AsyncClient('EMAIL', 'PASSWORD') as client:
    ...

Methods

Get user information

response = client.get_user()

Get account privileges for repositories

response = client.get_privileges()

Get repositories

response = client.get_repositories()

Get repository

response = client.get_repository('REPOSITORY_SLUG')

Post repository

response = client.create_repository(data, params, repositoryName, teamName)

Get branches for repository

response = client.get_repository_branches('REPOSITORY_SLUG')

Get tags for repository

response = client.get_repository_tags('REPOSITORY_SLUG')

Get commits for a repository

response = client.get_repository_commits('REPOSITORY_SLUG')

Get components for repository

response = client.get_repository_components('REPOSITORY_SLUG')

Get milestones for repository

response = client.get_repository_milestones('REPOSITORY_SLUG')

Get versions for repository

response = client.get_repository_versions('REPOSITORY_SLUG')

Create issue

data = {..DATA..}
response = client.create_issue('REPOSITORY_SLUG', data)

Get all issues

response = client.get_issues('REPOSITORY_SLUG')

Get issue

response = client.get_issue('REPOSITORY_SLUG', 'ISSUE_ID')

Delete issue

response = client.delete_issue('REPOSITORY_SLUG', 'ISSUE_ID')

Webhooks

Create webhook

data = {
    "description": "Webhook",
    "url": "http://mywebsite.com",
    "active": True,
    "events": [
        "repo:push",
        "issue:created",
        "issue:updated"
    ]
}
response = client.create_webhook('REPOSITORY_SLUG', data)

Get all webhooks

response = client.get_webhooks('REPOSITORY_SLUG')

Get webhook

response = client.get_webhook('REPOSITORY_SLUG', 'WEBHOOK_ID')

Delete webhook

response = client.delete_webhook('REPOSITORY_SLUG', 'WEBHOOK_ID')

Helper methods

all_pages

The all_pages method is a helper function that makes it easy to retrieve all items from an API methods that uses pagination (see https://developer.atlassian.com/cloud/bitbucket/rest/intro/#pagination).

client = Client()

items = list(client.all_pages(client.get_repositories))

Note that the all_pages method uses a generator to return the results.

Requirements

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bitbucket_python-0.3.2.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

bitbucket_python-0.3.2-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

Details for the file bitbucket_python-0.3.2.tar.gz.

File metadata

  • Download URL: bitbucket_python-0.3.2.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for bitbucket_python-0.3.2.tar.gz
Algorithm Hash digest
SHA256 0da43cd63586165e3f7f8fb72be280c488ed37ede43f9f3d3e6f417abe99dfb0
MD5 fef49646702afa5c1181c3bbe513d391
BLAKE2b-256 51f64734cb8171d7676ed13eb593a939baa380189ef21e6b7cb2d6698ace2642

See more details on using hashes here.

File details

Details for the file bitbucket_python-0.3.2-py3-none-any.whl.

File metadata

File hashes

Hashes for bitbucket_python-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 337335db038bb8223d44b12af10da6f83baf9add721b33a4b2825a7e17ba9d32
MD5 288985d5f959d63f3c833be12d9407ae
BLAKE2b-256 fefe7eb40603adf139420f94884137301937299ecc7c6a031ff17478409fdbd5

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page