I have a SharePoint Online site that has custom scripts enabled, and I want to programmatically save it as a template. I do not want to use PnP Provisioning Templates, I want to access the same functionality as savetmpl.aspx but programmatically. I know that in SharePoint Server you can use the SPWeb.SaveAsTemplate method in PowerShell or C#, but this is not present in SharePoint Online. Is there a way to do this?

I also found the following url: https://mytenant-admin.sharepoint.com/_vti_bin/sites.asmx. I see ExportWeb listed there. Would this work in SharePoint Online?

I looked at this question, but I do not want to use PnP Provisioning

  • Just curious, why don't you want to use PnP Provisioning? It's safer, better supported, and more advanced than site templates ever were. But, I'm sure you have your reasons and I am interested in hearing them. – theChrisKent Jul 6 at 21:07
  • I want to back up many sites, but I don't want the regular users who use these sites to have to go through me or connect to powershell on their own in order to activate these backups, especialy when they are already familiar with templates and the solution gallery. – spDevAdmin Jul 7 at 3:08
  • Thanks for the insight! PnP Provisioning is not a good backup service so that makes sense. It's great for templates though. I don't think you'll have much luck with Site Templates though as these are not supported for publishing sites (classic) or modern sites in SP Online. – theChrisKent Jul 7 at 13:29
  • They are not supported, but you can set DenyAddAndCustomizePages to 0 using PowerShell and then saving a site as template will be enabled. – spDevAdmin Jul 7 at 13:53
  • Templates are not backups. You should be looking at a proper backup solution. And yes, you can bypass the restriction but it isn't supported for restoration. – Trevor Seward Aug 4 at 15:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.