Synchronoid is in private beta. New workspaces open in small batches every few weeks. Join the waitlist →
Change feeds

Know what changed, not just that something did

Synchronoid compares each new snapshot of a source with the previous one and emits business events such as "company address changed". Downstream apps subscribe and react, with provenance attached.

Change detection

From snapshots to events

Many sources only tell you the current state. Synchronoid keeps snapshots in the raw and staged layers, computes field-level differences, and turns them into named events you define.

  • Merge with track_changes=True and changes are recorded automatically.
  • Group low-level differences into business events.
  • Every event links back to the run and values that caused it.
event: company.address_changed
{
  "id": "evt_01J9ZK3Q",
  "type": "company.address_changed",
  "asset": "companies_current",
  "key": { "org_id": "org_4412" },
  "before": { "address": "Lindenweg 3, Berlin" },
  "after": { "address": "Hauptstrasse 12, Berlin" },
  "provenance": {
    "source": "company_registry",
    "fetched_at": "2026-10-28T02:03:12Z",
    "run_id": "run_b19c"
  },
  "occurred_at": "2026-10-28T02:03:41Z"
}
Delivery

Three ways to consume the same feed

Webhooks

Signed HTTPS calls to your endpoint. Failed deliveries are retried with backoff, and slow endpoints do not block others.

Apache Kafka

Publish events to a topic in your cluster, keyed by record key, so ordering per record is preserved. Kafka integration

Pull API

Read events with a cursor when you prefer to poll at your own pace. REST API reference

Reliable delivery

At-least-once, with replay from a cursor

Every event is delivered at least once, so no change is silently missed. Each event has a stable id, which lets consumers ignore duplicates. If your consumer was down or had a bug, ask for the feed again from any cursor.

Replay-safe steps Data products

terminal
$ curl -H "Authorization: Bearer $SYN_TOKEN" \
  "https://api.synchronoid.com/v1/feeds/companies/events?cursor=cur_8841200&limit=100"
{
  "data": [ ... ],
  "next_cursor": "cur_8841300",
  "has_more": true
}
Available on Team and Enterprise. Change feeds are not part of the Explorer plan. See pricing.

Ready to stop babysitting pipelines?

Synchronoid is in private beta. Tell us about your data and we will get you a workspace.