HomeDev GuideAPI Reference
Dev GuideAPI ReferenceUser GuideGitHubNuGetDev CommunityDoc feedbackLog In
GitHubNuGetDev CommunityDoc feedback


Note

The Full-text Search Service applies to Optimizely Content Management System (CMS 11) and is not supported on Optimizely Digital Experience Platform (DXP) and other cloud service deployments. It is a legacy feature that will be removed in future versions. **This section is not supported for ASP.NET Core-based applications.**

The Optimizely full-text search client (FTS Client) configuration is in the ** EPiServer.Search** section of _web.config_ and is accessible through the `EPiServer.Search.SearchSettings.Config` property. Most of the values have defaults and are not required. The following tables show section and element names and their defaults.

## SearchSection

AttributeTypeDefault ValueComment
activeboolRequired, no default valueIndicates whether the Client makes a request to the configured indexing service.The SearchHandler throws an exception if a request occurs.
dequeuePageSizeint50Page size to use when dequeueing queue items. How many items that fit into one feed.
dynamicDataStoreNamestringIndexRequestQueueDataStoreName of the Dynamic Data Store used by the FTS client.
htmlStripDisplayTextbooltrueIndicates whether the **DisplayText** field is stripped of HTML tags.
htmlStripMetadatabooltrueIndicates whether the **MetaData** field is stripped of HTML tags.
htmlStripTitlebooltrueIndicates whether the Title field is stripped of HTML tags.
indexingServiceFieldNameAclstringEPISERVER\_SEARCH\_ACLName for the **ACL** field in the indexing service.
indexingServiceFieldNameAuthorstringEPISERVER\_SEARCH\_AUTHORSName for the **Authors** field in the indexing service.
indexingServiceFieldNameCategoriesstringEPISERVER\_SEARCH\_CATEGORIESName for the **Categories** field in the indexing service.
indexingServiceFieldNameCreatedstringEPISERVER\_SEARCH\_CREATEDName for the **Created** field in the indexing service.
indexingServiceFieldNameCulturestringEPISERVER\_SEARCH\_CULTUREName for the **Culture** field in the indexing service.
indexingServiceFieldNameDefaultstringEPISERVER\_SEARCH\_DEFAULTName for the default searchable content field in the indexing service.
indexingServiceFieldNameDisplayTextstringEPISERVER\_SEARCH\_DISPLAYTEXTName for the **DisplayText** field in the indexing service.
indexingServiceFieldNameIdstringEPISERVER\_SEARCH\_IDName for the **Id** field in the indexing service.
indexingServiceFieldNameItemStatusstringEPISERVER\_SEARCH\_ITEMSTATUSName for the indexing service field name **ItemStatus**.
indexingServiceFieldNameModifiedstringEPISERVER\_SEARCH\_MODIFIEDName for the **Modified** field in the indexing service.
indexingServiceFieldNameTitlestringEPISERVER\_SEARCH\_TITLEName for the **Title** field in the indexing service.
indexingServiceFieldNameTypestringEPISERVER\_SEARCH\_TYPEName for the **Type** field in the indexing service.
indexingServiceFieldNameVirtualPathstringEPISERVER\_SEARCH\_VIRTUALPATHName for the **VirtualPath** field in the indexing service.
maxHitsFromIndexingServiceint500Number of total hits to be returned by the indexing service for each search result request.
namedIndexesUriTemplatestring/namedindexes/ <br>?accesskey={accesskey}Template to use when getting the configured named indexes for the index. Items within {} are replaced during the request.
queueFlushIntervalint30Interval (in seconds) to flush the queue. Overrides the **queuelimit**.
resetHttpMethodstringPOSTHTTP method for **Reset index** requests to the indexing service.
resetUriTemplatestring/reset/ <br>?namedindex={namedindex} <br>&accesskey={accesskey}Template to use when resetting the index. Items within {} are replaced during the request.
queueLimitint10Number of items allowed in the queue before flushing the queue and sending the request feed to the indexing service.
removeProcessedQueueItemsbooltrueIndicates whether the items in the queue are removed after they are sent to indexing service.
resetUriTemplatestring/reset/ <br>?namedindex={namedindex} <br>&accesskey={accesskey}Template to use when resetting the index. Items within {} are replaced during the request.
searchUriTemplatestring/search/ <br>?q={q} <br>&namedindexes={namedindexes} <br>&offset={offset} <br>&limit={limit} <br>&format=xml <br>&accesskey={accesskey}Template for search requests to the indexing service. The Http method is always **GET**. <br>Required replaceables: **{q}**, **{namedIndexes}**.
syndicationFeedAttributeNameTotalHitsstringTotalHitsName of the attribute extension **TotalHits** which is added to the feed for the **IndexResponseItem**.
syndicationFeedAttributeNameVersionstringVersionName for the syndication feed attribute extension **Version**.
syndicationItemAttributeNameAutoUpdateVirtualPathstringAutoUpdateVirtualPathName of the attribute extension **AutoUpdateVirtualPath** which is added to the **IndexRequestItem**.
syndicationItemAttributeNameBoostFactorstringBoostFactorName of the attribute extension **BoostFactor** which is added to the **IndexItemBase**.
syndicationItemAttributeNameCulturestringCultureName of the attribute extension **Culture** which is added to the **IndexItemBase**.
syndicationItemAttributeNameDataUristringDataUriName of the attribute extension **DataUri** which is added to the **IndexItemBase**.
syndicationItemAttributeNameIndexActionstringIndexActionName of the attribute extension **IndexAction** which is added to the **IndexRequestItem**.
syndicationItemAttributeNameItemStatusstringItemStatusName for the syndication item attribute extension **ItemStatus**.
syndicationItemAttributeNameNamedIndexstringNamedIndexName of the attribute extension **NamedIndex** which is added to the **IndexItemBase**.
syndicationItemAttributeNamePublicationEndstringPublicationEndName for the syndication feed item attribute extension **PublicationEnd**.
syndicationItemAttributeNamePublicationStartstringPublicationStartName for the syndication feed item attribute extension **PublicationStart**.
syndicationItemAttributeNameReferenceIdstringReferenceIdName of the attribute extension **ReferenceId** which is added to the **IndexItemBase**.
syndicationItemAttributeNameScorestringScoreName of the attribute extension **Score** which is added to the **IndexResponseItem**.
syndicationItemAttributeNameTypestringTypeName of the attribute extension **Type** which is added to the **IndexItemBase**.
syndicationItemAttributeNameVersionstringVersionName of the attribute extension **Version** which is added to the **IndexItemBase**.
syndicationItemElementNameAclstringACLName of the attribute extension **ACL** which is added to the **IndexItemBase**.
syndicationItemElementNameMetaDatastringMetadataName of the attribute extension **MetaData** which is added to the **IndexItemBase**.
syndicationItemElementNameVirtualPathstringVirtualPathName of the attribute extension **VirtualPath** which is added to the **IndexItemBase**.
updateUriTemplatestring/update/ <br>?accesskey={accesskey}Template to use when updating the index. Items within {} are replaced during the request.
useIndexingServicePagingbooltrueIndicates whether the indexing service is supposed to return paged result sets. Set this to false if any client filter is plugged in so that maximum items are returned from indexing service and the paging occurs client-side on filtered results.
xmlQualifiedNamespacestringEPiServer.Search.IndexingServiceNamespace to use for the feeds and the feed items.
ElementTypeComment
namedIndexingServicesNamedIndexingServicesElementNamed indexing services element that configures the available service endpoints.
searchResultFilterSearchResultFilterElementSearch result filter element that configures the filter provider to use after retreiving search results from service

## SearchResultFilter element

The `SearchResultsFilter` element is nested within the **EPiServer.Search** section. The element itself only has one attribute but it also may contain a collection of providers to customize filtering of search results. Add providers to the `providers` collection using the standard ASP.NET provider syntax.

AttributeTypeDefault ValueComment
defaultIncludeboolfalseIndicates whether unhandled **IndexResponseItems** are included by default in the search results.
ElementTypeComment
providersProviderSettingsCollectionCollection of **SearchResultFilterProviders** for filtering search results.

## NamedIndexingServices element

The `namedIndexingServices` element is nested within the **EPiServer.Search** section. The element itself only has one attribute but must also contain a collection of `namedIndexingService` elements with at least one entry.

AttributeTypeDefault ValueComment
defaultServicestringRequired, no default value.Name of the default service to use.
ElementTypeComment
servicesNamedIndexingServiceCollectionContains the available services. You can pass the current service as **Name** when updating or searching the index.

## NamedIndexingService element

The `namedIndexingService` element contains the information the FTS client needs to call a specific FTS service.

AttributeTypeDefault ValueComment
accessKeystringRequired, no default valueAccess key for this named indexing service. Configure this key on the service side.
baseUriUriRequired, no default valueBase URI for this named indexing service.
certificateAllowUntrustedboolfalseIndicates whether the client accepts communication with a FTS service that uses an untrusted SLL certificate.
nameNameRequired**key attribute**, <br>no default valueName of the indexing service.
ElementTypeComment
certificate[CertificateReferenceElement](🔗)Settings for certificate validation when connecting to the service.