Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
L'API per le query salvate ti consente di gestire in modo programmatico le query salvate in Vault. Puoi eseguire una query salvata per recuperare gli stessi risultati o risultati aggiuntivi più recenti, a seconda dei criteri della query. Ad esempio, se la tua query include una data di fine, recupererai gli stessi risultati che hai ottenuto quando hai eseguito la query per la prima volta. Se la query non include una data di fine, otterrai i risultati originali più tutti i nuovi dati che soddisfano i criteri di ricerca.
Puoi utilizzare questa API negli script che:
creare una query salvata in una pratica
eliminare una query salvata da una pratica
recuperare una query salvata da una pratica
recuperare tutte le query salvate da una pratica
Per lavorare con le risorse Vault, l'account deve disporre dei privilegi Vault richiesti e dell'accesso alla pratica. Per accedere a una pratica, l'account deve averla creata, deve averla condivisa con sé o deve disporre del privilegio Visualizzazione di tutte le pratiche.
Creare una query di ricerca salvata
Gli esempi riportati di seguito mostrano come creare query salvate per i messaggi di posta e per i file in Drive:
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()
Eliminare una query di ricerca salvata
L'esempio seguente mostra come eliminare una query salvata.
[null,null,["Ultimo aggiornamento 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```"]]