HomeDev GuideAPI Reference
Dev GuideAPI ReferenceUser GuideGitHubNuGetDev CommunitySubmit a ticketLog In
GitHubNuGetDev CommunitySubmit a ticket

Headless Optimizely

Describes the concept and components involved when building headless Optimizely solutions.

In a "headless" solution, the website presentation layer is decoupled from the back-end content management and e-commerce functionality. This is useful, for example, when pulling content data into other systems, making it accessible for display on any output device.

A headless solution is a back-end-only content management system built with a repository that can be accessed, for example, through a REST API, for display in multiple channels. It has a database to read and write content to, and an administration interface where users manage content. A headless solution only allows for the creation, reading, updating, and deleting of content.

Developers can use any front-end tool to present, reuse, and deliver content to any channel. The separation of front and back end makes it easier to update the underlying systems independently. Integrations with different technologies are simplified as developers only work with the REST APIs, and do not need to learn the underlying content management system.

.NET Core

Optimizely supports separating the delivery application running the public facing rendering from the management application running the content management system and the editing user interface.

The delivery application can be built using ASP.NET Core or other web technologies such as JavaScript frameworks, while the management application runs on .NET Framework. The .NET Core-based delivery application can be built using, for example, MVC, Razor Pages, or Blazor. It is also possible to use frameworks such as React or Vue for the delivery templates.

.NET Core for Optimizely is currently available as a CTP (Community Test Preview).

The management and delivery applications do not share a codebase, instead the communication takes place through REST-based HTTP communication using the Optimizely Content Delivery API.

Content Delivery API

The Optimizely Content Delivery API is a flexible and unified API for content delivery across all types of managed content. It supports Optimizely Content Management System content types, as well as Optimizely Customized Commerce content types like catalog nodes, products, variants, and pricing.

The Content Delivery API also supports rendering of forms built with Optimizely Forms, for example, in single-page application sites built with React or Vue.