Alfresco is a powerful ECM system that provides different ways to be integrated with third party applications. These are some of the APIs available for remote access:
Alfresco Web Scripts: Unlike other interfaces exposed by Alfresco, Web Scripts offer a RESTful API for the content residing in the content repository. The REST (Representational State Transfer) web architecture is based on HTTP requests and responses, URIs (Uniform Resource Identifiers), and document types.
There are many web scripts already available with Alfresco development, and you can access them in http://<server>:<port>/alfresco/service/index, but if these web scripts don't meet your needs, you can develop your own ones, following these instructions: https://wiki.alfresco.com/wiki/Web_Scripts#How_Do_I_Create_a_Web_Script.3F
CMIS: Content Management Interoperability Services (CMIS) is an OASIS standard designed for the ECM industry. CMIS enables access to any content management systems that implement CMIS, such as Microsoft SharePoint, IBM FileNet, EMC Documentum, and Alfresco in a standardized and interoperable way.
There are Apache Chemistry libraries available for different programming languages, such as Java, .Net, PHP and Python. You can find more information here.
There is also an Alfresco extension for Java that allows you to manage aspects with CMIS here.
Alfresco Web Services: A WSDL based API accommodating environments with a strong orientation to or dependency on SOAP services.
There is a Java library available (alfresco-web-service-client.jar) for the client-side. You can find more information and examples here.
Please note that this API has been removed in Alfresco 5.0 and it's recommended to use CMIS instead.