Дело — это контейнер для всех данных, относящихся к определенной теме, например судебному делу или расследованию. Дело включает в себя:
- Сохраненные поисковые запросы
- держит
- Аккаунты, которым предоставлен доступ к делу
- Экспорт наборов
- Аудиторский след
Для работы с ресурсами Сейфа у учетной записи должны быть необходимые права Сейфа и доступ к делу. Чтобы получить доступ к делу, учетная запись должна создать дело, предоставить доступ к делу или иметь право просмотра всех дел .
Материя имеет следующие состояния:
Состояние | Описание |
---|---|
Открыть | Дело активно, и вы можете создавать запреты, выполнять поиск и экспортировать данные по нему. |
Закрыто | Обычно после завершения расследования дело закрывается. Закрытые дела можно открыть повторно в любое время. |
Удалено | Дело можно удалить так, что оно станет полностью недоступным. Удаленная папка будет оставаться в корзине примерно 30 дней, в течение которых ее можно будет восстановить. По истечении этого периода дело удаляется навсегда. |
Создать дело
В следующем примере создается новая тема с указанным именем и описанием.
Ява
Matter matter = new Matter(); matter.setName("Matter Name"); matter.setDescription("Matter Description"); Matter createdMatter = client.matters().create(matter).execute();
Питон
def create_matter(service): matter_content = { 'name': 'Matter Name', 'description': 'Matter Description', } matter = service.matters().create(body=matter_content).execute() return matter
Получить дело
Существует два вида дела: БАЗОВЫЙ (по умолчанию) и ПОЛНЫЙ. Представление FULL добавляет разрешения на содержание к представлению BASIC.
В следующем примере извлекается указанная материя.
Ява
client.matters().get(matterId).execute(); // Returns BASIC view. client.matters().get(matterId).setView("BASIC").execute(); client.matters().get(matterId).setView("FULL").execute();
Питон
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 по умолчанию на запрос).
Ява
ListmattersList = client.matters().list().execute().getMatters();
Питон
mattersList = client.matters().list().execute()
В следующем примере показано, как составить список всех открытых, закрытых и удаленных дел по нескольким запросам.
Ява
ListMattersResponse firstPageResponse = client.matters().list().setPageSize(20).execute(); String nextPageToken = firstPageResponse.getNextPageToken()); if (nextPageToken != null) { client.matters().list().setPageToken(nextPageToken).setPageSize(20).execute(); }
Питон
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)
В следующем примере показано, как составить список дел определенного состояния.
Ява
// 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();
Питон
# 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()
Обновить дело
В следующем примере обновляется имя и описание дела.
Ява
String matterId = "matterId"; Matter matter = new Matter().setName("New Name").setDescription("New Description"); vault.matters().update(matterId, matter).execute();
Питон
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
Закрыть дело
В следующем примере показано, как закрыть дело.
Ява
String matterId = "matterId"; // If the matter still has holds, this operation will fail. client.matters().close(matterId, new CloseMatterRequest()).execute();
Питон
def close_matter(service, matter_id): close_response = service.matters().close( matterId=matter_id, body={}).execute() return close_response['matter']
Удаление, восстановление или повторное открытие дела
В следующем примере показано, как удалить, восстановить или повторно открыть дело.
Ява
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());
Питон
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
Разрешения на вопрос
У каждого дела есть набор разрешений, определяющий, кто может получить к нему доступ или редактировать его. Вы можете просмотреть это, получив ПОЛНОЕ представление о вопросе.
Ява
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();
Питон
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()