رابط برنامهنویسی کاربردی پرسوجوی ذخیرهشده به شما امکان میدهد پرسوجوهای ذخیرهشده در Vault را بهصورت برنامهنویسیشده مدیریت کنید. میتوانید یک پرسوجوی ذخیرهشده را اجرا کنید تا بسته به معیارهای پرسوجو، همان نتایج یا نتایج جدیدتر و اضافی را بازیابی کنید. بهعنوانمثال، اگر پرسوجوی شما شامل تاریخ پایان باشد، همان نتایجی را که هنگام اجرای اولیه پرسوجو دریافت کردید، بازیابی خواهید کرد. اگر پرسوجو شامل تاریخ پایان نباشد، نتایج اصلی خود را بهعلاوه هر داده جدیدی که با معیارهای جستجو مطابقت داشته باشد، دریافت خواهید کرد.
شما میتوانید از این API در اسکریپتهایی استفاده کنید که:
- ایجاد یک کوئری ذخیره شده در یک موضوع
- حذف پرس و جوی ذخیره شده از یک موضوع
- بازیابی یک پرس و جوی ذخیره شده از یک موضوع
- بازیابی تمام کوئریهای ذخیره شده از یک موضوع
برای کار با منابع Vault، حساب کاربری باید امتیازات لازم Vault و دسترسی به موضوع را داشته باشد. برای دسترسی به یک موضوع، حساب کاربری باید آن موضوع را ایجاد کرده باشد، موضوع را با آنها به اشتراک گذاشته باشد یا امتیاز مشاهده همه موضوعات را داشته باشد.
ایجاد یک عبارت جستجوی ذخیره شده
مثالهای زیر نحوه ایجاد کوئریهای ذخیرهشده برای پیامهای ایمیل و فایلهای موجود در درایو را نشان میدهند:
ایمیل
جاوا
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(); }
پایتون
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()
رانندگی
جاوا
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(); } }
پایتون
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()
حذف یک عبارت جستجوی ذخیره شده
مثال زیر نحوه حذف یک کوئری ذخیره شده را نشان میدهد.
جاوا
public Empty deleteSavedQuery(String matterId, String savedQueryId) throws Exception { return client.matters().savedQueries().delete(matterId, savedQueryId).execute(); }
پایتون
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
دریافت یک عبارت جستجوی ذخیره شده
مثال زیر نحوه بازیابی یک کوئری ذخیره شده را با استفاده از شناسه آن نشان میدهد.
جاوا
public SavedQuery getSavedQuery(String matterId, String savedQueryId) throws Exception { return client.matters().savedQueries().get(matterId, savedQueryId).execute(); }
پایتون
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
فهرست کردن کوئریهای ذخیره شده در یک موضوع
مثال زیر نحوه فهرست کردن کوئریهای ذخیره شده یک موضوع را نشان میدهد.
جاوا
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(); } }
پایتون
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()