Cómo descargar un buzón de correo

Como administrador, puedes descargar cuentas de buzón de correo dentro de tu dominio con 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 buzón encriptados que, cuando se descargan y desencriptan, están disponibles en formato mbox.

La cantidad máxima de solicitudes de creación de exportaciones de buzón por día es de 100 solicitudes de todos los administradores de dominios. 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.

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

Para descargar un buzón, 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 se debe realizar una vez. Si ya creaste una clave pública, no es necesario que completes este paso para cada exportación de buzón.
  • Crear una versión de exportación de la bandeja de entrada de un usuario: El proceso de exportación de la bandeja de entrada comienza cuando solicitas la creación de una copia de la bandeja de entrada 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.
  • Obtén el estado de descarga de la carpeta de correo: Usa el ID de la solicitud de exportación de la carpeta 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 buzón de correo encriptados como URLs HTTP. Usa este conjunto de URLs para descargar los archivos del buzón de correo.
  • Obtén los archivos del buzón de correo descargados: Después de descargar los archivos encriptados, desencripta los archivos del buzón de correo con la clave privada del dominio. Una vez desencriptados, los archivos se muestran 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 de buzón. Puedes generar el par de claves pública/privada con cualquier software compatible con OpenPGP, como GNU Privacy Guard (GPG). Esta clave de encriptación pública debe ser una clave RSA codificada en 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 establecer tus propias capacidades, selecciona la opción 8 y activa o desactiva la capacidad de firmar.

  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 firmar porque no se usa.

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

    • Si es la primera vez que usas GPG para generar una clave, exporta la única clave 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 quieres exportar:

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

Ejemplo

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

En el siguiente ejemplo, se muestra 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-----

En el siguiente ejemplo, se muestra 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 HTTP POST 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 realiza de forma correcta, el servidor muestra un 201 CREATED status code y una respuesta similar a la siguiente:

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

Para preparar una copia de la carpeta de correo de un usuario para exportarla y descargarla, 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 pueden usar en una solicitud de exportación de buzón, consulta Recursos: export.

Ejemplo para crear un buzón de correo para exportar

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

  • El usuario para el que se exportará el buzón es quinn@example.com.
  • La beginDate es July 1, 2022, 04:30 hours.
  • La endDate es August 30, 2022, 20:00 hours.
  • includeDeleted es false.
  • searchQuery es in:chat.
  • La 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 realiza correctamente, el servidor muestra un código de estado 201 CREATED y una entrada de 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 el numberOfFiles que se muestra para la exportación es 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);

Cómo recuperar el estado de exportación de un buzón

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

Para recuperar los detalles de estado de un buzón preparado para la exportación, envía una solicitud HTTP GET con el requestId del buzón 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: requestID es un identificador único para la solicitud de exportación de buzón que se muestra cuando se solicita la exportación inicialmente.

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

PENDING
Se está procesando la solicitud.
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 del buzón de correo encriptado están listos para descargarse.
MARKED_DELETE
La solicitud se marcará para su eliminación la próxima vez que se ejecute el trabajo de limpieza de Google. Para obtener más información sobre esta tarea de limpieza, consulta Cómo borrar un buzón de correo encriptado.
DELETED
Los archivos de buzón se borraron correctamente con la operación Borrar un buzón encriptado.
EXPIRED
Google borró los archivos del buzón 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

En este ejemplo, se recupera el estado del buzón correspondiente a 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 realiza correctamente, el servidor muestra un código de estado 201 CREATED.

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

<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 de la bandeja de entrada correspondiente al 34201 requestId:

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. Devuelve dos URLs de archivos de buzón que contienen los archivos de buzón encriptados, que se pueden descargar con las URLs de los elementos 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;

Cómo recuperar todas las solicitudes de estado del buzón

Para recuperar todas las solicitudes de buzón de correo de un dominio a partir de una fecha en particular, 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 encriptado en formato de horario universal coordinado (UTC). Si no se especifica ningún fromDate en esta solicitud GET, se recuperan todas las solicitudes de las últimas tres semanas.

En el caso de una respuesta grande, cada página de resultados muestra un máximo de 100 entradas y, además, 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 del buzón

En este ejemplo, se recuperan todas las solicitudes de estado del buzón de correo del dominio example.com que se realizaron a partir del 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);

Cómo borrar un buzón encriptado

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

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 que descargaste.
  • MAILBOX_REQUESTID: requestID es un identificador único para la solicitud de exportación de buzón 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. Una tarea de limpieza de Google borrará automáticamente esta solicitud en un plazo de 24 horas. Sin embargo, para una solicitud con el estado MARKED_DELETE, es posible que algunos (o todos) los archivos del buzón de correo electrónico aún estén disponibles para su 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 coherente, vuelve a intentarlo después de las retiradas de tiempo exponenciales.

Ejemplo para borrar un buzón 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");