SaaS CMS - Documentation Handbook
A comprehensive reference guide for developers and content editors building, configuring, and scaling digital experiences with Optimizely's cloud-native CMS.
Dylan Walker
Principal Strategy Consultant
SaaS CMS — Content Modelling
DeveloperContent Modelling
Content modelling defines the structure, relationships, and reusability of your content in CMS (SaaS). Model content in a platform-agnostic way — content types are registered in the Optimizely Graph schema automatically.
Content Modelling
Analyse your content requirements and structure data into reusable, modular content types.
View docs →Defining Content Types (Developer)
Define content types — Experience, Section, Element, Page, Shared Block, and Media types — using the CMS (SaaS) UI or REST API.
View docs →Develop Content (Developer)
Use the CMS (SaaS) REST API and JavaScript SDK to create, manage, and query content programmatically.
View docs →Configure Visual Builder (Developer)
Set up Visual Builder display templates (styles), sections, and component types. Configure preview URLs, routing, and content area settings.
View docs →Manage Styles (Developer)
Create display templates via the displaytemplates API endpoint. Associate styles with baseType (experience, section, component), specific contentType, or nodeType (row, column).
View docs →Rendering (Developer)
Configure how content types are rendered in Visual Builder for headless delivery via Optimizely Graph using GraphQL.
View docs →Best Practices
External community best practices guide for implementing Optimizely SaaS CMS.
View docs →Get Started with Visual Builder
Visual Builder is the default authoring experience. Use the drag-and-drop canvas to compose experiences with real-time preview and autosave.
View docs →Blueprints
Blueprints are reusable layout templates. Select one when creating content to ensure consistency. Also save your own sections as reusable blueprints.
View docs →Styles
Apply developer-defined display styles to rows, columns, sections, and elements in Visual Builder. Choose from brand-approved options.
View docs →Creating Pages
Create pages via the content tree, Create Content menu, or Content Manager. Select a template or start from scratch in Visual Builder.
View docs →Creating Blocks
Shared Blocks are reusable content items composable across multiple pages. Create from the Assets panel and compose into pages via Visual Builder.
View docs →SaaS CMS — Graph Search
SearchOptimizely Graph Search
Optimizely Graph transforms your CMS content into a queryable graph using GraphQL. It powers filtering, full-text search, faceted search, semantic search, synonyms, pinned results, and boosting — for both the CMS internal search and your front-end search experiences.
GraphQL Schema (Developer)
CMS (SaaS) registers base and contract types in the Optimizely Graph GraphQL schema. User-defined content types inherit from these. Explore via the GraphiQL interface.
View docs →Getting Started (Developer)
Provision Optimizely Graph for your CMS (SaaS) instance. Install the sync package, configure triggers, and use your access key to query the GraphQL service.
View docs →Example Search Page (Developer)
Build a search page using Optimizely Graph. Implement full-text search with the contains and match operators, and combine with filtering and faceted search.
View docs →Search UI
Configure the CMS internal search UI and search provider options. Manage which content types are searchable via the Search Configuration in Settings.
View docs →Search Capabilities
Optimizely Graph supports filtering (eq, gt, in, like, startsWith), full-text search (contains, match), and faceted search with synonyms, boosting, hit count, and autocomplete.
View docs →Semantic Search
AI-powered semantic (neural/vector) search uses a pre-trained model to return contextually relevant content — ideal for conversational AI and RAG use cases.
View docs →Synonyms
Expand keyword searches using synonyms configured in Optimizely Graph — ensuring users find relevant content even when using alternative terminology.
View docs →Pinned Results
Pin specific content to appear at the top of search results for given queries — previously called "best bets" in Search & Navigation.
View docs →Boosting
Adjust the ranking of search results for relevance using boosting — increase weighting for specific content types or fields.
View docs →DAM — Taxonomy
Digital Asset ManagementDAM Taxonomy
Taxonomy fields classify and organise digital assets. Create fields and field groups to ensure assets are consistently categorised, easily searchable, and governed across teams.
Creating Fields
Create custom metadata fields in DAM to classify your assets. Fields can be single-select, multi-select, text, or date types. Field IDs are required when setting values for assets via the API.
View docs →Manage Fields
View, edit, and manage existing taxonomy fields. Retrieve field definitions via the GET /fields endpoint — returns field id, name, type, is_multi_select, and choices.
View docs →Field Groups
Field groups are templates of related fields for Library assets based on content type or team. Create groups via Settings > Fields > Groups > Create Group.
View docs →DAM — Asset Management
Digital Asset ManagementOptimizely DAM
Optimizely DAM stores, organises, manages, and retrieves digital assets — including images, videos, documents, and multimedia content. It integrates directly with CMS (SaaS) via Optimizely Graph for seamless front-end asset delivery.
Asset Management
Organise assets into folders. Filter, search, and sort by Title, Type, Owner, Last Modified, or Date Created. Click an asset card to open the details pane and modify asset information.
View docs →Assets
Assets include images, videos, documents, and other multimedia files with version control, metadata, renditions, and focal point settings.
View docs →Asset Picker
The DAM asset picker allows users to browse and select DAM assets within CMS (SaaS). Enable via Settings > Optimizely DAM Features. Supports Content Reference properties (single and list).
View docs →DAM — Admin
AdministrationOnboard DAM to SaaS CMS
Connect Optimizely DAM to CMS (SaaS) via Settings > Optimizely DAM Features. Select a DAM instance to enable the embeddable DAM in the CMS Edit menu. Optimizely Graph delivers DAM assets alongside CMS content.
View docs →Custom Domains
Configure custom domains for Library assets — generate and manage public URLs for assets stored in the DAM library.
View docs →Renditions
Create optimised variations of images and videos for different platforms. Configure via avatar > Asset Management > Renditions > Add. Support resize/crop, format conversion, and focal point adjustment.
View docs →CMS SaaS Overview — Part 1
FoundationWhat is CMS (SaaS)?
Optimizely CMS (SaaS) is a headless-first, cloud-native CMS that decouples content creation from content delivery. Editors author content in Visual Builder; content is indexed in Optimizely Graph and delivered to any front-end framework via GraphQL.
SaaS CMS Overview
CMS (SaaS) provides web content management through a UI for efficient content authoring. Access rights control what each user sees. Requires administrator setup before editors can create content.
View docs →Find Content
Use Content Manager (search-first, powered by Optimizely Graph), the page tree, shared blocks panel, global search (top menu), or the Tasks tab to find content by status.
View docs →Dashboard
The CMS dashboard displays content workflow status. View tabs for Drafts, In Review, Approved, Scheduled, and Rejected. Click any item to open in edit view. Requires CMS Edit privileges.
View docs →Approval Sequences
Configure multi-step content approval workflows per page or asset folder. Editors set content to "Ready for Review"; appointed reviewers must approve before publication.
View docs →Approve Content
Content approvals ensure content is reviewed before publication. The editor sets to Ready for Review; one or more reviewers in the approval sequence must approve before it can be published.
View docs →Opal Chat
Opal Chat is available within CMS (SaaS) via the "Ask Opal" button in the global navigation. Use it for AI-assisted content creation, translation, and editorial review.
View docs →Subscribe to Release Notes
Follow the CMS (SaaS) release notes to receive email notifications when new features, updates, and fixes are published. CMS SaaS Release Notes →
CMS SaaS Overview — Part 2
Content CreationVisual Builder
Visual Builder is the default authoring experience in CMS (SaaS). It provides a drag-and-drop canvas with real-time preview, autosave, direct property editing, and blueprint support.
Get Started with Visual Builder
Visual Builder is the default authoring experience in CMS (SaaS). Drag-and-drop canvas with real-time preview, autosave, and direct property editing.
View docs →Create from Scratch
Start with a blank canvas and compose your page by adding sections, rows, columns, and elements. Changes autosave as you work.
View docs →Create from Blueprints
Select a blueprint when creating content to start with a predefined layout. Speeds up page creation and maintains design consistency.
View docs →Saving Blueprints
Save any section or experience as a blueprint directly in Visual Builder. Manage blueprints via Settings > Blueprints or the blueprints REST API.
View docs →Styles
Apply developer-defined display styles to sections, rows, columns, and elements. Choose from brand-approved options set by your development team.
View docs →Create a Page
Create pages via the content tree (Root > More > Create Page), Content Manager, or Create Content. Name the page and optionally select a blueprint.
View docs →Create a Shared Block
Shared Blocks are reusable content items composable across multiple pages. Enable for Visual Builder composition in the block's Settings page.
View docs →Assets
Manage images, videos, documents, and media from the Assets panel within CMS (SaaS). Assets integrate with DAM when configured in Settings > Optimizely DAM Features.
View docs →Previewing Content
Preview draft content before publishing. Visual Builder syncs content between outline and preview panel in real time. The preview URL carries all information the front end needs.
View docs →Publishing Content
All content starts as a draft. Publish directly if no approval sequence is defined, or submit as "Ready for Review" when approval is required.
View docs →CMS SaaS Overview — Part 3
Content ManagementComparing Content
Compare properties between content versions in All Properties compare mode. Differences highlighted per tab. Copy values from an older version to the newer one.
View docs →Translations
Translate content into other languages using the language selector. Filter versions by language. Compare language versions side-by-side when translating.
View docs →Deleting Content
Delete pages, blocks, and media from Content Manager or edit view. Deleted content can be restored. Access rights control who can delete content.
View docs →Content Manager
Content Manager is a search-first interface powered by Optimizely Graph. Filter by type, status, and language. Create pages with blueprint selection. Load from external content sources.
View docs →DAM
The embedded DAM panel within CMS (SaaS) lets you browse, filter, and select DAM assets without leaving the editing interface — enabled after DAM onboarding.
View docs →Forms
Create and manage web forms within CMS (SaaS). Configure element types, activate forms, create forms with field rules, and collect form data from the front end.
View docs →CMS SaaS Admin Overview
AdministrationAdmin Landing Page
The CMS (SaaS) admin area provides access to applications, content types, users & groups, access rights, approval sequences, scheduled jobs, and system configuration. Manage DAM integration, language configuration, and blueprint management from here.
View docs →CMS SaaS + Opal
AI-PoweredOpal in CMS (SaaS)
Optimizely Opal is natively integrated into CMS (SaaS) — available via the "Ask Opal" button in the global navigation bar. Opal provides AI-assisted content creation, translation, editorial review, and workflow tools directly within the CMS editing experience.
Opal Chat
Click "Ask Opal" in the global navigation bar to open Opal Chat within CMS (SaaS). Generate content, translate pages, review copy for readability and SEO, and get workflow guidance.
View docs →SaaS CMS Tools
Opal includes built-in CMS SaaS system tools that interact directly with your content — reading content types, drafting content based on your model, and assisting with publishing workflows.
View docs →Opal Platform
AI PlatformOpal Landing Page
Access Opal at opal.optimizely.com — Optimizely's native AI assistant and agent platform, embedded across all products including CMS (SaaS) and DAM.
View docs →Get Started
The Getting Started guide covers the Opal app interface, Chat, Canvas, file uploads, code execution, and web browsing — all available from day one.
View docs →Release Notes
Subscribe to the Opal release notes to receive email notifications when new features, tools, and agent capabilities are published. Highly recommended.
Subscribe →Using Opal
Opal connects to CMS (SaaS), DAM, CMP, Experimentation, Analytics, and ODP. Create content, manage campaigns, and analyse results — all via natural language.
View docs →Skills (Context)
Skills are custom instructions shaping Opal's behaviour. Organisation skills enforce brand standards; personal skills define individual preferences. Access via Context > Skills.
View docs →Agents
Build and deploy specialised AI agents via Agent Builder. Browse the Agent Directory for pre-built agents covering content generation, experimentation, commerce, SEO, and more.
View docs →Quick Reference Links
Resources| Resource | Link | Type |
|---|---|---|
| Content Modelling | View → | Dev |
| Defining Content Types (Developer) | View → | Dev |
| Develop Content (Developer) | View → | Dev |
| Configure Visual Builder (Developer) | View → | Dev |
| Manage Styles (Developer) | View → | Dev |
| Rendering (Developer) | View → | Dev |
| Best Practices | View → | Core |
| Get Started with Visual Builder | View → | New |
| Blueprints | View → | Core |
| Styles | View → | Core |
| Creating Pages | View → | Core |
| Creating Blocks | View → | Core |
| Resource | Link | Type |
|---|---|---|
| GraphQL Schema (Developer) | View → | Dev |
| Getting Started (Developer) | View → | Dev |
| Example Search Page (Developer) | View → | Dev |
| Search UI | View → | Core |
| Search Capabilities | View → | New |
| Semantic Search | View → | AI |
| Synonyms | View → | Core |
| Pinned Results | View → | Core |
| Boosting | View → | Core |
| Resource | Link | Type |
|---|---|---|
| SaaS CMS Overview | View → | Core |
| Find Content | View → | Core |
| Dashboard | View → | Core |
| Approval Sequences | View → | Core |
| Approve Content | View → | Core |
| Opal Chat | View → | AI |
| Release Notes | View → | New |
| Resource | Link | Type |
|---|---|---|
| Get Started with Visual Builder | View → | New |
| Create from Scratch | View → | Core |
| Create from Blueprints | View → | Core |
| Saving Blueprints | View → | New |
| Styles | View → | Core |
| Create a Page | View → | Core |
| Create a Shared Block | View → | Core |
| Assets | View → | Core |
| Previewing Content | View → | Core |
| Publishing Content | View → | Core |
| Resource | Link | Type |
|---|---|---|
| Comparing Content | View → | Core |
| Translations | View → | New |
| Deleting Content | View → | Core |
| Content Manager | View → | New |
| DAM | View → | DAM |
| Forms | View → | Core |