Alfresco provides a REST API that exposes different services from the Repository.
Details on the API are provided in Official Alfresco Documentation:
In addition to the existent Alfresco Maven SDK (4.x), oriented to extend the product features by creating AMP or JAR modules, a new Alfresco Java SDK (5,x) has been introduced in Alfresco 7 to provide integrations with the repository Out Of Process. When using this new SDK, both REST API and ActiveMQ sources can be used to adapt the use of the platform to a given use case.
Alfresco REST API can be consumed from many different types of clients. However, Alfresco Java SDK provides a reference implementation for a Java native client for the REST API.
Details on the use of this native client is available in Alfresco Official Documentation:
Discover how to use this new SDK with the REST API in the following video.