CSOM: Retrieve APP Tiles from SharePoint Web

  1. //CSOM Assembly version - 16.1.5026.1200      
  2. //using Microsoft.SharePoint.Client;      
  3. //using System.Net      
  4. //GetWebAppTiles(credentials, weburl);      
  5.     
  6. //This method returns all the app tiles availble in SharePoint web site.    
  7. //App Tiles available in Site Content page in a SharePoint Web    
  8. private static void GetWebAppTiles(ICredentials credentials, string weburl)    
  9. {    
  10.     using (ClientContext ctx = new ClientContext(weburl))    
  11.     {    
  12.     ctx.Credentials = credentials;    
  13.     Web oweb = ctx.Web;           
  14.     //AppTiles property returns the collection App Tiles associated to the web    
  15.     AppTileCollection appTiles = oweb.AppTiles;    
  16.         ctx.Load(appTiles);    
  17.         ctx.ExecuteQuery();    
  18.         Console.WriteLine("Total Tiles available: " + appTiles.Count.ToString());    
  19.         string strAppTiles = "";    
  20.         foreach(AppTile app in appTiles)    
  21.         {    
  22.             //Properties available for APP Tile    
  23.             strAppTiles += "APP Title: " + app.Title + "\r\n";    
  24.             strAppTiles += "***********************************************\r\n";    
  25.             strAppTiles += "APP Id: " + app.AppId + "\r\n";    
  26.             strAppTiles += "APP Principal Id: " + app.AppPrincipalId + "\r\n";    
  27.             strAppTiles += "APP Source: " + app.AppSource.ToString() + "\r\n";    
  28.             strAppTiles += "APP Type: " + app.AppType.ToString() + "\r\n";    
  29.             strAppTiles += "APP Asset Id: " + app.AssetId + "\r\n";    
  30.             strAppTiles += "APP Basetemplate: " + app.BaseTemplate.ToString() + "\r\n";    
  31.             strAppTiles += "APP Childcount: " + app.ChildCount.ToString() + "\r\n";    
  32.             strAppTiles += "APP Contentmarket: " + app.ContentMarket + "\r\n";    
  33.             strAppTiles += "APP Customsettings url: " + app.CustomSettingsUrl + "\r\n";    
  34.             strAppTiles += "APP Description: " + app.Description + "\r\n";    
  35.             strAppTiles += "APP Corporate catalog site: " + app.IsCorporateCatalogSite + "\r\n";    
  36.             strAppTiles += "APP Last modified: " + app.LastModified + "\r\n";    
  37.             strAppTiles += "APP Product Id: " + app.ProductId + "\r\n";    
  38.             strAppTiles += "APP Target: " + app.Target + "\r\n";    
  39.             strAppTiles += "APP Thumbnail: " + app.Thumbnail + "\r\n";                
  40.             strAppTiles += "APP Version: " + app.Version + "\r\n";    
  41.         }    
  42.         Console.WriteLine(strAppTiles);    
  43.     }    
  44.     Console.WriteLine("Press any key to exit...");    
  45.     Console.Read();    
  46. }