Read answers to frequently asked questions about the Fivetran Salesforce connector.
Which naming conventions does Fivetran use?link
Fivetran follows a set of standard naming conventions for schemas, tables, and columns. To learn more about our naming conventions, read the naming conventions section of our Core Concepts document.
Why is a particular table or column missing?link
There are some common reasons that you may not be able to find a Salesforce object that you’re looking for:
- Fivetran cannot access the Salesforce object because the connecting user does not have sufficient Salesforce permissions.
- An installed package needs a license to view the associated custom objects. Assign your account a license.
- The missing column represents a “formula” or “compound” Salesforce object field.
- The table name is different from what you expected. Fivetran names the tables it creates in your data warehouse based on the Salesforce “name” field for a given object. This is a field that an organization gives to the object, and it may differ from the display name or internal “label.”
Note that we do not sync any pre-aggregated objects or views because you already have access to the underlying source objects. We also do not sync archived objects because of Salesforce’s limitations.
Can I sync empty objects and fields?link
Fivetran can sync empty objects and fields for your Salesforce connector. For more information, see our Features documentation.
How do I connect to the Salesforce Sandbox?link
Learn how in our Salesforce sandbox FAQ page.
Who sets the values of SystemModStamp?link
Fivetran doesn’t set the values of SystemModStamp for the Salesforce objects. These values are set by Salesforce.
To provide more insight into our process, Fivetran adds the
fivetran_synced column into each table. This column stores the sync end times for every record in the table.
What happens when I change a field name in Salesforce?link
If you change a field label that is displayed in Salesforce reports, it won’t affect your connector.
However, if you change a field name, our system will:
- keep the old field
- add a new column, and
- backfill this new column with values from the old column, syncing updates to this new column from now on.
If you add a new column in the warehouse, any old values in that column will not get backfilled. In other words, if you hide permissions to a column and then grant permissions, Fivetran will only sync new records, not the old ones.
How can I change the precision of the DOUBLE data type?link
For DOUBLE data type values (for example,
currency_field_type column data), we use the precision and scale from the
SObject Describe API call to sync these values to the destination. You can increase the precision of the DOUBLE data type values from the Salesforce dashboard.
What happens if I add new columns or custom fields in Salesforce?link
For each account that you connect, we create a different schema in your data warehouse. The schema we create maps closely to the native Salesforce schema so that the data is in a familiar format for you to work with. If the structure of the data in the source changes (for example, you add new columns, custom fields, or change a data type), Fivetran automatically detects and pushes these changes into your data warehouse.
Why is a table not updated every sync?link
Not all tables are updated at every sync. When Fivetran finds that an object in the source is not updated for seven days in a row, we switch our strategy to checking that infrequently updated object for new data once a day. When the object is updated in the source again, we return to our usual update strategy.
Because we only check infrequently updated objects once a day, there can be a delay of up to one day when an infrequently updated object is updated in the source for the first time.
Another reason a table is not updated every sync is that it could be a re-import object.
Fivetran automatically detects objects with the
replicateable = false value as re-import objects. We re-sync these objects because we can’t capture deletes from them. These objects are included in the incremental sync but are re-imported in full at different frequencies.
The re-import frequency of the objects depends on how fast we can ingest data. The faster we can sync a table, the more frequently we will sync it.
|Object Import Duration||Import Frequency|
|3 seconds or less||Every sync|
|Between 3 seconds and 5 minutes||Twice a day|
|More than 5 minutes||Once a week|
We mark the re-imported tables as
notRecommended in the dashboard and include a message that we will re-import them in full if they are selected to be synced. We exclude the objects from incremental syncs by default because they degrade performance. However, you can select them to be synced.
Why are Formula Fields not synced?link
To ensure data integrity, you must recreate the formula fields after loading the data in your destination. To help with that, Fivetran provides the following:
FIVETRAN_FORMULAtable. For more information, see our Formula and Lookup Fields documentation.
- A pre-built, dbt Core-compatible set of data models for Salesforce for automation. Learn more in our Fivetran data models documentation. Find the model in Fivetran’s dbt hub.
To sync the formula field values directly to your destination, contact our support team. Fivetran doesn’t recommend syncing the formula fields directly because of the inherent data integrity issues.
Why Are Tables in My Salesforce Connector Being Excluded?link
Learn why in our Tables Excluded FAQ page.
Why Am I Receiving an API Usage Limit Error?link
Salesforce limits the total inbound API requests (calls) for an organization. When your Salesforce account reaches 90% of the API call limitation, the Salesforce connector gets automatically rescheduled. Multiple connectors or different applications using the same Salesforce account exhaust the API call limitation.
To resolve this error, do either of the following:
- Tie different credentials to your Salesforce organization. Use different credentials for the Fivetran connectors and your internal applications so that the API calls are not shared among the Fivetran connectors and your internal applications.
- Increase the API requests limitation. For more information about Salesforce API limitations, see API Request Limits and Allocations.