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

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

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

Google は暗号化されたメールボックス ファイルを 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-ASCII(ASCII の場合は IANA の優先文字セット名)で読み取る必要があります。

次の例は、公開鍵を 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 を返します。これは、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");