Two-way sync
Changes in Box or Citus instantly reflect in both systems. No stale data, no manual imports.
Keep Box and Citus in sync without custom scripts. Cut weeks of integration work, eliminate silent data drift, and give your team a single, reliable source of truth.
A database holds structured records; a storage system holds the files those records depend on, such as contracts, images, exports, uploads, and documents. The two describe the same things from opposite sides: a row in Citus says a file exists and carries its name, location, and status, while Box holds the bytes. Linked only by a hand-kept path or a one-off script, the two drift the moment a file is renamed, moved, or deleted and the record still points at where it used to be.
Stacksync syncs Sequences, Distributed tables, Reference tables, Local tables in Citus with Files, Folders, Metadata, Collaborations in Box bi-directionally and in real time. File attributes, including name, path or object key, size, type, modified time, owner, and tags or custom properties, map field by field to columns on the matching row, and a change on either side shows up on the other within seconds. New files appear as rows, metadata edits travel in the direction you choose, and deletes stay consistent, with conflict rules you set in place of nightly reconciliation scripts.
Tags, custom properties, owner, or status columns edited on a row in Citus write back to the matching file's metadata in Box, and metadata changed in Box updates the row, so the two never disagree about a file.
Where a record in Citus references a file in Box, such as a contract, an image, an export, or an upload, the reference, path, and status stay consistent as files are renamed, moved, or replaced, so stored links keep resolving.
Files that arrive in a folder or bucket in Box become rows in Citus as they land, so a database-driven process can pick them up without polling the storage system's API.
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.
| Box objects | Citus objects | How this pairing syncs | |
|---|---|---|---|
| Metadata Structured key-value instances attached to files and folders via metadata templates; synced two-way with database columns for classification and search. | Sequences Key generators that matter when external writes must not collide with application inserts. | Metadata is specific to Box and Sequences to Citus — each maps to any object or custom field on the other side. | |
| Collaborations Access grants linking a user or group to a file or folder with a role such as viewer, editor, or co-owner; written to manage sharing programmatically. | Distributed tables Tables sharded across worker nodes by a distribution column; the main sync target for large datasets. | Collaborations is specific to Box and Distributed tables to Citus — each maps to any object or custom field on the other side. | |
| Users Managed and app users in the enterprise; provisioned, updated, and deprovisioned to keep Box access aligned with an HR or identity source. | Reference tables Small lookup tables replicated to every node, synced like ordinary Postgres tables. | Users is specific to Box and Reference tables to Citus — each maps to any object or custom field on the other side. | |
| Groups Named user collections used for bulk collaboration; membership synced from a directory or IdP. | Local tables Coordinator-only tables that behave exactly like standard PostgreSQL tables. | Groups is specific to Box and Local tables to Citus — each maps to any object or custom field on the other side. | |
| Tasks Review or approval assignments on a file with due dates and states; read for workflow reporting or written to start approvals. | Schemas Standard Postgres namespaces used to scope what a sync user can read and write. | Tasks is specific to Box and Schemas to Citus — each maps to any object or custom field on the other side. | |
| Events Enterprise admin event stream, an audit log of uploads, deletes, logins, and shares across the account; read-only, consumed for reporting or change feeds. | Views Curated projections over distributed data, often used as read-only sync sources. | Events is specific to Box and Views to Citus — 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.
DetectionBox notifies Stacksync of record changes through webhook events. V2 webhooks fire on triggers such as FILE.UPLOADED, FILE.TRASHED, and METADATA_INSTANCE.UPDATED.
DeliveryEach detected change is applied to Citus as a row-level write, with types converted between the two schemas.
DetectionChanges in Citus are captured at the source via change data capture — no polling loop against its API. PostgreSQL logical decoding / CDC, with caveats: changes to distributed tables occur on worker shards, so CDC setup differs from single-node Postgres.
DeliveryEach detected change is written to Box through its API, with automatic retries and rate-limit backoff.
Real-time sync, workflow automation, event queues, EDI, and monitoring, for every Box–Citus connection.
Changes in Box or Citus instantly reflect in both systems. No stale data, no manual imports.
Trigger automated workflows whenever Box or Citus data changes, update records, fire webhooks, or kick off sequences without brittle API scripts.
Handle millions of events per minute without losing a single Box or Citus record.
Track your Box ⇄ Citus sync health, view errors, and replay failed events in one click.
Transform legacy EDI complexity into simple database interactions between Box and Citus.
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 Box and Citus 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 Box and Citus 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 Box and Citus: authenticate both systems, choose the objects to sync (such as Box's Metadata and Collaborations), map fields visually, and changes propagate both ways in milliseconds — no code required.
On the Citus side: Sequences, Distributed tables, Reference tables, Local tables, plus custom fields where Citus exposes them. On the Box side: Files, Folders, Metadata, Collaborations. 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 Box and Citus: File metadata kept in step; Records that point at documents; A landing zone for incoming files. Tags, custom properties, owner, or status columns edited on a row in Citus write back to the matching file's metadata in Box, and metadata changed in Box updates the row, so the two never disagree about a file.
Box: REST API (api.box.com/2.0), plus the Events API and V2 Webhooks. Authentication: OAuth 2.0 for user-delegated access, or server-to-server auth via JWT (RSA keypair) or Client Credentials Grant (CCG) using a Box app; short-lived developer tokens for testing. Citus: PostgreSQL wire protocol; any standard Postgres driver connects to the coordinator node. Authentication: Database credentials (standard PostgreSQL authentication; managed deployments add cloud IAM options). Stacksync manages authentication, retries, and rate limits on both sides.
Citus: Because shard data lives on worker nodes, log-based CDC is more involved than on single-node Postgres and depends on the Citus version and hosting (including the Azure managed service). Box: Webhooks are capped per application and per file/folder target, must be verified with Box's signature keys, and their payloads carry the object reference rather than the full changed content. Stacksync's field mapping accounts for these differences between Box and Citus 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 423 integrations available for Box and Citus.