Analytics Conceptual Index (REST)

A conceptual index is a type of index used by Relativity Analytics. It uses Latent Semantic Indexing (LSI) to discover concepts between documents. This indexing process is based solely on term co-occurrence. The language, concepts, and relationships are defined entirely by the contents of your documents and learned by the index. For general information, see Analytics indexes and on the RelativityOne Documentation site.

The Analytics Conceptual Index service supports programmatically managing conceptual indexes in Relativity Analytics. It includes the following features:

  • Supports CRUD operations on Analytics indexes.
  • Provides helper endpoints that simplify working with index jobs. You can use these endpoints to submit and cancel jobs, and to check on their statuses. These jobs can populate new data, build new indexes, and activate indexes for use.

As a sample use case, you might use the Conceptual Index service in an application to programmatically operate on a conceptual index.

You can find the REST Service reference documentation and download the OAS specification file in this topic. You can also use the Conceptual Index service through .NET. For more information, see Analytics Conceptual Index (.NET).

Guidelines for using the Conceptual Index service

Review the following guidelines for working with the Conceptual Index service. For additional information, see Analytics Conceptual Index (.NET).

URLs

The URLs for REST endpoints contain path parameters that you need to set before making a call:

  • Set the {versionNumber} placeholder to the version of the REST API that you want to use, using the format lowercase v and the version number, for example v1.
  • Set other path parameters in the URLs to the Artifact ID of a given entity, for example setting {workspaceID} to the Artifact ID of a workspace.
  • Note: To indicate the admin-level context, set the {workspaceID} path parameter to -1.

For example, you can use the following URL to retrieve a conceptual index:

Copy
<host>/Relativity.REST/API/conceptual-analytics/{versionNumber}/workspaces/{workspaceID}/indexes/{indexID}

Set the path parameters as follows:

  • {versionNumber} to the version of the service, such as v1.
  • {workspaceID} to the Artifact ID of the workspace that contains the index.
  • {indexID} to the Artifact ID of a specific index.

Postman sample file

You can use the Postman sample file to become familiar with making calls to endpoints on the Agent Manager service. To download the sample file, click Conceptual Index Postman file.

To get started with Postman, complete these steps:

  1. Obtain access to a Relativity environment. You need a username and password to make calls to your environment.
  2. Install Postman.
  3. Import the Postman sample file for the service. For more information, see Working with data files on the Postman web site.
  4. Select an endpoint. Update the URL with the domain for your Relativity environment and any other variables.
  5. In the Authorization tab, set the Type to Basic Auth, enter your Relativity credentials, and click Update Request.
  6. See the following sections on this page for more information on setting required fields for a request.
  7. Click Send to make a request.

Create a conceptual index

To create an index, send a POST request with a URL in the following format:

Copy
<host>/Relativity.REST/API/conceptual-analytics/{versionNumber}/workspaces/{workspaceID}/indexes
Copy

Sample JSON request

{
   "index":{
      "AnalyticsServer":{
         "ArtifactID":1018616
      },
      "ConceptStopWords":"a able about above according accordingly across actually after afterwards again against ain't all allow allows almost alone along already also although always am among amongst an and another any anybody anyhow anyone anything anyway anyways anywhere apart appear appreciate appropriate apr are aren't around as a's aside ask asking associated at aug available away awfully b back bcc be became because become becomes becoming been before beforehand behind being believe below beside besides best better",
      "Dimensions":100,
      "EmailNotificationRecipients":[
 
      ],
      "Name":"Jane Doe Case Analytics Index",
      "OptimizeTrainingSet":true,
      "Order":1,
      "RemoveEnglishSignaturesAndFooters":true,
      "EnableEmailHeaderFilter":true,
      "RepeatedContentFilters":[
 
      ],
      "SearchableSet":{
         "ArtifactID":1038051
      },
      "TrainingSet":{
         "ArtifactID":1038051
      },
      "Active":true
   }
}

When the index is successfully created, the response returns the status code of 200.

Retrieve a conceptual index

To read an index, send a GET request with a URL in the following format:

Copy
<host>/Relativity.REST/API/conceptual-analytics/{versionNumber}/workspaces/{workspaceID}/indexes/{index artifact ID}

The body of the request is empty.

Copy

Sample JSON response (this JSON sample represents an index object):

{
  "ArtifactID": 1118331,
  "Guids": [],
  "AnalyticsServer": {
    "ArtifactID": 1018616
  },
  "ConceptStopWords": "a able about above according accordingly across actually after afterwards again against ain't all allow allows almost alone along already also although always am among amongst an and another any anybody anyhow anyone anything anyway anyways anywhere apart appear appreciate appropriate apr are aren't around as a's aside ask asking associated at aug available away awfully b back bcc be became because become becomes ",
  "Dimensions": 100,
  "EmailNotificationRecipients": [],
  "Name": "John Doe Case Analytics Index",
 
  "OptimizeTrainingSet": true,
  "Order": 1,
  "RemoveEnglishSignaturesAndFooters": true,
  "EnableEmailHeaderFilter": true,
  "RepeatedContentFilters": [],
  "SearchableSet": {
    "ArtifactID": 1038051
  },
  "TrainingSet": {
    "ArtifactID": 1038051
  },
  "Active":true,
  "RemoveDocumentsThatErroredDuringPopulation": true,
  "ContinueIndexStepsToCompletion": true,
  "LastErrorMessage": "",
  "IndexLastUsedOn": "2017-05-09T19:22:17"
}

Update a conceptual index

To update an index, send a PUT request with a URL in the following format:

Copy
<host>/Relativity.REST/API/conceptual-analytics/{versionNumber}/workspaces/{workspaceID}/indexes/{index artifact ID}

The request for an update operation contains the same fields as those for a create request. See the field descriptions for the request in Create a conceptual index.

Copy

Sample JSON request

{
  "index": {
     "AnalyticsServer": {
     "ArtifactID": 1018616
    },
    "ConceptStopWords": "a able about above according accordingly across actually after afterwards again against ain't all allow allows almost alone along already also although always am among amongst an and another any anybody anyhow anyone anything anyway anyways anywhere apart appear appreciate appropriate apr are aren't around as a's aside ask asking associated at aug available away awfully b back bcc be became because become becomes ",
    "Dimensions": 120,
    "EmailNotificationRecipients": [],
    "Name": "Jane Doe Case Analytics Index",
    "OptimizeTrainingSet": true,
    "Order": 2,
    "RemoveEnglishSignaturesAndFooters": true,
    "EnableEmailHeaderFilter": true,
    "RepeatedContentFilters": [],
    "SearchableSet": {
      "ArtifactID": 1038051
    },
    "TrainingSet": {
      "ArtifactID": 1038051
    },
    "Active": false
  }
}

When the index is successfully updated, the response returns the status code of 201.

Delete a conceptual index

To delete an index, send a DELETE request with a URL in the following format:

Copy
<host>/Relativity.REST/API/conceptual-analytics/{versionNumber}/workspaces/{workspaceID}/indexes/{indexID}

The body of the request is empty.

When the index is successfully deleted, the response returns the status code of 200.

Helper endpoints for conceptual index jobs

Use the following endpoints for managing jobs related to conceptual indexes.

Submit a conceptual index job

To submit an index job, send a POST request with a URL in the following format:

Copy
<host>/Relativity.REST/API/conceptual-analytics/{versionNumber}/workspaces/{workspaceID}/indexes/{indexID}/job
Copy

Sample JSON request

{
    "jobType": "FullPopulation"
}

When the job is successfully submitted, the response returns the status code of 200.

Retrieve the status of a job

To retrieve the status of an index, send a GET request with a URL in the following format:

Copy
<host>/Relativity.REST/API/conceptual-analytics/{versionNumber}/workspaces/{workspaceID}/indexes/{indexID}/status

The body of the request is empty.

Copy
Sample JSON response (this JSON sample represents an index status object):
{
  "Active": true,
  "ConsoleButtons": [
    {
      "DisplayText": "Populate Index: Full",
      "Identifier": "populateIndexFull",
      "Class": "consoleButtonEnabled",
      "HelpText": "",
      "Enabled": true
    },
    {
      "DisplayText": "Cancel Full Population",
      "Identifier": "cancelPopulateIndexFull",
      "Class": "consoleButtonHide",
      "HelpText": "Cannot cancel full population if index is not populating.",
      "Enabled": false
    },
    {
      "DisplayText": "Populate Index: Incremental",
      "Identifier": "populateIndexIncremental",
      "Class": "consoleButtonEnabled",
      "HelpText": "",
      "Enabled": true
    },
    {
      "DisplayText": "Cancel Incremental Population",
      "Identifier": "cancelPopulateIndexIncremental",
      "Class": "consoleButtonHide",
      "HelpText": "Cannot cancel incremental population if index is not populating.",
      "Enabled": false
    },
    {
      "DisplayText": "Retry Errors",
      "Identifier": "retryErrors",
      "Class": "consoleButtonDisabled",
      "HelpText": "There are no errors to retry.",
      "Enabled": false
    },
    {
      "DisplayText": "Cancel Retry Errors",
      "Identifier": "cancelRetryErrors",
      "Class": "consoleButtonHide",
      "HelpText": "Cannot cancel retry errors if index is not populating.",
      "Enabled": false
    },
    {
      "DisplayText": "Remove Documents in Error",
      "Identifier": "removeDocumentsInError",
      "Class": "consoleButtonDisabled",
      "HelpText": "There are no errored documents to remove.",
      "Enabled": false
    },
    {
      "DisplayText": "Build Index",
      "Identifier": "buildIndex",
      "Class": "consoleButtonDisabled",
      "HelpText": "Index cannot be built while the index is active.",
      "Enabled": false
    },
    {
      "DisplayText": "Activate",
      "Identifier": "activate",
      "Class": "consoleButtonHide",
      "HelpText": "Index cannot be activated unless it is not active.",
      "Enabled": false
    },
    {
      "DisplayText": "Deactivate",
      "Identifier": "deactivate",
      "Class": "consoleButtonEnabled",
      "HelpText": "",
      "Enabled": true
    },
    {
      "DisplayText": "Show Document Errors",
      "Identifier": "showDocumentErrors",
      "Class": "consoleLinkDisabled",
      "HelpText": "There are no errors to show.",
      "Enabled": false
    },
    {
      "DisplayText": "Show Population Statistics",
      "Identifier": "showPopulationStatistics",
      "Class": "consoleLinkEnabled",
      "HelpText": "",
      "Enabled": true
    },
    {
      "DisplayText": "Show Index Statistics",
      "Identifier": "showIndexStatistics",
      "Class": "consoleLinkEnabled",
      "HelpText": "",
      "Enabled": true
    }
  ],
  "DocLevelErrorsExist": false,
  "SearchableSetCount": 73966,
  "StatusText": "Active",
  "TrainingSetCount": 63403
}

Cancel a job

To cancel a running index job, send a DELETE request with a URL in the following format:

Copy
<host>/Relativity.REST/API/conceptual-analytics/{versionNumber}/workspaces/{workspaceID}/indexes/{indexID}/job

The body of the request is empty.

When the job is successfully canceled, the response returns the status code of 200.