Skip to content

lht: Lakehouse Tools

Bring Your Own Data Warehouse.

lht is an open-source Python library and CLI for moving Salesforce data into your warehouse and back, on your own infrastructure. It uses the Salesforce Bulk API 2.0 for every read and write.

pip install "lht[snowflake]"      # or "lht[databricks]"

What you can do

  • Sync Salesforce → Snowflake: a full load first, then incremental MERGEs on LastModifiedDate. Tables and types are created for you. See Getting started.
  • Reverse ETL, warehouse → Salesforce: upsert, insert, update or delete records from any Snowflake or Databricks SELECT. See Reverse ETL.
  • Reverse ETL from Databricks: the direction Databricks has no connector for, running on your own compute from a notebook or a Job. See Databricks.
  • Merge duplicate records in Salesforce from MasterId / LoserId pairs computed in the warehouse. See Merging records.
  • Manage Bulk API 2.0 jobs: list, inspect, delete and download results. See CLI reference.

Where to go next

I want to… Read
Install lht and run my first sync Getting started
Set up the Salesforce app and Snowflake key pair Authentication
Look up a command or flag CLI reference
Call lht from Python, Airflow or a notebook Python API
Push data into Salesforce from Databricks Databricks
Understand how incremental sync decides what to load Intelligent sync internals
Find answers to common questions FAQ

Support