GraphQL APIのリファレンス

GraphQL APIで扱える型・フィールド・引数は、スキーマから調べられます。
このページでは、その調べ方を3つ紹介します。

どの方法でも同じスキーマを見ることになるので、手元でやりやすいものを選んでください。

GraphQLクライアントで調べる

GraphiQLやInsomniaなどのGraphQLクライアントは、接続先のスキーマを読み込んでドキュメントとして表示します。
クエリを書きながら候補を補完してくれるため、普段づかいにはこの方法が一番手軽です。

クライアントの設定はGraphQL APIのセットアップを参照してください。

スキーマ定義ファイルを読む

AnnictのソースコードにはGraphQLのスキーマ定義ファイルが含まれています。
型やフィールドを一度にまとめて見たいときは、このファイルを読むのが早いです。

rails/app/graphql/beta/schema.graphql

イントロスペクションで調べる

GraphQL APIはイントロスペクションに対応しています。
特定の型のフィールドだけを知りたいときや、スクリプトからスキーマを取得したいときに使えます。

次の例は Work 型が持つフィールドの一覧を取得します。

$ curl https://api.annict.com/graphql \
-H "Authorization: Bearer <アクセストークン>" \
-X POST \
-d 'query={ __type(name: "Work") { fields { name description } } }'

__schema を使うと、クエリとミューテーションの一覧を取得できます。

query {
  __schema {
    queryType {
      fields {
        name
      }
    }
    mutationType {
      fields {
        name
      }
    }
  }
}

関連する項目