Rechtsangelegenheiten verwalten

Eine Rechtsangelegenheit ist ein Container für Daten zu einem bestimmten Thema, z. B. einem Rechtsstreit oder einer Prüfung. Eine Rechtsangelegenheit umfasst die folgenden Elemente:

  • Gespeicherte Suchanfragen
  • Holds
  • Konten, für die die Rechtsangelegenheit freigegeben ist
  • Exportsätze
  • Audit-Trail

Um mit Google Vault-Ressourcen zu arbeiten, muss ein Konto die erforderlichen Vault-Berechtigungen und Zugriff auf die Rechtsangelegenheit haben. Für den Zugriff auf eine Rechtsangelegenheit muss das Konto die Rechtsangelegenheit erstellt haben, die Rechtsangelegenheit muss für das Konto freigegeben worden sein oder das Konto muss die Berechtigung Alle Rechtsangelegenheiten abrufen haben.

Eine Rechtsangelegenheit kann die folgenden Status haben:

StatusBeschreibung
OffenDie Rechtsangelegenheit ist aktiv und Sie können Holds erstellen, Suchanfragen ausführen und Daten exportieren.
GeschlossenIn der Regel wird die Rechtsangelegenheit geschlossen, wenn eine Prüfung abgeschlossen ist. Geschlossene Rechtsangelegenheiten können jederzeit wieder geöffnet werden. Bevor Sie eine Rechtsangelegenheit schließen, löschen Sie alle zugehörigen Holds.
GelöschtEine Rechtsangelegenheit kann gelöscht werden, damit sie nicht mehr vollständig verfügbar ist. Eine gelöschte Rechtsangelegenheit verbleibt etwa 30 Tage lang im Papierkorb, während dieser Zeit kann sie wiederhergestellt werden. Danach wird die Rechtsangelegenheit endgültig gelöscht. Sie können nur geschlossene Rechtsangelegenheiten löschen.

Lebenszyklus von Angelegenheiten

Rechtsangelegenheit erstellen

Im folgenden Beispiel wird eine neue Rechtsangelegenheit mit einem Namen und einer Beschreibung erstellt.

Java

Matter matter = new Matter();
matter.setName("Matter Name");
matter.setDescription("Matter Description");
Matter createdMatter = client.matters().create(matter).execute();
 

Python

def create_matter(service):
  matter_content = {
      'name': 'Matter Name',
      'description': 'Matter Description',
  }
  matter = service.matters().create(body=matter_content).execute()
  return matter

Rechtsangelegenheit abrufen

Es gibt zwei Ansichten einer Rechtsangelegenheit: BASIC (Standard) und FULL. In der Ansicht FULL werden der Ansicht BASIC die Berechtigungen für die Rechtsangelegenheit hinzugefügt.

Im folgenden Beispiel wird die angegebene Rechtsangelegenheit abgerufen.

Java

client.matters().get(matterId).execute(); // Returns BASIC view.
client.matters().get(matterId).setView("BASIC").execute();
client.matters().get(matterId).setView("FULL").execute();

Python

matter_id = getMatterId()
service.matters().get(matterId=matter_id).execute(); // Returns BASIC view.
service.matters().get(matterId=matter_id, view='BASIC').execute();
service.matters().get(matterId=matter_id, view='FULL').execute();

Rechtsangelegenheiten auflisten

Im folgenden Beispiel wird gezeigt, wie alle offenen, geschlossenen und gelöschten Rechtsangelegenheiten aufgelistet werden. Standardmäßig gibt die API bis zu 100 Rechtsangelegenheiten pro Anfrage zurück.

Java

List mattersList = client.matters().list().execute().getMatters();

Python

mattersList = service.matters().list().execute()

Im folgenden Beispiel wird gezeigt, wie alle offenen, geschlossenen und gelöschten Rechtsangelegenheiten in mehreren Anfragen aufgelistet werden.

Java

ListMattersResponse firstPageResponse = client.matters().list().setPageSize(20).execute();

String nextPageToken = firstPageResponse.getNextPageToken();
if (nextPageToken != null) {
  client.matters().list().setPageToken(nextPageToken).setPageSize(20).execute();
}

Python

list_response1 = service.matters().list(
        view='FULL', pageSize=10).execute()
for matter in list_response1['matters']:
    print(matter)

if 'nextPageToken' in list_response1:
    list_response2 = service.matters().list(
        pageSize=10, pageToken=list_response1['nextPageToken']).execute()
    for matter in list_response2['matters']:
      print(matter)

Im folgenden Beispiel wird gezeigt, wie Rechtsangelegenheiten eines bestimmten Status aufgelistet werden.

Java

// Only get open matters.
List openMattersList = client.matters().list().setState("OPEN")
    .execute().getMatters();

// Only get closed matters.
List closedMattersList = client.matters().list().setState("CLOSED")
    .execute().getMatters();

// Only get deleted matters.
List deletedMattersList = client.matters().list().setState("DELETED")
    .execute().getMatters();

Python

# Only get open matters.
openMattersList = client.matters().list(
    state='OPEN').execute()

# Only get closed matters.
closedMattersList = client.matters().list(
    state='CLOSED').execute()

# Only get deleted matters.
deletedMattersList = client.matters().list(
    state='DELETED').execute()

Rechtsangelegenheit aktualisieren

Im folgenden Beispiel werden der Name und die Beschreibung einer Rechtsangelegenheit aktualisiert.

Java

String matterId = "matterId";
Matter matter = new Matter().setName("New Name")
    .setDescription("New Description");
client.matters().update(matterId, matter).execute();

Python

def update_matter(service, matter_id):
    wanted_matter = {
        'name': 'New Matter Name',
        'description': 'New Description'
    }
    updated_matter = service.matters().update(
        matterId=matter_id, body=wanted_matter).execute()
    return updated_matter

Rechtsangelegenheit schließen

Im folgenden Beispiel wird gezeigt, wie eine Rechtsangelegenheit geschlossen wird.

Java

String matterId = "matterId";
// If the matter still has holds, this operation will fail.
client.matters().close(matterId, new CloseMatterRequest()).execute();
 

Python

def close_matter(service, matter_id):
    close_response = service.matters().close(
        matterId=matter_id, body={}).execute()
    return close_response['matter']
 

Rechtsangelegenheit löschen, wiederherstellen oder wieder öffnen

Im folgenden Beispiel wird gezeigt, wie eine Rechtsangelegenheit gelöscht, wiederhergestellt oder wieder geöffnet wird.

Java

Matter matter = client.matters().get(matterId).execute();

// Delete the matter.
client.matters().delete(matter.getMatterId());
// Undelete the matter.
client.matters().undelete(matter.getMatterId(), new UndeleteRequest());
// Reopen the matter.
client.matters().reopen(matter.getMatterId(), new ReopenMatterRequest());
 

Python

def reopen_matter(service, matter_id):
    reopen_response = service.matters().reopen(
        matterId=matter_id, body={}).execute()
    return reopen_response['matter']

def delete_matter(service, matter_id):
    service.matters().delete(matterId=matter_id).execute()
    return get_matter(matter_id)

def undelete_matter(service, matter_id):
    undeleted_matter = service.matters().undelete(
        matterId=matter_id, body={}).execute()
    return undeleted_matter
 

Berechtigungen für Rechtsangelegenheiten

Für jede Rechtsangelegenheit gibt es eine Reihe von Berechtigungen, die festlegen, wer darauf zugreifen oder sie bearbeiten kann. Sie können diese Berechtigungen einsehen, indem Sie die Ansicht FULL einer Rechtsangelegenheit abrufen.

Java

String matterId = "Matter Id";
String accountId = "Account Id";

// List permissions for a matter.
Matter matter = client.matters().get(matterId).setView("FULL").execute();
List matterPermissions = matter.getMatterPermissions();

// Add a user to the permission set.
client
    .matters()
    .addPermissions(matterId)
    .setMatterPermissionAccountId(accountId)
    .setMatterPermissionRole("COLLABORATOR")
    .execute();

// Remove a user from the permission set.
client
    .matters()
    .removePermissions(matterId)
    .setAccountId(accountId)
    .execute();

Python

def list_matter_permission(service, matter_id):
    matter = service.matters().get(matterId=matter_id, view='FULL').execute()
    return matter['matterPermissions']

def add_matter_permission(service, matter_id, account_id):
    permission = service.matters().addPermissions(
        matterId=matter_id,
        matterPermission_accountId=account_id,
        matterPermission_role='COLLABORATOR',
        sendEmails='False',
        ccMe='False').execute()
    return permission

def remove_matter_permission(service, matter_id, account_id):
    service.matters().removePermissions(
        matterId=matter_id, accountId=account_id).execute()