Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Interfejs Saved Query API umożliwia zautomatyzowane zarządzanie zapisanymi zapytaniami w Vault. Możesz uruchomić zapisane zapytanie, aby uzyskać te same wyniki lub dodatkowe, nowsze wyniki w zależności od kryteriów zapytania. Jeśli na przykład zapytanie zawiera datę zakończenia, uzyskasz te same wyniki co podczas jego pierwszego uruchomienia. Jeśli zapytanie nie zawiera daty zakończenia, otrzymasz pierwotne wyniki oraz wszystkie nowe dane, które spełniają kryteria wyszukiwania.
Możesz używać tego interfejsu API w skryptach, które:
tworzyć zapisane zapytania w sprawie,
usuwanie zapisanego zapytania z sprawy,
pobierać zapisane zapytanie ze sprawy,
pobierać wszystkie zapisane zapytania z danej sprawy,
Aby pracować z zasobami Vault, konto musi mieć wymagane uprawnienia Vault i dostęp do sprawy. Aby uzyskać dostęp do sprawy, konto musi być jej twórcą, mieć ją udostępnioną lub mieć uprawnienie Wyświetlanie wszystkich spraw.
Tworzenie zapisanego zapytania
Poniższe przykłady pokazują, jak tworzyć zapisane zapytania dotyczące wiadomości e-mail i plików na Dysku:
publicSavedQuerycreateDriveAllDataOUSavedQuery(StringmatterId)throwsException{OrgUnitInfoouToSearch=newOrgUnitInfo().setOrgUnitId("ou id retrieved from admin sdk");DriveOptionsdriveQueryOptions=newDriveOptions().setIncludeTeamDrives(true);QuerydriveQuery=newQuery().setCorpus("DRIVE").setDataScope("ALL_DATA").setSearchMethod("ORG_UNIT").setOrgUnitInfo(ouToSearch).setDriveOptions(driveQueryOptions);SavedQuerysavedQuery=newSavedQuery().setDisplayName("NEW SAVED QUERY NAME").setQuery(driveQuery);returnclient.matters().savedQueries().create(matterId,savedQuery).execute();}}
Python
defcreate_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,}returnself.service.matters().savedQueries().create(matterId=matter_id,body=saved_query).execute()
Usuwanie zapisanego zapytania
Poniższy przykład pokazuje, jak usunąć zapisane zapytanie.
[null,null,["Ostatnia aktualizacja: 2025-08-29 UTC."],[],[],null,["# Manage saved queries\n\nThe saved query API lets you programmatically manage saved queries in Vault. You can run a saved query to retrieve the same results or additional, newer results, depending on the criteria of the query. For example, if your query includes an end date, you'll retrieve the same results you did when you first ran the query. If the query doesn't include an end date, you'll get your original results plus any new data that meets the search criteria.\n| **Note:** A saved query doesn't preserve the messages and files generated by the query; it only saves the search parameters. You must export search results to preserve messages and files in their current state.\n\nYou can use this API in scripts that:\n\n- create a saved query in a matter\n- delete saved query from a matter\n- retrieve a saved query from a matter\n- retrieve all saved queries from a matter\n\nTo work with Vault resources, the account must have the [required Vault\nprivileges](https://support.google.com/vault/answer/2799699) and access to the\nmatter. To access a matter, the account must have created the matter, have the\nmatter shared with them, or have the **View All Matters** privilege.\n\nCreate a saved search query\n---------------------------\n\nThe following examples show how to create saved queries for mail messages and for files in Drive:\n\n#### Mail\n\n### Java\n\n```java\npublic SavedQuery createMailAllDataAccountSavedQuery(String matterId) throws Exception {\n AccountInfo emailsToSearch =\n new AccountInfo().setEmails((ImmutableList.of(\"email1\", \"email2\")));\n MailOptions mailOptions = new MailOptions().setExcludeDrafts(true);\n String queryTerms = \"to:ceo@solarmora.com\";\n Query mailQuery =\n new Query()\n .setCorpus(\"MAIL\")\n .setDataScope(\"ALL_DATA\")\n .setSearchMethod(\"ACCOUNT\")\n .setAccountInfo(emailsToSearch)\n .setTerms(queryTerms)\n .setMailOptions(mailOptions);\n SavedQuery savedQuery =\n new SavedQuery()\n .setDisplayName(\"NEW SAVED QUERY NAME\")\n .setQuery(mailQuery);\n return client.matters().savedQueries().create(matterId, savedQuery).execute();\n} \n```\n\n### Python\n\n```python\ndef create_mail_all_data_account_saved_query(self, matter_id):\n emails_to_search = ['email1', 'email2']\n mail_query_options = {'excludeDrafts': True}\n query_terms = 'to:ceo@solarmora.com'\n mail_query = {\n 'corpus': 'MAIL',\n 'dataScope': 'ALL_DATA',\n 'searchMethod': 'ACCOUNT',\n 'accountInfo': {\n 'emails': emails_to_search\n },\n 'terms': query_terms,\n 'mailOptions': mail_query_options,\n }\n saved_query = {\n 'displayName': 'NEW SAVED QUERY NAME',\n 'query': mail_query,\n }\n return self.service.matters().savedQueries().create(\n matterId=matter_id, body=saved_query).execute()\n```\n\n#### Drive\n\n### Java\n\n```java\npublic SavedQuery createDriveAllDataOUSavedQuery(String matterId) throws Exception {\n OrgUnitInfo ouToSearch = new OrgUnitInfo().setOrgUnitId(\"ou id retrieved from admin sdk\");\n DriveOptions driveQueryOptions = new DriveOptions().setIncludeTeamDrives(true);\n Query driveQuery =\n new Query()\n .setCorpus(\"DRIVE\")\n .setDataScope(\"ALL_DATA\")\n .setSearchMethod(\"ORG_UNIT\")\n .setOrgUnitInfo(ouToSearch)\n .setDriveOptions(driveQueryOptions);\n SavedQuery savedQuery =\n new SavedQuery()\n .setDisplayName(\"NEW SAVED QUERY NAME\")\n .setQuery(driveQuery);\n return client.matters().savedQueries().create(matterId, savedQuery).execute();\n }\n} \n```\n\n### Python\n\n```python\ndef create_drive_all_data_ou_saved_query(self, matter_id):\n ou_to_search = 'ou id retrieved from admin sdk'\n drive_query_options = {'includeTeamDrives': True}\n drive_query = {\n 'corpus': 'DRIVE',\n 'dataScope': 'ALL_DATA',\n 'searchMethod': 'ORG_UNIT',\n 'orgUnitInfo': {\n 'org_unit_id': ou_to_search,\n },\n 'driveOptions': drive_query_options\n }\n saved_query = {\n 'displayName': 'NEW SAVED QUERY NAME',\n 'query': drive_query,\n }\n return self.service.matters().savedQueries().create(\n matterId=matter_id, body=saved_query).execute()\n```\n\nDelete a saved search query\n---------------------------\n\nThe following example shows how to delete a saved query. \n\n### Java\n\n```java\npublic Empty deleteSavedQuery(String matterId, String savedQueryId) throws Exception {\n return client.matters().savedQueries().delete(matterId, savedQueryId).execute();\n} \n```\n\n### Python\n\n```python\ndef delete_saved_query(self, matter_id, saved_query_id):\n empty_response = self.service.matters().savedQueries().delete(\n matterId=matter_id, savedQueryId=saved_query_id).execute()\n return empty_response\n```\n\nGet a saved search query\n------------------------\n\nThe following example shows how to retrieve a saved query by its ID. \n\n### Java\n\n```java\npublic SavedQuery getSavedQuery(String matterId, String savedQueryId) throws Exception {\n return client.matters().savedQueries().get(matterId, savedQueryId).execute();\n} \n```\n\n### Python\n\n```python\ndef get_saved_query(self, matter_id, saved_query_id):\n saved_query = self.service.matters().savedQueries().get(\n matterId=matter_id, savedQueryId=saved_query_id).execute()\n return saved_query\n```\n\nList saved queries in a matter\n------------------------------\n\nThe following example shows how to list a matter's saved queries. \n\n### Java\n\n```java\npublic void listSavedQueries(String matterId) throws Exception {\n ListSavedQueriesResponse firstPageResponse =\n client.matters().savedQueries().list(matterId).setPageSize(10).execute();\n String nextPageToken = firstPageResponse.getNextPageToken();\n if (nextPageToken != null) {\n client\n .matters()\n .savedQueries()\n .list(matterId)\n .setPageSize(10)\n .setPageToken(nextPageToken)\n .execute();\n }\n} \n```\n\n### Python\n\n```python\ndef list_saved_queries(self, matter_id):\n first_page_response = self.service.matters().savedQueries().list(\n matterId=matter_id, pageSize=10).execute()\n if 'nextPageToken' in first_page_response:\n self.service.matters().savedQueries().list(\n pageSize=10,\n pageToken=first_page_response['nextPageToken']).execute() \n```"]]