Everyone talks about the need for personalization and many tools offer various personalization capabilities but how do these tools actually deliver on their promise of custom content and experiences?
What goes on behind-the-scenes to make sure that the right content is being served to the right person at the right time? For Acquia Lift, the heavy lifting is done by the Decision API.
In the Acquia Lift’s user interface (UI) the Decision API is the place that rules are built. A/B test for rules are then stored in the Decision API so when a visitor comes to a website, what you want them to see, per the rules you’ve built, is displayed.
The Decision API is the primary connection point between content and data within this system. Its primary requirements are to be incredibly fast and scalable for real time decision making and to have tie-ins to all of the systems that are used for making decisions about what content to show and being able to retrieve the content in the correct format for rendering.
The Decision API is also responsible for maintaining an index all of the Rules that are required to determine what should be shown where and to whom. A number of different services for making the actual decisions can be behind this.
These services are tied to different types of Rules indexed in the Decision API including simple targeting, A/B testing engines and over time we will be introducing various recommender systems as well. This is a pluggable system so that a variety of back-end technologies can be used.
A typical decision request to the API will look something like the following:
- Host Application sends a request that includes available information about the users context.
- The Decision API requests additional context from the Lift Profile Manager
- The Decision API determines what Rules are applicable based on all available context.
- The Decision API executes the applicable Rule, running any additional algorithms necessary to determine which content should be shown.
- The Decision API then retrieves a cached version of the correct content from Content Hub.
- Finally, the Decision API returns all of the rendered content along with any applicable instructions about how or where to display it within the page.