iManage Cloud

 

Prerequisites

  • Network service account

A service account can only be used with a single SmartHub instance at any one time.

You must contact Upland BA Insight Support before deciding to use the iManage Cloud backend. Since the underlying iManage App Registration is owned by Upland BA Insight, we will need to add your SmartHub instance URL(s) to the Allowed Redirect URLs in the App Registration. You will need to provide the FederatedAuth.aspx page URL accessible from your SmartHub site. For example: https://[sh-web-app-url]/FederatedAuth.aspx

If you purchased Smart Previews, you will need to provide the OAuth.aspx page URL accessible from your Smart Previews site. For example: https://[smart-previews-web-app-url]/Pages/OAuth.aspx

Endpoints used

These are the iManage service endpoints that the backend uses:

  • AUTHORIZE ENDPOINT = {iManageServerURL}/auth/oauth2/authorize

  • TOKEN EXCHANGE ENDPOINT = {iManageServerURL}/auth/oauth2/token

  • API INFO ENDPOINT = {iManageServerURL}/api

  • SEARCH ENDPOINT = {iManageServerURL}/api/v2/customers/{customerID}/documents/search

Required User Access and Authorization

  • The authentication flow is as follows:
    • The user is redirected to iManage where he provides credentials to log in.
    • iManage redirects him back to SmartHub.
    • The user is provided only with the items for which he has access to in iManage.

How to Configure an iManage Search Engine

  1. Navigate to the SmartHub Administration page at: http(s)://[web-app-url]/_admin
    1. For example: http://smarthub.azurewebsites.net/_admin
  2. Go to the General Settings page.
  3. Add New Search Engine: Click the "Add New Search Engine" link to add your new iManage search engine.
  4. Type: Select regular
  5. From the dropdown list, select iManage Cloud.
  6. Next, enter the Name and corresponding information in the appropriate fields.
  7. If you desire, you can use your own iManage App registration, however, this is not recommended. Upland BA Insight recommends using the default app registration. For more information, see the note regarding redirect URLs above.
  8. Note: When registering the app you need some specific Redirect URLs.

Use the following table:

Property Required? Description Default Value
Client Id Yes
  • This is the Client ID provided by your iManage admin after the app was registered.

 
Client Secret Yes
  • This is the Client Secret provided by your iManage admin after the app was registered.

 
Always Exclude Emails Yes
  • Disabling this checkpoint will bring emails from iManage to SmartHub according to search criteria.

Checked

Available Filters

Copy
WorkspaceId, Author, Type, EditDateFrom, EditDateTo, CreateDateFrom, CreateDateTo,
Custom1 to Custom20, Custom29, Custom30

Note: Additional filters can be added if considered relevant (detailed list here)

Support:

iManage search engine does not support the "startswith" operator. In this case, the search within the refiners feature is limited to match exactly the value written inside search within the search box.

  • Example: doc → returns doc / docx → returns docx.

The same limitation applies in the case of property restriction queries.

Configuring Clicking Results Behavior

  • Single-click
    • Opens the document in a new tab in iManage preview
  • Double-click
    • Opens the document in the native app for that document type.
    • For example: Word for documents, PowerPoint for Presentation, etc

Prerequisites

  • The next products must be installed in your environment:
    • iManageAgentServices
    • iManageWorkDesktopforWindows
    • Office Suite

Procedure:

Use the following steps to configure your iManage results clicking behavior:

  1. Go to iManage search engine settings.
  2. In the Document Profile Fields field, add the characters "iwl".
  3. In your SmartHub settings file, and add FieldsToInclude from ContentContainers to the MainResults "iwl" property

  4. Inside the MainResults option from ContentContainers:

  5. Replace the last return:

    Copy
    "return SH.RootLevelURL + "/modules/ContentContainers/templates/iManageResultItemTemplate.html";"

    With the following code:

    Copy
    "return SH.RootLevelURL + "/modules/ContentContainers/templates/iManageResultItemTemplate.html";"