Cómo descargar un buzón de correo

Como administrador, puedes descargar cuentas de buzones de correo dentro de tu dominio para fines de auditoría. Para preparar un buzón de correo para la exportación, la API de Email Audit crea una copia encriptada del buzón de correo de un usuario. El sistema muestra las URLs de los archivos de buzones de correo encriptados que, cuando se descargan y desencriptan, están disponibles en formato mbox.

La cantidad máxima de solicitudes de creación de exportación de buzones de correo por día es de 100 solicitudes en total de todos los administradores de dominio. El proceso de creación de buzones de correo puede llevar mucho tiempo y tardar varios días, según el tamaño del buzón de correo.

Google conserva los archivos de buzones de correo encriptados durante 3 semanas, así que asegúrate de descargarlos dentro de este período. Después de ese tiempo, se borran. Para borrar estos archivos de buzones de correo antes de que venza el período, consulta Borra un buzón de correo encriptado.

Para descargar un buzón de correo, haz lo siguiente:

  • Genera y sube una clave pública. Crea una clave de encriptación pública para descargar buzones de correo. Este paso solo debe realizarse una vez. Si ya creaste una clave pública, no es necesario que completes este paso para cada exportación de buzón de correo.
  • Crea una versión de exportación del buzón de correo de un usuario. El proceso de exportación del buzón de correo comienza cuando solicitas la creación de una copia del buzón de correo de un usuario. La API de Email Audit autentica y autoriza tus credenciales, y muestra un ID de solicitud único. El proceso de creación de buzones de correo puede llevar mucho tiempo y tardar varios días, según el tamaño del buzón de correo.
  • Recupera el estado de descarga del buzón de correo — Usa el ID de solicitud de exportación del buzón de correo para obtener el estado de la solicitud pendiente. Después de que se copia el buzón de correo y se prepara para la exportación, la respuesta muestra un estado de COMPLETED junto con la lista de archivos de buzones de correo encriptados como URLs de HTTP. Usa este conjunto de URLs para descargar los archivos de buzones de correo.
  • Obtén los archivos de buzones de correo descargados. Después de descargar los archivos encriptados, desencripta los archivos de buzones de correo con la clave privada del dominio. Una vez desencriptados, los archivos se ven en formato mbox.

Genera una clave pública

Antes de descargar el buzón de correo, debes subir una clave de encriptación pública de OpenPGP para el dominio. Este paso se realiza una vez cuando se configura la descarga del buzón de correo. Puedes generar el par de claves públicas/privadas con cualquier software compatible con OpenPGP, como GNU Privacy Guard (GPG). Esta clave de encriptación pública debe ser una clave RSA con codificación ASCII en formato PGP.

Para generar una clave con GNU Privacy Guard, sigue estos pasos:

  1. Instala GnuPG 1.4.

  2. Genera una clave nueva:

    gpg --gen-key --expert
    
  3. Para configurar tus propias capacidades, selecciona la opción 8 y activa la capacidad de firma.

  4. Para completar el proceso de generación de claves, acepta todas las opciones predeterminadas. Esta clave debe tener habilitada la acción de encriptación. Puedes desactivar la acción de firma porque no se usa.

  5. Solo exporta la clave para el ID de usuario que corresponde a tu Google Workspace:

    • Si es la primera vez que usas GPG para generar una clave, exporta la clave única que acabas de generar:

      gpg --armor --export
      
    • Si ya usaste GPG para generar otras claves, tienes varias claves en tu llavero. Obtén una lista de claves:

      gpg --list-keys
      

      Si hay varias claves en la lista, especifica el uid de la clave que deseas exportar:

      gpg --armor --export KEY_UID
      
  6. Codifica la clave con codificación base64 con Motobit o cualquier otra herramienta. Asegúrate de copiar todas las líneas, incluido el encabezado, y no agregues ninguna línea adicional. El archivo de clave pública debe leerse con el conjunto de caracteres US-ASCII, (IANA nombre de conjunto de caracteres preferido por IANA para ASCII).

Ejemplo

En el siguiente ejemplo, se muestra cómo convertir una clave pública en una cadena codificada en base64.

El siguiente ejemplo es la clave pública antes de la conversión:

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

El siguiente ejemplo es la clave pública después de la conversión:

LS0tLS1CRUdJTiBQR1AgUFVCTElDIEtFWSBCTE9DSy0tLS0tDQpWZXJzaW9uOiBHbn
VQRyB2MS40LjEwIChHTlUvTGludXgpDQoNCm1RRU5CRXJXYUQ0QkNBQ3QybmdmczYv

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

Sube la clave pública

  1. Para subir la clave pública, crea una entrada XML con la clave pública codificada en 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. Envía una solicitud POST de HTTP al URI del feed publickey en tu dominio de Google Workspace:

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

    Si se ejecuta de forma correcta, el servidor muestra un 201 CREATED status code y una respuesta similar a este ejemplo:

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

Crea una copia de un buzón de correo para la exportación

Para preparar una copia del buzón de correo de un usuario para la exportación y la descarga, usa el feed de exportación de la API de Email Audit.

Envía una solicitud POST al URI del feed de exportación y, luego, incluye el encabezado Authorization:

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

Reemplaza lo siguiente:

  • DOMAIN_NAME: Es el nombre de dominio de Google Workspace, por ejemplo, example.com.
  • SOURCE_USERNAME: Es el nombre de usuario del buzón de correo que deseas descargar.

La solicitud contiene el siguiente encabezado Content-type:

Content-type: application/atom+xml

Para obtener una lista completa de los parámetros que se usarán en una solicitud de exportación de buzones de correo, consulta Recursos: export.

Ejemplo para crear un buzón de correo para la exportación

En el ejemplo, se usan los siguientes parámetros:

  • El usuario para el que se exportará el buzón de correo es quinn@example.com.
  • El beginDate es July 1, 2022, 04:30 hours.
  • El endDate es August 30, 2022, 20:00 hours.
  • includeDeleted es false.
  • searchQuery es in:chat.
  • El packageContent es FULL_MESSAGE.

Protocolo

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>

Si se ejecuta de forma correcta, el servidor muestra un código de estado 201 CREATED y una entrada 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>

En este ejemplo, se completó el procesamiento de este buzón de correo. La propiedad status es COMPLETED y la numberOfFiles que se muestra para la exportación es de dos.

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

Recupera el estado de exportación de un buzón de correo

Dado que la preparación de la exportación de un buzón de correo es un proceso asíncrono, usa esta solicitud de recuperación para ver si se completó el procesamiento del buzón de correo encriptado.

Para recuperar los detalles de estado de un buzón de correo preparado para la exportación, envía una solicitud GET de HTTP con el requestId del buzón de correo al URI del feed de exportación y, luego, incluye el encabezado Authorization:

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

Reemplaza lo siguiente:

  • DOMAIN_NAME: Es el nombre de dominio de Google Workspace, por ejemplo, example.com.
  • SOURCE_USERNAME: Es el nombre de usuario del buzón de correo que deseas descargar.
  • MAILBOX_REQUESTID: El requestID es un identificador único para la solicitud de exportación del buzón de correo que se muestra cuando se solicita la exportación inicialmente.

Esta solicitud muestra una entrada AtomPub que incluye el estado actual de la exportación del buzón de correo. Los valores posibles para el estado actual son los siguientes:

PENDING
La solicitud se está procesando.
ERROR
La solicitud falló debido a un error. Un ejemplo de un posible error es que se subió una clave pública de API incorrecta para el dominio.
COMPLETED
La solicitud se procesó por completo y los archivos de buzones de correo encriptados están listos para descargarse.
MARKED_DELETE
La solicitud está marcada para borrarse la próxima vez que se ejecute el trabajo de limpieza de Google. Para obtener más información sobre este trabajo de limpieza, consulta Borra un buzón de correo encriptado.
DELETED
Los archivos de buzones de correo se borraron correctamente con la operación Borra un buzón de correo encriptado.
EXPIRED
Google borró los archivos de buzones de correo después del límite de retención de 3 semanas.

Ejemplo para recuperar el estado de exportación de un buzón de correo

En este ejemplo, se recupera el estado del buzón de correo correspondiente a los requestIds 53156 y 34201 para el usuario quinn@example.com.

Protocolo

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

Si se ejecuta de forma correcta, el servidor muestra un código de estado 201 CREATED.

Como puedes ver en la siguiente respuesta, el estado es un ERROR y, por lo tanto, nunca se crearon los archivos de buzones de correo encriptados.

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

En este ejemplo, se recupera el estado del buzón de correo correspondiente al requestId 34201:

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

Este segundo ejemplo se realiza correctamente con un estado COMPLETED. Muestra dos URLs de archivos de buzones de correo que contienen los archivos de buzones de correo encriptados, que se pueden descargar con las URLs en los fileUrl elementos.


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

Recupera todas las solicitudes de estado de buzones de correo

Para recuperar todas las solicitudes de buzones de correo de un dominio a partir de una fecha determinada, realiza una solicitud GET de HTTP al URI del feed de exportación y, luego, incluye el encabezado Authorization:

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

Reemplaza lo siguiente:

  • DOMAIN_NAME: Es el nombre de dominio de Google Workspace, por ejemplo, example.com.
  • FROM_DATE: Es la fecha codificada en URL de una solicitud de buzón de correo encriptado en formato de horario universal coordinado (UTC). Si no se especifica fromDate en esta solicitud GET, se recuperan todas las solicitudes de las últimas tres semanas.

Para una respuesta grande, cada página de resultados muestra un máximo de 100 entradas e incluye un URI en una etiqueta <link rel='next'...> que apunta a la siguiente página de resultados. Cuando desarrolles tu aplicación cliente, tu código deberá administrar estos resultados adicionales.

Ejemplo para recuperar todas las solicitudes de estado de buzones de correo

En este ejemplo, se recuperan todas las solicitudes de estado de buzones de correo para el dominio example.com realizadas a partir de las 9 PM, August 30, 2022:

Protocolo

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

Borra un buzón de correo encriptado

Para borrar los archivos de buzones de correo encriptados con un estado de COMPLETED o MARKED_DELETED, realiza una solicitud DELETE de HTTP al URI del feed de exportación, incluido el requestId del buzón de correo y el Authorization encabezado.

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

Reemplaza lo siguiente:

  • DOMAIN_NAME: Es el nombre de dominio de Google Workspace, por ejemplo, example.com.
  • SOURCE_USERNAME: Es el nombre de usuario del buzón de correo que descargaste.
  • MAILBOX_REQUESTID: El requestID es un identificador único para la solicitud de exportación del buzón de correo que se muestra cuando se solicita la exportación inicialmente.

Si se produce algún error durante el proceso de eliminación, se muestra el estado MARKED_DELETE. Un trabajo de limpieza de Google borrará automáticamente esta solicitud en un plazo de 24 horas. Sin embargo, para una solicitud con estado MARKED_DELETE, es posible que algunos (o todos) los archivos de buzones de correo aún estén disponibles para la descarga. Si quieres asegurarte de que se borren los archivos, vuelve a ejecutar esta operación hasta que se muestre el estado DELETED. Si el estado de MARKED_DELETE se muestra de forma constante, vuelve a intentarlo después de un tiempo de retirada exponencial.

Ejemplo para borrar un buzón de correo encriptado

En este ejemplo, se borra el buzón de correo del usuario quinn@example.com asociado con el requestId de 34201:

Protocolo

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