Skip to main content
Skip table of contents

Installing the Review Application

Review is a web application that users run to validate and modify automatically classified documents before starting the automated workflow.

Ensure that OpenText™ Content Server or other Enterprise Content Management System is installed. This is the migration destination and is required for the full functionality of Review.


Setting up this application involves three steps:

  1. Create the folder structure

  2. Configure the Review application settings

  3. Set up the Review site in Internet Information Services (IIS) Manager

What You Will Need




Review application binaries

Creating the Folder Structure

  1. Create a Shinydocs Review folder in the C:\inetpub folder

  2. Right-click on the shinydocs-review-[VERSION]-[DATE].zip file and Unblock

  3. Apply

  4. Unzip the content into C:\inetpub\Shinydocs Review

Configuring the appsettings-review.json File

The appsettings-review.json file in C:\inetpub\Shinydocs Review is used to configure Review. Configure this file to point to your Content Server to update the Review display settings.

In your preferred text editor, open appsettings-review.json and modify the following values as required.






The URL to the index server


The URL to the OTDS server for content server authentication


The URL to Content Server



The indices that Review should display results from. Add multiple indexes using the following format: [“index1”,” index2”,” index3”]



The type of index being used, always Shinydocs



The name of the index that contains the document type definitions. This should match the value from Workflow



The classifications index name created by the Workflow service



The field in the configured indices which indicates the type of document. This should match Workflow



Used to tune the search query for the home page results



Used to tune the search query for home page results



The maximum file size to display in the preview. Any file beyond this size will display a message in the preview window indicating the file is too large to preview



Columns to display in automation review on the search results page. Must match index field names



An array of AD usernames that can cancel reservations for any user.



When displaying the folder browser, which container subtypes within the Content Server should be displayed. Defaulted to folders (subtype 0)



When getting a list of folders from content server, how many should be returned in a page



How to connect to content server. Possible values are:

  • KerberosImpersonation (default)

  • AppPoolUser

  • ContentServerUsernameAndPassword

KerberosImpersonation connects to Content Server as the user accessing the application using Kerberos.

AppPoolUser connects to Content Server as the application pool user in IIS.

ContentServerUsernameAndPassword connects to Content Server using the username and encrypted password that is specified in the appsettings-review.json file


Not specified by default

If the AuthenticationType above is set to ContentServerUsernameAndPassword, this would be the user name to connect to Content Server with


Not specified by default

If the AuthenticationType above is set to ContentServerUsernameAndPassword, this would be the encrypted password to connect to Content Server with.

The password can be encrypted using the CognitiveToolkit command SaveValue, and copied from the resulting saved-parameters.yml file.

Note: The command must be run as the same user running the application pool in IIS since the password is encrypted as the current user on the windows operating system



The hosts allowed to access the system. This is a default parameter provided in the application



This is the root node id in Content Server that the folder browser should be displayed from



Session timeout for the cookie that is set to store a authentication token from OTDS when using Kerberos Authentication



How often should the reservation watch be executed to clean up expired reservations



How long should a reservation be idle for before it being cleaned up by the reservation watcher job



This is used to map Attributes from Content Server to the index if they do not follow the generated naming standard. This typically does not need to be added unless the Content Server Attribute name characters which are not valid in an index name



How documents are grouped in the results shown on the home page



This disables Table Key attribute value lookup in content server when validating a result


"numerator": "completedFields",
"denominator": "totalFields",
"friendlyColumnHeading": "Complete?"

This combines two columns together to display as a fraction.

The “numerator” is the column whose value is displayed as the numerator

The “denominator”: the column whose value is displayed as the denominator

The “friendlyColumnHeading” is the title for the combined column



    "name_original": "File Name",

    "name_new": "Suggested Name",

    "automator_document_type": "Form Number",

    "extension": "File Type",

    "automationReviewReservation.reservationTimestamp": "Reserved",

    "automationReviewReservation.reservedBy": "Reserved by"


This provides a mechanism to display friendly names for index field names in Review. The format is “index field name”: “Friendly Name”



Displays a confirmation modal when the Publish or the Save draft button is clicked before updating the index



The index field name used to display a document title in the validation page


["Duplicate", "Draft", "Rescanning Required"]

A configurable list of rejection reasons that display when a user rejects a document. The user also has the option to provide other reasons based upon their business use cases


"MinimumLevel": {
      "Default": "Information",
      "Override": {
        "Microsoft": "Warning",
        "Microsoft.AspNetCore": "Warning"
    "WriteTo": [
        "Name": "File",
        "Args": {
          "path": "C:\\inetpub\\logs\\automation-review\\automation-review-.log",
          "rollingInterval": "Day",
          "rollOnFileSizeLimit": true,
          "fileSizeLimitBytes": 104857600,
          "outputTemplate": "[{Timestamp:HH:mm:ss} {Level:u3}] {Message:lj}{NewLine}{Exception}"


Serilog logging settings. More details can be found at the serilog site.

The default is to write a rolling log file to C:\inetpub\logs\automation-review\automation-review-{date}.log with a max size of 100 Mb

The default log level is Information


Setting up the Review Site in IIS Manager

Adding a new website

  1. Under Sites within IIS Manager:

    1. Add a new Website by right-clicking Sites

    2. Name your site (For example, “Shinydocs Review”)

    3. Point the Physical path to C:\inetpub\Shinydocs Review

    4. Provide a port that is not already in use

    5. Click OK once you are satisfied with the new site configurations

Updating the Site Permissions

  1. Add the user IIS_IUSRS to have access to the C:\inetpub\Shinydocs Review folder

Setting up the Site Application Pool

  1. Start IIS Manager

  2. Select Application Pools

  3. Right-click the Shinydocs Review app pool

  4. Select Advanced Settings

  5. Edit as follows:

    1. Ensure the version selected for .NET CLR version is the latest

    2. Select Classic in Managed pipeline mode

    3. Scroll to Process Model 

    4. Select and edit the Identity: ApplicationPoolIdentity

    5. Change to Custom account: and select Set…

    6. Set Credentials: Input the service account information

  6. Click OK

Setting up the Site Authentication

  1. Select your site and double-click Authentication under the IIS column to open the Authentication Settings.

  2. Enable ONLY the following:

    1. Windows Authentication

    2. ASP.NET Impersonation

Setting up Kerberos Passthrough

Shinydocs Review uses IIS and Windows Authentication with Kerberos to authenticate a user from their browser. The following guide will help you set up your Windows Server environment to support Automation Review with Kerberos pass-through (2 hop authentication) in Setting up Kerberos authentication in Cognitive Suite documentation.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.