FACT-Finder search parameters


Search parameters are used to tell FactFinder what product data to return. 


Whenever data is passed to FactFinder via a URL, it is important that the encoding is set correctly. If this is not the case, special symbols and accented characters will be processed incorrectly. The default URL encoding scheme for FactFinder is UTF-8.


The available search parameters are also documented in the Swagger-UI under the method search.

Basic Parameters

Name

Description

query*
string

(query)


The search term indicates the term or phrase that is to be used to search in the FactFinder database. This and the channel parameter are the only mandatory parameters.

channel*
string

(path)

If your search environment consists of multiple channels, you can define which channel to search here. If no channel is specified, the first channel in the channel list is used.

page
integer

(query)

If a search result contains many results these will be divided into pages. This limits the amount of data that has to be sent in one go. You can indicate which page should be returned. Page numbering starts at 1.

hitsPerPage
integer

(query)

In the FactFinder Management Interface you can define how many results will be returned on a page by default. If you prefer another number, you can set it with this parameter.

sort
array [string]

(query)

By default the result that is returned has been sorted for relevance. However, you can specify a different sort order here. It is also possible to sort by more than one criterion. Each sort criterion is applied sequentially.

use FieldName Relevancy to sort the relevancy; format: FieldName:order order must be either asc or desc; example Manufacturer:asc

filter
array [string]

(query)

Filter for the whole field value; a filter can have multiple values, the values can be separated with the following characters (they are configurable in the config.xml)

‘and’ = ___

‘or’ = ~~~

the filter value can be excluded with the prefix ! format: facetid:value; example Red~~~!Green = red or not green


Numeric filters use the standard mathematical interval notation, but only intervals that are closed on the left side and open on the right side are allowed as input. Thus, only intervals of the form [a,b), [a,), or [a,] are allowed. Square brackets mean that the corresponding boundary value is enclosed, round brackets mean that the boundary value itself is not enclosed.

For values of type date, the same notation can be used as for numeric filters, i.e. as for filters for types integer and decimal:
For example, to allow all items with a start date within 90s and hide all other dates, a filter could look like this:

filter=startdate1:[1990-01-01T00:00:00+00:00,2000-01-01T00:00:00+00:00)

The format of the date can be either ISO-8601 with timezone (yyyy-MM-dd'T'HH:mm:ssZZ), unix timestamp in milliseconds or the format which is defined for the field.

substringFilter
array [string]

(query)

Filter for a sub string of the field value; a filter can have multiple values, the values can be separated with the following characters (they are configurable in the config.xml)

‘and’ = ___

‘or’ = ~~~

the filter value can be excluded with the prefix ! format: facetid:value; example Red~~~!Green = red or not green

searchField
string

(query)

Normally FactFinder searches all fields defined as searchable. However it is possible to search only one specific field as well.

articleNumberSearch
string

(query)

Specifies if the query should be interpreted as article number

Default value: DETECT

sid
string

(query)

The Session-ID 

userInput
string

(query)

Use this parameter to send the characters the shop user entered until the search query was triggered.

queryFromSuggest
boolean

(query)

This parameter indicates that the FactFinder query was triggered through a selection from the suggestion list. In this case send the parameter with the value true.

*Pflicht-Parameter

Parameters used to control the search process

 Name

Description

useSearch
boolean

(query)

If true, search will be executed for the query.

Default value: true


useAsn
boolean

(query)

If true, filters should be generated for the result.

Default value: true

useFoundWords
boolean

(query)

FactFinder is able to return the words that were used to find the data record for the located records. Determining these words takes up CPU time. For this reason, the function is disabled by default. Set the parameter to true to generate the search words or false if you do not want to generate search words. The default value is false.


useCampaigns
boolean

(query)

If you want to prevent the Campaign Manager from checking whether the search query matches a campaign, use this parameter. true = campaigns are evaluated and returned as appropriate, false= campaigns are ignored.

More detailed information about the Campaign Manager can be found in the specific documentation.


idsOnly
boolean

(query)

The result normally contains all field information about the products that have been found. If you only need the IDs, you can request for the field contents not to be returned, thus saving bandwidth. True = do not pass field content. The default value is false.

useCache
boolean

(query)

If true, the search result will be returned from cache memory, if a possible matching result exists.

Default value: true

cacheIrrelevant
array [string]

(query)

Flag parameters as cache irrelevant.

usePersonalization
boolean

(query)

Allows the activation/deactivation of the personalization of queries. true = the search result will be personalized if the personalization module is activated and all other requirements are met; false = the search result will not be personalized. The default value is true.

useSemanticEnhancer
boolean

(query)

Allows the activation/deactivation of the semantic enhancement of queries. true = the search result will be semantically enhanced if the enhancer module is activated and all other requirements are met. false = the search result will not be enhanced. The default value is true.


useAso
boolean

(query)

Allows the activation/deactivation of the automatic search optimization. true = the search result will be optimized. false = the search result will not be optimized. The default value is true.


maxCountVariants
integer

(query)

The maximum number of variants to return for every record

advisorStatus
string

(query)

For specifying the current campaign id and answer path;

format: campaignId-answerPath


useDeduplication
boolean

(query)

If true, the configured deduplication of variants will be used.

Default value: true


deduplicationField
string

(query)

Specifies on which field variants should be deduplicated.

Additional parameters


Description

URL-Parameter

Return format

Since the XML and JSON interfaces are invoked via URL, a parameter is required to indicate the format in which the result should be delivered.

The parameter has the name format. If it is not assigned a value, the result will be returned in HTML. Possible values are xml, json and jsonp.

Return version

To ease the migration to newer versions, FactFinder contains versioned APIs. Due that, an update to a newer FactFinder version can be done without touching the integration code. If necessary the integration code can be adjusted afterwards to use new functions.

The wanted return version is defined by the parameter version.

In FactFinder 7.2 you can use the values 6.11, 7.0, 7.1 and 7.2.

Please note that a default version is defined as application settings, so using this parameter isn’t necessary by default.

Hide application name

The returned search parameter URLs normally start with the name of the FactFinder server application. However, this can be disabled. This function may be useful in load-balanced installations in which the different FactFinder applications have different names, for example. It can also be used in “normal” deployment scenarios in order to reduce the volume of data being

If you pass omitContextName = true the URLs start with the action name rather than the application name.

Logfile description

Sometimes it is useful to add a description to a log file, for example if only certain search request should be evaluated. The description will then be seen in the log file analysis.

The value may only contain letters and numbers.

The needed parameter has the name log and has to be passed in addition to the search query. The value of the parameter is the description of the log file.