GitHub 提供了丰富的开放 API,允许开发者与 GitHub 的功能进行交互。以下是一些主要的 GitHub API 端点和功能分类:
- Repositories(仓库)
获取仓库信息:
GET /repos/{owner}/{repo}
获取仓库的 README 文件:
GET /repos/{owner}/{repo}/readme
获取仓库的标签:
GET /repos/{owner}/{repo}/tags
获取仓库的分支:
GET /repos/{owner}/{repo}/branches
获取仓库的提交:
GET /repos/{owner}/{repo}/commits
- Issues(问题)
获取仓库的问题列表:
GET /repos/{owner}/{repo}/issues
创建新问题:
POST /repos/{owner}/{repo}/issues
获取特定问题:
GET /repos/{owner}/{repo}/issues/{issue_number}
- Pull Requests(拉取请求)
获取拉取请求列表:
GET /repos/{owner}/{repo}/pulls
创建拉取请求:
POST /repos/{owner}/{repo}/pulls
获取特定拉取请求:
GET /repos/{owner}/{repo}/pulls/{pull_number}
- Commits(提交)
获取特定提交:
GET /repos/{owner}/{repo}/commits/{commit_sha}
获取提交的评论:
GET /repos/{owner}/{repo}/commits/{commit_sha}/comments
- Branches(分支)
获取特定分支信息:
GET /repos/{owner}/{repo}/branches/{branch}
- Releases(发布)
获取发布列表:
GET /repos/{owner}/{repo}/releases
获取特定发布:
GET /repos/{owner}/{repo}/releases/{release_id}
- Users(用户)
获取用户信息:
GET /users/{username}
获取当前用户信息:
GET /user
- Organizations(组织)
获取组织信息:
GET /orgs/{org}
- Gists(片段)
获取用户的 Gists:
GET /users/{username}/gists
创建新的 Gist:
POST /gists
- Search(搜索)
搜索代码:
GET /search/code
搜索仓库:
GET /search/repositories
搜索问题:
GET /search/issues
- Rate Limiting(速率限制)
获取当前速率限制状态:
GET /rate_limit
- Webhooks(网络钩子)
创建仓库的 Webhook:
POST /repos/{owner}/{repo}/hooks
获取仓库的 Webhook 列表:
GET /repos/{owner}/{repo}/hooks
访问 API 的注意事项
身份验证:某些 API 端点需要身份验证,您可以使用 OAuth 令牌或个人访问令牌。
速率限制:GitHub API 对请求频率有一定限制,具体取决于身份验证状态和请求类型。
API 文档:详细的 API 文档可以在 GitHub API Documentation 中找到。
通过这些 API,您可以与 GitHub 的各种功能进行交互,构建丰富的应用程序和工具。