GraphQL: QueryEndpointProvider und QueryEndpoint | Community
Skip to main content
olegd52630483
Level 2
May 28, 2025
Solved

GraphQL: QueryEndpointProvider und QueryEndpoint

  • May 28, 2025
  • 3 replies
  • 383 views

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?

Best answer by giuseppebaglio

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/606378 

3 replies

giuseppebaglio
giuseppebaglioAccepted solution
Level 10
May 28, 2025

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/606378 

SantoshSai
Community Advisor
Community Advisor
May 28, 2025

Hi @olegd52630483,

What @giuseppebaglio 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
kautuk_sahni
Community Manager
Community Manager
July 1, 2025

@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