Onboard any system with a config file, not a sprint.
Every enterprise deal stalls on one question: “can you pull data from our system?” Siphon turns each integration into a declarative spec on a durable engine, then drops a white-labeled widget in your app.
7-DAY TRIAL · NO CARD · PRICED PER CONNECTION
resources: - key: workorders fetch: path: /workorders/query pagination: { strategy: offset } transform: { externalId: id } sync: { detectDeletions: true }
IMPORT ANY AIRBYTE MANIFEST IN A SINGLE COMMAND
A file in, a durable pipeline out.
Auth, pagination, enrichment, transform, and typed output — all YAML. Build it visually or draft it with AI.
A sync never half-finishes. If a source or your own server dies mid-run, it resumes where it left off — no lost data, no starting the backfill over.
Every request, retry, and transform — retained and redacted. Answer “why is this record missing” without a terminal.
Connectors break quietly. Siphon doesn’t let them.
Source shape, watched
Siphon fingerprints each source’s shape every run and shows the exact added / removed / retyped diff — before your data quality degrades.
Gone at the source, gone downstream
A record that vanishes on a complete fetch is tombstoned — with a guard so a capped page never mass-deletes.
Is it working, right now?
Healthy / degraded / failing / overdue at a glance across your fleet, with one-click backfill from any date.
Your customer connects their own system.
Drop a connection-scoped widget into your product with a short-lived token — it can only ever see its own connection. Set your logo and accent once; your customers never see Siphon.
import { ConnectionWidget } from "@siphon/embed/react"
<ConnectionWidget
baseUrl="https://app.yourhost.com"
token={token}
/>Built for the security questionnaire.
Every per-connection credential is envelope-encrypted at rest; plaintext never touches config.
Outbound targets are resolved and re-validated on every redirect hop; private ranges are refused.
Secrets are redacted before any request or response is persisted to the call log.
Org-scoped at the service layer, with row-level-security and a non-superuser runtime role.
Every publish, connection change, and credential rotation is logged with actor and timestamp.
Org roles plus per-workspace grants scope who can publish and manage connections.
Priced per connection, not per API call.
Deep enrichment shouldn’t cost more. Start on a 7-day trial.
- ✓ 5 active connections
- ✓ 1 workspace
- ✓ Every connector feature
- ✓ Community support
- ✓ 25 active connections
- ✓ 3 workspaces
- ✓ Bring-your-own warehouse
- ✓ Email support
- ✓ 100 active connections
- ✓ 10 workspaces
- ✓ AI Run Doctor + Spec Assist
- ✓ Priority support
- ✓ Unlimited connections & workspaces
- ✓ SSO + audit log
- ✓ SLA + dedicated support
- ✓ Custom contract
Write a declarative spec — auth, pagination, enrich, transform, validate, output — in the visual builder, by importing an Airbyte manifest, or by drafting it with AI. Then lint it and publish.
Schema-drift detection fingerprints the source shape every run and alerts you the moment a field is renamed, dropped, or retyped.
Every run is journaled per page on the durable engine, so a crash resumes from the last committed page rather than restarting.
In your customer’s own Postgres or SQL Server warehouse (typed + deduped), or pushed to a webhook — define a destination once and reuse it.
Stop losing deals to “does it connect to X?”
Author a connector once, onboard every customer on it, and turn integration backlog into a config file.