Salesforce

Salesforce

This document provides instructions for integrating Salesforce data into Panoply. The following items will be covered:

Collection

Note: Users must have permissions within Salesforce to access the data. Some Salesforce customers on Salesforce’s lower level pricing tiers may not use the Salesforce API. This is controled by Salesforce. To learn more, see the Salesforce API Access Control.

Salesforce Login Limits Salesforce limits access tokens to five devices per logged in user. This includes logins to the Salesforce application and any use of that account to connect with Panoply. This means that if you create more than four Salesforce data sources in your Panoply account, you will revoke the access token for one of those sources and any automated collection for that source will no longer run.

Note: Salesforce limits the number of API calls made in a rolling 24 hour period to 700,000. The number of API calls used by a user may vary. To prevent API call limits Panoply uses the fewest possible API calls necessary. Our approach reschedules calls for one hour later once we reach 90% of the API call limit.

If the connected user has View Setup and Configuration permissions in Salesforce, Panoply will automatically prevent consumption of all the available API calls.

To configure this data source and collect Salesforce data:

  1. On the Data Sources page, click Add Data Source.
  2. Search for Salesforce, then select the Salesforce source.
  3. On the General tab:
    • Click Login and follow the Salesforce authorization process to allow Panoply to access your data.
    • Once logged in, Panoply will display the available data. Salesforce uses the word “objects” when refering to the data. Select the data to collect. For more information on Salesforce objects, see the Data Dictionary.
    • The objects most analytics users find these objects to be the most useful:
      • Account
      • Case
      • Contact
      • Event
      • Lead
      • Opportunity
      • Task
      • User
      • Campaign
      • Campaign Member
      • Contract
      • Opportunity Contact Role
      • Price Book
      • Price Book Entry
  4. (Optional) Set the Advanced Settings. We do not recommend changing advanced settings unless you are an experienced Panoply user.
    • Destination: The Destination is the name of the tables that will be created. The default prefix for this data source is salesforce. To use a different prefix for the destination table names, enter it in this field. That prefix is combined with the name of the object to create the table name, with the syntax salesforce_<object> where <object> is a dynamic field representing the name of the imported object.
  5. Click Save Changes and then click Collect.
    • The data source appears grayed out while the collection runs.
    • You may add additional data sources while this collection runs.
    • You can monitor this collection from the Jobs page or the Data Sources page.
    • After a successful collection, navigate to the Tables page to review the data results.

Data Dictionary

Note: Salesforce limits the number of API calls made in a rolling 24 hour period to 700,000. The number of API calls used by a user may vary. To prevent API call limits Panoply uses the fewest possible API calls necessary. Our approach reschedules calls for one hour later once we reach 90% of the API call limit.

Salesforce Objects

There are 0ver 800 objects available via the Salesforce API. For full descriptions of these objects, their fields, and any notes about permissions or handling, see the Object Reference for Salesforce and Lightning Platform page in the Salesforce documentation. For detailed entity relationship diagrams for Salesforce objects, see the Salesforce Data Model.

For a list of objects that require specific permissions or require special handling, see our helpful spreadsheet.

Primary Key: The default primary key is the id provided by Salesforce. Because id is a Salesforce global field, so two users will never have the same id. For more information, see Locate the Unique ID of a Record in Salesforce.

Incremental Key

By default,Panoply fetches all of your Salesforce data on the first run for the Salesforce objects you selected. On subsequent collections, Panoply collects from the date of the last successful collection minus 1 calendar day. To disable this feature, uncheck the Enable Incremental Key checkbox.

Panoply recommends that you set your schedule to collect your data at a minimum of 29 days to avoid discrepancies which might occur if the user triggers a succeding collect more than 30 days after the last successful collect. The 30-day maximum is a limitation imposed by Salesforce, see SObject Get Update

Deleted records

The data import can include deleted records, which are indicated by a value of 1 in the isdeleted column. All other records will have a value of 0 in the isdeleted column. Because the Salesforce API only returns records with an isdeleted value of 1 out to a 15-day window, Panoply reccomments that you schedule your data to run automatically at minimum of once per week to avoid data loss due to deletions. For more information, see SObject Get Deleted.

Metadata

The following metadata columns are added to the destination table(s):

  • __latestdatecovered - Created by Salesforce. Learn more.
  • __object - This is used for the the default destination table.
  • __senttime - Formatted as a datetime, such as 2020-04-26T01:26:14.695Z.
  • __updatetime - Formatted as a datetime, such as 2020-04-26T01:26:14.695Z.

Sample SQL Queries

Finished collecting data? Here are some sample SQL queries to get you started. You can copy these queries and run them in the Workbench in the Panoply platform and also save them as views there. These queries can also be used with an External workbench or in your BI tool.

Sample queries for more source can be seen here

Salesforce - New Opportunities Summary

This query shows different details about opportunities derived from Salesforce data.

Salesforce - Account to Email View

View for getting the connection between Salesforce accountid to the relevant user email.

Getting started is easy! Get all your data in one place in minutes.
Try Free