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