Updating databases
In most cases FACT-Finder handles data updates itself. However, depending on the definition of the update process, the import will not be initiated by FACT-Finder itself, but via the Import interface. This makes sense especially if the data is provided using the Push method.
If a URL from which your export data can be drawn is stored in the FACT-Finder Search configuration, it is possible to download this before the import, so that it can be loaded.
REST-Interface
FACT-Finder 7.3 adds a REST-API. The search application contains the technical documentation and can be accessed via this URL:
$stringEscapeUtils.escapeHtml($body)
The interface offers not only the parameter documentation, but also the option to test a query and review the result. The documentation was created with Swagger, you can use Swagger Codegen to generate a client for it and use it for your code.
Methods for updating the databases can be found under import
.
HTTP-Interface
You can start a FACT-Finder data import by addressing the URL below. The parameters influence how the import is carried out and the results achieved:
$stringEscapeUtils.escapeHtml($body)
If no specific channel is defined, the import is carried out for all channels. If you only want to update the database for a specific channel, you must send the name of the channel as the value of the parameter channel
.
The parameter download=true
causes the import file to be updated first. If no URL is stored in the FACT-Finder configuration, this parameter has no effect.
In addition to the data import for normal search data, you can also start an import for the Suggest database; the parameter type=suggest
must be sent for this purpose.
Normally this interface returns an HTML page. If the parameter format=xml
is sent, the result is returned in XML format, which is better for machine processing. If you only want to receive a response if an error occurs during the import, attach the parameter quiet=true
(this parameter is independent of the format parameter). The response has the following format:
<importProgress>
<currentChannel/>
<progress>0</progress>
<percentage/>
<totalPercentage/>
<finished>false</finished>
<running>true</running>
<status>
<message>... A Status message ...</message>
</status>
<errors>
<message>...An error message...</message>
</errors>
</importProgress>
Webservice/SOAP-Interface
End of Life
Please note: the SOAP interface will no longer be updated or upgraded. We recommend the REST-API for new customers. If you have been using the SOAP interface so far, you can go on using it. We do however recommend changing your integration interface to improve performance.
As with the search, the path to the WSDL depends on the version of FACT-Finder used.
$stringEscapeUtils.escapeHtml($body)
You start the import processes using the methods startImport, startImports, startSuggestImport
and startSuggestImports
. As a result you will receive a map that can contain ERRORS or STATUS as a key. A list of reports will be returned as the value of the key. If you call startImports
, the result is stored in another map, which contains the particular channel name as the key.
If an update URL is configured for the product data, some methods of the product export file can be updated in advance via the download flag. If this is not the case the method downloadProductExport
can be used for updating the product data. This method accepts as parameters the channel name, the file name (fileType
), the URL and the user data. The file name is configured permanently in the FACT-Finder search. By default it is productData
, but ask to be sure or look in the configuration.