跳至主要内容

关于 GraphQL API

GitHub GraphQL API 提供灵活性和精确定义要获取数据的的能力。

概述

以下是一些快速链接,可帮助您快速上手使用 GraphQL API

有关 GitHub API 的更多信息,请参阅 "比较 GitHub 的 REST API 和 GraphQL API."

关于 GraphQL

The GraphQL 数据查询语言是

  • 一个 规范 该规范确定 API 服务器上 架构 的有效性。架构确定客户端调用的有效性。

  • 强类型 架构定义 API 的类型系统和所有对象关系。

  • 内省 客户端可以查询架构以获取有关架构的详细信息。

  • 分层 GraphQL 调用的形状反映了其返回的 JSON 数据的形状。 嵌套字段 允许您在一次往返中查询和接收您指定的唯一数据。

  • 应用程序层。 GraphQL 不是存储模型或数据库查询语言。 指的是架构中定义的图结构,其中 节点 定义对象, 定义对象之间的关系。API 根据架构定义遍历和返回应用程序数据,与数据存储方式无关。

GitHub 使用 GraphQL 的原因

GitHub 选择 GraphQL 是因为它为我们的集成商提供了更大的灵活性。能够精确定义您想要的数据——并且 *只* 获取您想要的数据——是相对于传统 REST API 端点的强大优势。GraphQL 允许您用 *单个调用* 来替换多个 REST 请求以获取您指定的数据。

有关 GitHub 投资 GraphQL 的更多详细信息,请参阅原始的 公告博客文章

关于 GraphQL 架构参考

侧边栏中的文档是从 GitHub GraphQL 架构 生成的。所有调用都将根据架构进行验证和执行。使用这些文档来了解您可以调用哪些数据。

您可以通过 Explorer 文档侧边栏 访问相同的内容。请注意,您可能需要同时依赖文档和架构验证才能成功调用 GraphQL API。

有关其他信息,例如身份验证和速率限制详细信息,请查看 指南

请求支持

对于有关 GitHub Apps、OAuth Apps 和 API 开发的问题、错误报告和讨论,请探索 GitHub 社区讨论中的 API 和 Webhook 类别。这些讨论由 GitHub 员工审核和维护,并由 GitHub 社区回答。

考虑使用联系表格直接联系 GitHub 支持,以

  • 获得 GitHub 员工的保证回复
  • 涉及敏感数据或私人问题的支持请求
  • 功能请求
  • 有关 GitHub 产品的反馈

如果您观察到意外故障,您可以使用 githubstatus.comGitHub 状态 API 检查影响 API 的事件。