←back to thread

65 points gms | 2 comments | | HN request time: 1.096s | source

Hello HN, we’re Ghalib and Nathan from Polytomic. Today we’re launching our second product, Polytomic Connect: https://www.polytomic.com/connect (documentation here: https://apidocs.polytomic.com).

Connect is an API you can use in your own products to either pull your customers’ data into your own systems, or push data from your own systems to your customers’, or both. We have first-class support for data warehouses too. And there's a self-hosted deployment option.

You can set up automatic data syncs in any direction between data warehouses, databases (including CDC streaming), cloud applications (e.g. Salesforce, Zendesk, etc), spreadsheets, cloud storage (S3 etc), and arbitrary APIs and webhooks. We take care of authentication, automatically pushing updates, type conversions, rate limits, scaling to handle large volumes, monitoring, and alerting.

You can also sync updates from custom queries powered by data models you define as well join data across disparate systems (e.g. HubSpot + Stripe + Airtable) to sync fields from them in one payload to any destination.

You can see demo videos and code examples for a small subset of use cases here: https://apidocs.polytomic.com/guides/code-examples/overview.

We’d love to take your comments and feedback! Happy to answer questions too.

Show context
password4321 ◴[] No.40218481[source]
Do you want to share more about collision detection? Last write wins? I assume it's harder when things are being synced in the background on a schedule.
replies(1): >>40218542 #
gms ◴[] No.40218542[source]
(Polytomic co-founder here)

Each sync in Polytomic is one-way so we're not forced to deal with collisions all the time.

But you can, on a per-field basis within a sync config, declare that field not to be synced if the destination system already has a value in the corresponding field.

This setting is a proxy for deciding where your source of truth is for each field if you are indeed setting up two-way syncs.

Most customers are pulling data into their data warehouse, then syncing from queries that generate other values back into other systems. This issue doesn't come up there. But customers of ours doing two-way syncs between, say, HubSpot and Airtable or such do need to decide where the source of truth is for each field.

replies(1): >>40222345 #
michaelmior ◴[] No.40222345[source]
> Each sync in Polytomic is one-way

> But customers of ours doing two-way syncs

Could you clarify where two way sync fits in to the picture?

replies(1): >>40224353 #
gms ◴[] No.40224353[source]
Each integration is supported as both a source and a destination. So you can have two one-way syncs set up between systems A and B, thus moving data in two directions.
replies(1): >>40226228 #
1. michaelmior ◴[] No.40226228[source]
> we're not forced to deal with collisions all the time.

I don't really follow how this approach avoids having to deal with collisions all the time.

replies(1): >>40255475 #
2. gms ◴[] No.40255475[source]
Sorry, my fault for being unclear.

Meaning, sometimes people set up one-way syncs only. Our syncs don't have to be two-way.