Exportieren von Inhalten mit den Microsoft Teams-Export-APIs
Mit Teams-Export-APIs können Sie 1:1-Gruppenchats, Besprechungschats und Kanalnachrichten aus Microsoft Teams exportieren. Wenn Ihre organization Microsoft Teams-Nachrichten exportieren muss, können Sie diese mithilfe von Teams-Export-APIs extrahieren. Chatnachricht stellt eine einzelne Chatnachricht innerhalb eines Kanals oder Chats dar. Die Chatnachricht kann eine Stammchatnachricht oder Teil eines Antwortthreads sein, der durch die replyToId-Eigenschaft in der Chatnachricht definiert wird.
Im Folgenden finden Sie einige Beispiele für die Verwendung dieser Export-APIs:
Beispiel 1: Wenn Sie Microsoft Teams in Ihrem organization aktiviert haben und alle Microsoft Teams-Nachrichten programmgesteuert auf das Datum exportieren möchten, indem Sie den Datumsbereich für einen bestimmten Benutzer oder ein bestimmtes Team übergeben.
Beispiel 2: Wenn Sie alle Benutzer- oder Teamnachrichten programmgesteuert täglich exportieren möchten, indem Sie einen Datumsbereich angeben. Export-APIs können alle Nachrichten abrufen, die während des angegebenen Datumsbereichs erstellt oder aktualisiert wurden.
Beispiel 3: Wenn Sie die Links zu Teams-Besprechungsaufzeichnungen für einen bestimmten Besprechungsorganisator programmgesteuert exportieren und dann die tatsächlichen Aufzeichnungen herunterladen möchten.
Beispiel 4: Wenn Sie die Links zu Teams-Besprechungstranskripts für einen bestimmten Besprechungsorganisator programmgesteuert exportieren und dann die tatsächlichen Transkripte herunterladen möchten.
Was wird von den Teams-Export-APIs unterstützt?
Massenexport von Teams-Nachrichten: Teams Export-APIs unterstützen bis zu 200 RPS pro App pro Mandant und 600 RPS für eine Anwendung. Mit diesen Grenzwerten sollten Sie in der Lage sein, Teams-Nachrichten per Massenexport zu exportieren.
Anwendungskontext: Um Microsoft Graph aufzurufen, muss Ihre App ein Zugriffstoken vom Microsoft Identity Platform abrufen. Das Zugriffstoken enthält Informationen zu Ihrer App und den Berechtigungen, über die es für die über Microsoft Graph verfügbaren Ressourcen und APIs verfügt. Um ein Zugriffstoken zu erhalten, muss Ihre App beim Microsoft Identity Platform registriert und entweder von einem Benutzer oder einem Administrator für den Zugriff auf die benötigten Microsoft Graph-Ressourcen autorisiert werden.
Wenn Sie bereits mit der Integration einer App in die Microsoft Identity Platform zum Abrufen von Token vertraut sind, finden Sie im Abschnitt Nächste Schritte Informationen und Beispiele speziell für Microsoft Graph.
Hybridumgebung: Export-APIs unterstützen Nachrichten, die von Benutzern gesendet werden, die in einer Hybridumgebung (lokales Exchange und Teams) bereitgestellt werden. Auf alle Nachrichten, die von Benutzern gesendet werden, die für die Hybridumgebung konfiguriert sind, kann über Export-APIs zugegriffen werden.
Vom Benutzer gelöschte Nachrichten: Auf Nachrichten, die von Benutzern aus dem Teams-Client gelöscht werden, kann über Export-APIs bis zu 21 Tage nach dem Löschzeitpunkt zugegriffen werden.
Nachrichtenanlagen: Export-APIs enthalten die Links zu den Anlagen, die als Teil von Nachrichten gesendet werden. Mithilfe von Export-APIs können Sie die in den Nachrichten angefügten Dateien abrufen.
Reaktionen: Export-APIs unterstützen Reaktionen, die von einem Benutzer auf eine Teams-Nachricht initiiert wurden. Reaktionen, die derzeit unterstützt werden, sind herzhaft, wütend, wie, traurig, überrascht und lachen. Zusätzlich zu Reaktionen unterstützt die Export-API auch Den Verlauf der Reaktionsbearbeitung, der Änderungen und Aktualisierungen enthält, die an einer Reaktion auf eine Nachricht vorgenommen wurden.
Freigegebene Kanalnachrichten: Export-APIs unterstützen das Erfassen von Nachrichten aus einem freigegebenen Kanal.
Gelöschte Teams: Die Export-API unterstützt das Erfassen von Nachrichten aus gelöschten Teams und gelöschten Standard-, privaten und freigegebenen Kanälen.
Gelöschte Benutzer: Die Export-API unterstützt das Erfassen von Nachrichten für gelöschte Benutzer bis zu 30 Tage ab dem Zeitpunkt, zu dem der Benutzer gelöscht wurde. Informationen zur Liste der gelöschten Benutzer finden Sie unter Gelöschte Elemente.
Chatnachrichteneigenschaften: Weitere Informationen finden Sie in der vollständigen Liste der Eigenschaften, die von Teams Export-APIs unterstützt werden.
Steuernachrichten: Die Export-API unterstützt das Erfassen von Steuernachrichten zusätzlich zu den vom Benutzer generierten Nachrichten. Steuernachrichten sind vom System generierte Nachrichten, die auf dem Teams-Client angezeigt werden und wichtige Informationen wie "Benutzer A hat Benutzer B zum Chat hinzugefügt und den gesamten Chatverlauf geteilt" zusammen mit dem Zeitstempel enthalten. Systemnachrichten ermöglichen es dem Anrufer, Einblicke in Ereignisse zu erhalten, die in einem Team, in einem Kanal oder in einem Chat aufgetreten sind. Weitere Informationen finden Sie in der Liste der Kontrollmeldungen , die die Export-API derzeit unterstützt.
Hinweis
Besprechungsbezogene Steuernachrichten werden derzeit von der Export-API nicht unterstützt.
Bearbeiteter Verlauf: Sofern Ihr Mandant mit der Aufbewahrungsrichtlinie für Teams eingerichtet ist, unterstützt die Export-API das Erfassen des bearbeiteten Verlaufs von Nachrichten für einzelne & Gruppenchats sowie Beiträge, Kommentare in öffentlichen & freigegebenen Kanälen.
Weitere Informationen zur Aufbewahrungsrichtlinie für Teams finden Sie unter Verwalten von Aufbewahrungsrichtlinien für Microsoft Teams .
Zugreifen auf Teams-Export-APIs
Beispiel 1 ist eine einfache Abfrage zum Abrufen aller Nachrichten eines Benutzers oder Teams ohne Filter:
GET https://graph.microsoft.com/v1.0/users/{id}/chats/getAllMessages
GET https://graph.microsoft.com/v1.0/teams/{id}/channels/getAllMessages
Beispiel 2 ist eine Beispielabfrage zum Abrufen aller Nachrichten eines Benutzers oder Teams durch Angabe von Datumszeitfiltern und top 50 Nachrichten:
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.413Z
GET 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.413Z
Beispiel 3 ist eine Beispielabfrage zum Abrufen der Links zu allen verfügbaren Teams-Besprechungsaufzeichnungen eines Benutzers. Die Datumsbereichsfilterung wird unterstützt. Top n-Filter wird ähnlich wie Chatnachrichten unterstützt:
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})
Beispiel 4 ist eine Beispielabfrage zum Abrufen der Links zu allen verfügbaren Teams-Besprechungstranskripts eines Benutzers. Die Datumsbereichsfilterung wird unterstützt. Top n-Filter wird ähnlich wie Chatnachrichten unterstützt:
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})
Hinweis
Die API gibt die Antwort mit link zur nächsten Seite zurück, falls mehrere Ergebnisse vorliegen. Um den nächsten Satz von Ergebnissen zu erhalten, rufen Sie einfach GET für die URL von auf @odata.nextlink. Wenn @odata.nextlink nicht vorhanden oder NULL ist, werden alle Nachrichten abgerufen.
Hinweis
Es ist nicht garantiert, dass die Reihenfolge der Nachrichten in der Antwort nach datetime sortiert wird, z. B. createdDateTime oder lastModifiedDateTime.
Voraussetzungen für den Zugriff auf Teams-Export-APIs
Microsoft Teams-APIs in Microsoft Graph, die auf vertrauliche Daten zugreifen, gelten als geschützte APIs. Sie können diese APIs aufrufen, solange die Anforderungen für den Zugriff ohne Benutzer erfüllt sind.
Anwendungsberechtigungen werden von Apps verwendet, die ohne angemeldeten Benutzer ausgeführt werden. Anwendungsberechtigungen können nur von einem Administrator genehmigt werden. Die folgenden Berechtigungen sind erforderlich:
Chat.Read.All: Ermöglicht den Zugriff auf alle 1:1-, Gruppenchat- und Besprechungschatnachrichten.
ChannelMessage.Read.All: Ermöglicht den Zugriff auf alle Kanalnachrichten.
User.Read.All: Ermöglicht den Zugriff auf die Liste der Benutzer für einen Mandanten.
OnlineMeetingTranscript.Read.All: Ermöglicht den Zugriff auf Transkripte für alle geplanten 1:n Teams-Besprechungen.
OnlineMeetingRecording.Read.All: Ermöglicht den Zugriff auf Aufzeichnungen für alle geplanten 1:n Teams-Besprechungen.
Lizenzanforderungen für Teams-Export-APIs
Die Export-API unterstützt Security and Compliance (S+C) und allgemeine Verwendungsszenarien über einen Modellabfrageparameter. S+C-Szenarien (Modell A) umfassen Seedingkapazität und erfordern ein E5-Abonnement. Allgemeine Nutzungsszenarien (Modell B) sind für alle Abonnements verfügbar und werden nur genutzt. Weitere Informationen zu Seedingkapazität und Verbrauchsgebühren finden Sie unter Lizenzierungs- und Zahlungsanforderungen für Microsoft Graph Teams-APIs.
Für Beta-APIs gibt es derzeit keine Lizenzierungs- oder Nutzungserzwingungen für Modell A oder Modell B. Dies kann sich jedoch in Zukunft ändern.
S+C/Modell A-Szenarien
Benutzer müssen auf Anwendungen beschränkt sein, die Sicherheits- und/oder Compliancefunktionen ausführen, und Benutzer müssen über bestimmte E5-Lizenzen verfügen, um diese Funktionalität nutzen und seeded capacity (Seedingkapazität) erhalten zu können. Die Seedingkapazität erfolgt pro Benutzer, wird pro Monat berechnet und auf Mandantenebene aggregiert. Für die Nutzung, die über die Seedingkapazität hinausgeht, wird App-Besitzern die API-Nutzung in Rechnung gestellt. Modell A kann nur auf Nachrichten von Benutzern mit einer zugewiesenen E5-Lizenz zugreifen.
Partnername | Partnerlösung |
---|---|
Microsoft Teams-Archivierung und Compliance | |
Proofpoint Content Capture für Microsoft Teams |
Allgemeine Verwendung/Szenarios für Modell B
Für alle Szenarien, die nicht mit S+C zusammenhängen, gibt es keine Lizenzanforderungen oder Seedingkapazität. Wenn Verbrauchseinheiten verfügbar werden, werden App-Besitzern alle monatlichen API-Aufrufe in Rechnung gestellt.
Die folgenden Partner sind zertifiziert. Ihr Unternehmen kann sich dafür entscheiden, mit einer beliebigen Kombination dieser Partner in Ihrem Unternehmen zusammenzuarbeiten.
Partnername | Partnerlösung |
---|---|
Microsoft Teams-Sicherung und -Wiederherstellung | |
Microsoft Teams-Sicherung und -Wiederherstellung |
Nächste Schritte
Wenn Sie ein Anbieter sind, der am Zertifizierungsprogramm teilnehmen möchte, füllen Sie dieses Formular als nächsten Schritt aus. Wenn Sie weitere Kontexte und Details angeben müssen, senden Sie eine E-Mail an das MS Teams Ecosystem Team (TeamsCategoryPartner@microsoft.com).
Auswertungsmodus (Standard)
Keine Modelldeklaration ermöglicht den Zugriff auf APIs mit eingeschränkter Nutzung für jede anfordernde Anwendung zu Auswertungszwecken.
JSON-Darstellung
Das folgende Beispiel ist eine JSON-Darstellung der Chatressource:
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", }
Hinweis
Weitere Informationen zur chatMessage-Ressource finden Sie im Artikel chatMessage-Ressourcentyp .
Das folgende Beispiel ist eine JSON-Darstellung der Aufzeichnungsressource:
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" }, ] }
Dabei gilt Folgendes:
<id>
stellt eine einzelne Aufzeichnung dar.<meetingId>
stellt einen Besprechungs- oder Anrufbezeichner dar.<meetingOrganizer/user/id>
stellt den Organisator der Besprechung dar.<createdDateTime>
gibt die Startzeit der Besprechung an.<recordingContentUrl>
value gibt die URL zum Aufzeichnungsinhalt an.Aufzeichnungen liegen im MP4-Format vor.
Die durchschnittliche Größe des Aufzeichnungsinhalts selbst beträgt etwa 350 MB auf dem Datenträger, basierend auf den Durchschnittswerten, die für Besprechungen im Bereich von 30 Minuten bis 60 Minuten angezeigt werden.
Es ist nicht garantiert, dass die Ergebnisse nach
createdDateTime
sortiert werden. Wenn jedoch mehrere Aufzeichnungen für eine einzelne Besprechung vorhanden sind, haben sie den gleichenmeetingId
Wert. Darüber hinaus werden die Einträge für die mehrfachen Aufzeichnungen für die betreffende Besprechung korrekt sequenziert.Die Ergebnisse sind garantiert erst vorhanden, nachdem die zugehörigen Besprechungsaufzeichnungen verfügbar sind. Anders ausgedrückt: Für den Aufrufer ist keine zusätzliche Abfrage der Verfügbarkeit erforderlich.
Das Paginieren durch die Ergebnisse wird gemäß den aktuellen Mustern in der Teams-Export-API unterstützt. Die Paginierung wird über das Vorhandensein einer
@oData.nextLink
-Eigenschaft in der Antwort unterstützt. Die nextLink-Eigenschaft enthält einenskipToken
Wert, wie unten angegeben. Wenn keinskipToken
vorhanden ist, bedeutet dies, dass im aktuellen Batch keine weiteren Ergebnisse zum Abrufen vorhanden sind:Anforderung Reaktion @nextLink Kommentare /getAllRecordings
Anzahl: 10 ?skipToken=ABC
Anfängliche Anforderung ohne skipToken
/getAllRecordings?skipToken=ABC
Anzahl: 10 ?skipToken=DEF
SkipToken
zurückgegeben, Anforderung zum Abrufen der nächsten Seite/getAllRecordings?skipToken=DEF
Anzahl: 7 Nein skipToken
, keine weiteren Daten verfügbar$top
-Parameter werden auch gemäß den aktuellen Mustern in der Teams-Export-API unterstützt.DeltaToken
zum Aktivieren von Änderungsnachverfolgungs- und Synchronisierungsszenarien unterstützt wird. Eine Übersicht und Beispiele für vorhandene Deltaabfragen finden Sie unter Verwenden von Deltaabfragen zum Nachverfolgen von Änderungen in Microsoft Graph-Daten.Die folgende API kann verwendet werden, um den tatsächlichen Aufzeichnungsinhalt des ausgewählten
userId
abzurufen,meetingId
derrecordingId
in der Antwort der GET-APIgetAllRecordings
abgerufen wurde. Der Inhalt der Aufzeichnung wird zurückgegeben:
GET users('{userId}')/onlineMeetings('{meetingId}')/recordings('{recordingId}')/content
Das folgende Beispiel ist eine JSON-Darstellung der Transkriptressource:
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", }, ] }
Dabei gilt Folgendes:
<id>
stellt eine einzelne Aufzeichnung dar.<meetingId>
stellt einen Besprechungs- oder Anrufbezeichner dar.<meetingOrganizer/user/id>
stellt den Organisator der Besprechung dar.<createdDateTime>
gibt die Startzeit der Besprechung an.<transcriptContentUrl>
value gibt die URL zum Transkriptinhalt an.Der Transkriptinhalt hat standardmäßig das VTT-Format. Mithilfe des Accept-Headerwerts kann
application/vnd.openxmlformats-officedocument.wordprocessingml.document
jedoch auch das DOCX-Format abgerufen werden.Die durchschnittliche Größe des Transkriptinhalts selbst im JSON/VTT-Format beträgt etwa 300 KB, basierend auf Durchschnittswerten, die für Besprechungen im Bereich von 30 Minuten bis 60 Minuten angezeigt werden.
Es ist nicht garantiert, dass die Ergebnisse nach
createdDateTime
sortiert werden. Wenn jedoch mehrere Aufzeichnungen für eine einzelne Besprechung vorhanden sind, haben sie den gleichenmeetingId
Wert. Darüber hinaus werden die Einträge für die mehrfachen Aufzeichnungen für die betreffende Besprechung korrekt sequenziert.Die Ergebnisse sind garantiert erst vorhanden, nachdem die zugehörigen Besprechungsaufzeichnungen verfügbar sind. Anders ausgedrückt: Für den Aufrufer ist keine zusätzliche Abfrage der Verfügbarkeit erforderlich.
Das Paginieren durch die Ergebnisse wird gemäß den aktuellen Mustern in der Teams-Export-API unterstützt. Die Paginierung wird über das Vorhandensein einer
@oData.nextLink
-Eigenschaft in der Antwort unterstützt. DienextLink
-Eigenschaft enthält einenskipToken
Wert, wie unten angegeben. Wenn keinskipToken
vorhanden ist, bedeutet dies, dass im aktuellen Batch keine weiteren Ergebnisse zum Abrufen vorhanden sind:Anforderung Reaktion @nextLink Kommentare /getAllTranscripts
Anzahl: 10 ?skipToken=ABC
Anfängliche Anforderung ohne skipToken
/getAllTranscripts?skipToken=ABC
Anzahl: 10 ?skipToken=DEF
SkipToken
zurückgegeben, Anforderung zum Abrufen der nächsten Seite/getAllTranscripts?skipToken=DEF
Anzahl: 7 Nein skipToken
, keine weiteren Daten verfügbar$top
-Parameter werden auch gemäß den aktuellen Mustern in der Teams-Export-API unterstützt.DeltaToken
zum Aktivieren von Änderungsnachverfolgungs- und Synchronisierungsszenarien unterstützt wird. Eine Übersicht und Beispiele für vorhandene Deltaabfragen finden Sie unter Verwenden von Deltaabfragen zum Nachverfolgen von Änderungen in Microsoft Graph-Daten.Die folgende API kann verwendet werden, um den tatsächlichen Transkriptinhalt der ausgewählten userId, meetingId und transcriptId abzurufen, die in der Antwort der GETAllTranscripts-API abgerufen wurde. Er gibt den Inhalt der Aufzeichnung zurück.
GET users('{userId}')/onlineMeetings('{meetingId}')/transcripts('{transcriptId}')/content
Weitere Informationen finden Sie unter Verwenden von Graph-APIs zum Abrufen eines Transkripts.
Exportieren von API-Filtern
Die export-API, die im Teams Graph-Dienst gehostet wird, ruft alle Benutzernachrichten aus dem Benutzerpostfach Substrate mithilfe users/{userId}/chats/getAllMessages
von ab. Die Export-API ruft sowohl gesendete als auch empfangene Nachrichten für einen Benutzer ab, was zum Export doppelter Nachrichten führt, wenn die API für alle Benutzer im Chatthread aufgerufen wird.
Die Export-API verfügt über Filterparameter, mit denen die für einen Chatthread zurückgegebenen Nachrichten optimiert werden können. Die API GET unterstützt neue Filterparameter, mit denen Nachrichten basierend auf den gesendeten Benutzer-, Bot-, Anwendungs- und Systemereignisnachrichten extrahiert werden können. Der Filterparameter unterstützt Nachrichten, die von folgendem Gesendet werden:
Benutzer (mehrere Benutzer-IDs werden in derselben Anforderung unterstützt)
Anwendungen (Bots, Connectors usw.)
Anonyme Benutzer
Verbundbenutzer (Externe Zugriffsbenutzer)
Systemereignismeldungen (Steuernachrichten)
Diese Parameter sind Teil der -Anforderung.$filter
Wenn keiner dieser Parameter in der Anforderung vorhanden ist, werden die Nachrichten aller Benutzer zurückgegeben, die in den angegebenen Benutzerchats vorhanden sind.
Folgende Filterszenarien werden unterstützt:
$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 'anonymousGuest'
$filter=from/user/userIdentityType eq 'federatedUser' (guest/external)
$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 messsageType eq 'systemEventMessage'
(<any of the previous filters>) and (lastModifiedDateTime+gt+<date>+and+lastModifiedDateTime+lt+<date>)
Die Abfrage gibt nachrichten zurück, die vom angegebenen Benutzer gesendet wurden, wenn
from/user/id eq ‘{oid}’
vorhanden ist.Die Abfrage gibt Nachrichten zurück, die von den Verbundbenutzern gesendet wurden, die Teil der Benutzerchats sind, sofern
from/user/userIdentityType eq ‘federatedUser’
vorhanden.Die Abfrage gibt Nachrichten zurück, die vom angegebenen Anwendungstyp gesendet werden, wenn
from/application/applicationIdenitytyType eq '{appType}'
vorhanden ist.Die Abfrage gibt vom System gesendete Nachrichten zurück, wenn
messageType eq 'systemEventMessage'
vorhanden ist.
Diese Parameter können mithilfe der OR-Operatoren sowie durch Kombination mit dem lastModifiedDateTime
$filter
-Parameter kombiniert werden.
Microsoft 365 Copilot Interaktionen & Microsoft 365 Chat (Vorschau)
Mit der neuen Copilot-Aktivitätsexport-API können Sie Copilot-Interaktionsdaten exportieren, einschließlich der Benutzeraufforderung an Copilot und der Copilot-Antwort an den Benutzer. Diese API erfasst die Benutzerabsicht und die Von Copilot aufgerufenen Ressourcen sowie die Antwort an den Benutzer in Microsoft 365 Copilot Apps wie Teams, Word und Outlook.
Zugreifen auf Copilot-Aktivitätsexport-APIs (Vorschau)
Beispiel 1 ist eine einfache Abfrage zum Abrufen aller Copilot-Interaktionen ohne Filter (Beta):
GET https://graph.microsoft.com/beta/copilot/users/{id}/interactionHistory/getAllEnterpriseInteractions
Beispiel 2 ist eine einfache Abfrage zum Abrufen aller Copilot-Interaktionen mit App-Klassenfiltern (Beta):
GET https://graph.microsoft.com/beta/copilot/users/{id}/interactionHistory/getAllEnterpriseInteractions?$filter=appClass eq 'IPM.SkypeTeams.Message.Copilot.Teams or appClass eq 'IPM.SkypeTeams.Message.Copilot.BizChat' (beta)
Voraussetzungen für den Zugriff auf Copilot-Aktivitätsexport-APIs (Vorschau)
Anwendungsberechtigungen werden von Apps verwendet, die ohne angemeldeten Benutzer ausgeführt werden. Anwendungsberechtigungen können nur von einem Administrator genehmigt werden. Die folgenden Berechtigungen sind erforderlich:
- AiEnterpriseInteraction.Read.All: Ermöglicht den Zugriff auf alle Copilot-Interaktionen in Microsoft 365-Apps und Microsoft 365 Chat
- Für den Zugriff auf die neue Copilot-Aktivitätsexport-API ist eine Microsoft 365 Copilot-Lizenz erforderlich.