Two-way sync
Changes in Greenplum or Iterable instantly reflect in both systems. No stale data, no manual imports.
Keep Greenplum and Iterable in sync without custom scripts. Cut weeks of integration work, eliminate silent data drift, and give your team a single, reliable source of truth.
Greenplum is where your team models customers, product usage, and revenue into trusted tables; Iterable runs the campaigns, audiences, and messages that reach those people. The two overlap wherever the same person, account, or segment matters to both, and when the bridge between them is a nightly export or a hand-built list, marketing targets stale data while analytics never sees what the campaign returned.
Stacksync syncs Views, External tables, Rows, Databases in Greenplum with Events, Campaigns, Templates, Lists in Iterable field by field, in real time, and in both directions. You decide which system owns which fields — a computed score or segment can flow out to Iterable while sends, opens, and conversions flow back to Greenplum — and Stacksync keeps every copy consistent and resolves conflicts by rules you set.
A segment or score built in Greenplum — high-intent accounts, churn risk, a lifetime-value tier — lands as an audience or contact field in Iterable, so campaigns target the people your data actually points to instead of a static export.
New and updated contacts, leads, or audience members flow between Greenplum and Iterable, so the marketing audience reflects the people in your warehouse and corrections propagate instead of the two sides drifting apart.
Unsubscribes, bounces, and consent or opt-out flags held in either system propagate to the other, so no one is messaged after opting out and Greenplum holds the current state for auditing.
Representative objects on each side — any object or custom field can map to any target. Schemas are auto-detected; types are converted between the two systems.
| Greenplum objects | Iterable objects | How this pairing syncs | |
|---|---|---|---|
| Views Read-only projections used to shape data before syncing it out. | Catalogs Named catalogs of items (products, content) used for personalization and recommendations; items upserted and read via /api/catalogs/{catalogName}/items. | Views is specific to Greenplum and Catalogs to Iterable — each maps to any object or custom field on the other side. | |
| External tables Reference external files for bulk load paths alongside row-level syncs. | Commerce / Purchases Purchase and cart activity tracked via /api/commerce/trackPurchase and /api/commerce/updateCart, feeding revenue attribution and abandoned-cart journeys. | External tables is specific to Greenplum and Commerce / Purchases to Iterable — each maps to any object or custom field on the other side. | |
| Rows Read and written by key; distribution keys determine where rows live. | Export data Historical user and event records pulled through the Export API (/api/export/data.json, data.csv, and userEvents) across data types like emailSend, emailOpen, emailClick, emailBounce, purchase, and customEvent. | Rows is specific to Greenplum and Export data to Iterable — each maps to any object or custom field on the other side. | |
| Databases Top-level containers that scope a sync connection. | Users User profiles keyed by email or userId with custom data fields; upserted via POST /api/users/update, read via GET /api/users/{email} or getByUserId, bulk-written via /api/users/bulkUpdate (up to 1000 users per call), and deleted or GDPR-forgotten. | Databases is specific to Greenplum and Users to Iterable — each maps to any object or custom field on the other side. | |
| Schemas Namespace tables and control which objects a sync can see. | Events Custom and system events tracked via /api/events/track and /api/events/trackBulk (up to 1000 events per call); a single user's event history is read via GET /api/events/{email}. | Schemas is specific to Greenplum and Events to Iterable — each maps to any object or custom field on the other side. | |
| Tables Heap or append-optimized tables mapped directly to sync targets. | Campaigns Email, SMS, push, and in-app sends; metadata and metrics read via GET /api/campaigns and /api/campaigns/metrics, created and sent via /api/campaigns/create and /api/campaigns/trigger. | Tables is specific to Greenplum and Campaigns to Iterable — each maps to any object or custom field on the other side. |
Each direction of the sync is driven by what the source system can signal and what the destination accepts — detection, delivery, and expected latency below.
DetectionStacksync polls Greenplum for changes on an incremental schedule, reading only records changed since the previous pass. Polling with timestamp or key-based cursors.
DeliveryEach detected change is written to Iterable through its API, with automatic retries and rate-limit backoff.
DetectionIterable notifies Stacksync of record changes through webhook events. System Webhooks push email/SMS/push/in-app and custom events (send, open, click, bounce, complaint, unsubscribe) as JSON POSTs in near real time.
DeliveryEach detected change is applied to Greenplum as a row-level write, with types converted between the two schemas.
Real-time sync, workflow automation, event queues, EDI, and monitoring, for every Greenplum–Iterable connection.
Changes in Greenplum or Iterable instantly reflect in both systems. No stale data, no manual imports.
Trigger automated workflows whenever Greenplum or Iterable data changes, update records, fire webhooks, or kick off sequences without brittle API scripts.
Handle millions of events per minute without losing a single Greenplum or Iterable record.
Track your Greenplum ⇄ Iterable sync health, view errors, and replay failed events in one click.
Transform legacy EDI complexity into simple database interactions between Greenplum and Iterable.
Configure and sync within minutes, no code. Whether you sync 50k or 100M+ records, Stacksync handles the queues, infra, and plumbing. Integrations are non-invasive and need zero setup on your systems.
Authenticate Greenplum and Iterable with each platform's native method — OAuth, API keys, or service accounts — plus secure options like SSH tunneling, IP whitelisting, and VPC peering.
Pick the Greenplum and Iterable objects to sync — Stacksync auto-detects both schemas, including custom fields where the platform exposes them. Sync to existing tables, or let Stacksync create new ones with ideal data types.
Fields map automatically even when names and types differ. Stacksync handles transformation and type casting for you, zero configuration required.
Yes. Stacksync provides a managed, real-time two-way integration between Greenplum and Iterable: authenticate both systems, choose the objects to sync (such as Greenplum's Views and External tables), map fields visually, and changes propagate both ways in milliseconds — no code required.
On the Greenplum side: Views, External tables, Rows, Databases, plus custom fields where Greenplum exposes them. On the Iterable side: Events, Campaigns, Templates, Lists. Stacksync auto-detects both schemas and converts types between the two systems.
Yes. Each object mapping can be bidirectional or restricted to a single direction (both systems accept writes). Read-only mirrors, one-way pushes, and full two-way sync can be mixed in the same integration.
Common patterns for Greenplum and Iterable: Activate a modeled audience; Keep the contact and audience list current; Suppression and consent stay aligned. A segment or score built in Greenplum — high-intent accounts, churn risk, a lifetime-value tier — lands as an audience or contact field in Iterable, so campaigns target the people your data actually points to instead of a static export.
Greenplum: PostgreSQL wire protocol (libpq), plus JDBC/ODBC drivers. Authentication: Database credentials. Iterable: Iterable REST API (JSON over HTTPS): Users, Events, Campaigns, Templates, Lists, Catalogs, and Commerce endpoints, plus a bulk Export API for historical data. Authentication: API key sent in the Api-Key HTTP header (also accepted as Api_Key; the name is case-insensitive). Keys are scoped by type - Server-side, JavaScript (Web SDK), or Mobile - with optional JWT-enabled keys. US projects use api.iterable.com; EU projects use api.eu.iterable.com. Stacksync manages authentication, retries, and rate limits on both sides.
Greenplum: There is no logical-decoding-based CDC surface, so incremental syncs rely on timestamp or key-based polling. Iterable: Rate limits are per endpoint and return HTTP 429 when exceeded; since November 10, 2025, providing the API key in the query string or request body is throttled more strictly than the Api-Key header. Stacksync's field mapping accounts for these differences between Greenplum and Iterable without custom code.
As a data company, we understand the importance of keeping your data secure. Stacksync is built with security best practices to keep your data safe at every layer, and is DPF-certified for US, EU, UK and CH data transfers.
Let your users access Stacksync from your centralized user management systems. Works with Okta, Azure, Google SSO and more.
Immediately get alerted about record syncing issues over email, Slack, PagerDuty and WhatsApp. Resolve issues from a centralized dashboard with retry and revert options.
Securely connects to your systems with:
Every pair below is a real-time, two-way sync. Search all 398 integrations available for Greenplum and Iterable.