Pobieranie skrzynki pocztowej

Jako administrator możesz pobrać konta skrzynek pocztowych w swojej domenie na potrzeby audytu. Aby przygotować skrzynkę pocztową do eksportu, interfejs Email Audit API tworzy zaszyfrowaną kopię skrzynki pocztowej użytkownika. System zwraca adresy URL zaszyfrowanych plików skrzynki pocztowej, które po pobraniu i odszyfrowaniu są dostępne w formacie mbox.

Maksymalna liczba żądań utworzenia eksportu skrzynki pocztowej dziennie to łącznie 100 żądań od wszystkich administratorów domeny. Proces tworzenia skrzynki pocztowej może być czasochłonny i w zależności od jej rozmiaru może potrwać kilka dni.

Google przechowuje zaszyfrowane pliki skrzynki pocztowej przez 3 tygodnie, więc pobierz je w tym czasie. Po tym czasie zostaną one usunięte. Aby usunąć te pliki przed upływem tego okresu, przeczytaj artykuł Usuwanie zaszyfrowanej skrzynki pocztowej.

Aby pobrać skrzynkę pocztową:

  • Wygeneruj i prześlij klucz publiczny — utwórz publiczny klucz szyfrowania do pobierania skrzynek pocztowych. Ten krok trzeba wykonać tylko raz. Jeśli klucz publiczny został już utworzony, nie musisz wykonywać tego kroku przy każdym eksportowaniu skrzynki pocztowej.
  • Utwórz wersję skrzynki pocztowej użytkownika do eksportu – proces eksportowania skrzynki pocztowej rozpoczyna się, gdy poprosisz o utworzenie kopii skrzynki pocztowej użytkownika. Interfejs Email Audit API uwierzytelnia i autoryzuje Twoje dane logowania oraz zwraca unikalny identyfikator żądania. Proces tworzenia skrzynki pocztowej może być czasochłonny i w zależności od jej rozmiaru może potrwać kilka dni.
  • Pobierz stan pobierania skrzynki pocztowej — Użyj identyfikatora żądania eksportu skrzynki pocztowej, aby sprawdzić stan oczekującego żądania. Gdy skrzynka pocztowa zostanie skopiowana i przygotowana do eksportu, odpowiedź zwróci stan COMPLETED wraz z listą zaszyfrowanych plików skrzynki pocztowej w postaci adresów URL HTTP. Użyj tego zestawu adresów URL, aby pobrać pliki skrzynki pocztowej.
  • Pobierz pobrane pliki skrzynki pocztowej – po pobraniu zaszyfrowanych plików odszyfruj je za pomocą klucza prywatnego domeny. Po odszyfrowaniu pliki są wyświetlane w formacie mbox.

Generowanie klucza publicznego

Zanim pobierzesz skrzynkę pocztową, musisz przesłać publiczny klucz szyfrowania OpenPGP dla domeny. Ten krok wykonuje się raz podczas konfigurowania pobierania skrzynki pocztowej . Parę kluczy publiczny/prywatny możesz wygenerować za pomocą dowolnego oprogramowania zgodnego z OpenPGP, np. GNU Privacy Guard (GPG). Ten publiczny klucz szyfrowania powinien być kluczem RSA zakodowanym w formacie PGP ASCII.

Aby wygenerować klucz za pomocą GNU Privacy Guard:

  1. Zainstaluj GnuPG 1.4.

  2. Wygeneruj nowy klucz:

    gpg --gen-key --expert
    
  3. Aby ustawić własne możliwości, wybierz opcję 8 i włącz możliwość podpisywania.

  4. Aby zakończyć proces generowania klucza, zaakceptuj wszystkie opcje domyślne. Ten klucz powinien mieć włączoną akcję szyfrowania. Możesz wyłączyć akcję podpisywania, ponieważ nie jest ona używana.

  5. Eksportuj tylko klucz dla identyfikatora użytkownika, który odpowiada Twojemu Google Workspace:

    • Jeśli po raz pierwszy używasz GPG do generowania klucza, wyeksportuj pojedynczy klucz, który właśnie został wygenerowany:

      gpg --armor --export
      
    • Jeśli masz już inne klucze wygenerowane za pomocą GPG, w pęku kluczy znajduje się kilka kluczy. Pobierz listę kluczy:

      gpg --list-keys
      

      Jeśli na liście znajduje się kilka kluczy, określ uid klucza, który chcesz wyeksportować:

      gpg --armor --export KEY_UID
      
  6. Zakoduj klucz za pomocą kodowania base64 za pomocą Motobit lub innego narzędzia. Skopiuj wszystkie wiersze, w tym nagłówek, i nie dodawaj żadnych dodatkowych wierszy. Plik klucza publicznego należy odczytać za pomocą zestawu znaków US-ASCII, (IANA preferowana nazwa zestawu znaków IANA dla ASCII).

Przykład

Poniższy przykład pokazuje, jak przekonwertować klucz publiczny na ciąg zakodowany w standardzie base64.

Poniższy przykład przedstawia klucz publiczny przed konwersją:

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

Poniższy przykład przedstawia klucz publiczny po konwersji:

LS0tLS1CRUdJTiBQR1AgUFVCTElDIEtFWSBCTE9DSy0tLS0tDQpWZXJzaW9uOiBHbn
VQRyB2MS40LjEwIChHTlUvTGludXgpDQoNCm1RRU5CRXJXYUQ0QkNBQ3QybmdmczYv

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

Przesyłanie klucza publicznego

  1. Aby przesłać klucz publiczny, utwórz wpis XML z kluczem publicznym zakodowanym w standardzie 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. Wyślij żądanie HTTP POST do identyfikatora URI kanału publickey w domenie Google Workspace:

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

    Jeśli operacja się uda, serwer zwróci 201 CREATED status code i odpowiedź podobną do tej:

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

Tworzenie kopii skrzynki pocztowej na potrzeby eksportu

Aby przygotować kopię skrzynki pocztowej użytkownika do eksportu i pobrania, użyj kanału eksportu interfejsu Email Audit API.

Wyślij żądanie POST do identyfikatora URI kanału eksportu i dołącz nagłówek Authorization:

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

Zastąp te elementy:

  • DOMAIN_NAME: nazwa domeny Google Workspace, np. example.com.
  • SOURCE_USERNAME: nazwa użytkownika skrzynki pocztowej, którą chcesz pobrać.

Żądanie zawiera ten nagłówek Content-type:

Content-type: application/atom+xml

Pełną listę parametrów, których można użyć w żądaniu eksportu skrzynki pocztowej, znajdziesz w sekcji Zasoby: export.

Przykład tworzenia skrzynki pocztowej na potrzeby eksportu

W tym przykładzie używamy tych parametrów:

  • Użytkownik, dla którego eksportujemy skrzynkę pocztową, to quinn@example.com.
  • beginDate to July 1, 2022, 04:30 hours.
  • endDate to August 30, 2022, 20:00 hours.
  • includeDeleted to false.
  • searchQuery to in:chat.
  • packageContent to FULL_MESSAGE.

Protokół

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>

Jeśli operacja się uda, serwer zwróci kod stanu 201 CREATED i wpis 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>

W tym przykładzie przetwarzanie tej skrzynki pocztowej zostało zakończone. Właściwość status ma wartość COMPLETED, a liczba numberOfFiles zwróconych do eksportu to 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);

Pobieranie stanu eksportu skrzynki pocztowej

Przygotowanie eksportu skrzynki pocztowej to proces asynchroniczny, dlatego użyj tego żądania pobierania, aby sprawdzić, czy przetwarzanie zaszyfrowanej skrzynki pocztowej zostało zakończone.

Aby pobrać szczegóły stanu skrzynki pocztowej przygotowanej do eksportu, wyślij żądanie HTTP GET z requestId skrzynki pocztowej do identyfikatora URI kanału eksportu i dołącz nagłówek Authorization:

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

Zastąp te elementy:

  • DOMAIN_NAME: nazwa domeny Google Workspace, np. example.com.
  • SOURCE_USERNAME: nazwa użytkownika skrzynki pocztowej, którą chcesz pobrać.
  • MAILBOX_REQUESTID: requestID to unikalny identyfikator żądania eksportu skrzynki pocztowej, który jest zwracany, gdy żądanie eksportu zostanie wysłane po raz pierwszy.

To żądanie zwraca wpis AtomPub zawierający bieżący stan eksportu skrzynki pocztowej. Możliwe wartości bieżącego stanu:

PENDING
Żądanie jest przetwarzane.
ERROR
Żądanie nie zostało zrealizowane z powodu błędu. Możliwy błąd to np. przesłanie nieprawidłowego klucza publicznego interfejsu API dla domeny.
COMPLETED
Żądanie zostało w pełni przetworzone, a zaszyfrowane pliki skrzynki pocztowej są gotowe do pobrania.
MARKED_DELETE
Żądanie jest oznaczone do usunięcia przy następnym uruchomieniu zadania czyszczenia Google. Więcej informacji o tym zadaniu czyszczenia znajdziesz w artykule Usuwanie zaszyfrowanej skrzynki pocztowej.
DELETED
Pliki skrzynki pocztowej zostały usunięte za pomocą operacji Usuwanie zaszyfrowanej skrzynki pocztowej.
EXPIRED
Pliki skrzynki pocztowej zostały usunięte przez Google po upływie 3-tygodniowego okresu przechowywania.

Przykład pobierania stanu eksportu skrzynki pocztowej

Ten przykład pobiera stan skrzynki pocztowej odpowiadający requestIds 53156 i 34201 dla użytkownika quinn@example.com.

Protokół

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

Jeśli operacja się uda, serwer zwróci kod stanu 201 CREATED.

Jak widać w poniższej odpowiedzi, stan to ERROR i dlatego zaszyfrowane pliki skrzynki pocztowej nigdy nie zostały utworzone.

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

Ten przykład pobiera stan skrzynki pocztowej odpowiadający requestId 34201:

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

Ten drugi przykład zakończył się powodzeniem ze stanem COMPLETED. Zwraca 2 adresy URL plików skrzynki pocztowej zawierające zaszyfrowane pliki skrzynki pocztowej, które można pobrać za pomocą adresów URL w elementach 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;

Pobieranie wszystkich żądań stanu skrzynki pocztowej

Aby pobrać wszystkie żądania skrzynki pocztowej dla domeny od określonej daty, wyślij żądanie HTTP GET do identyfikatora URI kanału eksportu i dołącz nagłówek Authorization:

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

Zastąp te elementy:

  • DOMAIN_NAME: nazwa domeny Google Workspace, np. example.com.
  • FROM_DATE: zakodowana w adresie URL data żądania zaszyfrowanej skrzynki pocztowej w formacie czasu uniwersalnego (UTC). Jeśli w tym żądaniu GET nie określono fromDate, pobierane są wszystkie żądania z ostatnich 3 tygodni.

W przypadku dużej odpowiedzi każda strona wyników zwraca maksymalnie 100 wpisów i zawiera identyfikator URI w tagu <link rel='next'...> wskazujący następną stronę wyników. Podczas tworzenia aplikacji klienckiej kod musi zarządzać tymi dodatkowymi wynikami.

Przykład pobierania wszystkich żądań stanu skrzynki pocztowej

Ten przykład pobiera wszystkie żądania stanu skrzynki pocztowej dla domeny example.com złożone po 9 PM, August 30, 2022:

Protokół

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

Usuwanie zaszyfrowanej skrzynki pocztowej

Aby usunąć zaszyfrowane pliki skrzynki pocztowej ze stanem COMPLETED lub MARKED_DELETED, wyślij żądanie HTTP DELETE do identyfikatora URI kanału eksportu, w tym requestId skrzynki pocztowej i Authorization nagłówek.

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

Zastąp te elementy:

  • DOMAIN_NAME: nazwa domeny Google Workspace, np. example.com.
  • SOURCE_USERNAME: nazwa użytkownika skrzynki pocztowej, którą pobrano.
  • MAILBOX_REQUESTID: requestID to unikalny identyfikator żądania eksportu skrzynki pocztowej, który jest zwracany, gdy żądanie eksportu zostanie wysłane po raz pierwszy.

Jeśli podczas procesu usuwania wystąpią jakiekolwiek błędy, zwracany jest stan MARKED_DELETE. To żądanie zostanie automatycznie usunięte przez zadanie czyszczenia Google w ciągu 24 godzin. W przypadku żądania ze stanem MARKED_DELETE niektóre (lub wszystkie) pliki skrzynki pocztowej mogą być nadal dostępne do pobrania. Jeśli chcesz mieć pewność, że pliki zostaną usunięte, uruchom tę operację ponownie, aż zostanie zwrócony stan DELETED. Jeśli stan MARKED_DELETE jest zwracany konsekwentnie, spróbuj ponownie po wzrastającym czasie ponowienia.

Przykład usuwania zaszyfrowanej skrzynki pocztowej

Ten przykład usuwa skrzynkę pocztową użytkownika quinn@example.com powiązaną z requestId 34201:

Protokół

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