Disclaimer: This website requires Please enable JavaScript in your browser settings for the best experience.

HomeDev GuideRecipesAPI Reference
Dev GuideAPI ReferenceUser GuideLegal TermsGitHubNuGetDev CommunityOptimizely AcademySubmit a ticketLog In
Dev Guide

Frequently asked questions

Answers to commonly asked questions for Optimizely Content Management System (SaaS).

How does CMS (SaaS) handle video files?

CMS (SaaS) returns file URLs for uploaded videos in the original format but does support pseudo-streaming.

Can I add conditional logic to block properties?

No, CMS (SaaS) does not support conditional properties for block properties, such as displaying or hiding certain properties based on the selection of another property.

Instead, you can limit block types within a content area and restrict child pages to achieve some level of control over content presentation.

Can I resize images?

CMS (SaaS) does not have image resizing capabilities. You can instead resize your images from your CDN. See Image resizing using CDN.

Can I create "global" blocks that apply to all pages on a website?

The decision to implement "global" Shared blocks, such as a "Header" or "Footer" block depends on your "head" (front end) implementation.

You can create shared blocks for these elements and render them on each page. Depending on your front-end framework, you may have concepts like master pages or layouts that are reused across different pages. To achieve "global" blocks, you can create content types for the footer and header with a base set to block. Then, create shared block instances of these types. These instances can be queried from Optimizely Graph individually, separate from page queries.

Can I disable locales or languages in CMS (SaaS)?

Yes, go to Applications and map your host to a language and the URLs are indexed without language segments.

For example, to remove the locale prefix en from the URL so it would be example.com/my-page instead of example.com/en/my-page, you would map the host, example in example.com to the language 'en'.

Can I extend the built-in property types with your own custom types?

Yes, CMS (SaaS) lets you store custom, unique data, or provide a custom editorial interface for a specific property. 

How can I identify which site a content type is from when using them across multiple sites in Optimizely Graph?

Currently, CMS (SaaS) does not export application-specific metadata, such as SiteID, to Optimizely Graph. To manage a multi-site configuration, store the key for the start page of each application as a configuration within your sites. When fetching pages from Optimizely Graph, use the full URL, including the hostname, rather than just the path. This lets you retrieve content from different sites within your multi-site environment.

Are there limitations on content types? 

Each unique CMS (SaaS) bundle of properties is considered a "type" of content.

Can I restrict the data allowed in a property?

CMS (SaaS) ensures that labeled data is of a certain type and can specify that a property should be only numeric or a valid date of an arbitrary precision (just the date, for example, or the date and time).

What format is used to retrieve the content data?

When you work with CMS (SaaS) content, predictable types of data make it easier to manipulate and transform it.

  • When you retrieve a content object during templating or an API operation—the local API or a headless/remote API—it is strongly typed.
  • The content can auto-populate a strongly typed object specific to the underlying programming.

Can you apply validation rules to properties?

Beyond data types, CMS (SaaS) lets you specify domain-specific rules around content entry.

  • Specify that a particular property is required.
  • Specify an allowed range—for instance, it must be a numeric value above 10 but less than 100.
  • Specify that a date value must be in the future or the past.
  • Apply a regular expression pattern matching the value to ensure that it is a valid email address or phone number or conforms to some other pattern.
  • Apply rules if a value is entered so that null values are universally allowable.

Can I provide custom validation rules?

In addition to pre-configured validation rules, you might need to validate property values against custom data sources (like ensuring a product number represents a valid product in your external product catalog). CMS (SaaS) provides a framework for this.

How does CMS (SaaS) handle content files?

Content goes beyond structured text—it also includes files like images, documents, audio, and video.

  • Media files like images and PDF documents are considered full-content objects.
  • You can model media files with properties like other content types.
  • They are subject to the same features as other content, like permissions and workflow.

Does CMS (SaaS) support a content hierarchy?

Content is often organized in parent-child structures, where the content is represented as a conceptual "tree" where new content is created as a "child" of existing content, and these relationships can be traversed and referenced to render navigation and other aggregational concepts.

  • CMS supports a parent-child content structure.
  • You can have more than one tree.
  • You can display content in more than one location in the tree.
  • The CMS (SaaS) hierarchy supports type restrictions by letting you create objects of a certain type as children of another type.

Can I reference a property to another content object?

A specific property on a specific type might need to be a live reference to another content object. For example, the Manager property of your Employee Profile object might need to conceptually point to another object in the repository.

  • CMS (SaaS) lets you refer to other objects in this way.
  • You can limit the selection of a target object by type or other criteria.

Can I enforce referential links?

Much like referential integrity in a relational database, some links should be enforced and validated.

  • CMS (SaaS) lets you refer to another content object to ensure that a link remains intact.
  • You can cancel the deletion and warn the editor that an object is linked to other objects.

Can I encapsulate a content object in a property?

CMS (SaaS) lets a property's value be a completely self-contained content object that exists inside the lifecycle of the parent content object rather than referring to another content object.

How usable is the editorial interface generated from the content model?

Consider how each property and its datatype contributes to its editorial UI. CMS (SaaS) is well-organized and usable for the average editor.

Can I provide contextual help in the editorial UI?

Content administrators sometimes need help understanding the details of the content model. CMS (SaaS) provides additional editing instructions to help content administrators understand how to manage the content.

Can I group properties into sub-interfaces?

CMS (SaaS) lets you organize properties into tabs or expandable sections, which is critical when editing a complicated object. You can display certain fields or sub-interfaces to certain users or groups of users.

Can I edit rich text properties?

CMS (SaaS) uses a rich text editor (TinyMCE) that you can configure for content administrators. You also can examine and sanitize the HTML before storing the content.

Can I associate content files with content?

When content administrators need to embed an image in rich text or link to a downloadable file, they need to locate assets. When these assets are linked, CMS (SaaS) retains the reference so that you can check and enforce the dependencies.

What types of page or narrative composition are available?

More visually complex content might have to be visually composed of multiple content objects. CMS (SaaS) lets you

  • construct content from a library of reusable elements.
  • arrange these elements on a page surface.
  • order serially to provide an unbroken stretch of narrative content.

How is the content model defined?

Some systems require you to model from a UI, while others let you specify the content model in code or configuration files which can be checked into source control, versioned, and moved through a DevOps process.

  • CMS (SaaS) process fits with your DevOps process.
  • CMS (SaaS) lets your content modeling specifications and changes move through your different development and testing environments.

How can I change the content model after it is populated?

Content models evolve, and when they are weighed down with actual content, this can be complicated.

  • After you enter hundreds or thousands of content objects, CMS (SaaS) lets you change the content model or underlying type of existing content.
  • You can reconcile differing content definitions without the loss of data.

How do user and group permissions intersect with the content model?

Not every editor should have access to every type or property. CMS (SaaS) lets you:

  • bind your create and edit permissions to a content type definition so that only certain authors can work with specific types.
  • apply permissions in individual properties so that only certain authors can edit those properties.
  • specify a type as a singleton so that only one object of that type can exist.
  • integrate external content with levels of repository abstraction, where you can populate sections of the content repository from external systems in real-time. You can also mass-upload or intake and update the API from external sources.