با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
API پرس و جو ذخیره شده به شما امکان می دهد پرس و جوهای ذخیره شده را به صورت برنامه ریزی شده در Vault مدیریت کنید. بسته به معیارهای پرس و جو، می توانید یک پرس و جو ذخیره شده را برای بازیابی همان نتایج یا نتایج اضافی و جدیدتر اجرا کنید. به عنوان مثال، اگر درخواست شما شامل تاریخ پایان باشد، همان نتایجی را که در اولین اجرای پرس و جو انجام دادید، بازیابی خواهید کرد. اگر درخواست شامل تاریخ پایان نباشد، نتایج اصلی خود را به اضافه هر داده جدیدی که با معیارهای جستجو مطابقت دارد، دریافت خواهید کرد.
می توانید از این API در اسکریپت هایی استفاده کنید که:
ایجاد یک پرس و جو ذخیره شده در یک موضوع
پرس و جو ذخیره شده را از یک موضوع حذف کنید
یک پرس و جو ذخیره شده را از یک موضوع بازیابی کنید
همه پرس و جوهای ذخیره شده را از یک موضوع بازیابی کنید
برای کار با منابع Vault، حساب باید دارای امتیازات Vault مورد نیاز و دسترسی به موضوع باشد. برای دسترسی به یک موضوع، حساب باید موضوع را ایجاد کرده باشد، موضوع را با آنها به اشتراک گذاشته باشد، یا دارای امتیاز View All Matters باشد.
یک عبارت جستجوی ذخیره شده ایجاد کنید
مثالهای زیر نحوه ایجاد عبارتهای جستجوی ذخیرهشده برای پیامهای ایمیل و فایلها در 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();}}
پایتون
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()
یک عبارت جستجوی ذخیره شده را حذف کنید
مثال زیر نحوه حذف یک کوئری ذخیره شده را نشان می دهد.
تاریخ آخرین بهروزرسانی 2025-08-29 بهوقت ساعت هماهنگ جهانی.
[null,null,["تاریخ آخرین بهروزرسانی 2025-08-29 بهوقت ساعت هماهنگ جهانی."],[],[],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```"]]