Heroku Connect provides seamless data synchronization between Heroku Postgres databases and Salesforce organizations. Without writing a single line of integration code, you can sync hundreds of millions of Salesforce records in near real time using a simple point-and-click UI. Resiliency and data consistency are assured with robust automatic error recovery and easy to use Salesforce centric logging capabilities. We’re pleased to announce that beginning July 2, 2015, Heroku Connect’s data synchronization with your Salesforce organization -- which relies on the SOAP API -- will no longer be constrained by your Salesforce API usage limits. Customers can now focus on using Heroku Connect to build apps spanning Salesforce/Heroku without worrying about the volume of API calls.
Heroku Connect also uses the Salesforce Bulk API for initial loads, reloading and polling for operations involving more than 20,000 records. For example an initial load of an object with 1M records would use:
- 1 SOAP call (free): to see how many records, and thus which API to use
- 4 Bulk calls to retrieve data in batches of 250K
A key benefit of Heroku Connect is that it makes intelligent decisions about how to interact with the Salesforce APIs allowing developers to focus on writing great apps rather than having to spend time writing complex Salesforce integrations. See the Dev Center for more information on how Heroku Connect intelligently integrates with Salesforce APIs to take full advantage of free SOAP API calls.
Other recent Heroku Connect improvements include:
- Sync Explorer: Click on any mapping to see record level synchronization status and details of any synchronization errors by record.
- Salesforce Event Log and Webhooks (Beta): Click on “Connection Settings” to create a webhook for any Salesforce + Postgres connection. Get a real time callback whenever data changes in Salesforce are synchronized to Postgres via Heroku Connect.
- Heroku External Objects: Heroku Postgres databases are one of the many data sources that can be made available inside a Salesforce organization via reference. Architects can choose which data to show, and which data to sync. See this blog post for more detail.