We are designing a system where we will have a service facade, behind this facade will be functionality to update SharePoint. For example to move an item from one list to another.

What we are wondering is should we program directly against the API or should be program against SP web services?

Programming against the web services would allow us to deploy the facade on a non-SharePoint server. Are there any drawbacks?

2 Answers 2


Using API, you won't have any limitation on what you can done.

Using Web Services you will be able to do a lot of things, but mainly concerning structure and/or data query

Using Rest services, you will only be able to perform CRUD operation.

It actually depends on you requirements.

There is also a 4th way, that requires a bit of more work : use the OOB services (soap or rest) whenever it's possible, and add custom services to handle non-OOB operation. These services can simply encapsulate the call to sharepoint OM.


I see you are using SharePoint 2010 Foundation, which adds another option (in addition to @Steve B's answer), the Client Object Model.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.