Como administrador, você pode fazer o download de contas de caixa de entrada no seu domínio para fins de auditoria. Para preparar uma caixa de entrada para exportação, a API Email Audit cria uma cópia criptografada da caixa de entrada de um usuário. O sistema retorna os URLs dos arquivos de caixa de correio criptografados que, quando baixados e descriptografados, ficam disponíveis no formato mbox.
O número máximo de solicitações de criação de exportação de caixas de correio por dia é de 100 solicitações de todos os administradores de domínio. O processo de criação de caixas de e-mail pode ser demorado e levar vários dias, dependendo do tamanho da caixa.
O Google retém os arquivos de caixa de correio criptografados por três semanas. Faça o download deles dentro desse período. Após esse período, eles são excluídos. Para excluir esses arquivos de caixa de correio antes do período expirar, consulte Excluir uma caixa de correio criptografada.
Para fazer o download de uma caixa de correio, faça o seguinte:
- Gerar e fazer upload de uma chave pública: crie uma chave de criptografia pública para fazer o download de caixas de entrada. Essa etapa só precisa ser feita uma vez. Se você já criou uma chave pública, não precisa concluir esta etapa para cada exportação de caixa de correio.
- Criar uma versão exportada da caixa de correio de um usuário: o processo de exportação da caixa de correio 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 suas credenciais e retorna um ID de solicitação exclusivo. A criação de caixas de e-mail pode levar vários dias, dependendo do tamanho da caixa.
- 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 conferir o status da solicitação pendente.
Depois que a caixa de correio for copiada e preparada para exportação, a resposta vai retornar um
status de
COMPLETED
com a lista de arquivos de caixa de correio criptografados como URLs HTTP. Use esse conjunto de URLs para fazer o download dos arquivos da caixa de correio. - Acessar os arquivos de caixa de entrada transferidos por download: depois de fazer o download dos arquivos criptografados, descriptografe os arquivos de caixa de entrada usando a chave privada do domínio. Depois de descriptografados, os arquivos são visualizados no formato mbox.
Gerar uma chave pública
Antes de fazer o download da caixa de correio, é necessário fazer upload de uma chave de criptografia pública do OpenPGP para o domínio. Essa etapa é feita uma vez ao configurar o download da caixa de correio. É possível gerar o par de chaves pública/privada usando qualquer software compatível com o OpenPGP, como o GNU Privacy Guard (GPG). Essa chave de criptografia pública precisa ser uma chave RSA codificada em ASCII no formato PGP.
Para gerar uma chave com o GNU Privacy Guard, siga estas etapas:
Gerar uma nova chave:
gpg --gen-key --expert
Para definir seus próprios recursos, selecione a opção
8
e ative o recurso de assinatura.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 assinatura porque ela não é usada.
Exporte apenas a chave do ID de usuário correspondente ao seu Google Workspace:
Se esta for a primeira vez que você usa o GPG para gerar uma chave, exporte a chave que acabou de gerar:
gpg --armor --export
Se você já usou o GPG para gerar outras chaves, tem várias chaves no seu chaveiro. Confira uma lista de chaves:
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 codificação 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 de conjunto de caracteres preferido 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 o 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 correio que você quer fazer o download.
A solicitação contém o seguinte cabeçalho Content-type
:
Content-type: application/atom+xml
Para conferir uma lista completa de parâmetros a serem usados em uma solicitação de exportação de caixa de correio, consulte
Recursos: export
.
Exemplo de criação de uma caixa de e-mails para exportação
O exemplo usa os seguintes parâmetros:
- O usuário para exportar a caixa de e-mails é
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 do 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 correio foi concluído. A
propriedade status
é COMPLETED
, e o
numberOfFiles
retornado 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);
Extrair o status de exportação de uma caixa de correio
Como a preparação da exportação de caixa de correio é um processo assíncrono, use essa solicitação de recuperação para verificar se o processamento da caixa de correio criptografada foi concluído.
Para recuperar detalhes de status de uma caixa de entrada preparada para exportação, envie uma solicitação GET
HTTP com o requestId
da caixa de entrada 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 correio que você quer fazer o download.MAILBOX_REQUESTID
: orequestID
é um identificador exclusivo para a solicitação de exportação da caixa de correio que é retornado quando a exportação é inicialmente solicitada.
Essa solicitação retorna uma entrada do AtomPub que inclui 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
- A solicitação falhou devido a um erro. Um exemplo de possível erro é que uma chave pública da API errada foi enviada para o domínio.
COMPLETED
- A solicitação foi processada por completo, e os arquivos de caixa de correio criptografados estão prontos para download.
MARKED_DELETE
- A solicitação é marcada para exclusão na próxima vez que o job de limpeza do Google for executado. Para mais informações sobre esse trabalho de limpeza, consulte Excluir uma caixa de correio criptografada.
DELETED
- Os arquivos da caixa de correio foram excluídos usando a operação Excluir uma caixa de correio criptografada.
EXPIRED
- Os arquivos da caixa de entrada foram excluídos pelo Google após o limite de retenção de três semanas.
Exemplo de como recuperar o status de exportação de uma caixa de correio
Este exemplo recupera o status da caixa de e-mails correspondente ao requestIds
53156
e 34201
para o 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 vai retornar um código de status 201 CREATED
.
Como você pode ver na resposta a seguir, o status é ERROR
e, portanto, os arquivos de caixa de correio criptografados 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 correio correspondente ao
requestId
34201
:
GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/export/example.com/quinn/34201
Este segundo exemplo é bem-sucedido com um status COMPLETED
. Ele
retorna dois URLs de arquivo de caixa de correio que contêm os arquivos de caixa de correio 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;
Extrair todas as solicitações de status da caixa de e-mails
Para recuperar todas as solicitações de caixa de correio de um domínio a partir de uma data específica,
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 por URL de uma solicitação de caixa de correio cifrada no formato Tempo Universal Coordenado (UTC). Se nenhumfromDate
for especificado nesta solicitaçãoGET
, 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, seu código precisa gerenciar
esses resultados adicionais.
Exemplo de recuperação de todas as solicitações de status da caixa de correio
Este exemplo recupera todas as solicitações de status da caixa de correio para o domínio example.com
feitas em 9 PM, August 30, 2022
ou depois dessa data:
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 de caixa de correio 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 correio 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 correio que você fez o download.MAILBOX_REQUESTID
: orequestID
é um identificador exclusivo para a solicitação de exportação da caixa de correio que é retornado quando a exportação é inicialmente solicitada.
Se ocorrerem erros durante o processo de exclusão, o status de
MARKED_DELETE
será retornado. Essa solicitação será excluída automaticamente
por um job de limpeza do Google em até 24 horas. No entanto, para uma solicitação com status
MARKED_DELETE
, alguns (ou todos) arquivos de caixa de e-mail ainda podem estar disponíveis para
download. Se você quiser garantir que os arquivos sejam excluídos, execute essa
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
exponenciais.
Exemplo de exclusão de uma caixa de correio 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");