GraphQL es un lenguaje de consultas (creado por Facebook en 2012) que permite definir de una forma sencilla e independientes de la tecnología los datos que queremos que nos devuelva el servidor:

Por ejemplo:

Que devolvería:

Podéis ver que la consulta se hace de forma diferente a cómo se consulta en las APIS REST.

Por ejemplo esta consulta GraphQL:

en un API REST tendría que haber hecho algo como GET /users/1 y GET /users/1/friends o bien GET /users/1?include=friends.name

GraphQL es una especificación y no una implementación para un lenguaje, además a nivel de transporte también es independiente pudiendo funcionar sobre HTTP, REST, MQTT,…