Interface IApp
  
  Represents a base interface for an app stored either in tenant or site collection app catalog.
 
  
  
  
  
  
  
  Assembly: PnP.Core.Admin.dll
  
  Syntax
  
    public interface IApp : IDataModelWithContext
   
  
  
  
  
  Properties
  
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Azure Active Directory Id of the SharePoint Online Client Extensibility Web Application Principal.
It's not empty if your SPFx solution requests any AAD permissions.
 
  
  Declaration
  
    string AadAppId { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  The list of Azure Active Directory permissions your SPFx solution requests.
 
  
  Declaration
  
    string AadPermissions { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Returns version of the app in the app catalog.
 
  
  Declaration
  
    Version AppCatalogVersion { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Returns whether an existing instance of the app can be upgraded.
True if there's newer version available in the app catalog compared to the instance in the site.
 
  
  Declaration
  
    bool CanUpgrade { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Returns the url of CDN if your app is hosted on CDN. If it's hosted inside SharePoint, it returns "SharePoint Online".
 
  
  Declaration
  
    string CDNLocation { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Indicates whether your app contains tenant wide extensions.
 
  
  Declaration
  
    bool ContainsTenantWideExtension { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Indicates whether the current version of the app is deployed.
 
  
  Declaration
  
    bool CurrentVersionDeployed { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Indicates whether the app has been deployed to the context site.
True if particular app has been installed to the site.
 
  
  Declaration
  
    bool Deployed { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Contains an error message if the app contains any problems during deployment.
 
  
  Declaration
  
    string ErrorMessage { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Unique ID of the library list item of the app.
 
  
  Declaration
  
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Returns a version of the installed app in the site context.
 
  
  Declaration
  
    Version InstalledVersion { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Indicates whether the app is SharePoint Framework client-side solution.
 
  
  Declaration
  
    bool IsClientSideSolution { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Whether the app is enabled.
 
  
  Declaration
  
    bool IsEnabled { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Returns true, if the app's config (./config/package-solution.json) contains "skipFeatureDeployment" setting and it's set to true.
 
  
  Declaration
  
    bool IsPackageDefaultSkipFeatureDeployment { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Indicates whether the app package is valid.
 
  
  Declaration
  
    bool IsValidAppPackage { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  
  
  Declaration
  
    Guid ProductId { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  The short description of the app.
 
  
  Declaration
  
    string ShortDescription { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Returns true, if the app was globally deployed.
 
  
  Declaration
  
    bool SkipDeploymentFeature { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  The thumbnail url of the app.
 
  
  Declaration
  
    string ThumbnailUrl { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  
  
  Declaration
  
    string Title { get; set; }
   
  
  
  
  
  Property Value
  
  
  
  
  
  
  
  
   
  Methods
  
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Approves All PermissionRequests
 
  
  Declaration
  
    IPermissionGrant2[] ApprovePermissionRequests()
   
  
  Returns
  
  
  
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Approves All PermissionRequests
 
  
  Declaration
  
    Task<IPermissionGrant2[]> ApprovePermissionRequestsAsync()
   
  
  Returns
  
  
  
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Deploys / trusts an app in the app catalog.
 
  
  Declaration
  
    bool Deploy(bool skipFeatureDeployment = true)
   
  Parameters
  
    
      | 
        System.Boolean
        skipFeatureDeployment
         If set to true will skip the feature deployment for tenant scoped apps. 
       | 
    
  
  
  Returns
  
    
      | 
        System.Boolean
         true if deployment was successful. 
       | 
    
  
  
  
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Deploys / trusts an app in the app catalog.
 
  
  Declaration
  
    Task<bool> DeployAsync(bool skipFeatureDeployment = true)
   
  Parameters
  
    
      | 
        System.Boolean
        skipFeatureDeployment
         If set to true will skip the feature deployment for tenant scoped apps. 
       | 
    
  
  
  Returns
  
    
      | 
        Task<System.Boolean>
         true if deployment was successful. 
       | 
    
  
  
  
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Installs the app from the app catalog in a site.
 
  
  Declaration
  
  
  Returns
  
    
      | 
        System.Boolean
         true if installation was successful. 
       | 
    
  
  
  
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Installs the app from the app catalog in a site.
 
  
  Declaration
  
    Task<bool> InstallAsync()
   
  
  Returns
  
    
      | 
        Task<System.Boolean>
         true if installation was successful. 
       | 
    
  
  
  
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Removes the app from the app catalog.
 
  
  Declaration
  
  
  Returns
  
    
      | 
        System.Boolean
         true if remove was successful. 
       | 
    
  
  
  
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Removes the app from the app catalog.
 
  
  Declaration
  
  
  Returns
  
    
      | 
        Task<System.Boolean>
         true if remove was successful. 
       | 
    
  
  
  
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Retracts the app in the app catalog. Notice that this will not remove the app from the app catalog.
 
  
  Declaration
  
  
  Returns
  
    
      | 
        System.Boolean
         true if retract was successful. 
       | 
    
  
  
  
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Retracts the app in the app catalog. Notice that this will not remove the app from the app catalog.
 
  
  Declaration
  
    Task<bool> RetractAsync()
   
  
  Returns
  
    
      | 
        Task<System.Boolean>
         true if retract was successful. 
       | 
    
  
  
  
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Uninstalls the app from a site.
 
  
  Declaration
  
  
  Returns
  
    
      | 
        System.Boolean
         true if uninstall was successful. 
       | 
    
  
  
  
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Uninstalls the app from a site.
 
  
  Declaration
  
    Task<bool> UninstallAsync()
   
  
  Returns
  
    
      | 
        Task<System.Boolean>
         true if uninstall was successful. 
       | 
    
  
  
  
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Upgrades the app in a site.
 
  
  Declaration
  
  
  Returns
  
    
      | 
        System.Boolean
         true if upgrade was successful. 
       | 
    
  
  
  
  
  
  
  
  
  
  
  
   
  
  
     
    
  
  
    
  
  
  
  
  
  
  
  Upgrades the app in a site.
 
  
  Declaration
  
    Task<bool> UpgradeAsync()
   
  
  Returns
  
    
      | 
        Task<System.Boolean>
         true if upgrade was successful. 
       |