SalesForce Web Services APIs - Take a look
Developers who search for a way to integrate their product with SalesForce CRM Software, has to first visit developer.force.com, there you can find plenty of technical and theoretical valuable and useful information to get you started.
If you want to dive right into developing applications for salesForce, and you need the technical knowledge to do so, check the "Technical Library" left menu, where you can find resources regarding SalesForce Web service APIs and toolkit, the Apex programming language, Visualforce MVC, database, how to distribute your app, security, etc.
Force.com Web Service API (That's how they called them, and they own the domain too!) provides the developer with direct access to the data and logic behind SalesForce.com CRM Software. Developers can use a large variety of different supported client-side languages.
You can use Force.com Web Services to manipulate records, leads and custom objects, perform searches, etc. Force.com uses REST API that is it known to work best with real-time client applications, it is just optimized to best perform under such environments. You can also call Web Services using SOAP-based API.
SaleForce recommends that developers will develop their client applications using the latest version of Force.com WSDL file, so they can really benefit with the latest features that SalesForce has to offer. You should know that SalesForce is committed to giving client application support for minimum 3 years when the API version first released. That means that any developer should update its client software, to fit the latest version of Force.com APIs, in order to make sure that its client application works as expected. This is done by SalesForce, in order to make developers update to the latest version.
Whether you decide to customize, extend or integrate with SalesForce, Force.com developer's APIs, gives you a freedom to customize SalesForce to fit any organization needs.
I Wanna Develop an Application using SalesForce APIs, Where Do I start?
There are a few steps that should be done before starting to develop your applications that will speak to SalesForce CRM.
1) First you need to create a Salesforce.com Developer Edition Account. This can be done by visiting this address: http://developer.force.com/join. Salesforce also recommends that you will use the Developer Edition to develop your applications and for testing them. You don't want to mess up with live data aren't you. By using the Developer Edition you will be testing your projects on a sample database, so your live data will be untouched.
2) The second thing that you need to do, is to generate or download the Web Service WSDL (Web Service Description Language) file. What is the WSDL file you ask? - It simply a file that lists all the web services that are available for you as a developer. You need to know which API functions are supported and which are not. There are two types of WSDL files: Enterprise & Partner. For more information, look up "Factors that affect data access" in SalesForce API developer docs online.
3) The thirds thing you need to do, is to import the WSDL file that you has been generated & downloaded, into the development platform (ex. Microsoft Visual Studio).
Developers talk to objects that relies inside the SalesForce platform. But by default, you don't have all the privileges to access all the objects. IF you want to access Campaign or Territory objects, you'll have to contact SalesForce.com to get a permission.
SalesForce Developer Docs
In SalesForce.com developer docs for the API, you can find vast amount of information regarding security, login authorization, a list of all the standard objects that the API gives you access too. You can found Objects like Account, Account Team Member, Attachment, Bookmark, Community, Contract and much more. Everything is well documented and you can find all the information you need as a developer, right inside the online documents.
VisualForce Framework
Developers can take advantage of SalesForce Visualforce framework, that will allow them to develop custom UI pages, which contains Visualforce markup and controllers. It reminds me ASP.NET a little bit. You have a tag <apex:page>, that inside it you can create more Visualforce tags like <apex:dataTable> or <apex:pageBlock> and integrate HTML elements and JavaScript to create a complex yet simple to implement user interface. The page itself is hosted on Force.com Platform. Programmers/developers can alter the page and update it on the Force.com platform. After the page was processed on Force.com Platform, a HTML page is returned, like any server side web programming language implementation (ex. PHP, ASP.NET).
Take a Look at LYRIS HQ Implementation
One of the most beautifully handcrafted implementation of SalesForce with current web analytics solution was done by LYRIS HQ. Lyris HQ for Salesforce helps you synchronize marketing and sales activities, helps you streamline communications to prospects and much more. The main advantage of using Lyris HQ for Salesforce, is that you don't need to go from Lyris HQ to salesforce and back, you can control most of the important functionality from within Lyris HQ.
What Next?
If you are a serious web analytics vendor, you just cannot allow yourself not to allow integration with the most popular CRM software in the world.
So If you are a developer who wants to integrate your web analytics software/service with SalesForce CRM, start investigating developerForce and improving your web analytics solutions, to provide far better compliance with the demand of medium-large companies, which already implemented SalesForce as their CRM software inside their organization.
But here this out; you can build any kind of real-time cloud-based website using Force.com, visit this page for more information.
This is just a tip of the ice of what is available for you, the developer. for more information visit SalesForce.com.