There are a number of integration points on the Force.com platform. From a developer perspective, you can "invoke web services" from the platform, or "expose classes" on the platform as web service end-points. You can also interact with external HTTP end-points, react to incoming email messages, and have automated outbound messages sent when certain events occur. So, that is both is push and pull.
What types of integrations are possible?
Each application can have data, business logic, presentation, and security layers, all of which are possible targets for integration.
- Security Integration
- User Interface Integration
- Business Logic Integration
- Data Integration
What data is available?
Almost everything. All of the data is accessible using APIs.
Overview
Here's the link that has the overview of complete salesforce integrations and its different kinds, including what APIs to use.
https://developer.salesforce.com/page/Integration
Hope this helps!