मेलबॉक्स डाउनलोड करना

एडमिन के तौर पर, ऑडिट के मकसद से अपने डोमेन में मौजूद मेलबॉक्स खाते डाउनलोड किए जा सकते हैं. ईमेल ऑडिट एपीआई, किसी मेलबॉक्स को एक्सपोर्ट करने के लिए तैयार करने के लिए, उपयोगकर्ता के मेलबॉक्स की एन्क्रिप्ट की गई कॉपी बनाता है. सिस्टम, एन्क्रिप्ट किए गए मेलबॉक्स की फ़ाइलों के यूआरएल दिखाता है. इन फ़ाइलों को डाउनलोड और डिक्रिप्ट करने के बाद, mbox फ़ॉर्मैट में देखा जा सकता है.

डोमेन के सभी एडमिन, हर दिन ज़्यादा से ज़्यादा 100 मेलबॉक्स एक्सपोर्ट करने के अनुरोध भेज सकते हैं. मेलबॉक्स बनाने की प्रोसेस में ज़्यादा समय लग सकता है. साथ ही, मेलबॉक्स के साइज़ के हिसाब से इसमें कई दिन लग सकते हैं.

Google, एन्क्रिप्ट किए गए मेलबॉक्स की फ़ाइलों को तीन हफ़्तों तक सेव रखता है. इसलिए, पक्का करें कि आपने इन फ़ाइलों को इस समयावधि में डाउनलोड कर लिया हो. इसके बाद, इन फ़ाइलों को मिटा दिया जाता है. अगर आपको इन फ़ाइलों को समयावधि खत्म होने से पहले मिटाना है, तो एन्क्रिप्ट किए गए मेलबॉक्स को मिटाना लेख पढ़ें.

मेलबॉक्स डाउनलोड करने के लिए, यह तरीका अपनाएं:

  • सार्वजनिक पासकोड जनरेट और अपलोड करना — मेलबॉक्स डाउनलोड करने के लिए, एन्क्रिप्ट करने का सार्वजनिक पासकोड बनाएं. यह चरण सिर्फ़ एक बार पूरा करना होता है. अगर आपने पहले ही सार्वजनिक पासकोड बना लिया है, तो आपको हर मेलबॉक्स एक्सपोर्ट के लिए यह चरण पूरा करने की ज़रूरत नहीं है.
  • उपयोगकर्ता के मेलबॉक्स का एक्सपोर्ट वर्शन बनाना — किसी उपयोगकर्ता के मेलबॉक्स की कॉपी बनाने का अनुरोध करने पर, मेलबॉक्स एक्सपोर्ट करने की प्रोसेस शुरू हो जाती है. ईमेल ऑडिट एपीआई, आपके क्रेडेंशियल की पुष्टि करता है और उन्हें अनुमति देता है. इसके बाद, एक यूनीक अनुरोध आईडी दिखाता है. मेलबॉक्स बनाने की प्रोसेस में ज़्यादा समय लग सकता है. साथ ही, मेलबॉक्स के साइज़ के हिसाब से इसमें कई दिन लग सकते हैं.
  • मेलबॉक्स डाउनलोड करने के स्टेटस की जानकारी पाना — लंबित अनुरोध का स्टेटस पाने के लिए, मेलबॉक्स एक्सपोर्ट करने के अनुरोध के आईडी का इस्तेमाल करें. मेलबॉक्स की कॉपी बनाकर, उसे एक्सपोर्ट करने के लिए तैयार करने के बाद, जवाब में COMPLETED स्टेटस दिखता है. साथ ही, एन्क्रिप्ट किए गए मेलबॉक्स की फ़ाइलों की सूची, एचटीटीपी यूआरएल के तौर पर दिखती है. मेलबॉक्स की फ़ाइलें डाउनलोड करने के लिए, यूआरएल के इस सेट का इस्तेमाल करें.
  • डाउनलोड किए गए मेलबॉक्स की फ़ाइलें पाना — एन्क्रिप्ट की गई फ़ाइलें डाउनलोड करने के बाद, डोमेन की निजी कुंजी का इस्तेमाल करके, मेलबॉक्स की फ़ाइलों को डिक्रिप्ट करें. डिक्रिप्ट करने के बाद, फ़ाइलें mbox फ़ॉर्मैट में दिखती हैं.

सार्वजनिक पासकोड जनरेट करना

मेलबॉक्स डाउनलोड करने से पहले, आपको डोमेन के लिए OpenPGP का सार्वजनिक पासकोड अपलोड करना होगा. मेलबॉक्स डाउनलोड करने की सुविधा सेट अप करते समय, यह चरण सिर्फ़ एक बार पूरा करना होता है मेलबॉक्स डाउनलोड. OpenPGP के साथ काम करने वाले किसी भी सॉफ़्टवेयर का इस्तेमाल करके, सार्वजनिक/निजी पासकोड पेयर जनरेट किया जा सकता है. जैसे, GNU Privacy Guard (GPG). एन्क्रिप्ट करने की यह सार्वजनिक कुंजी, पीजीपी फ़ॉर्मैट में ASCII-एन्कोड की गई आरएसए कुंजी होनी चाहिए.

GNU Privacy Guard की मदद से पासकोड जनरेट करने के लिए, यह तरीका अपनाएं:

  1. GnuPG 1.4 इंस्टॉल करें.

  2. नया पासकोड जनरेट करें:

    gpg --gen-key --expert
    
  3. अपनी क्षमताएं सेट करने के लिए, विकल्प 8 चुनें और साइन करने की क्षमता को टॉगल करें.

  4. पासकोड जनरेट करने की प्रोसेस पूरी करने के लिए, सभी डिफ़ॉल्ट विकल्प स्वीकार करें. इस पासकोड में, एन्क्रिप्ट करने की कार्रवाई चालू होनी चाहिए. साइन करने की कार्रवाई बंद की जा सकती है, क्योंकि इसका इस्तेमाल नहीं किया जाता.

  5. सिर्फ़ उस उपयोगकर्ता आईडी के लिए पासकोड एक्सपोर्ट करें जो आपके Google Workspace से जुड़ा हो:

    • अगर GPG का इस्तेमाल करके पहली बार पासकोड जनरेट किया जा रहा है, तो अभी जनरेट किया गया पासकोड एक्सपोर्ट करें:

      gpg --armor --export
      
    • अगर आपने GPG का इस्तेमाल करके पहले ही अन्य पासकोड जनरेट कर लिए हैं, तो आपकी कीरिंग में कई पासकोड मौजूद होंगे. पासकोड की सूची पाएं:

      gpg --list-keys
      

      अगर एक से ज़्यादा पासकोड की सूची दिखती है, तो वह पासकोड चुनें जिसे आपको एक्सपोर्ट करना है. इसके लिए, उसका uid डालें:

      gpg --armor --export KEY_UID
      
  6. Motobit या किसी अन्य टूल की मदद से, पासकोड को base64 एन्कोडिंग में बदलें. पक्का करें कि आपने हेडर के साथ-साथ सभी लाइनें कॉपी की हों. साथ ही, कोई भी अतिरिक्त लाइन न जोड़ें. सार्वजनिक पासकोड की फ़ाइल को कैरेक्टर सेट US-ASCII, (IANA पसंदीदा कैरेक्टर सेट का नाम ASCII के लिए) के साथ पढ़ा जाना चाहिए.

उदाहरण

यहां दिए गए उदाहरण में, सार्वजनिक पासकोड को base64 एन्कोड किए गए स्ट्रिंग में बदलने का तरीका बताया गया है.

यहां दिए गए उदाहरण में, सार्वजनिक पासकोड को बदलने से पहले दिखाया गया है:

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.10 (GNU/Linux)

mQENBErWaD4BCACt2ngfs6/+QOGYbxNbc3gLnXHtqp7NTTXNW4SJo+/A1oUZoGxA
Qx6zFXhQ/8MXW66+8STS1YqNJOARFtjbIKPwjrdcukdPzYVKGZre0RaxCnMyCV+6
F4YNQD1UegHTu2wCGR1uiYOfLxUa7/do6s31WRTH8vbtiPY9/6obEIxDjDzKIqYO
rvRDWqALBYklOkJ3Hbgfyl42EsnLiAhS+dMs2PCDi2X0ZJCPZ8eTjLsdAtqVZJ+R
WC1J3UDuFfmcpsDYRtUL9w6YMtlapC+9mmJ3ABEBAAG0V0Rhc2hlciBUZXN0IChU
dGVyMkBkYXNoZXItaHlkLXRlc3QuY29tPokBOAQTAQIAIgUCStZoPgIbDQYLCQgH
k19QckTpwBdskEYumFvmWve5UX2SVV7fzOC0nZtgFxtZGlJhGmjsA3rxFTlb+Ira
WZayXCWYiCzd7m9z5/KyGD2GFTK/94mdm25N6GXh/b35pIFZXBI/rZjrYrhYRBFu
GtzGFIw9AAnFyUzEUUVfPWUtBe5yHMW54C60nHk5xYIa6qFhiLp4PYqZCrYX1iIs
fRROFA==
=STHr
-----END PGP PUBLIC KEY BLOCK-----

यहां दिए गए उदाहरण में, सार्वजनिक पासकोड को बदलने के बाद दिखाया गया है:

LS0tLS1CRUdJTiBQR1AgUFVCTElDIEtFWSBCTE9DSy0tLS0tDQpWZXJzaW9uOiBHbn
VQRyB2MS40LjEwIChHTlUvTGludXgpDQoNCm1RRU5CRXJXYUQ0QkNBQ3QybmdmczYv

K1FPR1lieE5iYzNnTG5YSHRxcDdOVFRYTlc0U0pvKy9BMW9VWm9HeEENClF4NnpGWG
hRLzhNWFc2Nis4U1RTMVlxTkpPQVJGdGpiSUtQd2pyZGN1a2RQellWS0dacmUwUmF4
Q25NeUNWKzYNCkY0WU5RRDFVZWdIVHUyd0NHUjF1aVlPZkx4VWE3L2RvNnMzMVdSVE
g4dmJ0aVBZOS82b2JFSXhEakR6S0lxWU8NCnJ2UkRXcUFMQllrbE9rSjNIYmdmeWw0
MkVzbkxpQWhTK2RNczJQQ0RpMlgwWkpDUFo4ZVRqTHNkQXRxVlpKK1INCldDMUozVU
R1RmZtY3BzRFlSdFVMOXc2WU10bGFwQys5bW1KM0FCRUJBQUcwVjBSaGMyaGxjaUJV
WlhOMElDaFUNCmRHVnlNa0JrWVhOb1pYSXRhSGxrTFhSbGMzUXVZMjl0UG9rQk9BUV
RBUUlBSWdVQ1N0Wm9QZ0liRFFZTENRZ0gNCmsxOVFja1Rwd0Jkc2tFWXVtRnZtV3Zl
NVVYMlNWVjdmek9DMG5adGdGeHRaR2xKaEdtanNBM3J4RlRsYitJcmENCldaYXlYQ1
dZaUN6ZDdtOXo1L0t5R0QyR0ZUSy85NG1kbTI1TjZHWGgvYjM1cElGWlhCSS9yWmpy
WXJoWVJCRnUNCkd0ekdGSXc5QUFuRnlVekVVVVZmUFdVdEJlNXlITVc1NEM2MG5Iaz
V4WUlhNnFGaGlMcDRQWXFaQ3JZWDFpSXMNCmZSUk9GQT09DQo9U1RIcg0KLS0tLS1F
TkQgUEdQIFBVQkxJQyBLRVkgQkxPQ0stLS0tLQ==

सार्वजनिक पासकोड अपलोड करना

  1. सार्वजनिक पासकोड अपलोड करने के लिए, base64-एन्कोड किए गए सार्वजनिक पासकोड के साथ एक एक्सएमएल एंट्री बनाएं:

    <atom:entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
    <apps:property name="publicKey" value="ENCODED_KEY"/>
    </atom:entry>
    
  2. अपने Google Workspace डोमेन में, publickey फ़ीड के यूआरआई पर एचटीटीपी POST अनुरोध भेजें:

    POST https://apps-apis.google.com/a/feeds/compliance/audit/publickey/DOMAIN_NAME
    

    अनुरोध पूरा होने पर, सर्वर 201 CREATED status code और इस उदाहरण जैसा जवाब दिखाता है:

    <entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
    <id>https://apps-apis.google.com/a/feeds/compliance/audit/publickey/DOMAIN_NAME/id>/id>
    <updated>2009-04-17T15:02:45.646Z</updated>
    <link rel='self' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/publickey/DOMAIN_NAME/id'/>
    <link rel='edit' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/publickey/DOMAIN_NAME/id'/>
    <apps:property name='publicKey' value='ENCODED_KEY'/>
    </entry>
    

एक्सपोर्ट करने के लिए, मेलबॉक्स की कॉपी बनाना

किसी उपयोगकर्ता के मेलबॉक्स की कॉपी को एक्सपोर्ट और डाउनलोड करने के लिए तैयार करने के लिए, ईमेल ऑडिट एपीआई के एक्सपोर्ट फ़ीड का इस्तेमाल करें.

एक्सपोर्ट फ़ीड के यूआरआई पर POST अनुरोध भेजें और Authorization हेडर शामिल करें:

POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/DOMAIN_NAME/SOURCE_USERNAME

इनकी जगह ये डालें:

  • DOMAIN_NAME: Google Workspace डोमेन का नाम. जैसे, example.com.
  • SOURCE_USERNAME: उस मेलबॉक्स का उपयोगकर्ता नाम जिसे आपको डाउनलोड करना है.

अनुरोध में, यह Content-type हेडर शामिल होता है:

Content-type: application/atom+xml

मेलबॉक्स एक्सपोर्ट करने के अनुरोध में इस्तेमाल किए जाने वाले पैरामीटर की पूरी सूची देखने के लिए, संसाधन: export लेख पढ़ें.

एक्सपोर्ट करने के लिए मेलबॉक्स बनाने का उदाहरण

इस उदाहरण में, इन पैरामीटर का इस्तेमाल किया गया है:

  • जिस उपयोगकर्ता के मेलबॉक्स को एक्सपोर्ट करना है उसका नाम quinn@example.com है.
  • beginDate July 1, 2022, 04:30 hours है.
  • endDate August 30, 2022, 20:00 hours है.
  • includeDeleted false है.
  • searchQuery in:chat है.
  • packageContent FULL_MESSAGE है.

प्रोटोकॉल

POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/example.com/quinn

<atom:entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
   <apps:property name='beginDate' value='2022-07-01 04:30'/>
   <apps:property name='endDate' value='2022-08-30 20:00'/>
   <apps:property name='includeDeleted' value='false'/>
   <apps:property name='searchQuery' value='in:chat'/>
   <apps:property name='packageContent' value='FULL_MESSAGE'/>
</atom:entry>

अनुरोध पूरा होने पर, सर्वर 201 CREATED स्टेटस कोड और AtomPub एंट्री दिखाता है.

<entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
    <id>https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/example.com/quinn/53156>/id>
    <updated>2022-10-17T15:02:45.646Z</updated>
    <link rel='self' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/example.com/quinn/53156'/>
    <link rel='edit' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/example.com/quinn/53156'/>
    <apps:property name='status' value='PENDING'/>
    <apps:property name='packageContent' value='FULL_MESSAGE'/>
    <apps:property name='includeDeleted' value='false'/>
    <apps:property name='searchQuery' value='in:chat'/>
    <apps:property name='completedDate' value='2022-09-18 10:13'/>
    <apps:property name='adminEmailAddress' value='admin1@example.com'/>
    <apps:property name='requestId' value='53156'/>
    <apps:property name='userEmailAddress' value='quinn@example.com'/>
    <apps:property name='endDate' value='2022-08-30 20:00'/>
    <apps:property name='requestDate' value='2022-09-17 12:51'/>
    <apps:property name='beginDate' value='2022-07-01 04:30'/>
</entry>

इस उदाहरण में, इस मेलबॉक्स की प्रोसेसिंग पूरी हो गई है. status प्रॉपर्टी COMPLETED है. साथ ही, एक्सपोर्ट के लिए दिखाए गए numberOfFiles की संख्या दो है.

Java

import java.util.Calendar;
import com.google.gdata.client.appsforyourdomain.audit.AuditService;
import com.google.gdata.client.appsforyourdomain.audit.MailBoxDumpRequest;
import com.google.gdata.data.appsforyourdomain.generic.GenericEntry;
...

MailBoxDumpRequest request = new MailBoxDumpRequest();
request.setAdminEmailAddress("admin@example.com");
request.setUserEmailAddress("quinn@example.com");

Calendar beginDate = Calendar.getInstance();
beginDate.set(2022, Calendar.JULY, 1, 4, 30);
request.setBeginDate(beginDate.getTime());

Calendar endDate = Calendar.getInstance();
endDate.set(2022, Calendar.AUGUST, 30, 20, 0);
request.setEndDate(endDate.getTime());

request.setIncludeDeleted(false);
request.setSearchQuery("in:chat");
request.setPackageContent("FULL_MESSAGE");

AuditService service = new AuditService("admin@example.com", "p@55w0rd", "example.com", "example.com-auditapp-v1");
GenericEntry mailboxDumpEntry = service.createMailboxDumpRequest(request);

String requestId = mailboxDumpEntry.getRequestId();
String status = mailboxDumpEntry.getStatus();
String numberOfFiles = mailboxDumpEntry.getNumberOfFiles();

.NET

using System;
using Google.GData.Apps;
using Google.GData.Extensions.Apps;
...

MailboxDumpRequest mailboxDumpRequest = new MailboxDumpRequest();
mailboxDumpRequest.BeginDate = new DateTime(2022, 7, 1, 4, 30, 0);
mailboxDumpRequest.EndDate = new DateTime(2022, 8, 30, 20, 0, 0);
mailboxDumpRequest.IncludeDeleted = false;
mailboxDumpRequest.SearchQuery = "in:chat";
mailboxDumpRequest.PackageContent = MonitorLevel.FULL_MESSAGE;

AuditService service = new AuditService("example.com", "example.com-auditapp-v1");
service.setUserCredentials("admin@example.com", "p@55w0rd");
MailboxDumpRequest dumpRequest = service.CreateMailboxDumpRequest("quinn", mailboxDumpRequest);

मेलबॉक्स के एक्सपोर्ट स्टेटस की जानकारी पाना

मेलबॉक्स को एक्सपोर्ट करने के लिए तैयार करने की प्रोसेस एसिंक्रोनस होती है. इसलिए, यह देखने के लिए कि एन्क्रिप्ट किए गए मेलबॉक्स की प्रोसेसिंग पूरी हुई या नहीं, इस जानकारी को पाने के अनुरोध का इस्तेमाल करें.

एक्सपोर्ट के लिए तैयार किए गए मेलबॉक्स के स्टेटस की जानकारी पाने के लिए, एक्सपोर्ट फ़ीड के यूआरआई पर मेलबॉक्स के requestId के साथ एचटीटीपी GET अनुरोध भेजें और Authorization हेडर शामिल करें:

GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/DOMAIN_NAME/SOURCE_USERNAME/MAILBOX_REQUESTID

इनकी जगह ये डालें:

  • DOMAIN_NAME: Google Workspace डोमेन का नाम. जैसे, example.com.
  • SOURCE_USERNAME: उस मेलबॉक्स का उपयोगकर्ता नाम जिसे आपको डाउनलोड करना है.
  • MAILBOX_REQUESTID: requestID, मेलबॉक्स एक्सपोर्ट करने के अनुरोध के लिए एक यूनीक आइडेंटिफ़ायर है. यह एक्सपोर्ट का अनुरोध करने पर दिखता है.

इस अनुरोध से, मेलबॉक्स एक्सपोर्ट के मौजूदा स्टेटस के साथ एक AtomPub एंट्री दिखती है. मौजूदा स्टेटस के लिए ये वैल्यू हो सकती हैं:

PENDING
अनुरोध को प्रोसेस किया जा रहा है.
ERROR
किसी गड़बड़ी की वजह से अनुरोध पूरा नहीं हुआ. गड़बड़ी का एक उदाहरण यह है कि डोमेन के लिए, एपीआई का गलत सार्वजनिक पासकोड अपलोड किया गया हो.
COMPLETED
अनुरोध पूरी तरह से प्रोसेस हो गया है और एन्क्रिप्ट किए गए मेलबॉक्स की फ़ाइलें डाउनलोड की जा सकती हैं.
MARKED_DELETE
अनुरोध को मिटाने के लिए मार्क किया गया है. Google की क्लीनअप प्रोसेस अगली बार चलने पर, इसे मिटा दिया जाएगा. क्लीनअप प्रोसेस के बारे में ज़्यादा जानकारी पाने के लिए, एन्क्रिप्ट किए गए मेलबॉक्स को मिटाना लेख पढ़ें.
DELETED
एन्क्रिप्ट किए गए मेलबॉक्स को मिटाने की कार्रवाई का इस्तेमाल करके, मेलबॉक्स की फ़ाइलें मिटा दी गई हैं.
EXPIRED
Google ने मेलबॉक्स की फ़ाइलें, तीन हफ़्तों तक सेव रखने की समयसीमा खत्म होने के बाद मिटा दी हैं.

मेलबॉक्स के एक्सपोर्ट स्टेटस की जानकारी पाने का उदाहरण

इस उदाहरण में, उपयोगकर्ता quinn@example.com के लिए, requestIds 53156 और 34201 से जुड़े मेलबॉक्स के स्टेटस की जानकारी मिलती है.

प्रोटोकॉल

GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/example.com/quinn/53156

अनुरोध पूरा होने पर, सर्वर 201 CREATED स्टेटस कोड दिखाता है.

यहां दिए गए जवाब से पता चलता है कि स्टेटस ERROR है. इसलिए, एन्क्रिप्ट किए गए मेलबॉक्स की फ़ाइलें कभी नहीं बनाई गईं.

<entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
    <id>https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/example.com/quinn/53156</id>
    <updated>2022-10-17T15:02:45.646Z</updated>
    <link rel='self' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/example.com/quinn/53156'/>
    <link rel='edit' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/example.com/quinn/53156'/>
    <apps:property name='status' value='ERROR'/>
    <apps:property name='packageContent' value='FULL_MESSAGE'/>
    <apps:property name='includeDeleted' value='false'/>
    <apps:property name='searchQuery' value='in:chat'/>
    <apps:property name='completedDate' value='2022-09-18 10:13'/>
    <apps:property name='adminEmailAddress' value='admin1@example.com'/>
    <apps:property name='numberOfFiles' value='0'/>
    <apps:property name='requestId' value='53156'/>
    <apps:property name='userEmailAddress' value='quinn@example.com'/>
    <apps:property name='endDate' value='2022-08-30 20:00'/>
    <apps:property name='requestDate' value='2022-09-17 12:51'/>
    <apps:property name='beginDate' value='2022-07-01 04:30'/>
</entry>

इस उदाहरण में, requestId 34201 से जुड़े मेलबॉक्स के स्टेटस की जानकारी मिलती है:

GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/example.com/quinn/34201

यह दूसरा उदाहरण, COMPLETED स्टेटस के साथ पूरा हुआ है. इसमें, एन्क्रिप्ट किए गए मेलबॉक्स की फ़ाइलों वाले दो मेलबॉक्स की फ़ाइल के यूआरएल दिखते हैं. इन यूआरएल का इस्तेमाल करके, fileUrl एलिमेंट में मौजूद यूआरएल से फ़ाइलें डाउनलोड की जा सकती हैं.


<entry>...
    ...
    <apps:property name='status' value='COMPLETED'/>
    <apps:property name='packageContent' value='FULL_MESSAGE'/>
    <apps:property name='completedDate' value='2022-09-18 10:13'/>
    <apps:property name='adminEmailAddress' value='admin2@example.com'/>
    <apps:property name='numberOfFiles' value='2'/>
    <apps:property name='requestId' value='34201'/>
    <apps:property name='userEmailAddress' value='namrata@example.com'/>
    <apps:property name='requestDate' value='2022-09-17 12:51'/>
    <apps:property name='fileUrl0'  value='https://apps-apis.google.com/a/data/compliance/audit/OQAAABW3Z2OlwkDFR0H5n_6lnYAzv-pWlkAlbTyAzvJEV0MC4c7lBDW' />
    <apps:property name='fileUrl1'  value='https://apps-apis.google.com/a/data/compliance/audit/OQAAABW3Z2OlwkD55nLv-pWlkAlbTyAzvJEVPnVYW45C4cC34gtyVCC' />
</entry>

Java

import com.google.gdata.client.appsforyourdomain.audit.AuditService;
import com.google.gdata.data.appsforyourdomain.generic.GenericEntry;
...

AuditService service = new AuditService("admin@example.com", "p@55w0rd", "example.com", "example.com-auditapp-v1");
GenericEntry mailboxDumpEntry1 = service.retrieveMailboxDumpRequest("quinn", "53156");
String status = mailboxDumpEntry1.getProperty("status"); // Status is "ERROR" if the mailbox for this request isn't created

GenericEntry mailboxDumpEntry2 = service.retrieveMailboxDumpRequest("quinn", "34201");
String status = mailboxDumpEntry2.getProperty("status");

.NET

using System;
using Google.GData.Apps;
using Google.GData.Extensions.Apps;
...

AuditService service = new AuditService("example.com", "example.com-auditapp-v1");
service.setUserCredentials("admin@example.com", "p@55w0rd");
MailboxDumpRequest mailboxDumpEntry1 = service.RetrieveMailboxDumpRequest("quinn", "53156");
RequestStatus status1 = mailboxDumpEntry1.Status; // Status is "ERROR" if the mailbox for this request isn't created

MailboxDumpRequest mailboxDumpEntry2 = service.RetrieveMailboxDumpRequest("quinn", "34201");
RequestStatus status2 = mailboxDumpEntry2.Status;

मेलबॉक्स के स्टेटस के सभी अनुरोधों की जानकारी पाना

किसी डोमेन के लिए, किसी खास तारीख से शुरू होने वाले मेलबॉक्स के सभी अनुरोधों की जानकारी पाने के लिए, एक्सपोर्ट फ़ीड के यूआरआई पर एचटीटीपी GET अनुरोध करें और Authorization हेडर शामिल करें:

GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/DOMAIN_NAME?fromDate=FROM_DATE

इनकी जगह ये डालें:

  • DOMAIN_NAME: Google Workspace डोमेन का नाम. जैसे, example.com.
  • FROM_DATE: कॉर्डिनेटेड यूनिवर्सल टाइम (यूटीसी) फ़ॉर्मैट में, एन्क्रिप्ट किए गए मेलबॉक्स के अनुरोध की यूआरएल-एन्कोड की गई तारीख. अगर इस GET अनुरोध में कोई fromDate नहीं दी जाती है, तो पिछले तीन हफ़्तों के सभी अनुरोधों की जानकारी मिलती है.

बड़े जवाब के लिए, नतीजों के हर पेज पर ज़्यादा से ज़्यादा 100 एंट्री दिखती हैं. साथ ही, इसमें <link rel='next'...> टैग में एक यूआरआई शामिल होता है. यह यूआरआई, नतीजों के अगले पेज पर ले जाता है. क्लाइंट ऐप्लिकेशन डेवलप करते समय, आपके कोड को इन अतिरिक्त नतीजों को मैनेज करना होगा.

मेलबॉक्स के स्टेटस के सभी अनुरोधों की जानकारी पाने का उदाहरण

इस उदाहरण में, डोमेन example.com के लिए, 9 PM, August 30, 2022या उसके बाद किए गए मेलबॉक्स के स्टेटस के सभी अनुरोधों की जानकारी मिलती है:

प्रोटोकॉल

<feed xmlns:atom='http://www.w3.org/2005/Atom'
xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'
xmlns:apps='http://schemas.google.com/apps/2006'>
    <id>https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/domain</id>
    <updated>2010-03-17T15:29:21.064Z</updated>
    <link rel='next' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/tapoloka.com?fromDate=2022-08-30%2021:00'/>
    <link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/tapoloka.com'/>
    <link rel='http://schemas.google.com/g/2005#post' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/tapoloka.com'/>
    <link rel='self' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/tapoloka.com?fromDate=2022-08-30%2021:00'/>
    <openSearch:startIndex>1</openSearch:startIndex>
    <entry>
        <atom:id>https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/domain/request ID</atom:id>
        <atom:updated>2022-04-17T15:29:21.064Z</atom:updated>
        <atom:link rel='self' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/domain/request ID'/>
        <atom:link rel='edit' type='application/atom+xml' href='https://apps-apis.google.com/feeds/compliance/audit/mail/export/domain/request ID'/>
        <apps:property name='status' value='ERROR'/>
        <apps:property name='packageContent' value='FULL_MESSAGE'/>
        <apps:property name='includeDeleted' value='false'/>
        <apps:property name='searchQuery' value='in:chat'/>
        <apps:property name='completedDate' value='2022-09-18 10:13'/>
        <apps:property name='adminEmailAddress' value='admin1@example.com'/>
        <apps:property name='numberOfFiles' value='0'/>
        <apps:property name='requestId' value='the mailbox ID for this request'/>
   </entry>
   <entry>
        <id>>https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/domain/second request ID</id>
        ...
        <apps:property name='status' value='COMPLETED'/>
        <apps:property name='packageContent' value='FULL_MESSAGE'/>
        <apps:property name='includeDeleted' value='false'/>
        <apps:property name='completedDate' value='2022-09-18 10:13'/>
        <apps:property name='adminEmailAddress' value='admin1@example.com'/>
        <apps:property name='numberOfFiles' value='0'/>
        <apps:property name='requestId' value='the mailbox ID for this request'/>
        <apps:property name='userEmailAddress' value='quinn@example.com'/>
        <apps:property name='endDate' value='2022-08-30 20:00'/>
        <apps:property name='requestDate' value='2022-09-17 12:51'/>
        <apps:property name='beginDate' value='2022-07-01 04:30'/>
   </entry>
</feed>

Java

import java.util.Calendar;
import java.util.List;
import com.google.gdata.client.appsforyourdomain.audit.AuditService;
import com.google.gdata.client.appsforyourdomain.audit.MailBoxDumpRequest;
import com.google.gdata.data.appsforyourdomain.generic.GenericEntry;
...

AuditService service = new AuditService("admin@example.com", "p@55w0rd", "example.com", "example.com-auditapp-v1");
Calendar fromDate = Calendar.getInstance();
fromDate.set(2022, Calendar.AUGUST, 30, 21, 0);
List<GenericEntry> mailboxDumpRequestEntries = service.retrieveAllMailboxDumpRequests(fromDate.getTime());
for (GenericEntry entry : mailboxDumpRequestEntries) {
  MailBoxDumpRequest request = new MailBoxDumpRequest(entry);
  String status = request.getStatus();
}

.NET

using System;
using System.Collections.Generic;
using Google.GData.Apps;
using Google.GData.Extensions.Apps;
...

AuditService service = new AuditService("example.com", "example.com-auditapp-v1");
service.setUserCredentials("admin@example.com", "p@55w0rd");
GenericFeed<MailboxDumpRequest> dumpRequests = service.RetrieveAllMailboxDumpRequests(new DateTime(2022, 8, 30, 21, 0, 0);

एन्क्रिप्ट किए गए मेलबॉक्स को मिटाना

एन्क्रिप्ट किए गए मेलबॉक्स की उन फ़ाइलों को मिटाने के लिए जिनका स्टेटस COMPLETED या MARKED_DELETED है, एक्सपोर्ट फ़ीड के यूआरआई पर एचटीटीपी DELETE अनुरोध करें. इसमें, मेलबॉक्स का requestId और Authorization हेडर शामिल करें.

DELETE https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/DOMAIN_NAME/SOURCE_USERNAME/MAILBOX_REQUESTID

इनकी जगह ये डालें:

  • DOMAIN_NAME: Google Workspace डोमेन का नाम. जैसे, example.com.
  • SOURCE_USERNAME: उस मेलबॉक्स का उपयोगकर्ता नाम जिसे आपने डाउनलोड किया है.
  • MAILBOX_REQUESTID: requestID, मेलबॉक्स एक्सपोर्ट करने के अनुरोध के लिए एक यूनीक आइडेंटिफ़ायर है. यह एक्सपोर्ट का अनुरोध करने पर दिखता है.

मिटाने की प्रोसेस के दौरान कोई गड़बड़ी होने पर, MARKED_DELETE स्टेटस दिखता है. Google की क्लीनअप प्रोसेस, इस अनुरोध को 24 घंटे के अंदर अपने-आप मिटा देगी. हालांकि, MARKED_DELETE स्टेटस वाले अनुरोध के लिए, मेलबॉक्स की कुछ (या सभी) फ़ाइलें अब भी डाउनलोड की जा सकती हैं. अगर आपको यह पक्का करना है कि फ़ाइलें मिट गई हैं, तो DELETED स्टेटस दिखने तक इस कार्रवाई को फिर से करें. अगर MARKED_DELETE स्टेटस लगातार दिखता है, तो एक्सपोनेन्शियल टाइम बैक ऑफ़ के बाद फिर से कोशिश करें.

एन्क्रिप्ट किए गए मेलबॉक्स को मिटाने का उदाहरण

इस उदाहरण में, उपयोगकर्ता quinn@example.com के लिए, requestId 34201 से जुड़ा मेलबॉक्स मिटाया गया है:

प्रोटोकॉल

DELETE https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/example.com/quinn/34201

Java

import com.google.gdata.client.appsforyourdomain.audit.AuditService;
...

AuditService service = new AuditService("admin@example.com", "p@55w0rd", "example.com", "example.com-auditapp-v1");
service.deleteMailboxDumpRequest("quinn", "34201");

.Net

using System;
using Google.GData.Apps;
using Google.GData.Extensions.Apps;
...

AuditService service = new AuditService("example.com", "example.com-auditapp-v1");
service.setUserCredentials("admin@example.com", "p@55w0rd");
service.DeleteMailboxDumpRequest("quinn", "34201");