Follow this article to receive email notifications when Optimizely Content Management System (SaaS) features are available for 2025. See also DXP release notes and 2024 CMS (SaaS) release notes.
July 7, 2025
Bug fix
- CMS-43323 – Fixed an issue where the AutoComplete field of form elements returned from the Content Graph had a numeric type instead of a string.
July 3, 2025
Enhancements
Embedded Digital Asset Management (DAM):
Embedded Digital Asset Management (DAM) is available in CMS. See Onboard DAM to CMS (SaaS) and Manage assets with DAM.
-
- DAM view – Click to open the DAM library.
- Breadcrumb – Displays the folder of the assets in a clickable hierarchy.
- Filter – Click to open the left filter pane.
- Filters – Select filters to find the digital assets you want.
- Search – Enter a partial string to narrow selections.
- Sort – Select Title, Type, Owner, Last Modified, or Date Created. Select also ascending or descending order.
- Asset details – Click an asset card to open the details pane on the right side of the window.
- Asset actions – The actions in this menu varies by asset type (image asset type shown).
- Asset detail focus – Click an asset name on an asset card to display the asset details in the main window.
- Add – Select to Create Folder or Upload an asset.
- Asset Detail Pane – Opens when you click an asset card.
- Modify asset information – Open and modify asset details.
- Choose – Select the asset to use in your content or project. This action might insert the chosen asset into a page, link it within content, or add it to a collection for further use.
- Download – Save a copy of the image asset in one of the following formats: JPG, PNG, PDF, WEBP.
- Asset detail focus – Click the icon to display the asset details in the main window.
- Open CMP Library – Access the Optimizely Content Marketing Platform (CMP) Library to manage your DAM from CMP.
CMS API Changes from Preview2 to Preview3:
The Preview3 CMS API introduces key enhancements in preparation for V1, emphasizing consistency improvements. The changes are:
-
Gateway Update:
- All API requests now route through a unified gateway:
https://api.cms.optimizely.com
, simplifying access and removing the_cms
prefix.
- All API requests now route through a unified gateway:
-
Endpoint Modifications:
- PUT Endpoints: Removed in favor of PATCH to enhance forward compatibility.
- Experimental Status: Content and Changesets APIs are now experimental; access requires special documentation.
-
Concurrency and Header Enhancements:
- Support for optimistic concurrency checks through standard HTTP headers.
- New headers like
cms-skip-validation
andcms-permanent-delete
introduced for streamlined operations.
-
Content Type Adjustments:
-
Data Types: Transition from generic to specific data types, e.g.,
link
andrichText
. - Enum Simplification: Enum settings are now arrays of value objects.
-
Data Types: Transition from generic to specific data types, e.g.,
-
Error Handling:
- ProblemDetails Format: Errors now formatted as a list of objects, offering clearer insights.
-
Source and Resource Key Handling:
- Automatic key assignment if not specified.
- Read-only source fields prefixed for internal distinction.
-
Versioning and Processing:
- API version header updated from
opti-api-version
tocms-api-version
. - Optional processing instructions moved to headers for clarity.
- API version header updated from
Example Highlight:
- To permanently delete a content type:
DELETE https://api.cms.optimizely.com/preview3/contenttypes/ToBeDeleted Authorization: Bearer <your_access_token> Content-Type: application/json cms-permanent-delete: true
These updates aim to enhance API usability, security, and maintainability, setting the stage for a robust V1 release. The documentation can be found here, and the API references can be found here.
Variation:
You can create a variation of a content item that is a version with its own publishing flow, so you can have multiple published variants of a content item at the same time. See Create content variations.
You may want to create a content variation aimed at optimizing content performance and user engagement. For example:
- A/B testing – Content variations test different versions of a page or content element to determine which performs better in terms of user engagement, conversion rates, or other key metrics.
- Personalization – Variations enable personalized content delivery based on user segments, demographics, or behaviors, leading to a more tailored and relevant user experience.
- Localization – Use different content variations for different languages or cultural preferences, ensuring content resonates with a global audience.
- Seasonal campaigns – Variations let businesses adapt content for seasonal promotions or campaigns without altering the original content structure.
- Content optimization – By experimenting with different headlines, images, or calls-to-action, businesses can optimize content to improve SEO and user interaction.
- Flexibility in content management – Variations provide content managers with the flexibility to iterate and innovate quickly, responding to market trends or user feedback without disrupting the original content.
Items in the content tree that have variations display a variation icon. See Create content variations.
If you make changes to a variation that you want to become the baseline for further variations, you can promote a variation to overwrite the original.
-
- Go to the variation you want to become the original.
- Go to the Publish (Options) menu and select Copy changes to Original.
-
You can create a section type to help organize your content in an experience type in the Visual Builder. See Create content types.
- You can include a variation in the GraphQL queries (by adding a generic filter variation:
{include: ALL}
, or specify the variation key variation:{include: SOME, value: "WinterCampaign"}
). -
Preview tokens are now reusable and more convenient to use.
Previously, preview tokens were issued for specific content references. Instead of validating the preview token's content reference with the currently routed content reference, you can now validate the preview token principal's permissions to the routed content.
-
Added the
layoutType
on thecomposition
field of the graph format so that it is easier to understand the model.Example
composition
model wherelayoutType
is added:{ "_metadata": { "key": "151A1E2E6358462FB3ABF0705FDCD03E", "locale": "en", "displayName": "My Experience" }, "composition": { "displayName": "My Experience", "key": "151A1E2E-6358-462F-B3AB-F0705FDCD03E", "type": "BlankExperience", "nodeType": "experience", "layoutType": "outline", "nodes": [{ "displayName": "Hero", "key": "6A953CCD-741A-4B1B-B6E5-562434DC3ED1", "type": "BlankSection", "nodeType": "section", "layoutType": "grid", "nodes": [{ "key": "FB554790-2871-45D7-9502-DA8B4CAD4B13", "nodeType": "row", "nodes": [{ "key": "DE42C8FB-AF10-4D31-8C16-CE12EB03B35D", "nodeType": "column", "nodes": [{ "key": "6ED087C6-7504-45AC-9295-6AD568978EFF", "type": "HeadingElement", "nodeType": "component", "component": { "_metadata": { "displayName": "Heading", "locale": "en" }, "Heading": "My Heading" } }] }] }] }] } }
Bug fix
- CMS-41525 – Fixed the enabling of the Create button when you tried to create an inline block without entering a value.
June 18, 2025
Bug fixes
- CMS-42617 – Fixed the issue with the System folder content types, which are visible and editable in the admin.
-
CMS-39673 – Fixed the issue where unhandled exceptions occurred when accessing a Content instance from
ContentDataStore
could lead to the edit UI remaining in a loading state. - CMS-41785 – Fixed the issue that occurs after clicking Revert; the application fails to revert to the old value of the Start Page, leaving it unchanged.
- CMS-42311 – Fixed a bug where it was not possible to export content items from CMS after changing the global serializer options.
-
CMS-42339 – Fixed the issue of unhandled exceptions when accessing a Content instance from
ContentDataStore
, which may cause the edit UI to remain in a loading state.
June 5, 2025
Enhancements
- You can create pages (experiences) from Content Manager. See Create a page.
- You can extract media content (searchable text) during file upload instead of during indexing.
Bug fixes
- CMS-41655 – Fixed the issue where the minimum and maximum constraints of the last number property in a content override the constraints of other number properties.
- CMS-41319 – Fixed the issue where users are not able to drag and drop contents where their content types are created from Settings.
-
CMS-41856 – Fixed the issue where expiring content Now in conjunction with the setting
ContentVersionSynchronizationMode
set toContentVersionSyncMode.PublishedOnly
does not work in Optimizely Graph. - CMS-42169 – Fixed the issue where the feature flag prevents page content areas within other content areas from being expanded or embedded is too restrictive. It also prevents the embedding of content are item properties.
May 23, 2025
Bug fixes
- CMS-39667 – Fixed an issue where the user cannot compare versions of a page.
- CMS-42169 – Fixed the issue where the feature flag prevents page content areas within other content areas from being expanded or embedded is too restrictive. It also prevents the embedding of content are item properties.
May 15, 2025
Enhancement
- CMS (SaaS) has AI. Added Ask Opal to CMS (SaaS). See Get AI assistance with Optimizely Opal.
-
New Chat – Start a new conversation when switching topics to keep Optimizely Opal's responses focused and your chat thread history focused on the topic.
-
Chat history – Go to previous chat threads with Optimizely Opal.
-
Search chats – Search one or more Optimizely Opal chats.
-
Copy chat – Copy the entire content of a discrete chat thread to the clipboard.
-
Chat with Opal
- Ideate and prompt – Ask Optimizely Opal to research, brainstorm, create things, provide a summary, and so on. Opal can explain terms, walk you through configuration steps, or point you to relevant documentation. It can evolve a rough idea into something more complete, such as expanding a hypothesis or completing a concept.
- Translate content or tone – Translate text into other languages or rewrite content to fit a specific tone or audience.
- Research online – Ask Opal to search the web, summarize content, or extract key information from provided URLs.
-
File Upload – Upload files and ask questions about their content.
-
Document – .pdf, .txt
- Image – .png, .jpeg, .webp
- Audio – .mp3, .wav., .mpeg
- Video – .mov, .mpeg, .mp4, .mpg, .avi, .wmv, .mpegps, .flySample queries
- Summarize this document into key takeaways.
- Extract the details from this timeline and present them to me as a list.
- Give me the audio text and timestamps from this file so I can copy and paste into a subtitle .srt file. Remove any "ums" and "ahs" from the text.
- Extract the details from this timeline and present them to me as a list.
- Give me the audio text and timestamps from this file so I can copy and paste into a subtitle .srt file. Remove any "ums" and "ahs" from the text.
- Extract the key points from this video and create a blog post to promote them.
-
-
Delete current chat – Delete the current chat contents. You cannot retrieve deleted chats.
-
Expand to full screen – Expand the Optimizely Opal Chat to full page.
-
Pop out or Dock screen – Place the Optimizely Opal Chat on top of the window. The icon changes to dock the chat window.
-
Regenerate a response – Have Optimizely Opal respond differently to the same query.
-
Submit – Submit a request to Optimizely Opal. The button changes while Optimizely Opal is thinking.
-
Toggle Sidebar – Show or hide the chat history panel.
May 5, 2025
April 29, 2025
Enhancement
- Updated the TinyMCE version to version 7.
- Changed the sort order rule to sort by the sort index when creating content.
You can sort content by their sort order index:
query SortedContent { _Content(orderBy: { _metadata: { sortOrder: DESC } }) { items { _metadata { displayName } } } }
Drag and drop content in the content tree to enable sorting by index on old content. Your may have to update your schema for
sortOrder
to be available. If it is not available, run the full sync job.
Bug Fixes
- CMS-41382 – Fixed an issue where a stack overflow can happen if an inlined block has circular references to content.
- CMS-40382 – Fixed an issue of unresponsive left and right arrow keys when you edited content names.
- CMS-40744 – Fixed an issue where you could not drag and drop allowed content to the ContentReference property.
April 16, 2025
Enhancement
- The Optimizely Digital Asset Management (DAM) asset picker lets you browse an asset collection.
- Filter – Display only the assets that have the properties that you select.
- Search – Enter a partial or full name of an asset to narrow down the displayed assets.
- Views – Select Category view, Grid view, or List view.
- Sort – Sort the assets ascending or descending by Title, Type, Owner, Last Modified, or Date Created.
-
Add – Add assets to the DAM.
The Add button displays only if an administrator sets permissions for you. See the documentation links below.
- Details – Select an asset to display asset details.
See the following product documentation.
- User – DAM assets
- Developer – Onboard DAM to CMS (SaaS)
April 11, 2025
March 31, 2025
Enhancements
- CMS (SaaS) now has a Content manager. The content tree in the Edit view and in the Assets panel shows Optimizely Content Management System (SaaS) content that is organized in a hierarchical structure. As the number of content in CMS grows, finding content can become more of an issue unless you are familiar with the hierarchy.
The CMS Content manager addresses these scaling issues by displaying all content (pages, assets, and media) in a "flat" view table structure that you can filter, search, and sort to get to the content you want.
To add media from Content manager, select Create > Upload Media.
The Upload Media dialog box displays. Click Select Media and choose the files you want.
- The API Clients tab in Settings was replaced by the API Keys tab. See API Keys.
Former API Clients view:
New API Keys view
- You can use Google Translate AI to automatically translate your content by selecting Translate content using AI and clicking Add Language. See Translate content automatically with AI in Translate content into other languages.
-
Improved the labeling with the following name changes:
-
In filter – Content type was renamed Base type
-
In table – Content type was renamed Base type
-
In base type column and filter – Empty value was renamed Undefined
-
Bug Fixes
-
CMS-39978 – Fixed the index to exclude NULL values because the most common value for
tblContent.ArchiveContentGUID
is NULL, which made the existing index quite ineffective. -
CMS-40288 – Fixed an issue where the Remaining Path from a permanent link URL was omitted when indexing content from the following affected property types:
Link item
Link item collection
Url
Xhtml
March 19, 2025
Enhancements
- Enhanced the Import Data view in the Settings to prevent potential timeout issues when importing large files (several gigabytes or more) or when the import HTTP request lasts for an extended duration.
- Consolidated the Add Page and Create Experience dialog boxes into one Create Page dialog box to create content in the content tree.
- Moved functionality that previously lived in the top area of All Properties view to the following areas:
- Moved to Settings tab:
- Name in URL
- Simple address
-
ID, type – Now Content type.
- Moved to Publish button:
- Manage Expiration
- Permanently Mark as Being Edited
- Access Rights (formerly Visible to)
-
Languages – Moved to Language selector.
-
Edit name – You can edit the name directly with double-click or Edit name.
- Moved to Settings tab:
- Added highlighting to the Visual Builder preview.
- When you click an editable field in the left panel, that field is highlighted in dark blue in the preview, with the name of the field displayed.
- When you click a field in the preview, it turns that highlight to dark blue, and the left panel jumps to that field and autofocuses on it so you can start typing without needing to tap into the field on the left.
- When you click an editable field in the left panel, that field is highlighted in dark blue in the preview, with the name of the field displayed.
Bug fixes
- CMS-39416 – Fixed an issue where you could not open the page tree while viewing Trash with the Navigation panel unpinned.
-
CMS-39932 – Fixed an issue in subcategories that included
&nbps;
instead of a space when you created an audience with a Site Criteria on Visited category. -
CMS-39902 – Fixed an issue where registering a custom
IConstructorParameterResolver
to handleContentData
constructors with one or more parameters would always result in aMissingMethodException
when instances of the content type were constructed. - CMS-39969 – Fixed an issue where the editor received a bad request from the activity or controller when selecting multiple project items.
-
CMS-39973 – Fixed an issue where
AllowedTypes
was not applied when a content type name was similar to a base type name. - CMS-40011 – Fixed an issue where the focus did not remain on the link editor in the bottom of a block.
- CMS-40067 – Fixed the issue where drag and drop functionality does not work if the block's display name contains spaces.
March 3, 2025
Enhancement
- Added support to use an instance of a shared block as a section in an experience.
Bug fixes
- CMS-39478 – Fixed an issue where Allowed Content Types did not map correctly to target GUIDs when importing.
-
CMS-39902 – Fixed the threading issue in
EditorDescriptors
. - CMS-39447 – Fixed the issue where the preview of shared blocks did not function properly.
- CMS-39597 – Fixed an issue where images were not sorted alphabetically under the For All Sites folder.
February 12, 2025
Bug fixes
- CMS-39424 – Fixed an issue that used the wrong locale in the preview URL when you created a draft version of the content in a language that was not the default language.
- CMS-37722 – Fixed an issue that occurred when you switched selections between New, From Existing, and New before creating an application.
- CMS-39398 – Fixed a site unresponsive issue that occurred when you changed a ContentType property type from ContentArea to ContentAreaItem and the ContentArea had more than one inline block.
- CMS-34554 – Fixed an issue where the quick navigator rendered only for the default authentication scheme (instead of the specified authentication scheme) when you used mixed-mode authentication.
January 23, 2025
Enhancement
-
Blocks was renamed to Shared Blocks in the user interface.
Bug fix
- CMS-38391 – Fixed an issue that did not display an error message when you input an invalid value of a URL to an external property in Visual Builder.
January 16, 2025
Enhancement
- Added interactions that ease navigation and improve pagination across CMS. You can now define page size, skip to a particular page, and see the number of pages present.
Bug fix
- CMS-39053 – Fixed an issue where the GUID column was not defined when you tried to convert pages that included a content area property. This caused the exception: Invalid column name GUID.
January 10, 2025
Bug fix
-
CMS-38772 – Fixed an issue that returned an error of value is not an instance of Date because increased date precision in CMS led to serialization problems for
DateTime
values in content metadata.
Please sign in to leave a comment.