Hello All,
I am new to GraphQL features of AEM. Till now, not used GraphQL API in actual AEM application.
So, could you please pass your real AEM application use cases for usage of GraphQL API feature?
Wanted to know about : 1: Business use cases
2: Content Fragment model, CF creation
3: Any Java implementation is required?
4: Run mode specific config changes, Dispatcher setup to allow GraphQL api if any?
Much appreciate your effort.
Solved! Go to Solution.
Views
Replies
Total Likes
@Mahesh_Gunaje Please check the following links for each of your questions
1. Business use case. https://sourcedcode.com/blog/aem/what-are-aem-content-fragments-its-use-cases
2.Content Fragment model, CF creation. - this is straight forward from Adobe docs, https://experienceleague.adobe.com/docs/experience-manager-cloud-service/content/headless/journeys/d...
3.Use AEM Content Services and Proxy API pages (Video #2) when the primary use case is deliver Content Fragments for consumption (Read-only) by a 3rd party channel. The Content Services framework provides more flexibility and options as to what data gets exposed. Developers can also extend the Content Services framework to augment and/or enrich the data.
4. No runmode config needed for this. Regarding graph QL, its well documented here
Also see needed dispatcher changes discussed
@Mahesh_Gunaje Please check the following links for each of your questions
1. Business use case. https://sourcedcode.com/blog/aem/what-are-aem-content-fragments-its-use-cases
2.Content Fragment model, CF creation. - this is straight forward from Adobe docs, https://experienceleague.adobe.com/docs/experience-manager-cloud-service/content/headless/journeys/d...
3.Use AEM Content Services and Proxy API pages (Video #2) when the primary use case is deliver Content Fragments for consumption (Read-only) by a 3rd party channel. The Content Services framework provides more flexibility and options as to what data gets exposed. Developers can also extend the Content Services framework to augment and/or enrich the data.
4. No runmode config needed for this. Regarding graph QL, its well documented here
Also see needed dispatcher changes discussed
Thanks a lot @Saravanan_Dharmaraj for your effort and details. Much appreciated. I think rather than just reading any new features, need to explore the business use cases. Your details helps me a lot.
Thanks
Dispatcher changes mentioned here in Adobe docs as well.
Glad it gave an idea for you to start.
Hello @Mahesh_Gunaje ,
Some of the real world use cases of GraphQL are but not limited to the following.
Imagine a standalone Spring boot application (outside AEM) needs to display content. The content resides in AEM. One could export an AEM page in JSON format via a REST call, however there are many fields in the JSON that the Spring Boot app does not use. Using GraphQL on the other hand does NOT have the extra unwanted data. Just the "exact" fields that the application needs for that request. This makes both the consuming apps and AEM performant.
The reason for this is, GraphQL is a query language and so the external app queries for the information it needs and gets "exactly" that, nothing more nothing less.
The queries are cacheable on AEM so that the same query has better response times for repeated requests.
Now, imagine an eCommerce app needing information, SAP app system needing content, Salesforce app needing content, or any other similar app that needs content hosted on AEM - GraphQL will be the solution to get up and running in no time.
AEM makes Content Fragments available via GraphQL. You could install the WKND project to experiment with CF Models and GraphQL setup: https://experienceleague.adobe.com/docs/experience-manager-learn/getting-started-wknd-tutorial-devel...
With that concept in mind, the following these documents would be a good starting point,
Hope that helps!
thanks,
Preetpal
Thanks @Preetpal_Bindra for your effort to write detailed explanation. Yes, you are right. Usually organization will use "x" no of applications and these applications will get(or rely on) a single source of data.
Views
Likes
Replies