Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
As APIs de exportação do Teams permitem exportar chat em grupo, chats de reunião e mensagens de canal do Microsoft Teams 1:1. Se sua organização precisar exportar mensagens do Microsoft Teams, você poderá extraí-las usando as APIs de exportação do Teams. A mensagem de Chat representa uma mensagem de chat individual em um canal ou chat. A mensagem de chat pode ser uma mensagem de chat raiz ou parte de um thread de resposta definido pela propriedade replyToId na mensagem de chat.
Aqui estão alguns exemplos de como você pode usar essas APIs de exportação:
Exemplo 1: se você habilitou o Microsoft Teams em sua organização e deseja exportar todas as mensagens do Microsoft Teams até a data programaticamente passando o intervalo de datas para um determinado usuário ou equipe.
Exemplo 2: se você deseja exportar programaticamente todas as mensagens de usuário ou equipe diariamente, fornecendo um intervalo de datas. As APIs de exportação podem recuperar todas as mensagens criadas ou atualizadas durante um determinado intervalo de datas.
Exemplo 3: se você quiser exportar programaticamente os links para gravações de reunião do Teams para um determinado organizador de reunião e depois baixar as gravações reais.
Exemplo 4: se você quiser exportar programaticamente os links para as transcrições de reunião do Teams para um determinado organizador de reunião e, em seguida, baixar as transcrições reais.
O que tem suporte nas APIs de exportação do Teams?
Mensagem de exportação em massa do Teams: Consulte Limites de limitação de APIs de exportação do Teams. Com esses limites, você poderá exportar mensagens do Teams em massa.
Limite superior para a mensagem do Teams: Recomenda-se que o limite de filtro TOP para APIs de Mensagens do Teams seja definido como 250 como o limite máximo além do qual o desempenho seria limitado.
Nota
O valor $top é uma dica máxima e não um tamanho de página garantido. Devido à forma como as mensagens são buscadas de várias pastas/caixas de correio do Outlook subjacentes, uma resposta pode retornar menos itens do que o solicitado e incluir uma @odata.nextLink para continuar a recuperação de outras pastas. Esse comportamento é esperado.
Contexto do aplicativo: para chamar o Microsoft Graph, seu aplicativo deve adquirir um token de acesso da plataforma de identidade da Microsoft. O token de acesso contém informações sobre seu aplicativo e as permissões que ele tem para os recursos e APIs disponíveis por meio do Microsoft Graph. Para obter um token de acesso, seu aplicativo deve estar registrado na plataforma de identidade da Microsoft. Um usuário ou um administrador deve autorizá-lo para acessar os recursos do Microsoft Graph necessários. Se você já estiver familiarizado com a integração de um aplicativo à plataforma de identidade da Microsoft para obter tokens, consulte a seção Próximas Etapas para obter informações e exemplos específicos do Microsoft Graph.
Ambiente híbrido: As APIs de exportação dão suporte a mensagens enviadas por usuários provisionados em Ambiente Híbrido (Exchange local e Teams). Todas as mensagens enviadas por usuários configurados para ambiente híbrido podem ser acessadas usando APIs de Exportação.
Mensagens excluídas do usuário: As mensagens excluídas pelos usuários do cliente do Teams podem ser acessadas usando APIs de exportação em até 21 dias a partir do momento da exclusão.
Anexos de mensagens: As APIs de exportação incluem informações de anexos para arquivos enviados em mensagens. Os anexos podem aparecer como metadados e, em alguns casos, como links (por exemplo, URLs de ASM) no corpo da mensagem. A coleção da
attachmentsmensagem deve ser usada para recuperar arquivos anexados, pois as URLs inseridas no corpo podem não estar diretamente acessíveis.Reações: As APIs de exportação dão suporte a reações iniciadas por um usuário em uma mensagem do Teams. As reações atualmente suportadas são coração, raiva, gosto, triste, surpresa e risada. Além das reações, a API de exportação também oferece suporte ao histórico de edição de reações, que inclui alterações e atualizações feitas em uma reação em uma mensagem.
Nota
No momento, não há suporte para reações personalizadas com alterações de cor pela API de Exportação.
Mensagens do canal compartilhado: As APIs de exportação dão suporte à captura de mensagens de um Canal Compartilhado.
Equipes excluídas: A API de exportação dá suporte à captura de mensagens de equipes excluídas e canais padrão, privados e compartilhados excluídos por no máximo 30 dias a partir do dia da exclusão. Após 30 dias, as equipes e os canais são excluídos irreversivelmente e as mensagens não podem ser recuperadas.
Usuários excluídos: a API de exportação dá suporte à captura de mensagens para usuários excluídos por até 30 dias a partir do momento em que o usuário foi excluído. Para encontrar a lista de usuários excluídos, consulte Itens excluídos.
Usuários inativos: a API de exportação dá suporte à captura de mensagens para usuários inativos por até 30 dias a partir do momento em que o usuário se torna inativo. Para encontrar a lista de caixas de correio inativas, consulte Caixas de correio inativas.
Propriedades da mensagem de chat: Consulte a lista completa de propriedades às quais as APIs de exportação do Teams dão suporte.
Mensagens de Controle: A API de exportação dá suporte à captura de mensagens de controle, além das mensagens geradas pelo usuário. As Mensagens de Controle são mensagens geradas pelo sistema que aparecem no cliente do Teams. Eles carregam informações importantes, como "O usuário A adicionou o usuário B ao chat e compartilhou todo o histórico de chat", junto com o carimbo de data/hora. As mensagens do sistema permitem que o chamador tenha informações sobre eventos ocorridos em uma equipe, um canal ou um chat. Consulte a lista de mensagens de controle que a API de Exportação dá suporte no momento.
Saiba mais sobre como exportar mensagens no chat e no canal.
Nota
No momento, não há suporte para mensagens de controle relacionadas a reuniões pela API de Exportação.
Histórico editado: Se o locatário estiver configurado com a Política de Retenção do Teams, a API de exportação dará suporte à captura do histórico editado de mensagens para chats individuais e em grupo, bem como postagens e comentários em canais Públicos e Compartilhados.
Para saber mais sobre a política de retenção do Teams, consulte Gerenciar políticas de retenção para o Microsoft Teams para obter mais detalhes.
Saiba mais sobre como exportar mensagens de histórico editadas em chats e canais.
Transcrições de reuniões: Obtenha todas as transcrições das instâncias de reunião online agendadas para as quais o usuário especificado é o organizador. Atualmente, essa API só dá suporte a reuniões agendadas privadas.
Saiba mais sobre como exportar transcrições de reuniões.
Gravações de reunião: Obtenha todas as gravações de instâncias de reuniões online agendadas para as quais o usuário especificado é o organizador. Atualmente, essa API só dá suporte a reuniões agendadas privadas.
Saiba mais sobre como exportar gravações de reunião.
Mensagens direcionadas: As mensagens enviadas por um agente ou bot ao usuário podem ser exportadas mesmo depois de limpas dos clientes após 24 horas. Veja como exportar Mensagens Direcionadas e como excluir Mensagens Direcionadas.
Como acessar APIs de exportação do Teams
O exemplo 1 é uma consulta simples para recuperar todas as mensagens de um usuário ou equipe sem filtros:
GET https://graph.microsoft.com/v1.0/users/{id}/chats/getAllMessagesGET https://graph.microsoft.com/v1.0/teams/{id}/channels/getAllMessagesO exemplo 2 é uma consulta de exemplo para recuperar todas as mensagens de um usuário ou equipe especificando filtros de data e hora e as 50 principais mensagens:
GET https://graph.microsoft.com/v1.0/users/{id}/chats/getAllMessages?$top=50&$filter=lastModifiedDateTime gt 2020-06-04T18:03:11.591Z and lastModifiedDateTime lt 2020-06-05T21:00:09.413ZGET https://graph.microsoft.com/v1.0/teams/{id}/channels/getAllMessages?$top=50&$filter=lastModifiedDateTime gt 2020-06-04T18:03:11.591Z and lastModifiedDateTime lt 2020-06-05T21:00:09.413ZO exemplo 3 é uma consulta de exemplo para recuperar os links para todas as gravações de reuniões do Teams disponíveis de um usuário. Há suporte para a filtragem de intervalos de datas. O filtro TOP n é suportado de forma semelhante às mensagens de Chat:
GET https://graph.microsoft.com/v1.0/users/{id}/onlineMeetings/getAllRecordings?$filter=MeetingOrganizer/User/Id eq ‘{id}’GET https://graph.microsoft.com/v1.0/users/{id}/onlineMeetings/getAllRecordings(meetingOrganizerUserId='{userId}',startDateTime={startDateTime},endDateTime={endDateTime})O exemplo 4 é uma consulta de exemplo para recuperar os links para todas as transcrições de reuniões disponíveis do Teams de um usuário. Há suporte para a filtragem de intervalos de datas. O filtro TOP n é suportado de forma semelhante às mensagens de Chat:
GET https://graph.microsoft.com/v1.0/users/{id}/onlineMeetings/getAllTranscripts?$filter=MeetingOrganizer/User/Id eq ‘{id}’GET https://graph.microsoft.com/v1.0/users/{id}/onlineMeetings/getAllTranscripts(meetingOrganizerUserId='{userId}',startDateTime={startDateTime},endDateTime={endDateTime})O exemplo 5 é um exemplo de consulta encadeada para obter primeiro todas as reuniões transcritas disponíveis do Teams de um usuário e, em seguida, recuperar todos os Insights da IA disponíveis:
GET https://graph.microsoft.com/v1.0/users/{id}/onlineMeetings/getAllTranscripts?$filter=MeetingOrganizer/User/Id eq '{id}'Em seguida, recupere os Insights da IA para cada
meetingIdum retornado pela solicitação acima.GET https://graph.microsoft.com/v1.0/copilot/users/{id}/onlineMeetings/{meetingId}/aiInsightsNota
A API retornará uma resposta com o link da próxima página se houver vários resultados. Para obter o próximo conjunto de resultados, chame GET na url de @odata.nextlink. Se @odata.nextlink não estiver presente ou for nulo, todas as mensagens serão recuperadas.
Nota
Não há garantia de que a ordem das mensagens na resposta seja classificada por qualquer datetime, como createdDateTime ou lastModifiedDateTime.
Pré-requisitos para acessar as APIs de exportação do Teams
As APIs do Microsoft Teams no Microsoft Graph que acessam dados confidenciais são consideradas APIs protegidas. Você pode chamar essas APIs desde que os requisitos para acessar sem um usuário sejam atendidos.
As permissões de aplicativo são usadas por aplicativos executados sem a presença de um usuário conectado. Somente um administrador pode aprovar permissões de aplicativo. As seguintes permissões são necessárias:
Chat. Read.All: permite o acesso a todas as mensagens de chat em grupo, chat em grupo e mensagens de chat de reunião.
ChannelMessage.Read.All: permite o acesso a todas as mensagens do canal.
User.Read.All: permite o acesso à lista de usuários de um locatário.
OnlineMeetingTranscript.Read.All: permite o acesso às transcrições para todas as 1:n reuniões agendadas do Teams.
OnlineMeetingRecording.Read.All: permite o acesso às gravações para todas as 1:n reuniões agendadas do Teams.
Requisitos de licença para APIs de exportação do Teams
Para usar as APIs de exportação do Microsoft Teams, as organizações devem ter uma licença ativa do Microsoft Teams atribuída aos usuários cujos dados estão sendo exportados.
Nota
O uso das APIs de exportação do Microsoft Teams não requer um plano de serviço de Prevenção Contra Perda de Dados do Microsoft Purview (DLP) ou qualquer licenciamento DLP adicional.
As APIs de exportação operam independentemente dos recursos de DLP do Purview e estão disponíveis para locatários com o licenciamento apropriado do Teams que dá suporte ao acesso a dados por meio de APIs de exportação do Microsoft Graph.
| Nome do Parceiro | Solução de Parceiro |
|---|---|
|
Arquivamento e Conformidade do Microsoft Teams |
|
Captura de Conteúdo de Ponto de Prova para o Microsoft Teams |
Os parceiros a seguir são certificados. Sua empresa pode optar por trabalhar com qualquer combinação desses parceiros em sua empresa.
| Nome do Parceiro | Solução de Parceiro |
|---|---|
|
Backup e recuperação do Microsoft Teams |
|
Backup e recuperação do Microsoft Teams |
Próximas etapas
Se você for um fornecedor que deseja ingressar no programa de certificação, preencha este formulário como a próxima etapa. Se você precisar fornecer mais contexto e detalhes, envie um email para a Equipe do Ecossistema do MS Teams (TeamsCategoryPartner@microsoft.com).
Modo de Avaliação (padrão)
Nenhuma declaração de modelo permite o acesso a APIs com uso limitado por cada aplicativo solicitante para fins de avaliação.
Representação JSON
O exemplo a seguir é uma representação JSON do recurso de chat:
Namespace: microsoft.graph
{ "id": "string (identifier)", "replyToId": "string (identifier)", "from": {"@odata.type": "microsoft.graph.identitySet"}, "etag": "string", "messageType": "string", "createdDateTime": "string (timestamp)", "lastModifiedDateTime": "string (timestamp)", "deletedDateTime": "string (timestamp)", "subject": "string", "from": { "application": null, "device": null, "conversation": null, "user": { "id": [{"@odata.type": "microsoft.graph.user"}], "displayName": "User Name", "userIdentityType": "aadUser" } }, "body": {"@odata.type": "microsoft.graph.itemBody"}, "summary": "string", "chatId": [{"@odata.type": "microsoft.graph.chat"}] "attachments": [{"@odata.type": "microsoft.graph.chatMessageAttachment"}], "mentions": [{"@odata.type": "microsoft.graph.chatMessageMention"}], "importance": "string", "locale": "string", }Nota
Para obter mais informações sobre o recurso chatMessage, consulte o artigo do tipo de recurso chatMessage .
O exemplo a seguir é uma representação JSON do recurso de gravação:
Namespace: microsoft.graph
{ "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(meetingRecording)", "@odata.count": 2, "@odata.nextLink": "https://graph.microsoft.com/v1.0/users('{userId}')/onlineMeetings/getAllRecordings?$filter=MeetingOrganizer%2fUser%2fId+eq+%27{userId}%27&$skiptoken=MSMjMCMjTkNaYVNIQjVVbXRPYWxaV1dscGFWVGg1V2pOb1IxUXpRWGxrUm1oTFVrWmtTV1ZyYkhwUlZVWm9UMWR3VEdWWGRFTlJWVVpDVVZFOVBRPT0%3d", "value": [ { "@odata.type": "#microsoft.graph.meetingRecording", "id": "6263af16-b660-41d0-a17b-83fbd15a39c7", "meetingId": "MSoxMjczYTAxNi0yMDFkRLTmOTUtODA5My0xYjdmOTliM2VkZWIqMCoqMTk6bWVldGluZ19aR1F3WTJZNE9XTXROekppWlMwME1XWTRMVGc0TWpBdE1BBXdOV1kzWlRsak9UTXlAdGhyZWFkLnYy", "meetingOrganizerId": "{userId}", "createdDateTime": "2022-08-03T20:43:36.2573447Z", "recordingContentUrl": "https://graph.microsoft.com/v1.0/users/{userId}/onlineMeetings/MSoxMjczYTAxNi0yMDFkLTRmOTUtODA4My0xYjdmOTliM2VkZWIqMCoqMTk6bWVldGluZ19aR1F3WTJZNE9XTXROekppWlMwME1XWTRMVGc0TWpBdE1ERXdOV1kzWlRsak9UTXlAdGhyZWFkLnYy/recordings/MSMjMCMjMGFjNmUwZTgtYmZjYy00NDQxLTk2MGYtZjllNjVhNjI0NzBh/content" }, { "@odata.type": "#microsoft.graph.meetingRecording", "id": "{recordingId}", "meetingId": "{meetingId}", "meetingOrganizerId": "{userId}", "createdDateTime": "2022-08-03T20:44:11.2635254Z", "recordingContentUrl": " https://graph.microsoft.com/v1.0/users/{userId}/onlineMeetings/{meetingId}/recordings/{recordingId}/content" }, ] }Onde:
<id>Representa uma única gravação.<meetingId>Representa um identificador de chamada ou reunião.<meetingOrganizer/user/id>Representa o organizador da reunião.<createdDateTime>Indica a hora de início da reunião.<recordingContentUrl>indica a URL para o conteúdo de gravação.As gravações estão no formato MP4.
O tamanho médio do conteúdo de gravação em si é de cerca de 350 MB em disco, com base nas médias que estamos vendo para reuniões que estão no intervalo de 30 minutos a 60 minutos.
Não há garantia de que os resultados sejam classificados por
createdDateTime. No entanto, quando várias gravações estão presentes para uma única reunião, elas compartilham o mesmomeetingIdvalor. Além disso, as entradas das várias gravações são sequenciadas corretamente para a reunião em questão.Os resultados são garantidos para estar presentes somente depois que as gravações de reunião associadas estiverem disponíveis. Em outras palavras, o chamador não requer nenhuma outra sondagem para disponibilidade.
A paginação dos resultados tem suporte de acordo com os padrões atuais na API de exportação do Teams. Há suporte para a paginação por meio da presença da
@oData.nextLinkpropriedade na resposta. A propriedade nextLink contém umskipTokenvalor, conforme indicado na tabela a seguir. Se nenhumskipTokenestiver presente, isso significa que não há mais resultados a serem recuperados no lote atual:Solicitação Resposta @nextLink Comentários /getAllRecordingsContagem: 10 ?skipToken=ABCSolicitação inicial sem skipToken/getAllRecordings?skipToken=ABCContagem: 10 ?skipToken=DEFSkipTokenretornado, solicitação para obter a próxima página/getAllRecordings?skipToken=DEFContagem: 7 Não skipToken, não há mais dados disponíveis$toptambém tem suporte de acordo com os padrões atuais na API de exportação do Teams.DeltaTokenpara habilitar o controle de alterações e cenários de sincronização. Para obter uma visão geral e exemplos de consultas delta existentes, consulte Usar a consulta delta para rastrear alterações nos dados do Microsoft Graph.A API a seguir pode ser usada para obter o conteúdo de gravação real do , selecionado
userIdmeetingIderecordingIdobtido na resposta da API GETgetAllRecordings. Ele retorna o conteúdo da gravação:GET users('{userId}')/onlineMeetings('{meetingId}')/recordings('{recordingId}')/content
O exemplo a seguir é uma representação JSON do recurso de transcrição:
Namespace: microsoft.graph
{ "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(callTranscript)", "@odata.count": 2, "@odata.nextLink": "https://graph.microsoft.com/v1.0/users('{userId}')/onlineMeetings/getAllTranscripts?$filter=MeetingOrganizer%2fUser%2fId+eq+%27{userId}%27&$skiptoken=MSMjMCMjTkNaYVNIQjVVbXRPYWxaV1dscGFWVGg1V2pOb1IxUXpRWGxrUm1oTFVrWmtTV1ZyYkhwUlZVWm9UMWR3VEdWWGRFTlJWVVpDVVZFOVBRPT0%3d", "value": [ { "@odata.type": "#microsoft.graph.callTranscript", "id": "MSMjMCMjMGFjNmUwZTgtYmZjYy00NDQxLTk2MGYtZjllNjVhNjI0NzBh", "meetingId": "MSoxMjczYTAxNi0yMDFkLTRmOTUtODA4My0xYjdmOTliM2VkZWIqMCoqMTk6bWVldGluZ19aR1F3WTJZNE9XTXROekppWlMwME1XWTRMVGc0TWpBdE1ERXdOV1kzWlRsak9UTXlAdGhyZWFkLnYy", "meetingOrganizerId": "{userId}", "transcriptContentUrl": "https://graph.microsoft.com/v1.0/users/{userId}/onlineMeetings/MSoxMjczYTAxNi0yMDFkLTRmOTUtODA4My0xYjdmOTliM2VkZWIqMCoqMTk6bWVldGluZ19aR1F3WTJZNE9XTXROekppWlMwME1XWTRMVGc0TWpBdE1ERXdOV1kzWlRsak9UTXlAdGhyZWFkLnYy/transcripts/MSMjMCMjMGFjNmUwZTgtYmZjYy00NDQxLTk2MGYtZjllNjVhNjI0NzBh/content", "createdDateTime": "2022-08-03T20:43:36.6248355Z" }, { "@odata.type": "#microsoft.graph.callTranscript", "id": "{transcriptId}", "meetingId": "{meetingId}", "meetingOrganizerId": "{userId}", "transcriptContentUrl": "https://graph.microsoft.com/v1.0/users/{userId}/onlineMeetings/{meetingId}/transcripts/{transcriptId}/content", }, ] }Onde:
<id>Representa uma única gravação.<meetingId>Representa um identificador de chamada ou reunião.<meetingOrganizer/user/id>Representa o organizador da reunião.<createdDateTime>Indica a hora de início da reunião.<transcriptContentUrl>indica a URL para o conteúdo da transcrição.O conteúdo da transcrição, por padrão, está no formato VTT. Mas, usando um valor de cabeçalho Accept de
application/vnd.openxmlformats-officedocument.wordprocessingml.document, o formato DOCX também pode ser obtido.O tamanho médio do conteúdo da transcrição no formato JSON/VTT é de cerca de 300 KB, com base nas médias que estamos vendo para reuniões que estão no intervalo de 30 minutos a 60 minutos.
Não há garantia de que os resultados sejam classificados por
createdDateTime. No entanto, quando várias gravações estão presentes para uma única reunião, elas compartilham o mesmomeetingIdvalor. Além disso, as entradas das várias gravações são sequenciadas corretamente para a reunião em questão.Os resultados são garantidos para estar presentes somente depois que as gravações de reunião associadas estiverem disponíveis. Em outras palavras, o chamador não requer nenhuma outra sondagem para disponibilidade.
A paginação dos resultados tem suporte de acordo com os padrões atuais na API de exportação do Teams. A paginação tem suporte por meio da presença de
@oData.nextLinkpropriedade na resposta. AnextLinkpropriedade contém umskipTokenvalor, conforme indicado na tabela a seguir. Se nenhumskipTokenestiver presente, isso significa que não há mais resultados a serem recuperados no lote atual:Solicitação Resposta @nextLink Comentários /getAllTranscriptsContagem: 10 ?skipToken=ABCSolicitação inicial sem skipToken/getAllTranscripts?skipToken=ABCContagem: 10 ?skipToken=DEFSkipTokenretornado, solicitação para obter a próxima página/getAllTranscripts?skipToken=DEFContagem: 7 Não skipToken, não há mais dados disponíveis$toptambém tem suporte de acordo com os padrões atuais na API de exportação do Teams.DeltaTokenpara habilitar o controle de alterações e cenários de sincronização. Para obter uma visão geral e exemplos de consultas delta existentes, consulte Usar a consulta delta para rastrear alterações nos dados do Microsoft Graph.A API a seguir pode ser usada para obter o conteúdo real da transcrição da userId, meetingId e transcriptId selecionadas que foram obtidas na resposta da API GET getAllTranscripts. Ele retorna o conteúdo da gravação.
GET users('{userId}')/onlineMeetings('{meetingId}')/transcripts('{transcriptId}')/content
Para obter mais informações, consulte Usar APIs do Graph para buscar transcrição.
Filtros da API de exportação
A API de exportação hospedada no Serviço Graph do Teams obtém todas as mensagens do usuário da caixa de correio do usuário do Substrate usando users/{userId}/chats/getAllMessages. A API de exportação recupera mensagens enviadas e recebidas de um usuário, o que leva à exportação de mensagens duplicadas ao chamar a API para todos os usuários no thread de chat.
A API de exportação tem parâmetros de filtro que ajudam a otimizar as mensagens retornadas para um thread de chat. O API GET suporta novos parâmetros de filtro que permitem uma maneira de extrair mensagens com base no usuário enviado, bot e mensagens de evento de aplicativo e sistema. O parâmetro filter dá suporte a mensagens enviadas por:
usuários (várias IDs de usuário com suporte na mesma solicitação).
aplicativos (bots, conectores e assim por diante).
Todos os userIdentityTypes , exceto emailUser e unknownFutureValue.
Mensagens de evento do sistema (mensagens de controle).
Esses parâmetros fazem parte do arquivo $filter. Se nenhum desses parâmetros estiver presente na solicitação, as mensagens de todos os usuários presentes nos chats de usuário especificados serão retornadas.
Os cenários de filtragem com suporte são os seguintes:
$filter=from/application/applicationIdentityType eq '<appType>' (bots/tenantBots/connectors, etc.)
$filter=from/user/id eq '<oid>' (any number of id filters)
$filter=from/user/userIdentityType eq '<userIdentityType>'
$filter=from/application/applicationIdentityType eq '<appType>' or from/user/id eq '<oid>' (sent by app or userid)
$filter=from/application/applicationIdentityType eq '<appType>' or from/user/userIdentityType eq 'anonymousGuest' (sent by app or anonymous)
$filter=from/application/applicationIdentityType eq '<appType>' or from/user/userIdentityType eq 'federatedUser' (sent by app or federated)
$filter=from/application/applicationIdentityType eq '<appType>' or from/user/userIdentityType eq 'anonymousGuest' or from/user/userIdentityType eq 'federatedUser' (sent by app, anonymous or federated)
$filter=from/user/id eq '<oid>' or from/user/userIdentityType eq 'anonymousGuest' (sent by any number of userid or anonymous)
$filter=from/user/id eq '<oid>' or from/user/userIdentityType eq 'federatedUser' (sent by any number of userid or federated)
$filter=from/application/applicationIdentityType eq '<appType>' or from/user/id eq '<oid>' or from/user/userIdentityType eq 'anonymousGuest' or from/user/userIdentityType eq 'federatedUser' (sent by any number of userid or federated or anonymous)
$filter=from/application/applicationIdentityType eq '<appType>' or from/user/id eq '<oid>' or from/user/userIdentityType eq 'anonymousGuest' or from/user/userIdentityType eq 'federatedUser' (sent by any number of userid or federated or anonymous) or messageType eq 'systemEventMessage'
(<any of the previous filters>) and (lastModifiedDateTime+gt+<date>+and+lastModifiedDateTime+lt+<date>)
A consulta retornará mensagens enviadas pelo usuário especificado, se
from/user/id eq ‘{oid}’estiver presente.A consulta retorna mensagens enviadas pelos usuários federados que fazem parte dos chats do usuário, se
from/user/userIdentityType eq ‘federatedUser’estiver presente.A consulta retornará mensagens enviadas pelo tipo de aplicativo especificado, se
from/application/applicationIdentityType eq '{appType}'estiver presente.A consulta retornará mensagens enviadas pelo sistema se
messageType eq 'systemEventMessage'estiver presente.
Esses parâmetros podem ser combinados entre eles usando os operadores OR ou combinando com o lastModifiedDateTime$filter parâmetro.
APIs de exportação do Teams para mensagens retidas
Se o locatário estiver configurado com a Política de Retenção do Teams, a API de exportação dará suporte à captura de mensagens da pasta de retenções para bate-papos individuais & em grupo, postagens, comentários em canais Públicos & Compartilhados.
Como acessar a API de Mensagens Retidas
O exemplo 1 é uma consulta simples para recuperar todas as mensagens retidas de um usuário:
GET https://graph.microsoft.com/v1.0/users/8b081ef6-4792-4def-b2c9-c363a1bf41d5/chats/getAllRetainedMessagesO exemplo 2 é uma consulta simples para recuperar todas as mensagens retidas de uma equipe:
GET https://graph.microsoft.com/v1.0/teams/8b081ef6-4792-4def-b2c9-c363a1bf41d5/channels/getAllRetainedMessages
O que é compatível com a API getAllRetainedMessages
- A mensagem é excluída temporariamente por um usuário em um chat ou canal Se o usuário estiver em espera, além dos 21 dias do período de exclusão, a mensagem poderá ser exportada por meio da API.
- A mensagem é excluída temporariamente por um usuário em um chat ou canal Se houver uma política de retenção válida definida, além dos 21 dias do período de exclusão, a mensagem poderá ser exportada por meio da API.
- A mensagem é editada por um usuário em um chat ou canal Se houver uma política de retenção válida definida, as versões editadas anteriormente da mensagem poderão ser exportadas.
Nota
A API /getAllRetainedMessages permite a recuperação de mensagens de canal excluídas por no máximo 30 dias a partir do dia da exclusão. Após 30 dias, as equipes e os canais são excluídos irreversivelmente e as mensagens não podem ser recuperadas.
Interações do Microsoft Copilot
Saiba mais sobre o aiInteractionHistory: getAllEnterpriseInteractions que permite exportar interações do copiloto.