メールボックスをダウンロードする

管理者は、監査目的でドメイン内のメールボックス アカウントをダウンロードできます。メールボックスをエクスポート用に準備するため、Email Audit API はユーザーのメールボックスの暗号化されたコピーを作成します。暗号化されたメールボックス ファイルの URL が返されます。この URL をダウンロードして復号すると、mbox 形式で使用できます。

1 日あたりのメールボックス エクスポート作成リクエストの最大数は、すべてのドメイン管理者からの合計 100 件です。メールボックスの作成プロセスには時間がかかり、メールボックスのサイズによっては数日かかることがあります。

暗号化されたメールボックス ファイルは 3 週間保持されるため、この期間内にメールボックス ファイルをダウンロードしてください。この期間が経過すると、削除されます。期間が切れる前にこれらのメールボックス ファイルを削除するには、暗号化されたメールボックスを削除するをご覧ください。

メールボックスをダウンロードする手順は次のとおりです。

  • 公開鍵を生成してアップロードする - メールボックスのダウンロード用の公開暗号鍵を作成します。この手順は 1 回だけ行います。公開鍵をすでに作成している場合は、メールボックスのエクスポートごとにこの手順を完了する必要はありません。
  • ユーザーのメールボックスのエクスポート バージョンを作成する - メールボックスのエクスポート プロセスは、ユーザーのメールボックスのコピーの作成をリクエストすると開始されます。Email Audit API は、認証情報を認証して承認し、一意のリクエスト ID を返します。メールボックスの作成プロセスには時間がかかり、メールボックスのサイズによっては数日かかることがあります。
  • メールボックスのダウンロード ステータスを取得する - メールボックスのエクスポート リクエスト ID を使用して、保留中のリクエストのステータスを取得します。メールボックスがコピーされ、エクスポートの準備が整うと、レスポンスからステータス COMPLETED と、暗号化されたメールボックス ファイルのリスト(HTTP URL)が返されます。この URL を使用してメールボックス ファイルをダウンロードします。
  • ダウンロードしたメールボックス ファイルを取得する - 暗号化されたファイルをダウンロードしたら、ドメインの秘密鍵を使用してメールボックス ファイルを復号します。復号すると、ファイルは mbox 形式で表示されます。

公開鍵を生成する

メールボックスをダウンロードする前に、ドメインの OpenPGP 公開暗号鍵をアップロードする必要があります。この手順は、メールボックスのダウンロードの設定時に 1 回行います。公開鍵と秘密鍵のペアは、GNU Privacy Guard(GPG)など、OpenPGP 互換のソフトウェアを使用して生成できます。この公開暗号鍵は、PGP 形式の ASCII エンコード RSA 鍵である必要があります。

GNU Privacy Guard で鍵を生成する手順は次のとおりです。

  1. GnuPG 1.4 をインストールします

  2. 新しい鍵を生成します。

    gpg --gen-key --expert
    
  3. 独自の機能を設定するには、オプション 8 を選択し、署名機能を切り替えます。

  4. 鍵生成プロセスを完了するには、すべてのデフォルト オプションを承認します。この鍵では、暗号化アクションが有効になっている必要があります。署名アクションは使用されないため、オフにできます。

  5. Google Workspace に対応するユーザー ID の鍵のみをエクスポートします。

    • GPG を使用して鍵を生成するのは初めての場合は、生成した単一の鍵をエクスポートします。

      gpg --armor --export
      
    • GPG を使用して他の鍵をすでに生成している場合は、キーリングに複数の鍵があります。キーのリストを取得します。

      gpg --list-keys
      

      複数のキーが一覧表示されている場合は、エクスポートするキーの uid を指定します。

      gpg --armor --export KEY_UID
      
  6. Motobit などのツールを使用して、鍵を base64 エンコードでエンコードします。ヘッダーを含むすべての行をコピーし、余分な行を追加しないでください。公開鍵ファイルは、文字セット US-ASCIIIANA が推奨する 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 でエンコードされた公開鍵を含む 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>
    
  2. Google Workspace ドメインの publickey フィード URI に HTTP 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>
    

エクスポート用にメールボックスのコピーを作成する

ユーザーのメールボックスのコピーをエクスポートしてダウンロードするには、Email Audit API のエクスポート フィードを使用します。

エクスポート フィードの URI に 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」です。
  • includeDeletedfalse である。
  • searchQueryin: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 は 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);

メールボックスのエクスポート ステータスを取得する

メールボックスのエクスポート準備は非同期プロセスであるため、この取得リクエストを使用して、暗号化されたメールボックスの処理が完了したかどうかを確認します。

エクスポート用に準備されたメールボックスのステータスの詳細を取得するには、メールボックスの requestId を含む HTTP GET リクエストをエクスポート フィードの URI に送信し、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
エラーが発生したため、リクエストを処理できませんでした。考えられるエラーの例としては、ドメインに間違った API 公開鍵がアップロードされていることなどがあります。
COMPLETED
リクエストが完全に処理され、暗号化されたメールボックス ファイルのダウンロードが可能になりました。
MARKED_DELETE
リクエストは、次回の Google クリーンアップ ジョブの実行時に削除対象としてマークされます。このクリーンアップ ジョブの詳細については、暗号化されたメールボックスを削除するをご覧ください。
DELETED
暗号化されたメールボックスを削除するオペレーションを使用して、メールボックス ファイルが正常に削除されました。
EXPIRED
メールボックス ファイルは、保持期限である 3 週間が経過した後に Google によって削除されました。

メールボックスのエクスポート ステータスを取得する例

この例では、ユーザー quinn@example.comrequestIds 5315634201 に対応するメールボックス ステータスを取得します。

プロトコル

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

この 2 番目の例は成功し、ステータスは COMPLETED です。暗号化されたメールボックス ファイルを含む 2 つのメールボックス ファイル URL を返します。これらの URL は、fileUrl 要素の URL を使用してダウンロードできます。


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

すべてのメールボックス ステータス リクエストを取得する

特定の日付以降のドメインのすべてのメールボックス リクエストを取得するには、エクスポート フィード URI に HTTP 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: 暗号化されたメールボックス リクエストの URL エンコード日付(協定世界時(UTC)形式)。この GET リクエストで fromDate が指定されていない場合、過去 3 週間のすべてのリクエストが取得されます。

レスポンスが大きい場合、結果の各ページは最大 100 件のエントリを返します。また、結果の次のページを指す URI が <link rel='next'...> タグに含まれます。クライアント アプリケーションを開発する際は、コードでこれらの追加結果を管理する必要があります。

すべてのメールボックス ステータス リクエストを取得する例

この例では、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>

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 の暗号化されたメールボックス ファイルを削除するには、メールボックスの requestIdAuthorization ヘッダーを含むエクスポート フィードの URI に HTTP DELETE リクエストを送信します。

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 のステータスが一貫して返される場合は、指数時間バックオフ後に再試行します。

暗号化されたメールボックスを削除する例

この例では、34201requestId に関連付けられているユーザー quinn@example.com のメールボックスを削除します。

プロトコル

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