Steps 4-6: Custom Data, Map Data, Transform Data
A cooperative app is all about creating a seamless experience between your app and the cloud services used by your customers and partners. For this blog specifically, we’re talking about enhancing this seamless cooperation between apps by mapping custom and standard data fields and objects from the endpoint’s your customers will be connecting into your app.
For example, to make your app cooperative with the exchange of “company” data you will need to map the data structures for “companies” from the data structures of each end-point you connect to. What this translates to within Salesforce is “Account” data object, which is different from HubSpot as a “Company” object and “Customer” in Quickbooks.
Let’s look at the 5 steps you’ll need to consider when mapping data between your app and other API integrations. For purpose of this example, let’s connect your app with the Salesforce API and HubSpot API to facilitate the exchange of Contact and Company data. Let’s get ready to dive deeper.
5 Steps to Data Mapping
1. Data DISCOVERY
Your app will need to Discover the data objects, e.g., Company and Contact, and their structure at the endpoint. You will need to discover standard data structures and custom data structures in order to facilitate an effective data map for your users. For a detailed review of a Discovery API process, check out our latest post.
2: DEFINE A DEFAULT MAP
A default mapping is a template that will define how standard data structures from an endpoint will map into your applications’ data model. This mapping establishes the association of standard fields within a standard object, such as Company or Contact, into the fields within your application. By creating this default mapping you reduce the work that your users need to do by mapping standard fields such as city, state, street names into your apps data structure. Primary goal here is to save your users time by pre-mapping what you already know from the endpoint reducing the effort they need to undertake when connecting to your app.
3. MAP CUSTOM DATA FROM EACH INSTANCE
It’s fairly common in most SaaS applications to find custom data objects and custom fields within standard objects. Your customers will use these capabilities frequently, therefore default mapping will only be the beginning for a majority of your customers. The challenge will be you’re going to need to support unique data maps at the “Instance” level. The instance level data maps will be specific to that authenticated account of an endpoint (so each unique user of yours that’s provisioning your app’s integration to HubSpot, for example).
Unfortunately, there is no way to anticipate the type of data coming in. Give your users the most dynamic experience and reduce time and cost by giving them full self-service control over these mappings.
4. MAKE YOUR DEFAULT A “GUIDELINE” – NOT A REQUIREMENT
We’ve had clients at Cloud Elements who use Street 2 in the Salesforce Account object for a specialized purpose (storing latitude and longitude). If you’re users are going to use these standard fields, they may wish to map this field into a different data field. It’s best to enable your users to override your default settings to create a dynamic user experience.
5. GET SELF-SERVICE DATA MAPPING TOOLS
As previously discussed, the optimal experience for your users is to have a user interface integrated with your app to facilitate data mapping from their cloud service apps into your data structure. By doing so, your customers can make their own mapping using their best judgement and respond instantly to accommodating new data fields and objects.
Next in the series, we’ll take the tips around mapping standard and custom objects to the next level of data transformations in your applications API integration. Until then, if you need help creating a killer cooperative app, view our online api integration guide to see all the steps in one convenient location.
Side Note: If you’re starting from scratch, check out our Open Source code called Element Mapper to embed in your application. With our simple UI, your customers can map their standard and custom objects, without ever leaving your application.