SugarCRM LinkedIn Integration
The products mentioned in this article are no longer supported.
Most cloud services offer what is known as an API or Application Programming Interface. These API’a are methods that a developer can use to access the cloud service from another application or service. The popular social platforms such as LinkedIn, Twitter and Facebook, all offer such API's.
Recently we have seen a trend that the big cloud services are enforcing tighter control on usage of their API’s. As these services are maturing and working to refine their revenue model they are taking steps to ensure that their customers are using their user interface to access their service and not being able to bypass their revenue mechanism by accessing their content or features from another tool. This is understandable as the services are free to use but rely on advertising and related services to generate revenue. The organizations also want to keep closer control over how they present their service offerings to their users. During past months both Twitter, Facebook and LinkedIn have implemented such changes that has both enhanced and restricted certain types of access to their service from other applications. Facebook maintains a nice log of their API changes at https://developers.facebook.com/roadmap/completed-changes.
LinkedIn is a critical tool in a business to business sales environment. As SugarCRM providers, we want to be able to provide LinkedIn functionality inside of SugarCRM. In the past, we have been able to supplement SugarCRM’’s built-in LinkedIn functionality by wrapping the full LinkedIn page inside a SugarCRM IFrame and placing it in a tab on a contact record. Due to changes in the LinkedIn API recently, both SugarCRM’s standard LinkedIn functionality and our iIFrame supplement were disabled.
Several of our customers asked us to provide enhanced LinkedIn functionality for their SugarCRM system, and we set out to provide a solution. This process forced us to learn about the new API rules and determine how we could best use them to deliver the most functionality inside SugarCRM.
We decided to embed as much LinkedIn contact and company contact as we could in a new tab interface on these records. Here is an example of how a user could see a contacts LinkedIn profile and interact with it from within SugarCRM.
LinkedIn has a very well documented API described on their web site’s developer section http://developer.linkedin.com/apis. The API is dividers into methods for accessing People, Shares (Social Stream), Groups, Communications (between members and Companies. We chose to focus on the People and Companies methods in order to place as much information from LinkedIn as possible on the Contact, Leads and Companies pages in SugarCRM.
We learned that restrictions to the security model limited the depth of information about People and Companies. Our goal was to provide a mirror of a members LinkedIn profile within SugarCRM, but this proved not to be possible. LinkedIn has divided profile information into access profiles http://developer.linkedin.com/documents/profile-fields#profile that significantly limit API access to information beyond a basic set of data.
With these limitations, we were still able to provide a functional LinkedIn tool inside SugarCRM. We built a custom coded information tab on the Account, Contact and Lead pages that when accessed would search LinkedIn for the currently view Account, Contact or Lead. A user would select the correct profile record from LinkedIn, and our code would save that profile for future access. We then retrieve the full Basic Profile set of information and display it in a SugarCRM styled page. We provided functionality to Connect to and to MessageLinkedIn members from within SugarCRM.