# Сведения API GraphQL

GitHub API GraphQL предлагает гибкость и возможность точно определить нужные вам данные.

## Обзор

Ниже приведены быстрые ссылки, перейдя по которым, вы можете приступить к работе с API GraphQL:

* [Аутентификация](/ru/enterprise-server@3.22/graphql/guides/forming-calls-with-graphql#authenticating-with-graphql)
* [Корневая конечная точка](/ru/enterprise-server@3.22/graphql/guides/forming-calls-with-graphql#the-graphql-endpoint)
* [Интроспекция схемы](/ru/enterprise-server@3.22/graphql/guides/introduction-to-graphql#discovering-the-graphql-api)
* [Пределы скорости](/ru/enterprise-server@3.22/graphql/overview/rate-limits-and-query-limits-for-the-graphql-api)
* [Переход с REST](/ru/enterprise-server@3.22/graphql/guides/migrating-from-rest-to-graphql)

Для получения дополнительной информации об GitHubAPI с (AUTOTITLE) см. [Сравнение REST API GitHub и GraphQL API](/ru/enterprise-server@3.22/rest/about-the-rest-api/comparing-githubs-rest-api-and-graphql-api).

## Сведения о GraphQL

Язык запросов данных [GraphQL](https://graphql.org/):

* **[Спецификация](https://spec.graphql.org/June2018/).** Спецификация определяет валидность [schema](/ru/enterprise-server@3.22/graphql/guides/introduction-to-graphql#schema) на сервере API. Схема определяет допустимость вызовов клиентов.

* **[Строго типизированный](#about-the-graphql-schema-reference).** Схема определяет систему типов API и все отношения объектов.

* **[Интроспективный](/ru/enterprise-server@3.22/graphql/guides/introduction-to-graphql#discovering-the-graphql-api).** Клиент может запросить схему для получения сведений о схеме.

* **[иерархически](/ru/enterprise-server@3.22/graphql/guides/forming-calls-with-graphql).** Фигура вызова GraphQL отражает фигуру возвращаемых данных JSON. [вложенные поля](/ru/enterprise-server@3.22/graphql/guides/migrating-from-rest-to-graphql#example-nesting) позволяют делать запросы и получать только указанные данные в одном круговом маршруте.

* **Слой приложения.** GraphQL — это не модель storage или язык запросов к базе данных.
  *граф* относится к структурам графов, определённым в схеме, где [узлы](/ru/enterprise-server@3.22/graphql/guides/introduction-to-graphql#node) определяют объекты, а [рёбра](/ru/enterprise-server@3.22/graphql/guides/introduction-to-graphql#edge) определяют отношения между объектами. API обходит и возвращает данные приложения на основе определений схемы, независимо от способа хранения данных.

## Почему GitHub использует GraphQL

GitHub выбрал GraphQL, потому что он предлагает нашим интеграторам значительно больше гибкости. Возможность точно определить нужные данные—и *только* данные, которые вам нужны—, является значительным преимуществом по сравнению с традиционными конечными точками REST API. GraphQL позволяет заменить несколько запросов REST с помощью *одного вызова* для получения указанных данных.

Для получения дополнительной информации о том, почему GitHub инвестировали в GraphQL, смотрите оригинальный блог<<c0>анонс/c0>.

## Сведения о ссылке на схему GraphQL

Документы в боковой панели генерируются из GitHub[схемы](/ru/enterprise-server@3.22/graphql/guides/introduction-to-graphql#discovering-the-graphql-api) GraphQL. Все вызовы проверяются и выполняются согласно схеме. Используйте эти документы, чтобы узнать, какие данные можно вызвать:

* Разрешённые операции: запросы и мутации.

* Типы, определённые схемой: скаляры, объекты, enums, интерфейсы, объединения и входные объекты.

Для другой информации, например, аутентификации и ограничения скорости, посмотрите [guides](/ru/enterprise-server@3.22/graphql/guides).

## Запрос поддержки

Для вопросов, отчетов об ошибках и обсуждениях о GitHub Apps, OAuth appsи разработке API, изучите [Категория API и веб-перехватчиков в обсуждениях сообщества GitHub](https://github.com/orgs/community/discussions/categories/api-and-webhooks). Обсуждения модерируются и поддерживаются сотрудниками GitHub и отвечают сообществу GitHub.

В [службу поддержки GitHub](https://support.github.com/) можно обратиться напрямую через форму связи, чтобы получить:

* Гарантированный ответ от персонала GitHub
* Запросы на поддержку, связанные с конфиденциальными данными или частными проблемами
* Запросы функций
* Отзывы о продуктах GitHub

Если вы наблюдаете неожиданные сбои, вы можете использовать [githubstatus.com](https://www.githubstatus.com/) или [GitHub API статуса](https://www.githubstatus.com/api) для проверки инцидентов, влияющих на API.