关于 OpenAPI
OpenAPI 是用于描述 REST API 接口的规范。它无需访问源代码或额外文档即可描述 API。该规范对人类和机器都可读。欲了解更多信息,请参阅 OpenAPI 规范文档。
关于 GitHub 的 OpenAPI 描述
GitHub 的 REST API OpenAPI 描述已公开。您可以在开源 github/rest-api-description 仓库中找到该描述。
GitHub 同时提供 3.0 和 3.1 版的 OpenAPI 描述。
对于每个描述,都有针对每个产品的版本:GitHub Free / GitHub Pro / GitHub Team(api.github.com)、GitHub Enterprise Cloud(ghec)以及每个版本的 GitHub Enterprise Server(ghes-X.X)。
对于每个产品,如果支持基于日期的版本控制,还会有每个日期版本的描述。欲了解更多信息,请参阅 API 版本。
每个描述都有捆绑(bundled)或去引用(dereferenced)两种格式。捆绑格式使用 $ref 引用在端点之间共享的 OpenAPI 组件。去引用格式则包含完整展开的描述。
使用 GitHub OpenAPI 描述
由于 OpenAPI 描述是机器可读的,您可以用它来完成以下工作,例如
- 生成库以简化对 REST API 的使用
- 验证并测试使用 REST API 的集成
- 使用第三方工具(如 Insomnia 或 Postman)探索并交互 REST API
例如,GitHub 使用 OpenAPI 描述生成 Octokit SDK。GitHub 还使用该 OpenAPI 描述为每个端点生成 REST API 参考文档。