TeamsAppInstallation.ReadWriteAndConsentSelfForChat
Allows a Teams app to read, install, upgrade, and uninstall itself in chats the signed-in user can access, and manage its permission grants for accessing those specific chats' data.
Permission Details
Allow the Teams app to manage itself and its permission grants in chats
Allows a Teams app to read, install, upgrade, and uninstall itself in chats the signed-in user can access, and manage its permission grants for accessing those specific chats' data.
a0e0e18b-8fb2-458f-8130-da2d7cab9c75
Properties
Properties is shown from stable Microsoft Graph v1.0 metadata.
| Property | Type | Description |
|---|---|---|
consentedPermissionSet |
teamsAppPermissionSet |
The set of resource-specific permissions consented to while installing or upgrading the teamsApp. |
id |
string |
A unique ID (not the Teams app ID). |
teamsApp |
object |
The app that is installed. |
teamsAppDefinition |
object |
The details of this version of the app. |
JSON Representation
JSON representation is shown from stable Microsoft Graph v1.0 metadata.
{
"consentedPermissionSet": "#microsoft.graph.teamsAppPermissionSet",
"id": "string"
}
Relationships
Relationships is shown from stable Microsoft Graph v1.0 metadata.
| Relationship | Type | Description |
|---|---|---|
teamsApp |
teamsApp |
The app that is installed. |
teamsAppDefinition |
teamsAppDefinition |
The details of this version of the app. |
Graph Methods
Microsoft Graph v1.0 endpoints are mapped directly from refreshed Microsoft Learn permissions tables.
| Methods |
|---|
GET
/chats/{chat-id}/installedApps
|
POST
/chats/{chat-id}/installedApps
|
POST
/chats/{chat-id}/installedApps/{app-installation-id}/upgrade
|
Microsoft Graph beta endpoints are mapped directly from refreshed Microsoft Learn permissions tables.
| Methods |
|---|
GET
/chats/{chat-id}/installedApps
|
POST
/chats/{chat-id}/installedApps
|
POST
/chats/{chat-id}/installedApps/{app-installation-id}/upgrade
|
Microsoft Graph PowerShell v1.0 commands are mapped directly from refreshed Microsoft Learn PowerShell snippets.
Microsoft Graph PowerShell beta commands are mapped directly from refreshed Microsoft Learn PowerShell snippets.
Code Examples
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new TeamsAppInstallation
{
AdditionalData = new Dictionary<string, object>
{
{
"[email protected]" , "https://graph.microsoft.com/v1.0/appCatalogs/teamsApps/12345678-9abc-def0-123456789a"
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Chats["{chat-id}"].InstalledApps.PostAsync(requestBody);
const options = {
authProvider,
};
const client = Client.init(options);
const teamsAppInstallation = {
'[email protected]':'https://graph.microsoft.com/v1.0/appCatalogs/teamsApps/12345678-9abc-def0-123456789a'
};
await client.api('/chats/19:[email protected]/installedApps')
.post(teamsAppInstallation);
Import-Module Microsoft.Graph.Teams
$params = @{
"[email protected]" = "https://graph.microsoft.com/v1.0/appCatalogs/teamsApps/12345678-9abc-def0-123456789a"
}
New-MgChatInstalledApp -ChatId $chatId -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.teams_app_installation import TeamsAppInstallation
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = TeamsAppInstallation(
additional_data = {
"teams_app@odata_bind" : "https://graph.microsoft.com/v1.0/appCatalogs/teamsApps/12345678-9abc-def0-123456789a",
}
)
result = await graph_client.chats.by_chat_id('chat-id').installed_apps.post(request_body)
App Registration
Navigate to Azure Portal
Go to App registrations in Microsoft Entra admin center
Add API Permission
Select your app → API permissions → Add a permission → Microsoft Graph
Select Permission Type
Choose Delegated permissions and search for TeamsAppInstallation.ReadWriteAndConsentSelfForChat
Grant Admin Consent
This delegated permission requires admin consent.