Area: Optimizely CMS
Applies to versions: 12 and higher
Other versions:

Configuring CMS

Recommended reading 

This describes the various option classes that are part of the Cms section of the configuration. The Configuration topic describes the syntax used to configure options from various configuration sources such as configuration files or environment variables.

In this topic


Contain settings for database access.

Name Default value Description
ConnectionStrings  The connectionstrings for CMS to use.
DefaultConnectionStringName  EPiServerDB The name of the connection string for CMS to use as default.
Retries 3 The number of retries that should be performed for transient errors.
RetryDelay 100 ms The time to delay before a retry is applied.
DatabaseQueryTimeout 30 s The timeout to use for database connections.
DatabaseMode ReadWrite The database mode the application executes under. DatabaseMode enum has the following values:
  • ReadWrite. The database supports both read and write operations.
  • ReadOnly. The database only supports read operations.
DisableDateTimeKindValidation false Specifies if UTC validation of times in database should be disabled.
UpdateDatabaseSchema true Specifies if database schema changes should be automatically applied.
CreateDatabaseSchema true Specifies if the database schema should be created if it does not exist.


Contain settings for Dynamic Data Store (DDS).

Name Default value Description
AutoResolveTypes  true Specifies if automatic type resolving should be used.
AutoRemapStores true Specifies if dynamic data store should automatically remap store definitions that has changed.
DeleteAllOperationTimeout   10 min The timeout used when all items in a store is deleted.


Contain settings for event provider used in communication between applications.

Name Default value Description
EventProviderBuilder  Optional delegate that can be specified to create an instance of an EventProvider.
Provider  NullEventProvider The type string of the EventProvider to use.


Contain settings for the BLOB provider used to manage binary data, for example, related to media.

Name Default value Description
BlobProviderBuilder  Optional delegate that can be specified to create an instance of a BlobProvider.
DefaultProvider "default" The name of the provider that is used as default blob provider.
Providers  FileBlobProvider A dictionary of providers to use. If no providers are specified,FileBlobProvider is used as default.


Contain settings for the file-based BLOB provider when such is configured to be used as BLOB provider.

Name Default value Description
Path  "App_Data\blobs" The physical path to where file blobs are stored. If path is not rooted then it is considered relative to IHostEnvironment.ContentRootPath.
KeepStructure false Set to true to keep created folder structure even if folders are empty.


Contain settings for the application environment.

Name Default value Description
AppDataPath  "App_Data" The path to where application specific resources are stored such as file-based BLOBS.


Contain settings for localization of texts used in, for example, the edit user interface.

Name Default value Description
FallbackBehavior  FallbackBehaviors.FallbackCulture | FallbackBehaviors.Echo Specifies which fallback behavior to use when a localization string does not exist. FallbackBehaviors enum has the following values:
  • None. An empty string is returned.
  • Echo. The key is returned unmodified.
  • MissingMessage. A message saying that no resource was found is returned.
  • FallbackCulture. The resource is returned using the fallback culture if no match is found. Requires a fallback culture to be specified.
  • Null. A null string is returned.
FallbackCulture "en" Specifies which fallback culture that is used when a localization string does not exist in a specific language.
Providers A list of localization providers to use.


Contain settings for content media.

Name Default value Description
ExpirationTime  12 hours The expiration value that is set on cache headers for publicly accessible media.
CacheControl auto Setting for the Cache-Control header. auto means that it is set as public if media is publicly accessible; if not, it is set as private. Possible values are values that are acceptable as Cache-Control header value.
DefaultContentType application/octet-stream The default content type for a request if the ContentType cannot be determined from context.
PreProcessors MediaOptionsStaticFilePreProcessor A list of pre processors called before the body of a media request is written. A pre processor can be used to set or modify response headers.


Contain settings for virtual roles.

Name Default value Description
Roles Everyone, Anonymous, Auhtenticated A list of the virtual roles defined in CMS. 


Contain settings for how claims should be handled for synchronized users.

Name Default value Description
Email ClaimTypes.Email Specifies which claim contains email address. 
GivenName ClaimTypes.GivenName Specifies which claim contains given name.
Surname ClaimTypes.Surname Specifies which claim contains surname.


Contain settings for how client resources should be handled.

Name Default value Description
Debug false Set to true to get non-optimized scripts that can be used for debug purpose.
Compress true Specifies if client-resource responses should be compressed.
JsonResponseBuffer 1000*256 Specifies the buffer size for JSON responses  buffered before written to response.


Contain settings for the composite file provider.

Name Default value Description
BasePathFileProviders   A list of IBasePathFileProvider that the composite file provider will use.


Contain settings for client geolocation. 

Name Default value Description
LocationHeader Specifies HTTP header to resolve client geolocation in the form of an ISO 3166-1 Alpha-2 country code.
IPAddressHeader The name of a header that is used to retrieve the IP address of the client.
This setting should be used if the site is located behind a proxy server to get the right IP address of the client.
IPAddressHeaderProxyCount 1 The number of proxy servers in front of the web server listed by IP in the IPAddressHeader.


Contain settings for visitor groups.

Name Default value Description
StatisticsPersistanceInterval 20 min Specifies how often visitor group statistics are persisted.
EnableStatistics true Specifies if statistics over visitor groups should be collected.
EnableSession false Specifies if visitor group data should be stored in session.


Contain settings for how content should be managed.

Name Default value Description
VersionCacheSlidingExpiration 10 min Specifies a sliding cache timeout for content versions. Set to "0:0:0" to disable caching of versions.
ContentCacheSlidingExpiration 12 hours Specifies a sliding cache timeout for published content. Set to "0:0:0" to disable caching of published content.
StringCompressionThreshold 0 Specifies the number of characters for when compression should be activated for long strings. 0 means compression is disabled.
PropertyLazyLoadThreshold 255 Specifies the number of characters for when a long string property should be lazy loaded.
MaximumVersions 20 Specifies the maximum number of previously published versions that will be kept.
InMemoryCopyThreshold 50 Specifies the maximum number of content items for when content copying is done in memory.
MaximumContentItemsPerDatabaseRequest 2000 Specifies the maximum number of content items that are loaded in a same database request.
InvalidateRemoteCacheForVersions true Specifies if a version change should be propagated to other instances of the application.
EnableDynamicProperties false Specifies if dynamic properties should be enabled.
ProxyType Auto Specifies which type of proxies that should be used for content. ProxyType enum has the following values:
  • Auto. Optimized proxies are used unless there are custom castle extensions registered.
  • Castle. Castle proxies are used.
  • Optimized. Performance optmized proxies are used.
Providers A dictionary of the content providers to use. 


Contain settings for content modelling.

Name Default value Description
EnableModelSyncCommit true Set to false to disable the commit phase when synchronizing typed models. Content types will not be updated automatically.
EnableSemanticVersioning false Set to true to enable semantic versioning of models.
AlwaysUseModelName false Specifies if the Model name of the class always should be the name of the content type.


Contain settings for content routing.

Name Default value Description
StrictLanguageRouting true Defines if strict language determination should be used during routing.
UseTrailingSlash true Gets or sets a value indicating whether a trailing slash should be added for urls to content, except if content segment has an extension.
UrlCacheExpirationTime 5 min Specifies the sliding cache timeout for generated content urls.
ShortcutRedirection HttpRedirect.Permanent Specifies how redirection for shortcuts should be handled. HttpRedirect enum has the following values:
  • None. No redirection is done.
  • Temporary. A temporary redirection is done.
  • Permanent. A permanent redirection is done.
UsePrimaryHostForOutgoingUrls false Specifies that the host specified as HostDefinitionType.Primary should be used when generating outgoing url. Note: This setting is considered a pre-release API and might change in a minor version.


Contain settings for how URL segments should be managed.

Name Default value Description
UseLowercase true Indicates if only lowercase characters should be used in URL segments.
SupportIriCharacters false Indicates if segments supports IRI characters. ValidCharacters are set to allow characters that are not allowed in URL segments according to URL specification. This should be set to true to indicate that segment might need encoding.
ValidCharacters "A-Za-z0-9\-_~\.\$"; Gets or sets the characters that are valid to use as URL segment, will be used as argument to Regexp.
CharacterMap Specifies a mapping table for characters not allowed due to ValidCharacters.
ReservedSegments A list of reserved segments that are not allowed as URL segment.


Contain settings for how scheduled jobs should be managed.

Name Default value Description
Enabled true Specifies if scheduled jobs should be enabled for the application.
MaximumExecutionAttempts 10 Specifies the maximum number of times a job should be re-scheduled for execution when the prior execution was interrupted due to server shutdown.
ContentCacheSlidingExpiration 1 minutes The sliding cache for how long content is cached when retrieved from a scheduled job.


Contain settings for how HTML content should be managed.

Name Default value Description
UnEncodedTags "b", "i", "u", "br" A list of HTML tags that are not encoded when HTML is inserted as text using WebStringHelper.EncodeForWebString.


Contain settings for CMS edit user interface.

Name Default value Description
UtilUrl "~/Util/" Gets or sets the URL to the Util part of the UI application. It must be a Web URL, and may include scheme and port.
EditUrl "~/EPiServer/CMS/" Gets or sets the URL to the edit UI. It must be a Web URL, and may include scheme and port.
ApprovalStepRoleUserLimit 100 Defines the amount of user roles which would trigger a warning when an administrator sets up an approval step.
WebSocketEnabled true Defines if the WebSocket connection between server and the client should be enabled.
PermanentEditRetainPeriod 30 days Gets or sets the retain period for the page's "permanent edit" status.
PreviewTimeout 15000 ms The timeout in milliseconds for the time to load a preview of a content version.
UIShowGlobalizationUserInterface true Defines if the globalization module should be used.
DisableVersionDeletion false Defines if it should be possible to delete versions from UI.
AutoPublishMediaOnUpload true Specifies of media should automatically be published when uploaded to CMS.


Contain settings if there is an external separate delivery application.

Name Default value Description
OptimizeForDelivery false Can be specified to optimize ContentDeliveryAPI for CDN caching by disabling, for example, visitor group personalization.


Used to register DisplayOption with CMS.

Name Default value Description
Add Registers a DisplayOption instance.
Remove Removes a previously registered DisplayOption instance.


Contain settings for how activities should be tracked within CMS.

Name Default value Description
ArchiveRetentionPeriod 12  Gets or sets the number of months that activities should remain archived before they are deleted.
TrackContentSaveEvents false Gets or sets if Content Save events should be tracked and logged as an activity.


Contain settings for notifications sent from CMS.

Name Default value Description
NotificationEmailAddress System default email address for notification emails.
NotificationEmailDisplayName "Episerver" System default sender name for notification emails.


Contain settings for how Globalization is handled. 

Name Default value Description
CultureLanguageCode "en-US" The default CurrentCulture set for content request where the language cannot be determined from request.
UICultureLanguageCode "en" The default CurrentUICulture set for content request where the language cannot be determined from request.


Contain settings for how policies within CMS. 

Name Default value Description
EditRoles CmsEditors, CmsAdmins, Administrators The list of roles that will be checked against from policy CmsPolicyNames.CmsEdit used, for example, for CMS edit access.
PreviewRoles CmsEditors, CmsAdmins, Administrators The list of roles that will be checked against from policy CmsPolicyNames.Preview used for preview of draft versions.


Contain settings for assembly/type specific JSON serialization.

Name Default value Description
AssemblyModuleOutputFormatters Assembly-specific JSON output formatter registrations.
TypeModuleOutputFormatters Type-specific JSON output formatter registrations.
AssemblyModuleInputFormatters Assembly-specific JSON input formatter registrations.
TypeModuleInputFormatters Type-specific JSON input formatter registrations.
FallbackFormatterType NewtonSoft Formatter to use when no assembly or type registration apply.


Contain settings to configure System.Text.Json-based serializer when used as serializer for type or assembly.

Name Default value Description
SerializerOptions The JSON options that should be used by serializer instance.


Contain settings for template registration in CMS.

Name Default value Description
TemplateAssemblies Empty If specified, only assemblies within list are scanned for templates; otherwise, all assemblies in context are scanned for assemblies.
ScanViewsForTemplateRegistration true Specifies if Views should be scanned according to the convention that views with a name matching a content model is registered as a template for the content model.


Contain settings for how content areas should be rendered.

Name Default value Description
TemplateTagSelectionStrategy MissingTemplateTagSelectionStrategy.NoTag Specifies which strategy that should be applied when a ContentArea item has a display option specified that does not match any registered template.


Contain settings for assembly/type specific JSON serialization.

Name Default value Description
ExternalLinkMinimumRequestInterval 5 sec The minimum time in seconds between requests to same external host.
MaximumRunTime TimeSpan.Zero The maximum time the job will run at one time. TimeSpan.Zero means there is no max time.
RecheckInterval 7 hours The time that must elaps before a link is rechecked.
ExternalLinkErrorThreshold 100 If a consecutive number of errors on external links exceeds the threshold, the job will stop.
ExcludePatterns A list of regular expression patterns that will be ignored for links by the link validator.
InternalLinkValidation ValidationType.Api Specifies how the link validator will validate internal links. ValidationType enum has the following values:
  • Off. No validation is done for internal links.
  • Api. Internal links are checked using API calls.
  • Request. Internal links are validated through HTTP calls.
UserAgent "EPiServer Link Checker" The user agent used when using HTTP requests for link validation.
ProxyAddress Optional web proxy address for the link checker to use when validating links.
ProxyUser Optional web proxy user for to authenticate proxy connection.
ProxyPassword Optional web proxy password to authenticate the proxy connection.
ProxyDomain Optional web proxy domain to authenticate the proxy connection.


Contain settings for SMTP.

Name Default value Description
DeliveryMethod DeliveryMethod.Network Specifies which delivery method to use. DeliveryMethod enum has the following values:
  • Network. Configures the email client to send mails with SMTP.
  • SpecifiedPickupDirectory. Configures the email client to put mails on a disk folder.
SpecifiedPickupDirectory Specifies the directory given that pickup directory delivery method has been choosen.
Network Specifies various network settings given that network delivery method has been choosen.


Contain settings for network settings in SmtpOptions when network delivery options have been selected.

Name Default value Description
Host Specifies the SMTP network host to use.
Port Specifies the port for the network host.
UserName SMTP username. Leave empty to disable authentication
Password SMTP password.
UseSsl Specifies if SSL should be used.
Do you find this information helpful? Please log in to provide feedback.

Last updated: Sep 28, 2021

Recommended reading