Take the community feedback survey now.

John-Philip Johansson
Nov 14, 2016
  8104
(11 votes)

Introducing Content Approvals (Beta)

This feature was released as a Beta feature in CMS 10.1.0 and is still under development.

You can read more about how you enable Beta features in Fredrik Tjärnbergs blog post.

What are Content Approvals?

Content approvals is a way to make sure that content is reviewed and approved before it is published. It works as a new state (In review) between Draft and Published, which is visible in the Versions gadget. When an editor has finished working on a content item, the editor cannot publish it but has to set it as Ready for Review. One or more appointed reviewers must then approve the content item before it can be published. The reviewers are defined by an administrator in an Approval Sequence.

Content approvals do not apply to blocks at this stage.

The Approval Sequence is set up by an administrator and can have any number of approval steps and any number of approvers in each step. If the page has multiple languages there has to be at least one approver for each language in each step.

Bonus feature: Pluggable menu items

The approval sequence overview is opened from the context menu in the page tree: 

Image Content Approval blog post - context menu.png

As a part of this release, we made the context menu pluggable. So now you can easily add items to the context menu.

More about Content Approvals

Content Approvals work with Projects but only on a per-content basis, and not for the whole Project.

The approvals can be driven through the Core API, but beware that it's also in Beta and will change a lot as we're continuing on Content Approval. Do take a look at the IApprovalEngine and IApprovalEngineEvents in the meantime. Use it to react to content moving through the sequence, or automatically reject or approve changes.

You can read more about Content Approvals in the User guide documentation.

There are more things coming with Content Approvals, but please let us know what you like or if there's anything you want us to focus on.

Nov 14, 2016

Comments

Arild Henrichsen
Arild Henrichsen Nov 14, 2016 03:17 PM

Hi John-Philip. Any idea when blocks will be supported by Content Approval? As more and more pages are made up almost entirely of blocks, I think this will be in high demand pretty soon.

Aria Zanganeh
Aria Zanganeh Nov 14, 2016 11:03 PM

This is awesome .. we were waiting for this ages! Do you know about any idea of the release timeline? 

KennyG
KennyG Nov 14, 2016 11:44 PM

The notification feature is critical for our current client. Specifically email notification as most approvers will have no other reason to login to the system. When is that aspect expected? So glad to see this!

John-Philip Johansson
John-Philip Johansson Nov 15, 2016 09:29 AM

@Arild Henrichsen, Reviewing blocks is going to be tricky, both technically and as a user experience. We'll get there. :)

@Aria zanganeh, The first release should be out now. http://nuget.episerver.com/en/OtherPages/Package/?packageId=EPiServer.CMS.UI&packageVersion=10.1.0 Keep an eye out for more releases ;)

@KennyG, That's coming, is all I can say ;)

Nov 28, 2016 03:35 PM

Hi,

thanks for the update. I have a few questions:

1. Will you support Content Approval for media as well as for blocks? In my case, our customer needs approval of PDFs.

2. When will the UI support adding comments when rejecting changes?

3. Instead of "just" rejecting a change are you planning on making it possible to reject to a certain "level". For me it makes sense to send it back one step, since the person there can edit as well.

/Robert

John-Philip Johansson
John-Philip Johansson Nov 28, 2016 04:02 PM

@Robert Runge:

1. I'll go with the same reply I gave Arild. It's a challenge we're looking into :)
2. It's coming soon. Keep en eye out for it.
3. Say there's 3 steps. The first two are approved, but on the third step it's rejected "one step". Someone on step two now edits it, and assuming that person doesn't also just approve their own changes and it moves through step two and three, then the content that someone on step one approved is not what's going to be published. This might be hard to communicate to everyone involved. A really important part is tracking who did what during the approvals, as this might be needed for legal or policy reasons. That's also why we keep an ongoing review on a set version of the approval definition, just in case someone changes the definition while content is still waiting for approvals.

Dec 11, 2016 09:30 PM

Great start after "wrokflow" was left behind and will be waiting to see how this gets extended in upcoming release for "Blocks/Media" and Commerce.

One key point to get this working as i got stuck when i first tried this feature is:

Had to do one of the below to get "Content approval" option in edit tree.

1. Create group by name "EPiBetaUsers" in admin mode and add allocate it to your user and then you would be able to see this feature in edit mode.

2. Add this to virtualroles in config.

Adam Jenkin
Adam Jenkin Jan 17, 2017 05:15 PM

Hi John-Phillip

This new feature looks great. I have been experimenting with it and it works very well on the latest version of EPiServer.

One scenario our clients have is for an approver only role. In this scenario, the approver should not be able to create, change, or publish content.

From my testing, an approver must have either 'change' or 'publish' access rights.

Is this scenario to be catered for on the roadmap for Content Approvals? Or is there a way to configure approval only user accounts in the current version?

John-Philip Johansson
John-Philip Johansson Jan 20, 2017 12:54 PM

@Adam Jenkin: Sorry for the delay, I had to dig a bit. That is indeed something we would like, but currently that would risk going against many partners wishes that content in draft or under review should not be accessible outside the CMS UI (which it would if Read access was all the user needed). We're looking into this and I'll update when I know more.

Apr 12, 2017 03:44 PM

Hi,

How do you set up the Approval Sequence if your CMS users login using the 

Active Directory Role Provider.
I have tried to do it but the actual field doesn't accept any of those users.
It only accepts users that have been directly set up in the CMS

//Monica

John-Philip Johansson
John-Philip Johansson Apr 18, 2017 02:05 PM

Hi @Monica: Hope you had a great Easter :) For someone to be able to approve content they need to be able to access the CMS UI, which means they need to have access rights set up somehow. Either through a group or individually. They also need to have Edit rights, as content under review isn't accessible through regular Read rights (this is for security reasons, to not expose content before it's published).

Lars Woetmann Pedersen
Lars Woetmann Pedersen May 15, 2018 10:29 AM

Hi did episerver ever make a approver only role?

I need this as well. our flow is the following

an editor makes a change and set the content in ready for review

a doctor reviews and approve the change

the editor publish

The doctor should not be allowed til publish

what can we do to get that behaviour?

John-Philip Johansson
John-Philip Johansson May 17, 2018 08:37 AM

@Lars: There is work being done on making content under review accessible through a restricted URL. This should hopefully work to solve your scenario as well.

Please login to comment.
Latest blogs
Going Headless: On-Page Editing with Optimizely Graph and Next.js

Introduction On-page editing is one of the standout features of Optimizely CMS, giving editors the power to update content directly on the site as...

Michał Mitas | Sep 10, 2025

Dynamic CSP Management for Headless and Hybrid Optimizely CMS with Next.js

In the evolving realm of web security, Content Security Policy (CSP) is essential for defending against XSS and injection attacks. Traditional...

Minesh Shah (Netcel) | Sep 8, 2025

Create a Simple home page in Optimizely CMS

  Introduction In this blog post, I will walk you through a step by step process to create a very basic home page on a Optimizley CMS Empty site....

Ratish | Sep 7, 2025 |

AEO, GEO and SEO with Epicweb AI-Assistant in Optimizely

As search evolves beyond traditional SEO, businesses must adapt to Answer Engine Optimization (AEO) and Generative Engine Optimization (GEO). This...

Luc Gosso (MVP) | Sep 7, 2025 |

Meet the newest OMVPs – summer 2025 cohort

We’re excited to welcome the latest group of Optimizely Most Valuable Professionals (OMVPs) into the program! This summer’s cohort highlights a ble...

Satata Satez | Sep 5, 2025

The Sweet Spot: Hybrid Headless Architecture

When it comes to content management architecture, the pendulum often swings between tightly coupled “headed” CMS setups and the flexibility of full...

Minesh Shah (Netcel) | Sep 4, 2025