This is a Python (2 and 3) library to access the Github API v3. With it, you can manage Github resources (repositories, user profiles, organizations, etc.) from Python scripts.
It covers almost the full API (see "What's missing" below), and all methods are tested against the real Github site.
Should you have any question, any remark, or if you find a bug, or if there is something you can do with the API but not with PyGithub, please open an issue.
Here is the references documentation.
My current priorities are not compatible with doing a good job maintaining PyGithub, so I'm looking for volunteers to take over. Please see #297.
- Work around the API v3 returning
null
in some paginated responses, thanks erichaase for the bug report
Version 1.25.0 (May 4th, 2014)
- Implement getting repos by id, thanks to tylertreat for the pull request
- Add
Gist.owner
, thanks to dalejung for the pull request
A lot of things including the following URLs, and every new things published by GitHub recently.
/applications/:client_id/tokens/:access_token
(GET)/authorizations/clients/:client_id
(PUT)/feeds
(GET)/meta
(GET)/notifications
(PUT)/notifications/emails
(GET)/notifications/emails
(PATCH)/notifications/global/emails
(GET)/notifications/global/emails
(PUT)/notifications/organization/:org/emails
(GET)/notifications/organization/:org/emails
(PUT)/notifications/settings
(GET)/notifications/settings
(PATCH)/notifications/threads/:id
(PATCH)/notifications/threads/:id/subscription
(DELETE)/notifications/threads/:id/subscription
(GET)/notifications/threads/:id/subscription
(PUT)/repos/:owner/:repo/contents/:path
(DELETE)/repos/:owner/:repo/contents/:path
(PUT)/repos/:owner/:repo/notifications
(GET)/repos/:owner/:repo/notifications
(PUT)/repos/:owner/:repo/releases
(GET)/repos/:owner/:repo/releases
(POST)/repos/:owner/:repo/releases/:id
(DELETE)/repos/:owner/:repo/releases/:id
(GET)/repos/:owner/:repo/releases/:id
(PATCH)/repos/:owner/:repo/releases/:id/assets
(GET)/repos/:owner/:repo/releases/assets/:id
(DELETE)/repos/:owner/:repo/releases/assets/:id
(GET)/repos/:owner/:repo/releases/assets/:id
(PATCH)/repos/:owner/:repo/subscription
(DELETE)/repos/:owner/:repo/subscription
(GET)/repos/:owner/:repo/subscription
(PUT)