Graphql
Introduction
This is a query language for your API.
Example
A example Query and Response provides an example.
It is used by
- PsyPal
- Github
Core Concepts
Data Types
- Int signed 32-bit integer
- Float signed double-precision floating-point value
- String utf8 character sequence
- Boolean true or false values
- ID Unique identifier, Used to re-fetch an object or a the key for a cache
Structure Types
type Author {
id: ID,
firstName: String
lastName: String
rating: Float
numOfCourses: Int
}
Enums
enum language {
ENGLISH
SPANISH
FRENCH
}
Query and Mutation Types
Every GraphQL service has a query type. It may or may not have a mutation type. Tyey act as an entry point into the schema.
schema {
query: Query
mutation: Mutation
}
Examples
type Query {
author_details: [Author]
}
type Mutation {
addAuthor: [firstName: String, lastName: String_):Author
}
Allowing Null values
Adding a bang to the fields means the field is allowed to be nullable.
type Author {
id: ID!,
firstName: String
lastName: String
rating: Float
numOfCourses: Int
}