Loading...

Last updated: Mar 12 2018

Area: Episerver CMS Applies to versions: 11 and higher

Content Delivery API

This topic introduces the concept of "headless CMS" and the Episerver Content Delivery API. A "headless CMS" consists of a back-end content repository that can be accessed for example through a RESTful API, providing flexibility when pulling content data into other systems.

How it works

A traditional non-headless CMS is built so that the CMS runnning on the server controls how the content is presented. The "head" is responsible for generating the HTML that is parsed and rendered by the browser.

A headless CMS is a back-end only CMS built up as a content repository that makes content accessible through REST APIs for display on multiple devices. The "head" is the front-end, and the "body" is the back-end content repository. The "missing head" is the presentation layer.

The headless CMS does not know how content is presented. It is a specialized database, serving content that is transformed into HTML by other systems. Episerver CMS has a powerful presentation layer, and as such is not a headless CMS.

However, there are situations where a headless approach is preferred, to provide the ability to pull raw content from outside the presentation layer.

The following are example scenarios when a headless approach is useful:

  • To provide content for native applications that are not HTML-based.
  • To integrate with a Point of Sales (POS) network, linking different output systems.
  • To manage content for legacy platforms inside Episerver.

The Content Delivery API is a flexible programming interface that you can use for building this type of solutions, using Episerver as a hub for all content.  

The Content Delivery API is a pluggable and configurable web API for querying IContent, providing you with the ability to:

  • Deliver IContent, see Content.
  • Use Episerver Find to query content. (Episerver Find is installed via the EPiServer.Find NuGet package and requires a separate license.)
  • Support localized content and multi-site scenarios.
  • Support common querying, filtering, and sorting scenarios.
  • Support returning access-controlled and personalized content.

See the Episerver Content Delivery API class library/SDK.

Related topics

Blog posts


Do you have feedback on this documentation? Send an email to documentation@episerver.com. For development-related questions and discussions, refer to our Forums on https://world.episerver.com/forum/