Get Welcome Page URL of a SharePoint Site Using REST API

Syntax

REST API Endpoint:

https://SharePointSiteURL/_api/web/rootfolder?$select=WelcomePage

REST API endpoint to use in Add-ins:
<appweburl>/_api/SP.AppContextSite(@target)/web/rootfolder?$select=WelcomePage&@target=<hostweburl>

Embed Code Snippet

The following code snippet can be added to a SharePoint page or in content editor web part as a script. This example is used to retrieve the web relative URL of the Welcome Page of the SharePoint site.

  1. <script type="text/javascript" src="/SiteAssets/Scripts/jquery.min.js"></script>            
  2. <script type="text/javascript">            
  3.     $.ajax(            
  4.     {            
  5.         url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/rootfolder?$select=welcomepage"//THE ENDPOINT              
  6.         method: "GET",            
  7.         headers:            
  8.         {            
  9.             "Accept""application/json; odata=verbose"            
  10.         },            
  11.         success: function(data)            
  12.         {            
  13.             //RESULTS HERE!!              
  14.             console.log('Welocme page URL: ' + data.d.WelcomePage)            
  15.             alert('Welcome page URL: ' + data.d.WelcomePage);            
  16.         
  17.         }            
  18.     });            
  19. </script>      

Add-in Code Snippet

The following code snippet is used in SharePoint Add-in to get the welcome page url of a SharePoint site. This returns a web relative URL of a welcome page for the site.

  1. // Load the js files and continue to the successHandler          
  2. $.getScript(scriptbase + "SP.RequestExecutor.js", execCrossDomainRequest);        
  3.       
  4. // Function to prepare and issue the request to get          
  5. // SharePoint data          
  6. function execCrossDomainRequest()        
  7. {        
  8.     // Initialize the RequestExecutor with the add-in web URL.          
  9.     var executor = new SP.RequestExecutor(appweburl);        
  10.     // Issue the call against the add-in web.          
  11.     // To get the WelcomePage property using REST we can hit the endpoint:          
  12.     // appweburl/_api/web?select=WelcomePage&@target=hostweburl          
  13.     // The response formats the data in the JSON format.          
  14.     executor.executeAsync(        
  15.     {        
  16.         url: appweburl + "/_api/SP.AppContextSite(@target)/web/rootfolder?$select=welcomepage&@target='" + hostweburl + "'",        
  17.         method: "GET",        
  18.         headers:        
  19.         {        
  20.             "Accept""application/json; odata=verbose"        
  21.         },        
  22.         success: successHandler,        
  23.         error: errorHandler        
  24.     });        
  25. }        
  26. // Function to handle the success event.          
  27. function successHandler(data)        
  28. {        
  29.     var jsonObject = JSON.parse(data.body)        
  30.     //jsonObject.d.WelcomePage returns the web relative URL of welcome page from the SharePoint site  
  31.     console.log('Welcome page URL: ' + jsonObject.d.WelcomePage)          
  32.     alert('Welcome page URL: ' + jsonObject.d.WelcomePage);    
  33. }        
  34.         
  35. function errorHandler(data, errorCode, errorMessage)        
  36. {        
  37.     console.log("Could not complete cross-domain call: " + errorMessage);        
  38. }