The one place you create a pipeline is the New Sync wizard. It walks you through six steps: pick a source, connect to it, choose the tables, optionally transform them, pick where the data lands, and save. Everything you enter is kept as you move between steps, so Back / Next never loses work.
1. Source type
Pick a database or SaaS connector from the source-family cards. This seeds the connection form that follows, so it only ever shows one family's fields. The cards derive from the source-type registry, so a newly registered source appears here automatically.
2. Source
Enter the connection details for the source you picked. Creating the source is the CDC preflight: the backend builds a live connection and checks source-side prerequisites (Postgres wal_level, MySQL binlog_format, …). Field errors map inline; CDC-level errors surface in a banner. For Zoho CRM, you connect via an OAuth redirect that returns you back into this step.
3. Configure tables
Fabric auto-loads the source's tables, and you multi-select the ones to sync. For each, you name the destination table and set the ID columns — the key used to dedupe rows on the write path. You can also set optional partitioning and a namespace (it defaults to raw).
4. Transforms (optional)
Add a per-table Python transform script. Leave it blank to skip. The preview run uses a placeholder batch; real columns are introspected after the first snapshot, so the source detail page is where you verify transforms against live data.
5. Sink
Choose the destination kind (Iceberg / Postgres / Delta), pick the destination, and run a live test-connection preflight. Pick "use default" to skip the concrete-destination probe.
6. Save
Review and create: the destination is attached to the source and the per-table sync configs are created in bulk.
Important