Fetching contributors…
Cannot retrieve contributors at this time
18 lines (13 sloc) 1.48 KB
alias description
An overview of the different components that a Graphcool service consists of.


Every Graphcool service consists of several components that developers can provide:

  • Type definitions (including database model): Defines types for the GraphQL schema. There are two kinds of types:
    • Model types: Determines the types that are to be persisted in the database. These types need to be annotated with the @model-directive and typically represent entities from the application domain. Read more in the Database chapter.
    • Transient types: These types are not persisted in the database. They typically represent input or return types for certain API operations.
  • Permission rules: Define which users are allowed to perform what operations in the API. Read more in the Authorization chapter.
  • Functions: Used to implement data validation and transformation, GraphQL resolvers functions and other business logic. Read more in the Functions chapter.
  • Root tokens: The authentication tokens that provide access to all API operations. Read more in the Authentication chapter.

To manage these components in a coherent way, Graphcool uses a custom configuration format written in YAML. The file can be altered manually or through dedicated commands of the CLI.