Список приложений в каталоге
Пространство имен: microsoft.graph
Важно!
API версии /beta
в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.
Список всех установок приложений в чате.
Если чат связан с экземпляром onlineMeeting , фактически будут перечислены команды teamsApp, установленные в собрании.
Примечание.
id
Ресурс teamsAppInstallation имеет не то же значение, что и id
связанный ресурс teamsApp.
Этот API доступен в следующих национальных облачных развертываниях.
Глобальная служба | Правительство США L4 | Правительство США L5 (DOD) | Китай управляется 21Vianet |
---|---|---|---|
✅ | ✅ | ✅ | ✅ |
Разрешения
Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.
Тип разрешения | Разрешения с наименьшими привилегиями | Более высокие привилегированные разрешения |
---|---|---|
Делегированные (рабочая или учебная учетная запись) | TeamsAppInstallation.ReadForChat | TeamsAppInstallation.ReadWriteSelfForChat, TeamsAppInstallation.ManageSelectedForChat, TeamsAppInstallation.ReadWriteAndConsentForChat, TeamsAppInstallation.ReadWriteAndConsentSelfForChat, TeamsAppInstallation.ReadWriteForChat |
Делегированные (личная учетная запись Майкрософт) | Не поддерживается. | Не поддерживается. |
Приложение | 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 |
Примечание.
Следующие разрешения используют согласие для конкретного ресурса:
- TeamsAppInstallation.ReadWriteAndConsentSelfForChat
- TeamsAppInstallation.ReadWriteAndConsentForChat
- TeamsAppInstallation.ReadWriteAndConsentSelfForChat.All
- TeamsAppInstallation.ReadWriteAndConsentForChat.All
- TeamsAppInstallation.Read.Chat
- Chat.Manage.Chat
HTTP-запрос
GET /chats/{chat-id}/installedApps
Необязательные параметры запросов
Этот метод поддерживает $filter
параметры запроса ,$select
и $expand
OData для настройки ответа.
Заголовки запросов
Заголовок | Значение |
---|---|
Авторизация | Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации. |
Текст запроса
Не указывайте текст запроса для этого метода.
Отклик
В случае успеха этот метод возвращает код отклика 200 OK
и коллекцию объектов teamsAppInstallation в тексте сообщения.
Примеры
Пример 1: Получение всех приложений, установленных в указанном чате
Запрос
Ниже показан пример запроса.
GET https://graph.microsoft.com/beta/chats/19%3Ad65713bc498c4a428c71ef9353e6ce20%40thread.v2/installedApps
Отклик
Ниже показан пример отклика.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#chats('19%3Ad65713bc498c4a428c71ef9353e6ce20%40thread.v2')/installedApps",
"value": [
{
"id": "MTk6ZDY1NzEzYmM0OThjNGE0MjhjNzFlZjkzNTNlNmNlMjBAdGhyZWFkLnYyIyMwMDAwMTAxNi1kZTA1LTQ5MmUtOTEwNi00ODI4ZmM4YTg2ODc="
},
{
"id": "MTk6ZDY1NzEzYmM0OThjNGE0MjhjNzFlZjkzNTNlNmNlMjBAdGhyZWFkLnYyIyMwZDgyMGVjZC1kZWYyLTQyOTctYWRhZC03ODA1NmNkZTdjNzg="
},
{
"id": "MTk6ZDY1NzEzYmM0OThjNGE0MjhjNzFlZjkzNTNlNmNlMjBAdGhyZWFkLnYyIyMxYzQzNDBkZS0yYTg1LTQwZTUtOGViMC00ZjI5NTM2ODk3OGI="
}
]
}
Пример 2: Получение имен и других сведений о приложениях, установленных в указанном чате
В следующем примере, если с экземпляром установленного приложения связан бот, сведения о нем также возвращаются.
Запрос
Ниже показан пример запроса.
GET https://graph.microsoft.com/beta/chats/19%3Ad65713bc498c4a428c71ef9353e6ce20%40thread.v2/installedApps?$expand=teamsAppDefinition($expand=bot)
Отклик
Ниже показан пример отклика.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$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
}
}
]
}
Пример 3: Получение ресурса установки приложения на основе идентификатора манифеста связанного приложения
Запрос
Ниже показан пример запроса. В этом примере идентификатор манифеста приложения Teams — 'cf1ba4c7-f94e-4d80-ba90-5594b641a8ee'.
GET https://graph.microsoft.com/beta/chats/19%3Ad65713bc498c4a428c71ef9353e6ce20%40thread.v2/installedApps?$expand=teamsApp,teamsAppDefinition&$filter=teamsApp/externalId eq 'cf1ba4c7-f94e-4d80-ba90-5594b641a8ee'
Отклик
Ниже показан пример отклика.
Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.
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
}
}
]
}
Пример 4. Получение набора разрешений для конкретных ресурсов, разрешенных для приложений, установленных в указанном чате
В следующем примере показано, как получить список разрешений, относящихся к ресурсу, которые были предоставлены приложению при установке. Параметр $select
запроса требуется для отображения набора разрешений с согласием.
Запрос
Ниже показан пример запроса.
GET https://graph.microsoft.com/beta/chats/19%5bd86ec7f6b247d3b9e519b0bfef5d03%40thread.v2/installedApps?$select=consentedPermissionSet,id
Отклик
Ниже показан пример отклика.
Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/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"
}
]
}
}
]
}