GraphQL is a query language developed by Facebook as an alternative to REST APIs. It allows clients to define the structure of the data required, and exactly the data is returned from the server. Queries in GraphQL are typed and the type system ensures the client receives the expected data. Mutations in GraphQL are used to create or update data.