API Reference Materials

Adobe Experience Manager (AEM) provides many APIs for developing applications and extending AEM. AEM is built on top of a number of open-source technologies, which can also be leveraged.

AEM Core APIs

The following APIs are core to AEM.

API Description
Adobe Experience Manager as a Cloud Service Product abstractions such as pages, assets, workflows, etc.
Granite UI Adobe’s Open Web stack, providing various essential components (Note that the 6.5 Granite materials apply to AEMaaCS)
Coral UI Adobe’s visual style for cloud UIs, designed to provide consistency in the user experience

Additional Frameworks

AEM relies on a number of additional open-source APIs.

API Description
Apache Sling Web framework that uses a Java Content Repository (JCR) to store and manage content
Apache Jackrabbit Oak Implementation a scalable and high-performance hierarchical Java Content Repository (JCR) for use as the foundation of modern world-class web sites
Java Content Repository Specification for the JCR Version 2.0
Apache Felix Implementation of the Open Services Gateway initiative (OSGi) framework and service platform

API Preference Guidelines

AEM is built on the following four primary Java API sets in descending order of preference.

Priority API Description
1 Adobe Experience Manager as a Cloud Service Product abstractions such as pages, assets, workflows, etc.
2 Apache Sling REST and resource-based abstractions such as resources, value maps, and HTTP requests.
3 Apache Jackrabbit Oak Data and content abstractions such as node, properties and sessions.
4 Apache Felix OSGi application container abstractions such as services and (OSGi) components.

If an API is provided by AEM, prefer it over Sling, JCR, and OSGi. If AEM doesn’t provide an API, then prefer Sling over JCR and OSGi.

TIP

For details of these guidelines, see the document Understand Java API Best Practices.

AEM Delivery and Content Management Services and APIs

AEM offers customizable components and content delivery options.

Feature Description
The Core Components Standardized Web Content Management (WCM) components for AEM to speed up development time and reduce maintenance cost of your websites
JSON Exporter Deliver the contents of any AEM page in JSON data model format
Enabling JSON Export for a Component Generate JSON export of component content based on a modeler framework
Assets API Allows for create-read-update-delete (CRUD) operations on assets, including binary, metadata, renditions, and comments. See AEM Assets HTTP API
Content Fragments HTTP API Access Content Fragment content directly over the HTTP API via CRUD operations
Content Fragment GraphQL API Enable the efficient delivery of Content Fragments to JavaScript clients in headless CMS implementations
Content Fragments Assets HTTP API Eexact format of supported HTTP asset requests

SPA-Specific APIs

AEM Single-Page Application (SPA) Editor SDK framework provides specific JavaScript API references.

API Description
Component Mapping Provides a way for the Single Page Application to map front-end components to Adobe Experience Manager resource types (AEM Components)
Page Model Manager An interpreter between Adobe Experience Manager Editor and the Adobe Experience Manager Single Page Application (SPA) Editor
React Editable Components Provides the React components and integration layer to get you started with the Adobe Experience Manager Site Editor
Angular Editable Components Provides the Angular components and integration layer to get you started with the Adobe Experience Manager Site Editor
TIP

Check out the SPA Introduction and Walkthrough for more information on single-page applications.

On this page