github3.py
Python wrapper for the GitHub API(http://developer.github.com/v3)
What it is and what it does
github3.py is a comprehensive wrapper around GitHub's REST API (v3) that lets you interact with GitHub resources—repositories, issues, pull requests, users, organizations, and more—directly from Python code. It abstracts away the HTTP details and provides a Pythonic interface for common GitHub operations, from querying repository metadata to managing issues and pull requests programmatically.
The package depends on requests for HTTP communication, uritemplate for URI templating, python-dateutil for date handling, and PyJWT for authentication. It requires Python 3.7 or later and is classified as production-stable. The library is designed for developers who need to automate GitHub workflows, build tools that interact with GitHub, or integrate GitHub data into other applications.
Use it for:
- Automate repository management tasks like creating issues, updating pull requests, or managing labels and milestones.
- Build continuous integration or deployment tools that query repository status or trigger workflows based on GitHub events.
- Extract repository metadata, contributor information, or commit history for analysis or reporting.
- Programmatically manage organization members, teams, or repository permissions.
- Monitor repositories for changes, new issues, or pull requests and trigger downstream actions.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides a Python wrapper around the GitHub API (v3) to programmatically interact with GitHub repositories, issues, pull requests, users, and other GitHub resources.
Yes. github3.py is a mature, actively maintained wrapper with low install friction, permissive licensing, and no known vulnerabilities. It is well-suited for any Python project that needs to interact with GitHub's REST API. The only caveat is to verify current maintenance status and GitHub API v3 support timeline, as the last release was in 2023.
Install
github3-py on PyPI
pip
pip install github3-pyuv
uv add github3-pypoetry
poetry add github3-pyInstalling github3.py
Before you install
Low install friction with a pure-Python wheel distribution. Actively maintained with recent commits and a stable production-grade codebase; last release was 2023-04-26 and the repository shows ongoing activity.
License in practice
Licensed under the Modified BSD license (permissive), allowing use in both open-source and proprietary projects with minimal restrictions.
Quickstart
pip install github3.py
import github3
gh = github3.login('username', 'password')
repo = gh.repository('owner', 'repo')
issues = repo.issues()
Requires Python 3.7 or later; PyPy3 is also supported.
Verify before relying
- Whether the package is maintained actively beyond the last release date of 2023-04-26, given the 1206 days since that release.
- Current compatibility with GitHub API v3 deprecation timeline and whether v4 (GraphQL) support is planned.
Package facts
| License | not declared (permissive) |
| Python support | supports the current Python release (>=3.7) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 4 — pyjwt, python-dateutil, requests, uritemplate |
| Maintenance | actively maintained — 1,206 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 6,636,264/month — #1,878 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: github3.py-4.0.1-py3-none-any.whl
Tags
More WWW/HTTP packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
h11h11 is a pure-Python HTTP/1.1 protocol…
permissive · top 100 on PyPI
httpxHTTPX is a fully featured HTTP client library…
permissive · top 100 on PyPI
httpcoreA minimal low-level HTTP client library that…
permissive · top 100 on PyPI
aiohttpaiohttp is an async HTTP client and server…
permissive · top 100 on PyPI
PyGithubPyGithub provides Python access to the GitHub…
copyleft · top 1,000 on PyPI
kagglesdkKagglesdk provides Python bindings to Kaggle's…
permissive · top 5,000 on PyPI
jiraA Python library that wraps the Jira REST API,…
permissive · top 1,000 on PyPI
google-api-python-clientProvides Python bindings to call Google's…
permissive · top 1,000 on PyPI
recurlyOfficial Python client library for Recurly's V3…
unclear · top 15,000 on PyPI
mailchimp3A Python client for MailChimp API v3 that wraps…
permissive · top 15,000 on PyPI
uritemplateExpands RFC 6570 URI templates by substituting…
permissive · top 1,000 on PyPI
kumoaiKumo SDK provides a Python interface to…
permissive · top 15,000 on PyPI