सेव की गई क्वेरी मैनेज करें

सेव की गई क्वेरी एपीआई की मदद से, आप Vault में सेव की गई क्वेरी को प्रोग्राम के हिसाब से मैनेज कर सकते हैं. सेव की गई क्वेरी को चलाकर, वही नतीजे या अतिरिक्त नए नतीजे वापस पाए जा सकते हैं. हालांकि, ये नतीजे क्वेरी की शर्तों के हिसाब से तय किए जाते हैं. उदाहरण के लिए, अगर आपकी क्वेरी में खत्म होने की तारीख शामिल है, तो आपको वही नतीजे मिलेंगे जो आपने पहली बार क्वेरी चलाने पर पाए थे. अगर क्वेरी में खत्म होने की तारीख शामिल नहीं है, तो आपको अपने मूल नतीजे और खोज की शर्तों को पूरा करने वाला नया डेटा भी मिलेगा.

इस एपीआई का इस्तेमाल उन स्क्रिप्ट में किया जा सकता है जो:

  • किसी मामले में, सेव की गई क्वेरी बनाएं
  • किसी मामले से सेव की गई क्वेरी मिटाएं
  • किसी मामले से, सेव की गई क्वेरी फिर से पाएं
  • किसी मामले से, सेव की गई सभी क्वेरी फिर से पाएं

Vault के संसाधनों का इस्तेमाल करने के लिए, खाते में ज़रूरी Vault होना चाहिए खास अधिकारों और ऐक्सेस बात. किसी मामले को ऐक्सेस करने के लिए, यह ज़रूरी है कि उस खाते से मामला बनाया गया हो, उनके साथ मामला शेयर किया गया है या सभी मामले देखें का खास अधिकार है.

सेव की गई खोज क्वेरी बनाना

नीचे दिए गए उदाहरणों में, मेल मैसेज और Drive में फ़ाइलों के लिए सेव की गई क्वेरी बनाने का तरीका बताया गया है:

Mail

Java

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();
} 

Python

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()

Drive

Java

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();
  }
} 

Python

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()

सेव की गई खोज क्वेरी को मिटाना

नीचे दिए गए उदाहरण में, सेव की गई क्वेरी को मिटाने का तरीका बताया गया है.

Java

public Empty deleteSavedQuery(String matterId, String savedQueryId) throws Exception {
    return client.matters().savedQueries().delete(matterId, savedQueryId).execute();
} 

Python

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

सेव की गई खोज क्वेरी पाना

नीचे दिए गए उदाहरण में, किसी सेव की गई क्वेरी को उसके आईडी से वापस पाने का तरीका बताया गया है.

Java

public SavedQuery getSavedQuery(String matterId, String savedQueryId) throws Exception {
    return client.matters().savedQueries().get(matterId, savedQueryId).execute();
} 

Python

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

किसी मामले में, सेव की गई क्वेरी की सूची बनाएं

यहां दिए गए उदाहरण में, किसी मामले की सेव की गई क्वेरी को शामिल करने का तरीका बताया गया है.

Java

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();
    }
} 

Python

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()