--- title: "Extensibility and integration layers" slug: "extensibility" updated: 2026-05-06T05:59:23Z published: 2026-05-06T05:59:23Z canonical: "docs.grassfish.com/extensibility" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.grassfish.com/llms.txt > Use this file to discover all available pages before exploring further. # Extensibility and integration layers The Grassfish platform is deliberately designed so that the core remains stable and customer-specific logic is added via extension points. ****UDC**** The Universal Data Importer (UDC) is used to interpret and distribute data within the system. It enables the import of data from external sources, such as a product database or weather forecast information. The data sources are managed centrally in the content management system (CMS), and the imported data is embedded in spots. UDC is a plugin-based framework for data imports and system integrations: - **Flexible data sources:** UDC supports connections to REST APIs, SOAP services, and file-based sources (CSV, JSON, XML, etc.). - **Mapping and transformation:** Incoming data can be mapped and transformed to match the internal data model. - **Extensible via plugins:** New integrations are added as UDC plugins, no changes to the core application are required. ![UDC integration](https://cdn.document360.io/e2b87f73-d9f5-43cb-8182-2641762664fd/Images/Documentation/UDC.png?sv=2026-02-06&spr=https&st=2026-11-06T19%3A45%3A08Z&se=2026-11-06T20%3A45%3A08Z&sr=c&sp=r&sig=zF8kCzpX33y7j2NqMlgLrzwJKP2YzE97H3F%2FPFfuq2Y%3D) ****Reporting Gateway**** The [Reporting Gateway](/grassfish/docs/grassfish-backend-server-services#backend-services) provides a modular, plugin-driven architecture for reporting and analysis. - **Plugin-based reports:** Reports, exports, and specialized analytics are implemented as individual plugins. - **Customizable without core changes:** Customer-specific reporting requirements can be fulfilled without modifying the core platform or affecting system stability. ****Spots and dynamic content**** Spots (HTML-based content blocks) can dynamically load external data at runtime. - **Runtime data loading:** Content can fetch data via HTTP(S) during playback. - **Flexible authentication:** API keys, tokens, OAuth2, and other authentication methods can be configured per location or deployment. - **Dynamic content:** Enables data-driven, context-aware content without requiring changes to the core CMS. ****Player add-ons and standalone services**** The player supports extensibility through add-ons and optional standalone services. - **Player add-ons:** Additional functions or protocols (e.g., sensors, hardware integrations) can be implemented as modular add-ons. - **Standalone cluster services:** For complex or mission-critical integrations, dedicated web services can run within the cluster, acting as adapters or proxy services. Universal Data Controller, a system component that manages the import of external data into the IXM system.