ESC
Type to search...

AppCatalog.Submit

Export JSON
Export CSV
Copy URL
Print
Delegated Read User Scope

Allows the app to submit application packages to the catalog and cancel submissions that are pending review on behalf of the signed-in user.

Permission data: April 6, 2026 at 4:06 AM UTC
Delegated Access App-Only Access

Permission Details

Delegated Permission User consent allowed

Submit application packages to the catalog and cancel pending submissions

Allows the app to submit application packages to the catalog and cancel submissions that are pending review on behalf of the signed-in user.

Properties

Microsoft Graph v1.0 endpoint-derived-docs

Properties is shown from stable Microsoft Graph v1.0 metadata.

Property Type Description
displayName stringNullable The name of the catalog app provided by the app developer in the Microsoft Teams zip app package.
distributionMethod teamsAppDistributionMethod The method of distribution for the app. Read-only.
externalId stringNullable The ID of the catalog provided by the app developer in the Microsoft Teams zip app package.
id string The app ID generated for the catalog is different from the developer-provided ID found within the Microsoft Teams zip app package. The externalId value is empty for apps with a distributionMethod type of store. When apps are published to the global store, the id of the app matches the id in the app manifest.
appDefinitions teamsAppDefinition collection The details for each version of the app.

JSON Representation

Microsoft Graph v1.0 endpoint-derived-docs

JSON representation is shown from stable Microsoft Graph v1.0 metadata.

JSON representation
{
  "externalId": "string",
  "displayName": "string",
  "distributionMethod": "string",
  "id": "string"
}

Relationships

Microsoft Graph v1.0 endpoint-derived-docs

Relationships is shown from stable Microsoft Graph v1.0 metadata.

Relationship Type Description
appDefinitions teamsAppDefinition collection The details for each version of the app.

Graph Methods

Delegated access App-only access
Exact Microsoft Learn match

Microsoft Graph v1.0 endpoints are mapped directly from refreshed Microsoft Learn permissions tables.

Methods
GET /appCatalogs/teamsApps
GET /appCatalogs/teamsApps/{app-id}/appDefinitions/{app-definition-id}/bot
POST /appCatalogs/teamsApps
POST /appCatalogs/teamsApps?requiresReview={Boolean}
POST /appCatalogs/teamsApps/{id}/appDefinitions
DELETE /appCatalogs/teamsApps/{appId}/appDefinitions/{appDefinitionId}
DELETE /appCatalogs/teamsApps/{id}
Exact Microsoft Learn match

Microsoft Graph beta endpoints are mapped directly from refreshed Microsoft Learn permissions tables.

Methods
GET /appCatalogs/teamsApps
GET /appCatalogs/teamsApps/{app-id}/appDefinitions/{app-definition-id}/bot
GET /appCatalogs/teamsApps/{teams-app-id}/appDefinitions/{app-definition-id}/colorIcon
GET /appCatalogs/teamsApps/{teams-app-id}/appDefinitions/{app-definition-id}/colorIcon/hostedContent/
GET /appCatalogs/teamsApps/{teams-app-id}/appDefinitions/{app-definition-id}/colorIcon/hostedContent/$value
GET /appCatalogs/teamsApps/{teams-app-id}/appDefinitions/{app-definition-id}/outlineIcon
GET /appCatalogs/teamsApps/{teams-app-id}/appDefinitions/{app-definition-id}/outlineIcon/hostedContent/
GET /appCatalogs/teamsApps/{teams-app-id}/appDefinitions/{app-definition-id}/outlineIcon/hostedContent/$value
POST /appCatalogs/teamsApps
POST /appCatalogs/teamsApps?requiresReview={Boolean}
POST /appCatalogs/teamsApps/{id}/appDefinitions
DELETE /appCatalogs/teamsApps/{appId}/appDefinitions/{appDefinitionId}
DELETE /appCatalogs/teamsApps/{id}
Exact Microsoft Learn PowerShell match

Microsoft Graph PowerShell v1.0 commands are mapped directly from refreshed Microsoft Learn PowerShell snippets.

Commands
Get-MgAppCatalogTeamApp /appCatalogs/teamsApps
List teamsApp
Get-MgAppCatalogTeamAppDefinitionBot /appCatalogs/teamsApps/{app-id}/appDefinitions/{app-definition-id}/bot
Get teamworkBot
New-MgAppCatalogTeamApp /appCatalogs/teamsApps
Publish teamsApp
New-MgAppCatalogTeamAppDefinition /appCatalogs/teamsApps/{id}/appDefinitions
Update teamsApp
Remove-MgAppCatalogTeamApp /appCatalogs/teamsApps/{id}
Delete teamsApp
Exact Microsoft Learn PowerShell match

Microsoft Graph PowerShell beta commands are mapped directly from refreshed Microsoft Learn PowerShell snippets.

Commands
Get-MgBetaAppCatalogTeamApp /appCatalogs/teamsApps
List teamsApp
Get-MgBetaAppCatalogTeamAppDefinitionBot /appCatalogs/teamsApps/{app-id}/appDefinitions/{app-definition-id}/bot
Get teamworkBot
Get-MgBetaAppCatalogTeamAppDefinitionColorIcon /appCatalogs/teamsApps/{teams-app-id}/appDefinitions/{app-definition-id}/colorIcon
Get teamsAppIcon
Get-MgBetaAppCatalogTeamAppDefinitionColorIconHostedContent /appCatalogs/teamsApps/{teams-app-id}/appDefinitions/{app-definition-id}/colorIcon/hostedContent/
Get teamworkHostedContent
Get-MgBetaAppCatalogTeamAppDefinitionOutlineIcon /appCatalogs/teamsApps/{teams-app-id}/appDefinitions/{app-definition-id}/colorIcon
Get teamsAppIcon
New-MgBetaAppCatalogTeamApp /appCatalogs/teamsApps
Publish teamsApp
New-MgBetaAppCatalogTeamAppDefinition /appCatalogs/teamsApps/{id}/appDefinitions
Update teamsApp
Remove-MgBetaAppCatalogTeamApp /appCatalogs/teamsApps/{id}
Delete teamsApp

Code Examples

C# / .NET SDK
Delete teamsApp
// 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
await graphClient.AppCatalogs.TeamsApps["{teamsApp-id}"].DeleteAsync();
JavaScript
Delete teamsApp
const options = {
	authProvider,
};

const client = Client.init(options);

await client.api('/appCatalogs/teamsApps/06805b9e-77e3-4b93-ac81-525eb87513b8')
	.delete();
PowerShell
Delete teamsApp
Import-Module Microsoft.Graph.Teams

Remove-MgAppCatalogTeamApp -TeamsAppId $teamsAppId
Python
Delete teamsApp
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python

await graph_client.app_catalogs.teams_apps.by_teams_app_id('teamsApp-id').delete()

App Registration

1

Navigate to Azure Portal

Go to App registrations in Microsoft Entra admin center

2

Add API Permission

Select your app → API permissions → Add a permission → Microsoft Graph

3

Select Permission Type

Choose Delegated permissions and search for AppCatalog.Submit

4

Grant Admin Consent

Users can consent to this permission during sign-in.