সেভড কোয়েরি এপিআই আপনাকে গুগল ভল্টে সংরক্ষিত কোয়েরিগুলো প্রোগ্রাম্যাটিকভাবে পরিচালনা করতে দেয়। কোয়েরির শর্তের উপর নির্ভর করে, আপনি একই ফলাফল অথবা অতিরিক্ত, নতুন ফলাফল পেতে একটি সংরক্ষিত কোয়েরি চালাতে পারেন। উদাহরণস্বরূপ, যদি আপনার কোয়েরিতে একটি শেষ তারিখ থাকে, তাহলে আপনি প্রথমবার কোয়েরিটি চালানোর সময় প্রাপ্ত ফলাফলগুলোই পাবেন। যদি কোয়েরিতে কোনো শেষ তারিখ না থাকে, তাহলে আপনি আপনার মূল ফলাফলের সাথে অনুসন্ধানের শর্ত পূরণকারী যেকোনো নতুন ডেটা পাবেন।
সংরক্ষিত কোয়েরি তার দ্বারা তৈরি হওয়া মেসেজ এবং ফাইলগুলো সংরক্ষণ করে না; এটি শুধুমাত্র সার্চ প্যারামিটারগুলো সংরক্ষণ করে। মেসেজ এবং ফাইলগুলোকে তাদের বর্তমান অবস্থায় সংরক্ষণ করার জন্য আপনাকে অবশ্যই সার্চ রেজাল্ট এক্সপোর্ট করতে হবে।
আপনি এই এপিআইটি এমন স্ক্রিপ্টগুলিতে ব্যবহার করতে পারেন যা নিম্নলিখিত কাজগুলি সম্পাদন করে:
- একটি বিষয়ে একটি সংরক্ষিত কোয়েরি তৈরি করুন।
- কোনো বিষয় থেকে সংরক্ষিত কোয়েরি মুছে ফেলুন।
- কোনো বিষয় থেকে সংরক্ষিত কোয়েরি পুনরুদ্ধার করুন।
- একটি বিষয় থেকে সমস্ত সংরক্ষিত কোয়েরি পুনরুদ্ধার করুন।
ভল্ট রিসোর্স নিয়ে কাজ করার জন্য, একটি অ্যাকাউন্টের অবশ্যই প্রয়োজনীয় ভল্ট প্রিভিলেজ এবং ম্যাটারটিতে অ্যাক্সেস থাকতে হবে। কোনো ম্যাটার অ্যাক্সেস করার জন্য, অ্যাকাউন্টটিকে অবশ্যই ম্যাটারটি তৈরি করতে হবে, অথবা ম্যাটারটি তাদের সাথে শেয়ার করা থাকতে হবে, কিংবা তাদের 'ভিউ অল ম্যাটারস' প্রিভিলেজ থাকতে হবে।
একটি সংরক্ষিত অনুসন্ধান ক্যোয়ারি তৈরি করুন
নিম্নলিখিত উদাহরণগুলিতে দেখানো হয়েছে কীভাবে মেইল বার্তা এবং গুগল ড্রাইভের ফাইলগুলির জন্য সংরক্ষিত কোয়েরি তৈরি করতে হয়:
মেইল
জাভা
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()