GraphQL Schema (SDL)
A GraphQL Schema Definition Language (SDL) file with queries, a mutation, object/input types, and an enum — for testing GraphQL schema parsers, linters, and code generators.
"""A tiny example GraphQL schema (SDL) for testing schema parsers and codegen."""
type Query {
"A page of users."
users(page: Int = 1): UserPage!
"A single user by id."
user(id: ID!): User
}
type Mutation {
createUser(input: NewUser!): User!
}
type User {
id: ID!
name: String!
email: String!
role: Role!
}
input NewUser {
name: String!
email: String!
}
enum Role {
ADMIN
MEMBER
GUEST
}
type UserPage {
page: Int!
total: Int!
items: [User!]!
}
Specifications
- Format
- GraphQL SDL
- Types
- Query, Mutation, User, UserPage
- Enum
- Role
What is a .graphql file?
GraphQL files contain schema definitions or operations written in the GraphQL Schema Definition Language, describing types, fields, queries, and mutations. The schema defines a strongly typed API contract that clients query for exactly the data they need. It is a common alternative to REST for API design.
How to use this file
Use an example GraphQL file to test schema parsers, SDL validation, code generators, and tooling that builds clients or documentation from a type definition.
Related files
- jsonAPI Error — 404 (RFC 9457 problem+json)A 404 error body in RFC 9457 (problem+json) form, with type, title, status, detail, and instance — for testing structured error handling and problem-detail parsers.
- jsonAPI Error — 422 Validation (JSON)A 422 validation-error response with a machine-readable list of field errors — for testing form-validation surfacing and error mapping.
- jsonAPI Response — Users Page 1 (JSON)Page 1 of a paginated JSON API response (users), with page metadata and a `hasMore` flag. Paired with page 2 for testing pagination and infinite-scroll logic.
- jsonAPI Response — Users Page 2 (JSON)Page 2 (the final page) of a paginated JSON API response. Paired with page 1 for testing pagination, `hasMore` handling, and list merging.
- jsonOpenAPI 3.1 Spec (JSON)A small but complete OpenAPI 3.1 description (two paths, three schemas) in JSON — for testing API tooling, mock servers, client codegen, and docs generators.
- yamlOpenAPI 3.1 Spec (YAML)The same OpenAPI 3.1 description in YAML — the format most API definitions ship in. Paired with the JSON twin for testing YAML↔JSON conversion and spec parsers.
Generated by generation/data_dev_fixtures.py. Free for any use, no attribution required — license.