Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use un permiso o permisos con privilegios superiores solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.
Los permisos Group.Read.All, Group.ReadWrite.All, Directory.Read.All y Directory.ReadWrite.All solo se admiten por compatibilidad con versiones anteriores. Se recomienda actualizar las soluciones para usar un permiso alternativo y evitar el uso de estos permisos en el futuro.
Solicitud HTTP
GET /teams/{team-id}/installedApps
Parámetros de consulta opcionales
Este método admite los $filterparámetros de consulta , $selecty $expand OData para ayudar a personalizar la respuesta.
No proporcione un cuerpo de solicitud para este método.
Respuesta
Si se ejecuta correctamente, este método devuelve un código de respuesta y una 200 OK colección de objetos teamsAppInstallation en el cuerpo de la respuesta.
GET https://graph.microsoft.com/v1.0/teams/6903fa93-605b-43ef-920e-77c4729f8258/installedApps
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Teams["{team-id}"].InstalledApps.GetAsync();
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
TeamsAppInstallationCollectionResponse result = graphClient.teams().byTeamId("{team-id}").installedApps().get();
GET https://graph.microsoft.com/v1.0/teams/6903fa93-605b-43ef-920e-77c4729f8258/installedApps?$expand=teamsAppDefinition
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Teams["{team-id}"].InstalledApps.GetAsync((requestConfiguration) =>
{
requestConfiguration.QueryParameters.Expand = new string []{ "teamsAppDefinition" };
});
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
TeamsAppInstallationCollectionResponse result = graphClient.teams().byTeamId("{team-id}").installedApps().get(requestConfiguration -> {
requestConfiguration.queryParameters.expand = new String []{"teamsAppDefinition"};
});
Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context":"https://graph.microsoft.com/v1.0/$metadata#teams('6903fa93-605b-43ef-920e-77c4729f8258')/installedApps(teamsAppDefinition())",
"@odata.count":3,
"value":[
{
"id":"NjkwM2ZhOTMtNjA1Yi00M2VmLTkyMGUtNzdjNDcyOWY4MjU4IyMwMDAwMTAxNi1kZTA1LTQ5MmUtOTEwNi00ODI4ZmM4YTg2ODc=",
"teamsAppDefinition":{
"id":"MDAwMDEwMTYtZGUwNS00OTJlLTkxMDYtNDgyOGZjOGE4Njg3IyMxLjAuMg==",
"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
}
},
{
"id":"NjkwM2ZhOTMtNjA1Yi00M2VmLTkyMGUtNzdjNDcyOWY4MjU4IyMwYWUzNWIzNi0wZmQ3LTQyMmUtODA1Yi1kNTNhZjE1NzkwOTM=",
"teamsAppDefinition":{
"id":"MGFlMzViMzYtMGZkNy00MjJlLTgwNWItZDUzYWYxNTc5MDkzIyMxLjI=",
"teamsAppId":"0ae35b36-0fd7-422e-805b-d53af1579093",
"azureADAppId":"00000003-0000-0ff1-ce00-000000000000",
"displayName":"SharePoint Pages",
"version":"1.2",
"requiredResourceSpecificApplicationPermissions":[
],
"publishingState":"published",
"shortDescription":"Add a tab for a SharePoint news article or page.",
"description":"This app allows you to tab intranet pages from any SharePoint site so that they can be viewed by your team inside Teams channels.",
"lastModifiedDateTime":null,
"createdBy":null
}
},
{
"id":"NjkwM2ZhOTMtNjA1Yi00M2VmLTkyMGUtNzdjNDcyOWY4MjU4IyMwZDgyMGVjZC1kZWYyLTQyOTctYWRhZC03ODA1NmNkZTdjNzg=",
"teamsAppDefinition":{
"id":"MGQ4MjBlY2QtZGVmMi00Mjk3LWFkYWQtNzgwNTZjZGU3Yzc4IyMxLjAuMA==",
"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
}
}
]
}
Ejemplo 3: Obtención del recurso de instalación de la aplicación en función del identificador de manifiesto de la aplicación asociada
Solicitud
En el ejemplo siguiente se muestra la solicitud. En el ejemplo, la id. de manifiesto de la aplicación de Microsoft Teams es 'cf1ba4c7-f94e-4d80-ba90-5594b641a8ee'.
GET https://graph.microsoft.com/v1.0/teams/acda442c-78d2-491b-8204-4ef5019c0193/installedApps?$expand=teamsApp,teamsAppDefinition&$filter=teamsApp/externalId eq 'cf1ba4c7-f94e-4d80-ba90-5594b641a8ee'
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Teams["{team-id}"].InstalledApps.GetAsync((requestConfiguration) =>
{
requestConfiguration.QueryParameters.Expand = new string []{ "teamsApp","teamsAppDefinition" };
requestConfiguration.QueryParameters.Filter = "teamsApp/externalId eq 'cf1ba4c7-f94e-4d80-ba90-5594b641a8ee'";
});
// THE CLI IS IN PREVIEW. NON-PRODUCTION USE ONLY
mgc teams installed-apps list --team-id {team-id} --filter "teamsApp/externalId eq 'cf1ba4c7-f94e-4d80-ba90-5594b641a8ee'" --expand "teamsApp,teamsAppDefinition"
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
TeamsAppInstallationCollectionResponse result = graphClient.teams().byTeamId("{team-id}").installedApps().get(requestConfiguration -> {
requestConfiguration.queryParameters.expand = new String []{"teamsApp", "teamsAppDefinition"};
requestConfiguration.queryParameters.filter = "teamsApp/externalId eq 'cf1ba4c7-f94e-4d80-ba90-5594b641a8ee'";
});
Este ejemplo se aplica a las aplicaciones locales o organizativas. El valor externalId está vacío para las aplicaciones con un tipo distributionMethod de store. Cuando las aplicaciones se publican en la tienda global, el identificador de la aplicación coincide con el identificador del manifiesto de la aplicación.
Respuesta
En el ejemplo siguiente se muestra la respuesta.
Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.
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
}
}
]
}
Ejemplo 4: Obtención del conjunto de permisos específicos de recursos con consentimiento para las aplicaciones instaladas en el equipo especificado
GET https://graph.microsoft.com/v1.0/teams/7eeb5a95-f602-4861-ab67-49714fa5a020/installedApps?$select=consentedPermissionSet,id
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Teams["{team-id}"].InstalledApps.GetAsync((requestConfiguration) =>
{
requestConfiguration.QueryParameters.Select = new string []{ "consentedPermissionSet","id" };
});
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
TeamsAppInstallationCollectionResponse result = graphClient.teams().byTeamId("{team-id}").installedApps().get(requestConfiguration -> {
requestConfiguration.queryParameters.select = new String []{"consentedPermissionSet", "id"};
});
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea: https://aka.ms/ContentUserFeedback.