Expand my Community achievements bar.

Submissions are now open for the 2026 Adobe Experience Maker Awards.
SOLVED

GraphQL: QueryEndpointProvider und QueryEndpoint

Avatar

Level 3

I want to implement QueryEndpointProvider from the com.adobe.aem.graphql.api package.
Unfortunately, this com.adobe.aem.graphql.api package is not available, not even in the uber-jar.
Why?

1 Accepted Solution

Avatar

Correct answer by
Level 10

The com.adobe.aem.graphql.api package and its QueryEndpointProvider interface are not part of AEM's public APIs and are unavailable in the UberJar or public SDKs. 

I don't know what you're trying to achieve, but please take a look at this post: https://experienceleaguecommunities.adobe.com/t5/adobe-experience-manager/cf-graphql-issues/m-p/6063... 

View solution in original post

3 Replies

Avatar

Correct answer by
Level 10

The com.adobe.aem.graphql.api package and its QueryEndpointProvider interface are not part of AEM's public APIs and are unavailable in the UberJar or public SDKs. 

I don't know what you're trying to achieve, but please take a look at this post: https://experienceleaguecommunities.adobe.com/t5/adobe-experience-manager/cf-graphql-issues/m-p/6063... 

Avatar

Community Advisor

Hi @olegd52630483,

What @giuseppebag is right!

  1. The com.adobe.aem.graphql.api package is part of AEM as a Cloud Service (AEMaaCS) internal APIs. Adobe does not publicly expose all GraphQL-related APIs, especially low-level ones like QueryEndpointProvider, in the Uber JAR.
  2. These GraphQL APIs are designed for AEMaaCS only, where Adobe manages the runtime. Therefore:
  • They are not part of public APIs for on-premise or AMS customers.

  • They are not included in Uber-JAR even for SDK-based local development.

Only selected APIs are exported and marked as public/stable for use in custom code. Many internal services and interfaces, especially those involving GraphQL endpoints and indexing, are:

  • OSGi-only internal services

  • Not meant for direct consumption

  • Meant to be used via GraphQL schemas/models/components, not Java code


If You're on AEMaaCS and need GraphQL:
  1. Use GraphQL APIs through HTTP endpoints exposed by AEM:

    • /content/_cq_graphql/endpoint.graphql.json

    • Use persisted queries or POST queries to that endpoint.

  2. Use Model-based GraphQL via Sling Models and @GraphQLField annotations (available in core.wcm.components.models).

  3. For advanced use, write a custom GraphQL servlet rather than trying to implement QueryEndpointProvider.

Hope that helps!


Santosh Sai

AEM BlogsLinkedIn


Avatar

Administrator

@olegd52630483 

Just checking in — were you able to resolve your issue?
We’d love to hear how things worked out. If the suggestions above helped, marking a response as correct can guide others with similar questions. And if you found another solution, feel free to share it — your insights could really benefit the community. Thanks again for being part of the conversation!



Kautuk Sahni