Skip to main content

GraphQL APIについて

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

概要

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

GitHub の API について詳しくは、「GitHubの REST API と GraphQL API の比較」を参照してください。

GraphQLについて

          [GraphQL](https://graphql.org/) データ クエリ言語は次のとおりです。
  • 仕様 仕様は、API サーバー上の schema の有効性を決定します。 スキーマは、クライアントの呼び出しの正当性を決定します。

  • 厳密に型指定されます スキーマによって、API の型システムとすべてのオブジェクト リレーションシップが定義されます。

  • Introspective. クライアントはスキーマに対してクエリを実行して、スキーマの詳細を確認できます。

  • Hierarchical. GraphQL 呼び出しの構造は、返される JSON データの構造を反映しています。 Nested フィールドでは、1 回のラウンド トリップで指定したデータのみを照会して受信できます。

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

GitHubが GraphQL を使用している理由

GitHubは、インテグレーターの柔軟性が大幅に向上するため、GraphQL を選択しました。 必要—なデータを正確に定義する機能と、必要_なデータ_のみを—定義できることは、従来の REST API エンドポイントよりも強力な利点です。 GraphQL を使用すると、複数の REST 要求を 1 回の呼び出しに 置き換えて、指定したデータをフェッチできます。

GitHubがGraphQLに投資した理由についての詳細は、元の発表ブログ投稿を参照してください。

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

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

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

サポートのリクエスト

GitHub Apps、OAuth apps、API 開発に関する疑問、バグ レポート、ディスカッションについては、GitHub のコミュニティ ディスカッションの API と Webhook カテゴリ を調べてください。 ディスカッションは、GitHub スタッフによって管理および維持され、GitHub コミュニティによって回答されます。

次の場合は、お問い合わせフォームを使用して GitHub サポートに直接連絡することを検討してください。

  • GitHub のスタッフからの確実なレスポンス
  • 機密データや個人的な心配に関連するサポート リクエスト
  • 機能に関する要求
  • GitHub の製品に関するフィードバック

予期しないエラーが発生した場合は、githubstatus.com または GitHub 状態 API を使用して、API に影響するインシデントをチェックできます。