Mit der API für gespeicherte Abfragen können Sie gespeicherte Abfragen in Vault programmgesteuert verwalten. Sie können eine gespeicherte Abfrage ausführen, um dieselben oder zusätzliche, neuere Ergebnisse abzurufen, je nach den Kriterien der Abfrage. Wenn Ihre Suchanfrage beispielsweise ein Enddatum enthält, erhalten Sie dieselben Ergebnisse wie beim ersten Ausführen der Abfrage. Ohne ein Enddatum werden alle ursprünglichen Ergebnisse sowie neue Daten ausgegeben, die den Suchkriterien entsprechen.
Sie können diese API in Skripts verwenden, die:
- Gespeicherte Abfrage in einer Angelegenheit erstellen
- Gespeicherte Abfrage aus einem Fall löschen
- Gespeicherte Abfrage aus einer Rechtsangelegenheit abrufen
- Alle gespeicherten Abfragen aus einem Fall abrufen
Für die Arbeit mit Vault-Ressourcen muss das Konto die erforderlichen Vault-Berechtigungen und Zugriff auf den Fall haben. Damit auf eine Rechtsangelegenheit zugegriffen werden kann, muss die Rechtsangelegenheit vom Konto erstellt oder für das Konto freigegeben worden sein oder das Konto muss die Berechtigung Alle Rechtsangelegenheiten abrufen haben.
Gespeicherte Suchanfrage erstellen
Die folgenden Beispiele zeigen, wie Sie gespeicherte Suchanfragen für E‑Mail-Nachrichten und für Dateien in Drive erstellen:
E‑Mail
Java
public SavedQuery createMailAllDataAccountSavedQuery(String matterId) throws Exception { AccountInfo emailsToSearch = new AccountInfo().setEmails((ImmutableList.of("email1", "email2"))); MailOptions mailOptions = new MailOptions().setExcludeDrafts(true); String queryTerms = "to:ceo@solarmora.com"; Query mailQuery = new Query() .setCorpus("MAIL") .setDataScope("ALL_DATA") .setSearchMethod("ACCOUNT") .setAccountInfo(emailsToSearch) .setTerms(queryTerms) .setMailOptions(mailOptions); SavedQuery savedQuery = new SavedQuery() .setDisplayName("NEW SAVED QUERY NAME") .setQuery(mailQuery); return client.matters().savedQueries().create(matterId, savedQuery).execute(); }
Python
def create_mail_all_data_account_saved_query(self, matter_id): emails_to_search = ['email1', 'email2'] mail_query_options = {'excludeDrafts': True} query_terms = 'to:ceo@solarmora.com' mail_query = { 'corpus': 'MAIL', 'dataScope': 'ALL_DATA', 'searchMethod': 'ACCOUNT', 'accountInfo': { 'emails': emails_to_search }, 'terms': query_terms, 'mailOptions': mail_query_options, } saved_query = { 'displayName': 'NEW SAVED QUERY NAME', 'query': mail_query, } return self.service.matters().savedQueries().create( matterId=matter_id, body=saved_query).execute()
Drive
Java
public SavedQuery createDriveAllDataOUSavedQuery(String matterId) throws Exception { OrgUnitInfo ouToSearch = new OrgUnitInfo().setOrgUnitId("ou id retrieved from admin sdk"); DriveOptions driveQueryOptions = new DriveOptions().setIncludeTeamDrives(true); Query driveQuery = new Query() .setCorpus("DRIVE") .setDataScope("ALL_DATA") .setSearchMethod("ORG_UNIT") .setOrgUnitInfo(ouToSearch) .setDriveOptions(driveQueryOptions); SavedQuery savedQuery = new SavedQuery() .setDisplayName("NEW SAVED QUERY NAME") .setQuery(driveQuery); return client.matters().savedQueries().create(matterId, savedQuery).execute(); } }
Python
def create_drive_all_data_ou_saved_query(self, matter_id): ou_to_search = 'ou id retrieved from admin sdk' drive_query_options = {'includeTeamDrives': True} drive_query = { 'corpus': 'DRIVE', 'dataScope': 'ALL_DATA', 'searchMethod': 'ORG_UNIT', 'orgUnitInfo': { 'org_unit_id': ou_to_search, }, 'driveOptions': drive_query_options } saved_query = { 'displayName': 'NEW SAVED QUERY NAME', 'query': drive_query, } return self.service.matters().savedQueries().create( matterId=matter_id, body=saved_query).execute()
Gespeicherte Suchanfrage löschen
Im folgenden Beispiel wird gezeigt, wie eine gespeicherte Abfrage gelöscht wird.
Java
public Empty deleteSavedQuery(String matterId, String savedQueryId) throws Exception { return client.matters().savedQueries().delete(matterId, savedQueryId).execute(); }
Python
def delete_saved_query(self, matter_id, saved_query_id): empty_response = self.service.matters().savedQueries().delete( matterId=matter_id, savedQueryId=saved_query_id).execute() return empty_response
Gespeicherte Suchanfrage abrufen
Im folgenden Beispiel wird gezeigt, wie eine gespeicherte Abfrage anhand ihrer ID abgerufen wird.
Java
public SavedQuery getSavedQuery(String matterId, String savedQueryId) throws Exception { return client.matters().savedQueries().get(matterId, savedQueryId).execute(); }
Python
def get_saved_query(self, matter_id, saved_query_id): saved_query = self.service.matters().savedQueries().get( matterId=matter_id, savedQueryId=saved_query_id).execute() return saved_query
Gespeicherte Abfragen in einem Fall auflisten
Das folgende Beispiel zeigt, wie die gespeicherten Abfragen eines Falls aufgelistet werden.
Java
public void listSavedQueries(String matterId) throws Exception { ListSavedQueriesResponse firstPageResponse = client.matters().savedQueries().list(matterId).setPageSize(10).execute(); String nextPageToken = firstPageResponse.getNextPageToken(); if (nextPageToken != null) { client .matters() .savedQueries() .list(matterId) .setPageSize(10) .setPageToken(nextPageToken) .execute(); } }
Python
def list_saved_queries(self, matter_id): first_page_response = self.service.matters().savedQueries().list( matterId=matter_id, pageSize=10).execute() if 'nextPageToken' in first_page_response: self.service.matters().savedQueries().list( pageSize=10, pageToken=first_page_response['nextPageToken']).execute()