Apache Unomi
Apache Unomi is an open-source Customer Data Platform (CDP) and personalization engine (customer data management / marketing technology) designed to collect, store, and process visitor profiles and events in real time for context-aware digital experiences.
- CDP for managing visitor profiles, events, and properties (customer data management).
- Real-time context and segmentation engine for personalizing user experiences across channels (personalization / targeting).
- Rule-based decision engine for triggering actions based on profile properties, events, and conditions (business rules / decisioning).
- Representational State Transfer (REST) and JSON-based APIs for integration with web, mobile, and backend systems (application integration).
- Extensible OSGi-based architecture with plugins for custom data types, conditions, and actions (modular platform).
More About Apache Unomi
Apache Unomi is a CDP (customer data management) and context server developed under The Apache Software Foundation. It focuses on collecting and managing visitor profiles and events across digital channels, then using this data to provide context for personalization and marketing automation systems. The project implements server-side storage of user profiles, session data, and interaction events, supporting compliance with privacy and consent requirements defined by integrating applications.
The platform maintains customer and visitor profiles as structured objects with properties, segments, and metadata (customer data management). Profiles can be updated in real time from incoming events such as page views, clicks, or application interactions (event processing). Apache Unomi includes a rule engine (business rules) that evaluates conditions on events and profiles to trigger actions, such as updating profile attributes, assigning segments, or sending information to external systems. These capabilities enable use cases such as personalization, targeting, and basic marketing automation based on centrally managed profile data.
Apache Unomi exposes REST APIs and JSON-based endpoints (application integration) for ingesting events, querying profiles, managing segments, and administering the system. Client applications, including content management systems, marketing tools, or custom web and mobile apps, integrate with Unomi to send interaction data and retrieve context for personalization decisions. The platform supports tracking through standardized event formats and context-aware queries, enabling applications to obtain profile segments or attributes for dynamic content rendering.
The system is built on an OSGi-based modular architecture (modular platform), which allows extensions through custom bundles. Developers can add new condition types, actions, value extractors, and data structures to adapt the platform to organization-specific data models and business logic. Apache Unomi uses a pluggable persistence layer (data storage) and can be deployed in clustered configurations for scalability and high availability, depending on the selected storage backend and infrastructure setup described in its documentation.
In enterprise environments, Apache Unomi is often positioned as a shared context and profile service that sits between customer-facing applications and downstream analytics or marketing platforms (customer experience architecture). It can act as a central hub for identity resolution across sessions and devices, segment calculation, and real-time context evaluation. By providing a unified profile and event store with rule-based actions, Apache Unomi supports architectures that separate experience orchestration from individual channel applications, while remaining extensible and vendor-neutral as an Apache-licensed project.