Uno schema è il contratto tipizzato di un'API GraphQL, scritto in SDL (Schema Definition Language). Dichiara ogni tipo, ogni campo e i root type speciali: Query (lettura), Mutation (scrittura) e, facoltativamente, Subscription (dati in tempo reale). Il server rifiuta qualsiasi richiesta che non corrisponda allo schema.
