প্রশাসক হিসেবে, আপনি নিরীক্ষার উদ্দেশ্যে আপনার ডোমেইনের মধ্যে থাকা মেইলবক্স অ্যাকাউন্টগুলো ডাউনলোড করতে পারেন। একটি মেইলবক্সকে এক্সপোর্টের জন্য প্রস্তুত করতে, ইমেল অডিট এপিআই (Email Audit API) ব্যবহারকারীর মেইলবক্সের একটি এনক্রিপ্টেড কপি তৈরি করে। সিস্টেমটি এনক্রিপ্টেড মেইলবক্স ফাইলগুলোর ইউআরএল (URL) ফেরত দেয়, যেগুলো ডাউনলোড ও ডিক্রিপ্ট করার পর mbox ফরম্যাটে পাওয়া যায়।
সকল ডোমেইন অ্যাডমিনিস্ট্রেটরদের কাছ থেকে প্রতিদিন সর্বোচ্চ মোট ১০০টি মেইলবক্স এক্সপোর্ট তৈরির অনুরোধ গ্রহণ করা যাবে। মেইলবক্স তৈরির প্রক্রিয়াটি সময়সাপেক্ষ হতে পারে এবং মেইলবক্সের আকারের উপর নির্ভর করে এতে বেশ কয়েক দিন সময় লাগতে পারে।
গুগল এনক্রিপ্টেড মেইলবক্স ফাইলগুলো ৩ সপ্তাহের জন্য সংরক্ষণ করে, তাই এই সময়ের মধ্যে ফাইলগুলো ডাউনলোড করে নেওয়া নিশ্চিত করুন। এরপর সেগুলো মুছে ফেলা হয়। সময়সীমা শেষ হওয়ার আগেই এই ফাইলগুলো মুছে ফেলতে, ‘একটি এনক্রিপ্টেড মেইলবক্স মুছুন’ দেখুন।
একটি মেইলবক্স ডাউনলোড করতে, নিম্নলিখিতগুলি করুন:
- পাবলিক কী তৈরি ও আপলোড করুন — মেইলবক্স ডাউনলোড করার জন্য একটি পাবলিক এনক্রিপশন কী তৈরি করুন। এই ধাপটি শুধুমাত্র একবারই করতে হবে। যদি আপনি আগে থেকেই একটি পাবলিক কী তৈরি করে থাকেন, তাহলে প্রতিটি মেইলবক্স এক্সপোর্টের জন্য এই ধাপটি সম্পন্ন করার প্রয়োজন নেই।
- ব্যবহারকারীর মেইলবক্সের একটি এক্সপোর্ট সংস্করণ তৈরি করুন — যখন আপনি কোনো ব্যবহারকারীর মেইলবক্সের একটি অনুলিপি তৈরির অনুরোধ করেন, তখন মেইলবক্স এক্সপোর্ট প্রক্রিয়াটি শুরু হয়। ইমেল অডিট এপিআই আপনার ক্রেডেনশিয়াল প্রমাণীকরণ ও অনুমোদন করে এবং একটি অনন্য অনুরোধ আইডি ফেরত দেয়। মেইলবক্স তৈরির প্রক্রিয়াটি সময়সাপেক্ষ হতে পারে এবং মেইলবক্সের আকারের উপর নির্ভর করে এতে কয়েক দিন সময় লাগতে পারে।
- মেইলবক্স ডাউনলোডের অবস্থা জানুন — অপেক্ষাধীন অনুরোধের অবস্থা জানতে মেইলবক্স এক্সপোর্ট রিকোয়েস্ট আইডি ব্যবহার করুন। মেইলবক্সটি কপি হয়ে গেলে এবং এক্সপোর্টের জন্য প্রস্তুত হলে, রেসপন্সে
COMPLETEDস্ট্যাটাসের সাথে HTTP URL হিসেবে এনক্রিপ্টেড মেইলবক্স ফাইলগুলোর একটি তালিকা ফেরত আসে। মেইলবক্স ফাইলগুলো ডাউনলোড করতে এই URL-গুলো ব্যবহার করুন। - ডাউনলোড করা মেইলবক্স ফাইলগুলো সংগ্রহ করুন — এনক্রিপ্টেড ফাইলগুলো ডাউনলোড করার পর, ডোমেইনের প্রাইভেট কী ব্যবহার করে মেইলবক্স ফাইলগুলো ডিক্রিপ্ট করুন। ডিক্রিপ্ট হয়ে গেলে, ফাইলগুলো mbox ফরম্যাটে দেখা যাবে।
একটি পাবলিক কী তৈরি করুন
মেইলবক্স ডাউনলোড করার আগে, আপনাকে ডোমেইনটির জন্য একটি OpenPGP পাবলিক এনক্রিপশন কী আপলোড করতে হবে। মেইলবক্স ডাউনলোড সেট আপ করার সময় এই ধাপটি একবারই করা হয়। আপনি GNU Privacy Guard (GPG)- এর মতো যেকোনো OpenPGP-উপযোগী সফটওয়্যার ব্যবহার করে পাবলিক/প্রাইভেট কী পেয়ারটি তৈরি করতে পারেন। এই পাবলিক এনক্রিপশন কী-টি অবশ্যই একটি PGP ফরম্যাটের ASCII-এনকোডেড RSA কী হতে হবে।
GNU Privacy Guard দিয়ে একটি কী তৈরি করতে, এই ধাপগুলো অনুসরণ করুন:
একটি নতুন কী তৈরি করুন:
gpg --gen-key --expertআপনার নিজস্ব ক্ষমতা নির্ধারণ করতে, বিকল্প
8নির্বাচন করুন এবং স্বাক্ষর করার ক্ষমতাটি টগল করুন।কী তৈরির প্রক্রিয়াটি সম্পূর্ণ করতে, সমস্ত ডিফল্ট অপশন গ্রহণ করুন। এই কী-টির জন্য এনক্রিপ্ট অ্যাকশনটি সক্রিয় থাকা উচিত। আপনি সাইন অ্যাকশনটি বন্ধ করে দিতে পারেন, কারণ এটি ব্যবহৃত হয় না।
শুধুমাত্র আপনার গুগল ওয়ার্কস্পেসের সাথে সম্পর্কিত ইউজার আইডির জন্য কী-টি এক্সপোর্ট করুন:
আপনি যদি প্রথমবারের মতো GPG ব্যবহার করে কোনো কী তৈরি করেন, তাহলে এইমাত্র তৈরি করা একক কী-টি এক্সপোর্ট করুন:
gpg --armor --exportআপনি যদি ইতিমধ্যেই GPG ব্যবহার করে অন্যান্য চাবি তৈরি করে থাকেন, তাহলে আপনার কী-রিং-এ একাধিক চাবি রয়েছে। চাবিগুলোর একটি তালিকা নিন:
gpg --list-keysযদি একাধিক কী তালিকাভুক্ত থাকে, তাহলে যে কী-টি আপনি এক্সপোর্ট করতে চান তার
uidউল্লেখ করুন:gpg --armor --export KEY_UID
মোটোবিট বা অন্য কোনো টুল ব্যবহার করে বেস৬৪ এনকোডিং-এর মাধ্যমে কী-টি এনকোড করুন। হেডার সহ সমস্ত লাইন কপি করতে ভুলবেন না এবং কোনো অতিরিক্ত লাইন যোগ করবেন না। পাবলিক কী ফাইলটি ইউএস-অ্যাসকি (US-ASCII) ক্যারেক্টারসেট দিয়ে পড়তে হবে (এটি অ্যাসকি-এর জন্য আইএএনএ-এর পছন্দের ক্যারেক্টারসেটের নাম)।
উদাহরণ
নিম্নলিখিত উদাহরণটি দেখায় কিভাবে একটি পাবলিক কী-কে বেস৬৪ এনকোডেড স্ট্রিং-এ রূপান্তর করতে হয়।
নিম্নলিখিত উদাহরণটি হলো রূপান্তরের আগের পাবলিক কী:
-----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==
পাবলিক কী আপলোড করুন
পাবলিক কী আপলোড করতে, বেস৬৪-এনকোডেড পাবলিক কী দিয়ে একটি XML এন্ট্রি তৈরি করুন:
<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>
আপনার গুগল ওয়ার্কস্পেস ডোমেইনের
publickeyফিড URI-তে একটি HTTPPOSTঅনুরোধ পাঠান: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>
রপ্তানির জন্য মেইলবক্সের একটি অনুলিপি তৈরি করুন
এক্সপোর্ট ও ডাউনলোডের জন্য কোনো ব্যবহারকারীর মেইলবক্সের একটি কপি প্রস্তুত করতে, ইমেইল অডিট এপিআই-এর এক্সপোর্ট ফিড ব্যবহার করুন।
এক্সপোর্ট ফিডের URI-তে একটি POST অনুরোধ পাঠান এবং Authorization হেডারটি অন্তর্ভুক্ত করুন:
POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/DOMAIN_NAME/SOURCE_USERNAME
নিম্নলিখিতগুলি প্রতিস্থাপন করুন:
-
DOMAIN_NAME: গুগল ওয়ার্কস্পেস ডোমেইন নেম—উদাহরণস্বরূপ, 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। -
includeDeletedfalse। -
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 হলো দুই।
জাভা
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 সহ এক্সপোর্ট ফিডের URI-তে একটি HTTP GET রিকোয়েস্ট পাঠান এবং Authorization হেডারটি অন্তর্ভুক্ত করুন:
GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/DOMAIN_NAME/SOURCE_USERNAME/MAILBOX_REQUESTID
নিম্নলিখিতগুলি প্রতিস্থাপন করুন:
-
DOMAIN_NAME: গুগল ওয়ার্কস্পেস ডোমেইন নেম—উদাহরণস্বরূপ, example.com। -
SOURCE_USERNAME: যে মেইলবক্সটি আপনি ডাউনলোড করতে চান, তার ইউজারনেম। -
MAILBOX_REQUESTID:requestIDহলো মেইলবক্স এক্সপোর্ট অনুরোধের একটি অনন্য শনাক্তকারী, যা প্রাথমিকভাবে এক্সপোর্টের জন্য অনুরোধ করা হলে ফেরত দেওয়া হয়।
এই অনুরোধটি মেইলবক্স এক্সপোর্টের বর্তমান অবস্থা সহ একটি AtomPub এন্ট্রি ফেরত দেয়। বর্তমান অবস্থার সম্ভাব্য মানগুলো নিম্নরূপ:
-
PENDING - অনুরোধটি প্রক্রিয়াধীন আছে।
-
ERROR - কোনো ত্রুটির কারণে অনুরোধটি ব্যর্থ হয়েছে। একটি সম্ভাব্য ত্রুটির উদাহরণ হলো, ডোমেইনটির জন্য ভুল এপিআই পাবলিক কী আপলোড করা হয়েছিল।
-
COMPLETED - অনুরোধটি সম্পূর্ণরূপে প্রক্রিয়া করা হয়েছে এবং এনক্রিপ্টেড মেইলবক্স ফাইলগুলো ডাউনলোডের জন্য প্রস্তুত।
-
MARKED_DELETE - পরবর্তী বার গুগল ক্লিনআপ জব চলার সময় অনুরোধটি মুছে ফেলার জন্য চিহ্নিত করা হয়। এই ক্লিনআপ জব সম্পর্কে আরও তথ্যের জন্য, “একটি এনক্রিপ্টেড মেইলবক্স মুছুন” দেখুন।
-
DELETED - এনক্রিপ্টেড মেইলবক্স ডিলিট করার অপারেশনটি ব্যবহার করে মেইলবক্স ফাইলগুলো সফলভাবে ডিলিট করা হয়েছে।
-
EXPIRED - ৩ সপ্তাহের সংরক্ষণের সময়সীমা শেষ হওয়ার পর গুগল মেইলবক্স ফাইলগুলো মুছে দিয়েছে।
একটি মেইলবক্সের রপ্তানি অবস্থা জানার উদাহরণ
এই উদাহরণটি 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>
জাভা
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;
সমস্ত মেইলবক্স স্ট্যাটাস অনুরোধ পুনরুদ্ধার করুন
একটি ডোমেইনের জন্য একটি নির্দিষ্ট তারিখ থেকে শুরু হওয়া সমস্ত মেইলবক্স অনুরোধ পুনরুদ্ধার করতে, এক্সপোর্ট ফিড URI-তে একটি HTTP GET অনুরোধ পাঠান এবং Authorization হেডারটি অন্তর্ভুক্ত করুন:
GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/DOMAIN_NAME?fromDate=FROM_DATE
নিম্নলিখিতগুলি প্রতিস্থাপন করুন:
-
DOMAIN_NAME: গুগল ওয়ার্কস্পেস ডোমেইন নেম—উদাহরণস্বরূপ, example.com। -
FROM_DATE: কোঅর্ডিনেটেড ইউনিভার্সাল টাইম (UTC) ফরম্যাটে একটি এনক্রিপ্টেড মেইলবক্স অনুরোধের URL-এনকোডেড তারিখ। এইGETঅনুরোধে যদি কোনোfromDateনির্দিষ্ট না করা হয়, তবে বিগত তিন সপ্তাহের সমস্ত অনুরোধ পুনরুদ্ধার করা হয়।
বড় আকারের রেসপন্সের ক্ষেত্রে, ফলাফলের প্রতিটি পৃষ্ঠা সর্বোচ্চ ১০০টি এন্ট্রি প্রদর্শন করে এবং পরবর্তী পৃষ্ঠায় যাওয়ার জন্য একটি <link rel='next'...> ট্যাগের মধ্যে একটি URI অন্তর্ভুক্ত থাকে। আপনার ক্লায়েন্ট অ্যাপ্লিকেশন তৈরি করার সময়, আপনার কোডকে এই অতিরিক্ত ফলাফলগুলো পরিচালনা করতে হবে।
সমস্ত মেইলবক্স স্ট্যাটাস অনুরোধ পুনরুদ্ধার করার উদাহরণ
এই উদাহরণটি 9 PM, August 30, 2022 বা তার পরে example.com ডোমেনের জন্য করা সমস্ত মেইলবক্স স্ট্যাটাস অনুরোধ পুনরুদ্ধার করে:
প্রোটোকল
<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>
জাভা
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 স্ট্যাটাসযুক্ত এনক্রিপ্টেড মেইলবক্স ফাইলগুলো ডিলিট করতে, মেইলবক্সের requestId এবং Authorization হেডারসহ এক্সপোর্ট ফিডের URI-তে একটি HTTP DELETE রিকোয়েস্ট পাঠান।
DELETE https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/DOMAIN_NAME/SOURCE_USERNAME/MAILBOX_REQUESTID
নিম্নলিখিতগুলি প্রতিস্থাপন করুন:
-
DOMAIN_NAME: গুগল ওয়ার্কস্পেস ডোমেইন নেম—উদাহরণস্বরূপ, example.com। -
SOURCE_USERNAME: আপনি যে মেইলবক্সটি ডাউনলোড করেছেন তার ইউজারনেম। -
MAILBOX_REQUESTID:requestIDহলো মেইলবক্স এক্সপোর্ট অনুরোধের একটি অনন্য শনাক্তকারী, যা প্রাথমিকভাবে এক্সপোর্টের জন্য অনুরোধ করা হলে ফেরত দেওয়া হয়।
ডিলিট করার প্রক্রিয়ার সময় কোনো ত্রুটি দেখা দিলে, MARKED_DELETE স্ট্যাটাসটি ফেরত আসে। এই অনুরোধটি ২৪ ঘণ্টার মধ্যে গুগলের একটি ক্লিনআপ জবের মাধ্যমে স্বয়ংক্রিয়ভাবে ডিলিট হয়ে যাবে। তবে, MARKED_DELETE স্ট্যাটাসযুক্ত কোনো অনুরোধের ক্ষেত্রে, মেইলবক্সের কিছু (বা সব) ফাইল ডাউনলোডের জন্য তখনও উপলব্ধ থাকতে পারে। ফাইলগুলো যে ডিলিট হয়েছে তা নিশ্চিত করতে চাইলে, DELETED স্ট্যাটাসটি ফেরত না আসা পর্যন্ত এই অপারেশনটি আবার চালান। যদি ধারাবাহিকভাবে MARKED_DELETE স্ট্যাটাসটি ফেরত আসে, তাহলে এক্সপোনেনশিয়াল সময় ব্যবধানের পর আবার চেষ্টা করুন।
এনক্রিপ্টেড মেইলবক্স মুছে ফেলার উদাহরণ
এই উদাহরণটি 34201 requestId এর সাথে যুক্ত quinn@example.com ব্যবহারকারীর মেইলবক্সটি মুছে দেয়:
প্রোটোকল
DELETE https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/example.com/quinn/34201
জাভা
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");
.নেট
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");