In order to connect Salesforce data sources your Salesforce user needs a profile that:
1. Can connect custom applications to the Salesforce.
2. Has read access to the specific objects such as Lead or Company (SalesForce Organisation Setup > Users > Profile > Object Settings)
3. Has enabled API access (SalesForce Organisation Setup > Users > Profile > System Permissions > API Enabled)
SalesForce require certain app level in order to allow access to the API.
To use the API, your organization must be on one of the following 4 editions (the API is enabled by default): Enterprise Edition, Unlimited Edition, Developer Edition, Performance Edition
Editions with no API Access are: Contact Edition, Group Edition, Professional Edition, Spark Edition
API Notes (source: salesforce.com):
Beginning with the Winter '15 Release, API cannot be activated for Contact Manager or Group Editions, even for migration purposes. Please contact your Account Executive if you would like to upgrade your edition to Enterprise or higher.
For Professional Edition organizations, all requests for API access must be purchased and can be processed contacting your Account Executive.
If you need the API enabled for a Data Migration to a Professional Edition organization, you will need to contact your Account Executive and request that API be provisioned as courtesy. These requests should be for Data Migrations only and will be up to you and your Account Executive to determine the time frame of the API enabled.