Matter Manager (.NET)

In Relativity, a matter is a legal case, such as a dispute or other action during which a law firm acts as a representative of a client. For general information, see Matters on the Relativity Documentation site.

The Matter Manager API exposes multiple methods for programmatically managing matters in your Relativity environment. It includes the following features:

  • Supports create, read, update, and delete operations on matters.
  • Provides helper methods used to retrieve available clients and statuses. Use these helper methods when creating and updating matters.

You can also interact with the Matter Manager service through the REST API. For more information, see Matter Manager (REST).

This page contains the following information:

Retrieve a list of available clients

Use the the GetEligibleClientsAsync() method to retrieve a list of the available clients that you can associate with a matter.

public static async Task GetEligibleClientsAsync()
{ 
    using (Relativity.Environment.V1.Matter.IMatterManager matterManager = serviceFactory.CreateProxy<Relativity.Environment.V1.Matter.IMatterManager>())
    {
        try
        {
            List<DisplayableObjectIdentifier> response = await matterManager.GetEligibleClientsAsync();
            foreach (DisplayableObjectIdentifier client in response)
            {
                string info = string.Format("Read client {0} with Artifact ID {1}", client.Name, client.ArtifactID);
                Console.Write(info);
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine(string.Format("An error occurred: {0}", ex.Message));
        }
    }
}

Retrieve a list of matter statuses

Use GetEligibleStatusesAsync() method to get a list of the available statuses for matters.

public static async Task GetEligibleStatusesAsync()
{
    using (Relativity.Environment.V1.Matter.IMatterManager matterManager = serviceFactory.CreateProxy<Relativity.Environment.V1.Matter.IMatterManager>())
    {
        try
        {
            List<DisplayableObjectIdentifier> response = await matterManager.GetEligibleStatusesAsync();
            foreach (DisplayableObjectIdentifier status in response)
            {
                string info = string.Format("Read status {0} with Artifact ID {1}", status.Name, status.ArtifactID);
                Console.Write(info);
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine(string.Format("An error occurred: {0}", ex.Message));
        }
    }
}

Create a matter

Use the CreateAsync() method to add a new matter.

public static async Task CreateAsync()
{
    int clientId = 1015253;
    int statusId = 1016892;
  
    MatterRequest request = new MatterRequest
    {
        Name = "New Matter",
        Number = "10",
        Keywords = "keywords",
        Notes = "notes",
        Client = new Securable<ObjectIdentifier>(new ObjectIdentifier { ArtifactID = clientId }),
        Status = new Securable<ObjectIdentifier>(new ObjectIdentifier { ArtifactID = statusId })
    };
  
    using (Relativity.Environment.V1.Matter.IMatterManager matterManager = serviceFactory.CreateProxy<Relativity.Environment.V1.Matter.IMatterManager>())
    {
        try
        {
            int newMatterArtifactId = await matterManager.CreateAsync(request);
            string info = string.Format("Created matter with Artifact ID {0}", newMatterArtifactId);
            Console.Write(info);
        }
        catch (Exception ex)
        {
            Console.WriteLine(string.Format("An error occurred: {0}", ex.Message));
        }
    }
}

Retrieve metadata for a matter

Use ReadAsync() method to retrieve the metadata for a matter.

public static async Task ReadAsync()
{
    int matterArtifactId = 1016911;
  
    using (Relativity.Environment.V1.Matter.IMatterManager matterManager = serviceFactory.CreateProxy<Relativity.Environment.V1.Matter.IMatterManager>())
    {
        try
        {
            MatterResponse response = await matterManager.ReadAsync(matterArtifactId);
            string info = string.Format("Read matter {0} with Artifact ID {1}", response.Name, response.ArtifactID);
            Console.Write(info);
        }
        catch (Exception ex)
        {
            Console.WriteLine(string.Format("An error occurred: {0}", ex.Message));
        }
    }
}

Update a matter

Use the UpdateAsync() method to modify the properties of a matter.

public static async Task UpdateAsync()
{
    int matterArtifactId = 1016911;
    int clientId = 1015253;
    int statusId = 1016892;
  
    MatterRequest request = new MatterRequest
    {
        Name = "New Matter",
        Number = "10",
        Keywords = "keywords",
        Notes = "notes",
        Client = new Securable<ObjectIdentifier>(new ObjectIdentifier { ArtifactID = clientId }),
        Status = new Securable<ObjectIdentifier>(new ObjectIdentifier { ArtifactID = statusId })
    };
  
    using (Relativity.Environment.V1.Matter.IMatterManager matterManager = serviceFactory.CreateProxy<Relativity.Environment.V1.Matter.IMatterManager>())
    {
        try
        {
            await matterManager.UpdateAsync(matterArtifactId, request);
        }
        catch (Exception ex)
        {
            Console.WriteLine(string.Format("An error occurred: {0}", ex.Message));
        }
    }
}

Delete a matter

Use the DeleteAsync() method to remove a matter from Relativity.

public static async Task DeleteAsync()
{
    int matterArtifactId = 1016911;
  
    using (Relativity.Environment.V1.Matter.IMatterManager matterManager = serviceFactory.CreateProxy<Relativity.Environment.V1.Matter.IMatterManager>())
    {
        try
        {
            await matterManager.DeleteAsync(matterArtifactId);
        }
        catch (Exception ex)
        {
            Console.WriteLine(string.Format("An error occurred: {0}", ex.Message));
        }
    }
}

Community Updates

Aero Developer FAQ Evolving the Platform Most recent release notes
Learn more Learn more Learn more

Additional Resources

   
Access Third-Party Tools with GitHub     Create .NET Apps Faster with NuGet
Visit github     visit nuget