TitanRDM Python SDK Documentation
The TitanRDM Python SDK enables you to programmatically integrate your data platform with TitanRDM — upload reference data, download managed datasets, and automate sync workflows across Databricks, Snowflake, BigQuery, and any pandas-compatible environment.
TitanRDM SDK provides 4 methods of integration:
- Direct API Calls - Use the
TitanRDMClientto interact with the TitanRDM API directly - Convention Sync - Use the
ConventionSyncclass for pandas-based platform-agnostic synchronisation - Spark Sync - Use
SparkSyncwith Spark/Catalogue-based platforms like Databricks and Microsoft Fabric - Platform-Specific Sync - Use platform-specific sync classes with convention-based synchronisation
Table of Contents
- Getting Started
- Uploading Data
- Downloading Data
- Convention Sync (Pandas)
- Spark Sync (Databricks)
- Platform Integrations
- Error Handling
- Example Notebooks
Architecture Overview
┌─────────────────────────────────────────────────────────┐
│ Your Data Platform │
│ (Databricks / Snowflake / BigQuery / Python scripts) │
└────────────────────────────┬────────────────────────────┘
│
┌────────▼────────┐
│ TitanRDM SDK │
│ │
│ ConventionSync │ ← Any platform
│ SparkSync │ ← Databricks/Fabric etc
│ SnowparkSync │ ← Snowflake
│ BigQuerySync │ ← BigQuery
└────────┬────────┘
│
┌────────▼────────┐
│ TitanRDM API │
└─────────────────┘
Quick Example
from titan_rdm_sdk import TitanRDMClient
from titan_rdm_sdk.spark_sync import SparkSync
# Authenticate
client = TitanRDMClient(
url="https://your-tenant.titanrdm.com",
client_id="your_client_id",
client_secret="your_client_secret",
)
# Download all tables in a domain to your Spark catalog
sync = SparkSync(client=client, spark=spark)
sync.download_sync_by_convention(
branch_id=branch.id,
target_catalog="dev",
target_schema="rdmin",
source_domain_name="Clinics",
)