このバージョンの GitHub Enterprise はこの日付をもって終了となりました: 2021-06-09. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 パフォーマンスの向上、セキュリティの改善、新機能のためには、最新バージョンのGitHub Enterpriseにアップグレードしてください。 アップグレードに関する支援については、GitHub Enterprise supportに連絡してください。

GraphQL APIについて

GitHubのGraphQL APIは、柔軟性と、フェッチしたいデータを正確に定義できる機能を提供します。

概要

以下は、GraphQL API v4を使い始めるためのクイックリンクです。

GraphQLについて

GraphQLデータクエリ言語は、

  • 仕様です。この仕様は、APIサーバー上のスキーマの正当性を決定します。 スキーマは、クライアントの呼び出しの正当性を決定します。

  • 強く型付けされています。スキーマは、APIの型システムとすべてのオブジェクトの関係を定義します。

  • イントロスペクティブです。クライアントは、スキーマに関する詳細を求めるためにスキーマに対してクエリを行えます。

  • 階層型です。GraphQLの呼び出しの形は、返されるJSONデータの型を反映します。 入れ子になったフィールドによって、1回のラウンドトリップで指定したデータだけをクエリで返してもらうことができます。

  • アプリケーション層です。GraphQLはストレージモデルやデータベースクエリ言語ではありません。 グラフはスキーマで定義されたグラフ構造を指し、ノードはオブジェクトを、エッジはオブジェクト間の関係を定義します。 APIは、データがどのように保存されているかに関係なく、スキーマ定義に従ってアプリケーションデータをトラバースして返します。

GitHubがGraphQLを使う理由

GitHubは、インテグレーターにとって大きな柔軟性を提供してくれることから、API v4にGraphQLを選択しました。 ほしいデータだけを正確に定義できるのは、REST API v3エンドポイントよりも強力な利点です。 GraphQLを使えば、指定したデータをフェッチするための複数のRESTのリクエストを単一の呼び出しで置き換えられます。

GitHubがGraphQLに移行した理由の詳細については、オリジナルのアナウンスのblogポストを参照してください。

GraphQLのスキーマ参照について

サイドバー内のドキュメントは、GitHubのGraphQLスキーマから生成されます。 すべての呼び出しは、このスキーマに対して検証され、実行されます。 以下のドキュメントを使って、呼び出せるデータを見つけてください。

同じ内容には、Explorer Docsサイドバーからもアクセスできます。 GraphQL APIの呼び出しをうまく行うためには、ドキュメントとスキーマ検証の両方に依存しなければならないことがあります。

認証やレート制限の詳細など その他の情報についてはガイドを参照してください。

サポートのリクエスト

GitHub App、OAuth App、API開発に関する疑問、バグレポート、議論については、GitHub API Development and Support Forumを調べてみてください。 このフォーラムはGitHubのスタッフによって進行及び管理されていますが、フォーラムにポストされた疑問に対してGitHubのスタッフからの返答があることは保証されていません。

以下の場合は、連絡フォームを使ってGitHub Supportに直接連絡することを検討してください。

  • GitHub Enterprise Serverのスタッフからの反応を確実に得たい場合
  • センシティブなデータやプライベートな懸念事項に関わるサポートリクエスト
  • 機能リクエスト
  • GitHub Enterprise Serverの製品に関するフィードバック

問題がまだ解決していませんか?

GitHubコミュニティで質問するサポートへの連絡