The official documentation is at: http://docs.alfresco.com
The most common way of integrating Alfresco and SharePoint is using the SharePoint_Protocol through the VTI module included in Alfresco since Alfresco 3.
This is a page discusses alternative APIs for integrating with SharePoint.
There are a number of different APIs that can be used to connect to SharePoint server. A brief outline of these follows.
Windows SharePoint Services
- Object model allowing access to all aspect of the SharePoint server.
- Can be accessed from the .NET framework.
Windows SharePoint Services Web Service
- Web service interface to the Windows SharePoint server.
- There are a large number of web services covering areas such as, security, site management, etc.
- There appears to be no content management functions within this API (for example check-in, check-out, content versioning).
- Services to include these missing content management features can be easily added.
- The web services are split into two groups, the core SharePoint services and those relating to management of the SharePoint Portal.
- General opinion is that the SharePoint web services are difficult to use, presumably because they have been badly designed.
Remote Procedure Call Protocol / URL Protocol
- The RPC protocol uses the HTTP POST request to send methods to Windows SharePoint services. An HTML response is returned.
- URLs or CAML can be used to call methods. Use CAML to execute batch commands.
- There are a number of FrontPage Server Extensions RPC methods.
- The styssync protocol enables an Events list or Contacts list from Microsoft Windows SharePoint Services site to be added to Microsoft Outlook 2003 or a third-party application that supports the protocol.
Client Side API
- There are a number of Active X controls providing some access to the features of SharePoint.
- These can be used in standard MS development environments (for example VB) or from within .NET.
- CAML - Collaborative Application Mark-Up Language
- PKMCDO - Microsoft Publishing and Knowledge Management Collaboration Data Objects