Como administrador, é possível fazer o download de contas de caixa de e-mails no seu domínio para fins de auditoria. Para preparar uma caixa de e-mails para exportação, a API Email Audit cria uma cópia criptografada da caixa de e-mails de um usuário. O sistema retorna os URLs dos arquivos da caixa de e-mails criptografados que, quando transferidos por download e descriptografados, ficam disponíveis no formato mbox.
A quantidade máxima de solicitações de criação de exportação de caixas de correio por dia é um total de 100 solicitações de todos os administradores do domínio. O processo de criação da caixa de e-mails pode ser demorado e levar vários dias, dependendo do tamanho da caixa de e-mails.
O Google retém os arquivos da caixa de e-mails criptografados por três semanas. Portanto, faça o download desses arquivos da caixa de e-mails nesse período. Após esse período, eles são excluídos. Para excluir esses arquivos da caixa de e-mails antes do final do período, consulte Excluir uma caixa de e-mails criptografada.
Para fazer o download de uma caixa de correio, faça o seguinte:
- Gere e faça upload de uma chave pública: crie uma chave de criptografia pública para fazer o download de caixas de e-mails. Essa etapa só precisa ser feita uma vez. Se você já criou uma chave pública, não é necessário concluir essa etapa para cada exportação da caixa de e-mails.
- Criar uma versão de exportação da caixa de correio de um usuário: o processo de exportação da caixa de e-mails começa quando você solicita a criação de uma cópia da caixa de correio de um usuário. A API Email Audit autentica e autoriza as credenciais e retorna um ID de solicitação exclusivo. O processo de criação da caixa de e-mails pode ser demorado e, dependendo do tamanho da caixa de correio.
- Recuperar o status de download da caixa de e-mails: use o ID da solicitação de exportação da caixa de e-mails para ver o status da solicitação pendente.
Depois que a caixa de e-mails for copiada e preparada para exportação, a resposta retornará um status
COMPLETED
junto com a lista de arquivos da caixa de e-mails criptografados como URLs HTTP. Use esse conjunto de URLs para fazer o download dos arquivos da caixa de e-mails. - Consiga os arquivos da caixa de e-mails transferidos por download. Depois de fazer o download dos arquivos criptografados, descriptografa os arquivos usando a chave privada do domínio. Depois de descriptografados, os arquivos são exibidos no formato mbox.
Gerar uma chave pública
Antes de fazer o download da caixa de e-mails, é necessário fazer upload de uma chave de criptografia pública do OpenPGP para o domínio. Essa etapa é concluída uma vez ao configurar o download da caixa de e-mails. É possível gerar o par de chaves pública/privada usando qualquer software compatível com OpenPGP, como o GNU Privacy Guard (GPG). Essa chave de criptografia pública deve ser uma chave RSA codificada em ASCII no formato PGP.
Para gerar uma chave com o GNU Privacy Guard, siga estas etapas:
Gere uma nova chave:
gpg --gen-key --expert
Para definir seus próprios recursos, selecione a opção
8
e alterne o recurso de sinal.Para concluir o processo de geração de chaves, aceite todas as opções padrão. Essa chave precisa ter a ação de criptografia ativada. Você pode desativar a ação de sinalização, porque ela não é usada.
Exporte apenas a chave do ID do usuário correspondente ao Google Workspace:
Se esta for a primeira vez que você usa o GPG para gerar uma chave, exporte a única chave que acabou de gerar:
gpg --armor --export
Se você já usou o GPG para gerar outras chaves, terá várias chaves no seu keyring. Para receber uma lista de chaves, faça o seguinte:
gpg --list-keys
Se houver várias chaves listadas, especifique o
uid
da chave que você quer exportar:gpg --armor --export KEY_UID
Codifique a chave com base64 com o Motobit ou outra ferramenta. Copie todas as linhas, incluindo o cabeçalho, e não adicione linhas extras. O arquivo de chave pública precisa ser lido com o conjunto de caracteres US-ASCII (nome do conjunto de caracteres preferencial da IANA para ASCII).
Exemplo
O exemplo a seguir mostra como converter uma chave pública em uma string codificada em base64.
O exemplo a seguir é a chave pública antes da conversão:
-----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-----
O exemplo a seguir é a chave pública após a conversão:
LS0tLS1CRUdJTiBQR1AgUFVCTElDIEtFWSBCTE9DSy0tLS0tDQpWZXJzaW9uOiBHbn
VQRyB2MS40LjEwIChHTlUvTGludXgpDQoNCm1RRU5CRXJXYUQ0QkNBQ3QybmdmczYv
K1FPR1lieE5iYzNnTG5YSHRxcDdOVFRYTlc0U0pvKy9BMW9VWm9HeEENClF4NnpGWG
hRLzhNWFc2Nis4U1RTMVlxTkpPQVJGdGpiSUtQd2pyZGN1a2RQellWS0dacmUwUmF4
Q25NeUNWKzYNCkY0WU5RRDFVZWdIVHUyd0NHUjF1aVlPZkx4VWE3L2RvNnMzMVdSVE
g4dmJ0aVBZOS82b2JFSXhEakR6S0lxWU8NCnJ2UkRXcUFMQllrbE9rSjNIYmdmeWw0
MkVzbkxpQWhTK2RNczJQQ0RpMlgwWkpDUFo4ZVRqTHNkQXRxVlpKK1INCldDMUozVU
R1RmZtY3BzRFlSdFVMOXc2WU10bGFwQys5bW1KM0FCRUJBQUcwVjBSaGMyaGxjaUJV
WlhOMElDaFUNCmRHVnlNa0JrWVhOb1pYSXRhSGxrTFhSbGMzUXVZMjl0UG9rQk9BUV
RBUUlBSWdVQ1N0Wm9QZ0liRFFZTENRZ0gNCmsxOVFja1Rwd0Jkc2tFWXVtRnZtV3Zl
NVVYMlNWVjdmek9DMG5adGdGeHRaR2xKaEdtanNBM3J4RlRsYitJcmENCldaYXlYQ1
dZaUN6ZDdtOXo1L0t5R0QyR0ZUSy85NG1kbTI1TjZHWGgvYjM1cElGWlhCSS9yWmpy
WXJoWVJCRnUNCkd0ekdGSXc5QUFuRnlVekVVVVZmUFdVdEJlNXlITVc1NEM2MG5Iaz
V4WUlhNnFGaGlMcDRQWXFaQ3JZWDFpSXMNCmZSUk9GQT09DQo9U1RIcg0KLS0tLS1F
TkQgUEdQIFBVQkxJQyBLRVkgQkxPQ0stLS0tLQ==
Fazer upload da chave pública
Para fazer upload da chave pública, crie uma entrada XML com a chave pública codificada em 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>
Envie uma solicitação HTTP
POST
para o URI do feedpublickey
no seu domínio do Google Workspace:POST https://apps-apis.google.com/a/feeds/compliance/audit/publickey/DOMAIN_NAME
Se for bem-sucedido, o servidor retornará um
201 CREATED status code
e uma resposta semelhante a este exemplo:<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>
Criar uma cópia de uma caixa de e-mails para exportação
Para preparar uma cópia da caixa de e-mails de um usuário para exportação e download, use o feed de exportação da API Email Audit.
Envie uma solicitação POST
para o URI do feed de exportação e inclua o cabeçalho Authorization
:
POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/DOMAIN_NAME/SOURCE_USERNAME
Substitua:
DOMAIN_NAME
: o nome de domínio do Google Workspace, por exemplo, example.com.SOURCE_USERNAME
: o nome de usuário da caixa de e-mails que você quer fazer o download.
A solicitação contém o seguinte cabeçalho Content-type
:
Content-type: application/atom+xml
Para ver uma lista completa dos parâmetros a serem usados em uma solicitação de exportação da caixa de e-mails, consulte
Recursos: export
.
Exemplo de criação de uma caixa de correio para exportação
O exemplo usa os seguintes parâmetros:
- O usuário para quem a caixa de e-mails será exportada é
quinn@example.com
. - O valor da coluna
beginDate
éJuly 1, 2022, 04:30 hours
. - O valor da coluna
endDate
éAugust 30, 2022, 20:00 hours
. includeDeleted
éfalse
.searchQuery
éin:chat
.- O valor da coluna
packageContent
é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>
Se for bem-sucedido, o servidor retornará um código de status 201 CREATED
e uma 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>
Neste exemplo, o processamento dessa caixa de e-mails foi concluído. A propriedade status
é COMPLETED
e a numberOfFiles
retornada para exportação é dois.
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);
Recuperar o status de exportação de uma caixa de correio
Como a preparação da exportação da caixa de correio é um processo assíncrono, use essa solicitação de recuperação para ver se o processamento da caixa de correio criptografada foi concluído.
Para recuperar detalhes do status de uma caixa de e-mails preparada para exportação, envie uma solicitação GET
HTTP com o requestId
da caixa de correio para o URI do feed de exportação e inclua o cabeçalho Authorization
:
GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/DOMAIN_NAME/SOURCE_USERNAME/MAILBOX_REQUESTID
Substitua:
DOMAIN_NAME
: o nome de domínio do Google Workspace, por exemplo, example.com.SOURCE_USERNAME
: o nome de usuário da caixa de e-mails que você quer fazer o download.MAILBOX_REQUESTID
: orequestID
é um identificador exclusivo da solicitação de exportação da caixa de correio que é retornada quando a exportação é solicitada inicialmente.
Essa solicitação retorna uma entrada AtomPub incluindo o status atual da exportação da caixa de correio. Os valores possíveis para o status atual são os seguintes:
PENDING
- A solicitação está sendo processada.
ERROR
- Falha na solicitação devido a um erro. Um exemplo de erro possível é que uma chave pública de API incorreta foi enviada para o domínio.
COMPLETED
- A solicitação foi processada completamente, e os arquivos da caixa de e-mails criptografados estão prontos para download.
MARKED_DELETE
- A solicitação será marcada para exclusão na próxima vez que o job de limpeza do Google for executado. Para mais informações sobre esse job de limpeza, consulte Excluir uma caixa de e-mails criptografada.
DELETED
- Os arquivos da caixa de e-mails foram excluídos com êxito usando a operação Excluir uma caixa de e-mails criptografada.
EXPIRED
- Os arquivos da caixa de e-mails foram excluídos pelo Google após o limite de retenção de três semanas.
Exemplo para recuperar o status de exportação de uma caixa de e-mails
Este exemplo recupera o status da caixa de e-mails correspondente a requestIds
53156
e 34201
do usuário quinn@example.com
.
Protocolo
GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/example.com/quinn/53156
Se for bem-sucedido, o servidor retornará um código de status 201 CREATED
.
Como é possível observar na resposta a seguir, o status é ERROR
e, portanto, os arquivos criptografados da caixa de e-mails nunca foram criados.
<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>
Este exemplo recupera o status da caixa de e-mails correspondente ao
requestId
34201
:
GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/example.com/quinn/34201
O segundo exemplo é bem-sucedido com um status COMPLETED
. Ela retorna dois URLs de arquivos de caixa de e-mails criptografados, que podem ser transferidos por download usando os URLs nos 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;
Recuperar todas as solicitações de status da caixa de correio
Para recuperar todas as solicitações da caixa de e-mails de um domínio a partir de uma determinada data, faça uma solicitação HTTP GET
para o URI do feed de exportação e inclua o cabeçalho Authorization
:
GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/DOMAIN_NAME?fromDate=FROM_DATE
Substitua:
DOMAIN_NAME
: o nome de domínio do Google Workspace, por exemplo, example.com.FROM_DATE
: a data codificada pelo URL de uma solicitação de caixa de correio criptografada no formato Tempo Universal Coordenado (UTC). Se nenhumfromDate
for especificado nessa solicitação deGET
, todas as solicitações das últimas três semanas serão recuperadas.
Para uma resposta grande, cada página de resultados retorna no máximo 100 entradas e
inclui um URI em uma tag <link rel='next'...>
que aponta para a próxima página de
resultados. Ao desenvolver o aplicativo cliente, o código precisa gerenciar
esses resultados adicionais.
Exemplo de recuperação de todas as solicitações de status da caixa de e-mails
Este exemplo recupera todas as solicitações de status da caixa de e-mails para o domínio example.com
feitas a partir de 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);
Excluir uma caixa de e-mails criptografada
Para excluir os arquivos da caixa de e-mails criptografados com status COMPLETED
ou MARKED_DELETED
, faça uma solicitação HTTP DELETE
para o URI do feed de exportação, incluindo o requestId
da caixa de e-mails e o cabeçalho Authorization
.
DELETE https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/DOMAIN_NAME/SOURCE_USERNAME/MAILBOX_REQUESTID
Substitua:
DOMAIN_NAME
: o nome de domínio do Google Workspace, por exemplo, example.com.SOURCE_USERNAME
: o nome de usuário da caixa de e-mails que você transferiu por download.MAILBOX_REQUESTID
: orequestID
é um identificador exclusivo da solicitação de exportação da caixa de correio que é retornada quando a exportação é solicitada inicialmente.
Se algum erro for encontrado durante o processo de exclusão, o status
MARKED_DELETE
será retornado. Esta solicitação será excluída automaticamente
por um job de limpeza do Google em até 24 horas. No entanto, para uma solicitação com o status
MARKED_DELETE
, alguns (ou todos) os arquivos da caixa de e-mails ainda podem estar disponíveis para
download. Se você quiser garantir que os arquivos sejam excluídos, execute esta
operação novamente até que o status DELETED
seja retornado. Se o status de
MARKED_DELETE
for retornado de forma consistente, tente novamente após esperas de tempo
exponenciais.
Exemplo de exclusão de uma caixa de e-mails criptografada
Este exemplo exclui a caixa de e-mails do usuário quinn@example.com
associado
ao 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");