Graphquery vs GraphQL

Graphquery via the REST API and GraphQL appear to offer the same solution in terms of over/under fetching and handling complex content relationships; which is the recommended approach and what are the limitations of each?

Hi David,

Welcome to the community!

The GraphQuery API option is used with the REST API and lets you make your queries more specific. You can do selective fetching (to retrieve only specific fields) and deep fetching (to retrieve content from linked documents).

GraphQL however is an alternative to the REST API.


If I were to start a new project, would prismic recommended one over the other? Apart from the syntactic differences the seem to provide the same level of complex/deep fetching. Are they both going to be equally supported moving forward? The docs can be great at telling you what they can do, but its not always clear what they cannot do, i.e. does one have any limitations over the other?

To provide some context, I have used the REST API so far; for this reason moving to include graphquery seems like a good fit, but I dont want to invest time and energy in this direction if it turns out that GraphQL is a better alternative.

Again, they're not competing technologies in that sense. GraphQuery is meant to be used with the REST API, so you're best using this to do your deep fetching since you're already using the REST API.