SOLVED

Maximum rate of provisioing Sharepoint sites

%3CLINGO-SUB%20id%3D%22lingo-sub-1241537%22%20slang%3D%22en-US%22%3EMaximum%20rate%20of%20provisioing%20Sharepoint%20sites%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1241537%22%20slang%3D%22en-US%22%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EWe%20have%20a%20scenario%20where%20a%20Azure%20based%20webjob%20is%20using%20Grpah%20API%20to%20create%20large%20number%20of%20Sharepoint%20online%20sites%20.%20What%20is%20the%20limit%20on%20the%20rate%20of%20provisioning%20Sharepoint%20online%20sites%20%3F%20Where%20is%20such%20imformation%20published%3F%20How%20can%20such%20limits%20be%20relaxed%20for%20a%20deployment%20phase%20of%20the%20project%20that%20requires%20such%20large%20number%20of%20sharepoint%20online%20sites%20to%20be%20created%20%3F%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1241607%22%20slang%3D%22en-US%22%3ERe%3A%20Maximum%20rate%20of%20provisioing%20Sharepoint%20sites%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1241607%22%20slang%3D%22en-US%22%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F115020%22%20target%3D%22_blank%22%3E%40Lalit%20Mohan%3C%2FA%3E%26nbsp%3B%20there%20are%20no%20specific%20numbers%20on%20this%20as%20it%20depends%20on%20many%20things%2C%20like%20if%20you%20are%20provisioning%20a%20complex%20site%20or%20not.%3C%2FP%3E%3CP%3EIf%20you%20are%20using%20PnP%20provisioning%2C%20then%20you%20are%20already%20covered%20by%20the%20build-in%20exponential%20back-off%20approach%20(recommended%20by%20Microsoft)%20to%20wait%20if%20you%20reach%20the%20throttling%20limits%2C%20but%20if%20not%2C%20you%20may%20need%20to%20implement%20that%20approach%20yourself.%3C%2FP%3E%3CP%3EIn%20short%2C%20there%20is%20no%20way%20to%20fully%20bypass%20the%20API%20limits%20as%20they%20are%20there%20to%20ensure%20performance%20is%20not%20compromised.%20But%20there%20are%20a%20few%20things%20that%20can%20be%20done%2C%20like%20using%20different%20user%20accounts%20as%20throttling%20will%20first%20be%20applied%20at%20the%20user%20account%20level.%3C%2FP%3E%3CP%3EPlanning%20will%20be%20key%20%3A)%3C%2Fimg%3E%20And%20if%20possible%2C%20start%20earlier%2C%20just%20in%20case%20%3A)%3C%2Fimg%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1241639%22%20slang%3D%22en-US%22%3ERe%3A%20Maximum%20rate%20of%20provisioing%20Sharepoint%20sites%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1241639%22%20slang%3D%22en-US%22%3Ethanks%20Jeol%2C%20what%20are%20the%20API%20limit%20numbers%20%3F%20Also%20can%20point%20to%20more%20detailed%20documentation%20on%20this.%20thanks%20in%20advance.%20Regards%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1241662%22%20slang%3D%22en-US%22%3ERe%3A%20Maximum%20rate%20of%20provisioing%20Sharepoint%20sites%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1241662%22%20slang%3D%22en-US%22%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F115020%22%20target%3D%22_blank%22%3E%40Lalit%20Mohan%3C%2FA%3E%26nbsp%3BI%20believe%20the%20API%20limits%20are%20not%20available%20publicly.%3C%2FP%3E%3CP%3ERegarding%20PnP%20provisioning%20(I%20think%20this%20was%20the%20second%20part%20of%20you%20reply%2C%20apologies%20if%20not)%2C%20you%20can%20use%20this%20as%20a%20starting%20point%3A%3C%2FP%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fsharepoint%2Fdev%2Fsolution-guidance%2Fintroducing-the-pnp-provisioning-engine%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3Ehttps%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fsharepoint%2Fdev%2Fsolution-guidance%2Fintroducing-the-pnp-provisioning-engine%3C%2FA%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EI%20have%20worked%20in%20some%20projects%20with%20similar%20challenges%20and%20there%20is%20generally%20some%20work%20that%20can%20be%20done%20in%20advance%20to%20minimize%20the%20load%20on%20the%20APIs%20when%20the%20bulk%20of%20the%20work%20needs%20to%20take%20place.%3C%2FP%3E%3CP%3EFor%20example%2C%20create%20blank%20sites%20in%20advance%2C%20provision%20blank%20lists%2Flibraries%2C%20provision%20some%20custom%20fields%2Fcontent%20types%2C%20etc...%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1244487%22%20slang%3D%22en-US%22%3ERe%3A%20Maximum%20rate%20of%20provisioing%20Sharepoint%20sites%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1244487%22%20slang%3D%22en-US%22%3Ethanks%20that%20is%20helpful%20and%20much%20appreciated%2C%20share%20any%20example%20code%20if%20it%20is%20shareable%20...%3C%2FLINGO-BODY%3E
Microsoft

 

We have a scenario where a Azure based webjob is using Grpah API to create large number of Sharepoint online sites . What is the limit on the rate of provisioning Sharepoint online sites ? Where is such imformation published? How can such limits be relaxed for a deployment phase of the project that requires such large number of sharepoint online sites to be created ?

5 Replies

@Lalit Mohan  there are no specific numbers on this as it depends on many things, like if you are provisioning a complex site or not.

If you are using PnP provisioning, then you are already covered by the build-in exponential back-off approach (recommended by Microsoft) to wait if you reach the throttling limits, but if not, you may need to implement that approach yourself.

In short, there is no way to fully bypass the API limits as they are there to ensure performance is not compromised. But there are a few things that can be done, like using different user accounts as throttling will first be applied at the user account level.

Planning will be key :) And if possible, start earlier, just in case :)

 

 

thanks Jeol, what are the API limit numbers ? Also can point to more detailed documentation on this. thanks in advance. Regards
Best Response confirmed by Lalit Mohan (Microsoft)
Solution

@Lalit Mohan I believe the API limits are not available publicly.

Regarding PnP provisioning (I think this was the second part of you reply, apologies if not), you can use this as a starting point:

https://docs.microsoft.com/en-us/sharepoint/dev/solution-guidance/introducing-the-pnp-provisioning-e...

 

I have worked in some projects with similar challenges and there is generally some work that can be done in advance to minimize the load on the APIs when the bulk of the work needs to take place.

For example, create blank sites in advance, provision blank lists/libraries, provision some custom fields/content types, etc...

thanks that is helpful and much appreciated, share any example code if it is shareable ...

@Lalit Mohan I don't have anything particularly useful worth sharing. All the main features that I took advantage from are available from PnP provisioning and that project is well documented to help you get started.