Tải hộp thư xuống

Là quản trị viên, bạn có thể tải các tài khoản hộp thư trong miền của mình xuống cho mục đích kiểm tra. Để chuẩn bị hộp thư cho việc xuất, API kiểm tra email sẽ tạo một bản sao mã hoá hộp thư của người dùng. Hệ thống sẽ trả về URL cho các tệp hộp thư đã mã hoá có sẵn ở định dạng mbox khi được tải xuống và giải mã.

Số yêu cầu tạo xuất hộp thư tối đa mỗi ngày là tổng cộng 100 yêu cầu từ tất cả các quản trị viên miền. Quá trình tạo hộp thư có thể tốn thời gian và có thể mất vài ngày tuỳ thuộc vào kích thước hộp thư.

Google lưu giữ các tệp hộp thư đã mã hoá trong 3 tuần nên hãy đảm bảo rằng bạn tải các tệp hộp thư này xuống trong khoảng thời gian này. Sau thời gian đó, các dữ liệu đó sẽ bị xoá. Để xoá các tệp hộp thư này trước khi hết khoảng thời gian, hãy xem phần Xoá hộp thư đã mã hoá.

Để tải hộp thư xuống, hãy làm như sau:

  • Tạo và tải khóa công khai lên – Tạo khóa mã hóa công khai để tải hộp thư xuống. Bước này chỉ cần thực hiện một lần. Nếu đã tạo khoá công khai, bạn không cần hoàn tất bước này cho mỗi lần xuất hộp thư.
  • Tạo phiên bản xuất hộp thư của người dùng – Quá trình xuất hộp thư bắt đầu khi bạn yêu cầu tạo bản sao hộp thư của người dùng. API kiểm tra email xác thực và uỷ quyền thông tin xác thực của bạn và trả về một mã yêu cầu duy nhất. Quá trình tạo hộp thư có thể tốn thời gian và có thể mất vài ngày tuỳ thuộc vào kích thước hộp thư.
  • Truy xuất trạng thái tải xuống hộp thư – Sử dụng mã yêu cầu xuất hộp thư để xem trạng thái của yêu cầu đang chờ xử lý. Sau khi hộp thư được sao chép và chuẩn bị xuất, phản hồi sẽ trả về trạng thái COMPLETED cùng với danh sách các tệp hộp thư đã mã hoá dưới dạng URL HTTP. Hãy sử dụng tập hợp URL này để tải các tệp hộp thư xuống.
  • Nhận các tệp hộp thư đã tải xuống — Sau khi tải các tệp đã mã hoá xuống, hãy giải mã các tệp hộp thư bằng khoá riêng tư của miền. Sau khi giải mã, các tệp sẽ được xem ở định dạng mbox.

Tạo khoá công khai

Trước khi có thể tải hộp thư xuống, bạn cần tải khoá mã hoá công khai OpenPGP lên cho miền. Bước này được thực hiện một lần khi thiết lập tính năng tải xuống hộp thư. Bạn có thể tạo cặp khoá công khai/riêng tư bằng cách dùng phần mềm tương thích với OpenPGP, chẳng hạn như GNU Privacy Guard (GPG). Khoá mã hoá công khai này phải là khoá RSA được mã hoá theo định dạng PGP ASCII.

Để tạo khoá bằng GNU Privacy Guard, hãy làm theo các bước sau:

  1. Cài đặt GnuPG 1.4.

  2. Tạo khoá mới:

    gpg --gen-key --expert
    
  3. Để đặt các tính năng của riêng bạn, hãy chọn tuỳ chọn 8 và bật/tắt chức năng ký.

  4. Để hoàn tất quá trình tạo khoá, hãy chấp nhận tất cả tuỳ chọn mặc định. Khoá này phải bật hành động mã hoá. Bạn có thể tắt thao tác ký tên vì thao tác này không được sử dụng.

  5. Chỉ xuất khoá cho mã nhận dạng người dùng tương ứng với Google Workspace của bạn:

    • Nếu đây là lần đầu tiên bạn sử dụng GPG để tạo khoá, hãy xuất khoá duy nhất mà bạn vừa tạo:

      gpg --armor --export
      
    • Nếu đã sử dụng GPG để tạo các khoá khác, thì bạn sẽ có nhiều khoá trong bộ khoá. Lấy danh sách các khoá:

      gpg --list-keys
      

      Nếu có nhiều khoá được liệt kê, hãy chỉ định uid của khoá mà bạn muốn xuất:

      gpg --armor --export KEY_UID
      
  6. Mã hoá khoá bằng phương thức mã hoá base64 bằng Motobit hoặc một công cụ khác. Hãy nhớ sao chép tất cả các dòng, bao gồm cả tiêu đề và không thêm bất kỳ dòng nào khác. Tệp khoá công khai phải được đọc bằng bộ ký tự US- ASCII, (tên bộ ký tự ưu tiên IANA cho ASCII).

Ví dụ:

Ví dụ sau cho biết cách chuyển đổi khoá công khai thành chuỗi được mã hoá base64.

Sau đây là ví dụ về khoá công khai trước khi chuyển đổi:

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

Ví dụ sau đây là khoá công khai sau khi chuyển đổi:

LS0tLS1CRUdJTiBQR1AgUFVCTElDIEtFWSBCTE9DSy0tLS0tDQpWZXJzaW9uOiBHbn
VQRyB2MS40LjEwIChHTlUvTGludXgpDQoNCm1RRU5CRXJXYUQ0QkNBQ3QybmdmczYv

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

Tải khoá công khai lên

  1. Để tải khóa công khai lên, hãy tạo một mục XML bằng khóa công khai được mã hóa 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. Gửi yêu cầu HTTP POST đến URI nguồn cấp dữ liệu publickey trong miền Google Workspace của bạn:

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

    Nếu thành công, máy chủ sẽ trả về một 201 CREATED status code và phản hồi tương tự như ví dụ sau:

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

Tạo bản sao của hộp thư để xuất

Để chuẩn bị bản sao hộp thư của người dùng để xuất và tải xuống, hãy sử dụng nguồn cấp dữ liệu xuất của API kiểm tra email.

Gửi yêu cầu POST đến URI của nguồn cấp dữ liệu xuất và thêm tiêu đề Authorization vào:

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

Thay thế đoạn mã sau:

  • DOMAIN_NAME: tên miền Google Workspace, ví dụ: example.com.
  • SOURCE_USERNAME: tên người dùng của hộp thư mà bạn muốn tải xuống.

Yêu cầu có chứa tiêu đề Content-type sau:

Content-type: application/atom+xml

Để biết danh sách đầy đủ các thông số cần sử dụng trong yêu cầu xuất hộp thư, hãy xem phần Tài nguyên: export.

Ví dụ về cách tạo hộp thư để xuất

Ví dụ này sử dụng các tham số sau:

  • Người dùng cần xuất hộp thư là quinn@example.com.
  • beginDate mới là July 1, 2022, 04:30 hours.
  • endDate mới là August 30, 2022, 20:00 hours.
  • includeDeletedfalse.
  • searchQueryin:chat.
  • packageContent mới là FULL_MESSAGE.

Giao thức

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>

Nếu thành công, máy chủ sẽ trả về mã trạng thái 201 CREATED và một mục nhập 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>

Trong ví dụ này, quá trình xử lý hộp thư này đã hoàn tất. Thuộc tính statusCOMPLETEDnumberOfFiles được trả về để xuất là 2.

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

Truy xuất trạng thái xuất của hộp thư

Do quá trình chuẩn bị xuất hộp thư là một quá trình không đồng bộ, hãy sử dụng yêu cầu truy xuất này để xem quá trình xử lý hộp thư đã mã hoá đã hoàn tất hay chưa.

Để truy xuất thông tin chi tiết về trạng thái của một hộp thư sẵn sàng để xuất, hãy gửi yêu cầu HTTP GETrequestId của hộp thư đến URI của nguồn cấp dữ liệu xuất và thêm tiêu đề Authorization:

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

Thay thế đoạn mã sau:

  • DOMAIN_NAME: tên miền Google Workspace, ví dụ: example.com.
  • SOURCE_USERNAME: tên người dùng của hộp thư mà bạn muốn tải xuống.
  • MAILBOX_REQUESTID: requestID là giá trị nhận dạng duy nhất cho yêu cầu xuất hộp thư. Giá trị này sẽ được trả về khi yêu cầu xuất ban đầu.

Yêu cầu này trả về một mục AtomPub bao gồm trạng thái hiện tại của quá trình xuất hộp thư. Trạng thái hiện tại có thể có các giá trị sau đây:

PENDING
Yêu cầu này đang được xử lý.
ERROR
Yêu cầu không thành công do xảy ra một số lỗi. Một ví dụ về lỗi có thể xảy ra là việc bạn tải nhầm khoá công khai của API lên cho miền.
COMPLETED
Yêu cầu đã được xử lý hoàn toàn và các tệp hộp thư mã hoá đã sẵn sàng để tải xuống.
MARKED_DELETE
Yêu cầu xoá sẽ được đánh dấu vào lần tiếp theo chạy công việc dọn dẹp của Google. Để biết thêm thông tin về công việc dọn dẹp này, hãy xem phần Xoá hộp thư đã mã hoá.
DELETED
Các tệp hộp thư đã được xoá thành công bằng cách sử dụng thao tác Xoá hộp thư đã mã hoá.
EXPIRED
Các tệp trong hộp thư đã bị Google xóa sau giới hạn lưu giữ là 3 tuần.

Ví dụ về cách truy xuất trạng thái xuất của hộp thư

Ví dụ này truy xuất trạng thái hộp thư tương ứng với requestIds 5315634201 cho người dùng quinn@example.com.

Giao thức

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

Nếu thành công, máy chủ sẽ trả về mã trạng thái 201 CREATED.

Như bạn có thể thấy trong phản hồi sau, trạng thái là ERROR và do đó, các tệp hộp thư đã mã hoá không bao giờ được tạo.

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

Ví dụ này truy xuất trạng thái hộp thư tương ứng với requestId 34201:

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

Ví dụ thứ hai này thành công với trạng thái COMPLETED. Tệp này trả về 2 URL của tệp hộp thư chứa các tệp hộp thư đã mã hoá. Bạn có thể tải các tệp này xuống bằng cách sử dụng các URL trong các phần tử 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;

Truy xuất tất cả yêu cầu về trạng thái hộp thư

Để truy xuất tất cả yêu cầu hộp thư cho một miền bắt đầu từ một ngày cụ thể, hãy thực hiện yêu cầu HTTP GET đến URI nguồn cấp dữ liệu xuất và bao gồm tiêu đề Authorization:

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

Thay thế đoạn mã sau:

  • DOMAIN_NAME: tên miền Google Workspace, ví dụ: example.com.
  • FROM_DATE: ngày mã hoá URL của một yêu cầu hộp thư được mã hoá theo định dạng Giờ phối hợp quốc tế (UTC). Nếu không có fromDate nào được chỉ định trong yêu cầu GET này, thì hệ thống sẽ truy xuất mọi yêu cầu trong 3 tuần qua.

Đối với một phản hồi lớn, mỗi trang kết quả sẽ trả về tối đa 100 mục nhập và bao gồm một URI trong thẻ <link rel='next'...> trỏ đến trang kết quả tiếp theo. Khi phát triển ứng dụng khách, mã của bạn cần quản lý các kết quả bổ sung này.

Ví dụ về truy xuất tất cả yêu cầu về trạng thái hộp thư

Ví dụ này truy xuất tất cả các yêu cầu về trạng thái hộp thư cho miền example.com được thực hiện vào hoặc sau 9 PM, August 30, 2022:

Giao thức

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

Xoá hộp thư đã mã hoá

Để xoá các tệp hộp thư đã mã hoá có trạng thái COMPLETED hoặc MARKED_DELETED, hãy gửi yêu cầu HTTP DELETE đến URI của nguồn cấp dữ liệu xuất, bao gồm cả requestId của hộp thư và tiêu đề Authorization.

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

Thay thế đoạn mã sau:

  • DOMAIN_NAME: tên miền Google Workspace, ví dụ: example.com.
  • SOURCE_USERNAME: tên người dùng của hộp thư mà bạn đã tải xuống.
  • MAILBOX_REQUESTID: requestID là giá trị nhận dạng duy nhất cho yêu cầu xuất hộp thư. Giá trị này sẽ được trả về khi yêu cầu xuất ban đầu.

Nếu gặp bất kỳ lỗi nào trong quá trình xoá, thì trạng thái của trạng thái MARKED_DELETE sẽ được trả về. Yêu cầu này sẽ tự động bị công việc dọn dẹp của Google xoá trong vòng 24 giờ. Tuy nhiên, đối với yêu cầu có trạng thái MARKED_DELETE, bạn vẫn có thể tải một số (hoặc tất cả) tệp hộp thư xuống. Nếu bạn muốn đảm bảo rằng các tệp đã bị xoá, hãy chạy lại thao tác này cho đến khi trạng thái DELETED được trả về. Nếu trạng thái của MARKED_DELETE được trả về một cách nhất quán, thì thử lại sau khi thời gian đợi luỹ thừa kết thúc.

Ví dụ về cách xoá hộp thư đã mã hoá

Ví dụ này sẽ xoá hộp thư cho người dùng quinn@example.com được liên kết với requestId của 34201:

Giao thức

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");