Skip to main content

Сведения API GraphQL

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

Обзор

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

  •         [Аутентификация](/graphql/guides/forming-calls-with-graphql#authenticating-with-graphql)
    
  •         [Корневая конечная точка](/graphql/guides/forming-calls-with-graphql#the-graphql-endpoint)
    
  •         [Интроспекция схемы](/graphql/guides/introduction-to-graphql#discovering-the-graphql-api)
    
  •         [Пределы скорости](/graphql/overview/resource-limitations)
    
  •         [Переход с REST](/graphql/guides/migrating-from-rest-to-graphql)
    

Дополнительные сведения о см. в разделе Сравнение REST API GitHub и GraphQL API.

Сведения о GraphQL

Язык запросов данных GraphQL:

  •         **
            [Спецификация](https://spec.graphql.org/June2018/).** Спецификация определяет валидность [schema](/graphql/guides/introduction-to-graphql#schema) на сервере API. Схема определяет допустимость вызовов клиентов.
    
  •         **
            [Строго типизированный](#about-the-graphql-schema-reference).** Схема определяет систему типов API и все отношения объектов.
    
  •         **
            [Интроспективный](/graphql/guides/introduction-to-graphql#discovering-the-graphql-api).** Клиент может запросить схему для получения сведений о схеме.
    
  •         **
            [иерархически](/graphql/guides/forming-calls-with-graphql).** Фигура вызова GraphQL отражает фигуру возвращаемых данных JSON. 
            [вложенные поля](/graphql/guides/migrating-from-rest-to-graphql#example-nesting) позволяют делать запросы и получать только указанные данные в одном круговом маршруте.
    
  •         **Слой приложения.** GraphQL — это не модель storage или язык запросов к базе данных. 
            _граф_ относится к структурам графов, определённым в схеме, где [узлы](/graphql/guides/introduction-to-graphql#node) определяют объекты, а [рёбра](/graphql/guides/introduction-to-graphql#edge) определяют отношения между объектами. API обходит и возвращает данные приложения на основе определений схемы, независимо от способа хранения данных.
    

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

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

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

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

Документы в боковой панели генерируются из GitHub GraphQL schema. Все вызовы проверяются и выполняются согласно схеме. Используйте эти документы, чтобы узнать, какие данные можно вызвать:

Для другой информации, например, аутентификации и ограничения скорости, посмотрите guides.

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

Для вопросов, отчетов об ошибках и обсуждениях о GitHub Apps, OAuth appsи разработке API, изучите Категория API и веб-перехватчиков в обсуждениях сообщества GitHub. Обсуждения модерируются и поддерживаются сотрудниками GitHub и отвечают сообществу GitHub.

В службу поддержки GitHub можно обратиться напрямую через форму связи, чтобы получить:

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

При возникновении непредвиденных сбоев можно использовать githubstatus.com или API состояния GitHub для проверки инцидентов, влияющих на API.