Apps im Chat auflisten
Namespace: microsoft.graph
Auflisten aller App-Installationen in einem Chat.
Hinweis: Wenn der Chat einer onlineMeeting-Instanz zugeordnet ist, werden die in der Besprechung installierten teamsApps effektiv aufgelistet.
Hinweis
Das id
einer teamsAppInstallation-Ressource hat nicht den gleichen Wert wie dieid
zugeordnete teamsApp-Ressource.
Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.
Globaler Dienst | US Government L4 | US Government L5 (DOD) | China, betrieben von 21Vianet |
---|---|---|---|
✅ | ✅ | ✅ | ✅ |
Berechtigungen
Wählen Sie für diese API die Als am wenigsten privilegierten Berechtigungen gekennzeichneten Berechtigungen aus. Verwenden Sie nur dann eine Berechtigung mit höheren Berechtigungen , wenn dies für Ihre App erforderlich ist. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.
Berechtigungstyp | Berechtigungen mit den geringsten Berechtigungen | Berechtigungen mit höheren Berechtigungen |
---|---|---|
Delegiert (Geschäfts-, Schul- oder Unikonto) | TeamsAppInstallation.ReadForChat | TeamsAppInstallation.ReadWriteSelfForChat, TeamsAppInstallation.ManageSelectedForChat, TeamsAppInstallation.ReadWriteAndConsentForChat, TeamsAppInstallation.ReadWriteAndConsentSelfForChat, TeamsAppInstallation.ReadWriteForChat |
Delegiert (persönliches Microsoft-Konto) | Nicht unterstützt | Nicht unterstützt |
Anwendung | TeamsAppInstallation.ReadForChat.All | TeamsAppInstallation.ReadWriteSelfForChat.All, Chat.Manage.Chat, TeamsAppInstallation.ManageSelectedForChat.All, TeamsAppInstallation.Read.All, TeamsAppInstallation.Read.Chat, TeamsAppInstallation.ReadWriteAndConsentForChat.All, TeamsAppInstallation.ReadWriteAndConsentSelfForChat.All, TeamsAppInstallation.ReadWriteForChat.All |
Hinweis
Für die folgenden Berechtigungen wird eine ressourcenspezifische Zustimmung verwendet:
- TeamsAppInstallation.ReadWriteAndConsentSelfForChat
- TeamsAppInstallation.ReadWriteAndConsentForChat
- TeamsAppInstallation.ReadWriteAndConsentSelfForChat.All
- TeamsAppInstallation.ReadWriteAndConsentForChat.All
HTTP-Anforderung
GET /chats/{chat-id}/installedApps
Optionale Abfrageparameter
Diese Methode unterstützt die $filter
OData-Abfrageparameter , $select
und $expand
zum Anpassen der Antwort.
Anforderungsheader
Kopfzeile | Wert |
---|---|
Authorization | Bearer {token}. Erforderlich. Erfahren Sie mehr über die Authentifizierung und Autorisierung. |
Anforderungstext
Geben Sie keinen Anforderungstext für diese Methode an.
Antwort
Wenn die Methode erfolgreich verläuft, werden der Antwortcode 200 OK
und eine Sammlung von teamsAppInstallation-Objekten im Antworttext zurückgegeben.
Beispiele
Beispiel 1: Abrufen aller im angegebenen Chat installierten Apps
Anforderung
Das folgende Beispiel zeigt eine Anfrage.
GET https://graph.microsoft.com/v1.0/chats/19%3Ad65713bc498c4a428c71ef9353e6ce20%40thread.v2/installedApps
Antwort
Das folgende Beispiel zeigt die Antwort.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#chats('19%3Ad65713bc498c4a428c71ef9353e6ce20%40thread.v2')/installedApps",
"value": [
{
"id": "MTk6ZDY1NzEzYmM0OThjNGE0MjhjNzFlZjkzNTNlNmNlMjBAdGhyZWFkLnYyIyMwMDAwMTAxNi1kZTA1LTQ5MmUtOTEwNi00ODI4ZmM4YTg2ODc="
},
{
"id": "MTk6ZDY1NzEzYmM0OThjNGE0MjhjNzFlZjkzNTNlNmNlMjBAdGhyZWFkLnYyIyMwZDgyMGVjZC1kZWYyLTQyOTctYWRhZC03ODA1NmNkZTdjNzg="
},
{
"id": "MTk6ZDY1NzEzYmM0OThjNGE0MjhjNzFlZjkzNTNlNmNlMjBAdGhyZWFkLnYyIyMxYzQzNDBkZS0yYTg1LTQwZTUtOGViMC00ZjI5NTM2ODk3OGI="
}
]
}
Beispiel 2: Abrufen der Namen und anderer Details von Apps, die im angegebenen Chat installiert sind
Wenn im folgenden Beispiel einer Instanz einer installierten App ein Bot zugeordnet ist, werden auch die Details des Bots zurückgegeben.
Anforderung
Das folgende Beispiel zeigt eine Anfrage.
GET https://graph.microsoft.com/v1.0/chats/19%3Ad65713bc498c4a428c71ef9353e6ce20%40thread.v2/installedApps?$expand=teamsAppDefinition($expand=bot)
Antwort
Das folgende Beispiel zeigt die Antwort.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#chats('19%3Ad65713bc498c4a428c71ef9353e6ce20%40thread.v2')/installedApps(teamsAppDefinition())",
"value": [
{
"id": "MTk6ZDY1NzEzYmM0OThjNGE0MjhjNzFlZjkzNTNlNmNlMjBAdGhyZWFkLnYyIyMwMDAwMTAxNi1kZTA1LTQ5MmUtOTEwNi00ODI4ZmM4YTg2ODc=",
"teamsAppDefinition": {
"id": "MDAwMDEwMTYtZGUwNS00OTJlLTkxMDYtNDgyOGZjOGE4Njg3IyMxLjAuMiMjUHVibGlzaGVk",
"teamsAppId": "00001016-de05-492e-9106-4828fc8a8687",
"azureADAppId": "7df0a125-d3be-4c96-aa54-591f83ff541c",
"displayName": "Power Automate Actions",
"version": "1.0.2",
"requiredResourceSpecificApplicationPermissions": [],
"publishingState": "published",
"shortdescription": "Be more productive with Microsoft Flow",
"description": "Automate time-consuming and repetitive tasks by integrating your favorite apps and services with Microsoft Power Automate.",
"lastModifiedDateTime": null,
"createdBy": null,
"bot": {
"id":"9a58a3ec-6b68-4818-ac11-844f1c326784"
}
}
},
{
"id": "MTk6ZDY1NzEzYmM0OThjNGE0MjhjNzFlZjkzNTNlNmNlMjBAdGhyZWFkLnYyIyMwZDgyMGVjZC1kZWYyLTQyOTctYWRhZC03ODA1NmNkZTdjNzg=",
"teamsAppDefinition": {
"id": "MGQ4MjBlY2QtZGVmMi00Mjk3LWFkYWQtNzgwNTZjZGU3Yzc4IyMxLjAuMCMjUHVibGlzaGVk",
"teamsAppId": "0d820ecd-def2-4297-adad-78056cde7c78",
"azureADAppId": "2d4d3d8e-2be3-4bef-9f87-7875a61c29de",
"displayName": "OneNote",
"version": "1.0.0",
"requiredResourceSpecificApplicationPermissions": [],
"publishingState": "published",
"shortdescription": "Capture and share ideas, to-do lists and other notes with your team.",
"description": "Capture and share ideas, to-do lists and other thoughts with your team. You can also co-author anytime.",
"lastModifiedDateTime": null,
"createdBy": null
}
},
{
"id": "MTk6ZDY1NzEzYmM0OThjNGE0MjhjNzFlZjkzNTNlNmNlMjBAdGhyZWFkLnYyIyMxYzQzNDBkZS0yYTg1LTQwZTUtOGViMC00ZjI5NTM2ODk3OGI=",
"teamsAppDefinition": {
"id": "MWM0MzQwZGUtMmE4NS00MGU1LThlYjAtNGYyOTUzNjg5NzhiIyMxLjMjI1B1Ymxpc2hlZA==",
"teamsAppId": "1c4340de-2a85-40e5-8eb0-4f295368978b",
"azureADAppId": null,
"displayName": "Power BI",
"version": "1.3",
"requiredResourceSpecificApplicationPermissions": [],
"publishingState": "published",
"shortdescription": "Easily see and chat about Power BI reports",
"description": "Pin Power BI reports to your channel to start a conversation about your data. With reports and chats in the same place, everyone stays on the same page.",
"lastModifiedDateTime": null,
"createdBy": null
}
}
]
}
Beispiel 3: Abrufen der App-Installationsressource basierend auf der Manifest-ID der zugeordneten App
Anforderung
Das folgende Beispiel zeigt eine Anfrage. In dem Beispiel lautet die Manifest-ID der Teams-App ‚cf1ba4c7-f94e-4d80-ba90-5594b641a8ee‘.
GET https://graph.microsoft.com/v1.0/chats/19%3Ad65713bc498c4a428c71ef9353e6ce20%40thread.v2/installedApps?$expand=teamsApp,teamsAppDefinition&$filter=teamsApp/externalId eq 'cf1ba4c7-f94e-4d80-ba90-5594b641a8ee'
Antwort
Das folgende Beispiel zeigt die Antwort.
Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.count": 1,
"value": [
{
"id": "NjkwM2ZhOTMtNjA1Yi00M2VmLTkyMGUtNzdjNDcyOWY4MjU4IyMwMjQwYTM2OC0yNWUwLTQ1NjktOGViZS0xMzYwMWNiNTVhMTg=",
"teamsApp": {
"id": "0240a368-25e0-4569-8ebe-13601cb55a18",
"externalId": "cf1ba4c7-f94e-4d80-ba90-5594b641a8ee",
"displayName": "YPA",
"distributionMethod": "sideloaded"
},
"teamsAppDefinition": {
"id": "MDI0MGEzNjgtMjVlMC00NTY5LThlYmUtMTM2MDFjYjU1YTE4IyM2LjAuMA==",
"teamsAppId": "0240a368-25e0-4569-8ebe-13601cb55a18",
"azureADAppId": "9fc97ea2-c417-4c76-a2db-197612067b28",
"displayName": "YPA",
"version": "6.0.0",
"requiredResourceSpecificApplicationPermissions": [
],
"publishingState": "published",
"shortdescription": "A conversational smart assistant from MSX that surfaces real-time insights.",
"description": "For MSX Users: A conversational role-based smart assistant that will enable Enterprise sellers (AE, ATS, SSP, TSP) to be more productive by surfacing real-time insights, recommendations, actions and notifications, and by automating repetitive tasks.",
"lastModifiedDateTime": null,
"createdBy": null
}
}
]
}
Beispiel 4: Abrufen des Ressourcenspezifischen Berechtigungssatzes, der für die im angegebenen Chat installierten Apps zugestimmt wurde
Im folgenden Beispiel wird die Liste aller ressourcenspezifischen Berechtigungen abgerufen, die einer App im Rahmen der Installation gewährt wurden. Ein $select
Abfrageparameter ist erforderlich, um den zustimmungswilligen Berechtigungssatz anzuzeigen.
Anforderung
Das folgende Beispiel zeigt eine Anfrage.
GET https://graph.microsoft.com/v1.0/chats/19%5bd86ec7f6b247d3b9e519b0bfef5d03%40thread.v2/installedApps?$select=consentedPermissionSet,id
Antwort
Das folgende Beispiel zeigt die Antwort.
Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/chats('19%3A5bd86ec7f6b247d3b9e519b0bfef5d03%40thread.v2')/installedApps(consentedPermissionSet,id)",
"value": [
{
"id": "MTk6NWJkODZlYzdmNmIyNDdkM2I5ZTUxOWIwYmZlZjVkMDNAdGhyZWFkLnYyIyM0ZTVhNmMzYy1jOTU5LTRiY2EtOGRiNy0wMGRiM2E0ODdjZTE=",
"consentedPermissionSet": {
"resourceSpecificPermissions": [
{
"permissionValue": "ChatMessage.Read.Chat",
"permissionType": "application"
}
]
}
},
{
"id": "MTk6NWJkODZlYzdmNmIyNDdkM2I5ZTUxOWIwYmZlZjVkMDNAdGhyZWFkLnYyIyMyYjUyNGUyOC05NWNlLTRjOWItOTc3My00YTViZDZlYzE3NzA=",
"consentedPermissionSet": {
"resourceSpecificPermissions": [
{
"permissionValue": "OnlineMeeting.ReadBasic.Chat",
"permissionType": "delegated"
},
{
"permissionValue": "OnlineMeetingIncomingAudio.Detect.Chat",
"permissionType": "delegated"
}
]
}
}
]
}