Hello @esmith & @freddie.hands,
Our GraphQL API is today relying on GET, so when you fire a request, you're limited by GET constraints. For example, limitations in terms of character. We chose to go with GET for different reasons, mainly caching.
Now, this doesn't solve your issue, and to address them I need to differentiate the two cases.
1 - Eric smith issue
Like @esmith wrote, I'm aware of his use case that is mainly related to the preview in gatsby. From my understanding, this is not something that is blocking the development of the project but only the preview for some pages.
For this problem, We learned a couple of weeks ago that gatsby is deprecating the use of GraphQL API to source data. This approach that they call schema stitching will not be the way to go in the future for them and will prevent your project from having all gatsby new features. It's already the case with Incremental builds that are not supported by the gatsby-source-prismic-graphql plugin.
We will have to provide a transition path to deprecate the usage of this plugin in the future because of this change. This change of plugin will prevent the preview from working in the future. The preview is relying on the fact that we use a graphQL API.
We are working at the moment with Gatsby to see if we will be able to provide a future proof way to query the content through a Rest API and have the preview working at the same time. We will let you know how it goes in the future.
There is still some uncertainty, but it seems clear that this issue will not be solved, and I would recommend that you transition to another gatsby that is not supporting prismic preview fully at the moment. We are preparing a global communication about this topic for the next couple of days.
I would recommend having a look at this plugin GitHub - prismicio/prismic-gatsby: Gatsby plugins for building websites using Prismic that is fitting the guidelines that Gatsby is pushing for. This might be the base of our discussion to support previews in the future.
So my recommendation will be to start the transition to this plugin for now and to follow our discussion about previews.
2 - Freddie Hands issue
I would be interested in having a view at your query if we can do anything to optimize that.
At the moment, there is nothing that we can do to allow more character in the query. That's why i would be interested to see if we can help you optimize that.
For now, I have tracked your remark as a feature request.
At the moment, the internal discussion that we are having that we will have to either accept some predefined fragments to fetch allSlices (this is a solution that we have discussed in the past with @esmith) or to switch our API to accept POST request.
None of these topics have currently been decided in the team and but are scheduled to be worked on in the next weeks.
I hope that helps,