Salesforce
Business software
Salesforce data, published as Salesforce publishes it. Ingest delivers this data to a data warehouse you own as 17 tables, and updates it on the schedule you choose. There is no code to write and nothing to install.
What you get
| Table | Each row is |
|---|---|
accountsaccounts | All Account rows, including soft-deleted ones (IsDeleted true). Incremental sync follows SystemModstamp, so edits and deletions are re-read; rows merge on Id. |
campaign_memberscampaign_members | Campaign members (the lead or contact linked to each campaign), including soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. |
campaignscampaigns | All Campaign rows, including soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. |
casescases | All Case rows, including soft-deleted ones. Incremental sync follows SystemModstamp, so edits, status changes and deletions are re-read; rows merge on Id. |
contactscontacts | All Contact rows, including soft-deleted ones. Compound Mailing/Other addresses repeat their separate columns. Incremental sync follows SystemModstamp; rows merge on Id. |
eventsevents | All Event rows (calendar activities), including soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. |
leadsleads | All Lead rows, including soft-deleted ones and converted leads. Incremental sync follows SystemModstamp, so edits and deletions are re-read; rows merge on Id. |
opportunitiesopportunities | All Opportunity rows, including soft-deleted ones. Incremental sync follows SystemModstamp, so edits and deletions are re-read; rows merge on Id. |
opportunity_contact_rolesopportunity_contact_roles | Opportunity contact roles (which contact plays which role on each opportunity), including soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. |
opportunity_historyopportunity_history | Opportunity stage history (one row per stage change). This is historical data; incremental sync follows SystemModstamp, which for history rows tracks CreatedDate. Rows merge on Id. |
opportunity_line_itemsopportunity_line_items | Opportunity line items (products on each opportunity), including soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. |
pricebook_entriespricebook_entries | All PricebookEntry rows (a product's price in each price book), including soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. |
pricebookspricebooks | All Pricebook2 rows (standard and custom price books), including soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. |
productsproducts | All Product2 rows (the product catalog), including soft-deleted and inactive ones. Incremental sync follows SystemModstamp; rows merge on Id. |
taskstasks | All Task rows (activities), including soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. |
user_rolesuser_roles | All UserRole rows (the role hierarchy), including soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. |
usersusers | All User rows visible to the execution user, including inactive and soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. |
How it works
- Choose Salesforce. Connect your Salesforce account once, from Ingest.
- Pick where it goes. BigQuery, Snowflake, Databricks, Redshift and 10 more, in an account you own.
- Pick a schedule. Daily is the default, and weekly and monthly are there too.
- Ingest runs it from then on. If a run fails, your dashboard shows which table and why.
Questions
- Do I need an account with Salesforce?
- Yes. You connect your own Salesforce account once, from Ingest, and the data comes from what that account can see.
- Which warehouses can Salesforce data go to?
- Amazon S3, Google Cloud Storage, Azure Blob Storage, Apache Iceberg, Ingest Managed Lakehouse, MotherDuck, Postgres, Amazon Athena, Databricks, Redshift, BigQuery, ClickHouse, MySQL / generic SQL and Snowflake, in an account you own.
- How fresh is the data?
- As fresh as your schedule: daily by default, or weekly or monthly. Schedules as often as every 15 minutes are on the Enterprise plan.
- Will running it again create duplicate rows?
- No. Each row is stored once, by its key: when a run reads a row that is already there, it replaces that copy instead of adding a second one.
- Do I need to write code?
- No. Ingest builds, runs and maintains the connector. Someone with access to your warehouse connects it once, following a short guide.
For your data team: technical reference
Connector salesforce, version 0.1.0, a REST source, status beta, authentication oauth2.
Vendor documentation: https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/intro_rest.htm
Configuration
| Key | Label | Type | Required |
|---|---|---|---|
my_domain | My Domain (the part before .my.salesforce.com) | string | yes |
Resources
| Resource | Status | Plan | Write | Primary key | Overrides |
|---|---|---|---|---|---|
accountsAll Account rows, including soft-deleted ones (IsDeleted true). Incremental sync follows SystemModstamp, so edits and deletions are re-read; rows merge on Id. | beta | watermark | merge | Id | backfill_days |
campaign_membersCampaign members (the lead or contact linked to each campaign), including soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. | beta | watermark | merge | Id | backfill_days |
campaignsAll Campaign rows, including soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. | beta | watermark | merge | Id | backfill_days |
casesAll Case rows, including soft-deleted ones. Incremental sync follows SystemModstamp, so edits, status changes and deletions are re-read; rows merge on Id. | beta | watermark | merge | Id | backfill_days |
contactsAll Contact rows, including soft-deleted ones. Compound Mailing/Other addresses repeat their separate columns. Incremental sync follows SystemModstamp; rows merge on Id. | beta | watermark | merge | Id | backfill_days |
eventsAll Event rows (calendar activities), including soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. | beta | watermark | merge | Id | backfill_days |
leadsAll Lead rows, including soft-deleted ones and converted leads. Incremental sync follows SystemModstamp, so edits and deletions are re-read; rows merge on Id. | beta | watermark | merge | Id | backfill_days |
opportunitiesAll Opportunity rows, including soft-deleted ones. Incremental sync follows SystemModstamp, so edits and deletions are re-read; rows merge on Id. | beta | watermark | merge | Id | backfill_days |
opportunity_contact_rolesOpportunity contact roles (which contact plays which role on each opportunity), including soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. | beta | watermark | merge | Id | backfill_days |
opportunity_historyOpportunity stage history (one row per stage change). This is historical data; incremental sync follows SystemModstamp, which for history rows tracks CreatedDate. Rows merge on Id. | beta | watermark | merge | Id | backfill_days |
opportunity_line_itemsOpportunity line items (products on each opportunity), including soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. | beta | watermark | merge | Id | backfill_days |
pricebook_entriesAll PricebookEntry rows (a product's price in each price book), including soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. | beta | watermark | merge | Id | backfill_days |
pricebooksAll Pricebook2 rows (standard and custom price books), including soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. | beta | watermark | merge | Id | backfill_days |
productsAll Product2 rows (the product catalog), including soft-deleted and inactive ones. Incremental sync follows SystemModstamp; rows merge on Id. | beta | watermark | merge | Id | backfill_days |
tasksAll Task rows (activities), including soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. | beta | watermark | merge | Id | backfill_days |
user_rolesAll UserRole rows (the role hierarchy), including soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. | beta | watermark | merge | Id | backfill_days |
usersAll User rows visible to the execution user, including inactive and soft-deleted ones. Incremental sync follows SystemModstamp; rows merge on Id. | beta | watermark | merge | Id | backfill_days |
Where this lands, and what else connects
Setting up the destination is its own short guide, one per warehouse or lake: Amazon S3, Google Cloud Storage, Azure Blob Storage, Apache Iceberg, Ingest Managed Lakehouse, MotherDuck, Postgres, Amazon Athena, Databricks, Redshift, BigQuery, ClickHouse, MySQL / generic SQL, Snowflake.
Other sources Ingest connects for SaaS teams: Asana, Jira, Airtable, Clockify, Facebook Ads, Frankfurter.
- How Ingest reads a REST source
- Ingest for SaaS teams
- The tables Ingest creates
- Every source Ingest connects
Get Salesforce data into your warehouse
Last updated .