案件とは、訴訟案件や捜査など、特定のトピックに関連するすべてのデータのコンテナです。案件に含まれるデータ:
- 保存された検索クエリ
- 記録保持
- 案件が共有されているアカウント
- エクスポート セット
- 監査証跡
Vault リソースを操作するには、アカウントに必要な Vault 権限と案件へのアクセス権が必要です。案件にアクセスするには、そのアカウントで案件が作成されているか、案件が共有されているか、全案件の閲覧権限を持っている必要があります。
案件のステータスは次のとおりです。
状態 | 説明 |
---|---|
オープン | 案件がアクティブであるため、記録保持の作成、検索の実行、その内部でのデータのエクスポートが可能です。 |
クローズ | 通常、調査が完了すると、案件はクローズされます。 終了した案件はいつでも再開できます。 |
削除する | 案件を削除すると、完全に利用できなくなる場合があります。 削除した案件はゴミ箱に約 30 日間保存され、その間は復元できます。この期間を過ぎると、案件は完全に削除されます。 |
案件を作成する
次の例では、指定された名前と説明で新しい案件を作成します。
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
案件を取得
案件には、ベーシック(デフォルト)と FULL の 2 つのビューがあります。FULL ビューは [BASIC] ビューに matter permissions を追加します。
次の例では、指定した案件を取得します。
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();
案件の一覧表示
次の例は、すべてのオープン案件、終了済み案件、削除済み案件を一覧表示する方法を示しています(最大リクエストごとに最大 100 件)。
Java
ListmattersList = client.matters().list().execute().getMatters();
Python
mattersList = client.matters().list().execute()
次の例は、複数のリクエストでオープンされた案件、終了した案件、削除された案件をすべて一覧表示する方法を示しています。
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)
次の例は、指定された状態の案件を一覧表示する方法を示しています。
Java
// Only get open matters. ListopenMattersList = 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()
案件を更新する
次の例では、案件の名前と説明を更新します。
Java
String matterId = "matterId"; Matter matter = new Matter().setName("New Name").setDescription("New Description"); vault.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
案件を終了する
次の例は、案件を終了する方法を示しています。
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']
案件の削除、削除取り消し、再開
次の例は、案件を削除、削除取り消し、再開する方法を示しています。
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
Matter の権限
案件ごとに、案件へのアクセスと編集を許可する権限が設定されます。案件の [完全] ビューを取得すると、この情報が表示されます。
Java
String matterId = "Matter Id"; String accountId = "Account Id"; // List permissions for a matter. Matter matter = client.matters().get(matterId).setView("FULL").execute(); ListmatterPermissions = 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()