Two-way sync
Changes in Elasticsearch or Sharepoint instantly reflect in both systems. No stale data, no manual imports.
Keep Elasticsearch and Sharepoint 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 Elasticsearch says a file exists and carries its name, location, and status, while Sharepoint 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 Ingest pipelines, Index templates, Indices, Documents in Elasticsearch with Drive items (document libraries), Columns and content types, Permissions and sharing, Site pages in Sharepoint 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 Elasticsearch write back to the matching file's metadata in Sharepoint, and metadata changed in Sharepoint updates the row, so the two never disagree about a file.
Where a record in Elasticsearch references a file in Sharepoint, 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 Sharepoint become rows in Elasticsearch 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.
| Elasticsearch objects | Sharepoint objects | How this pairing syncs | |
|---|---|---|---|
| Data streams Append-only targets for time-series or event data pushed from source systems. | List items Rows in a SharePoint list via /lists/{id}/items with a fields facet of column values; full create, read, update, and delete, synced two-way with database rows. | Data streams is specific to Elasticsearch and List items to Sharepoint — each maps to any object or custom field on the other side. | |
| Ingest pipelines Server-side transforms applied to documents as a sync writes them. | Drive items (document libraries) Files and folders in a library's drive via /drives and /drive/root; upload, download, move, delete, and read per-item metadata, synced two-way with a store. | Ingest pipelines is specific to Elasticsearch and Drive items (document libraries) to Sharepoint — each maps to any object or custom field on the other side. | |
| Index templates Reusable settings and mappings applied automatically to new indices a sync creates. | Columns and content types Field definitions and content types on a site or list; read the schema and create columns so database fields map cleanly onto SharePoint list fields. | Index templates is specific to Elasticsearch and Columns and content types to Sharepoint — each maps to any object or custom field on the other side. | |
| Indices Target containers for synced records; each holds a table-like collection of JSON documents. | Permissions and sharing Role assignments and sharing links on sites, list items, and drive items; read and written to manage access, requiring Sites.Manage.All or Sites.FullControl.All scopes. | Indices is specific to Elasticsearch and Permissions and sharing to Sharepoint — each maps to any object or custom field on the other side. | |
| Documents The unit of sync; JSON records created, updated, and deleted by _id. | Site pages Modern site pages via /sites/{id}/pages; read page content, layout, and metadata for indexing and content governance. | Documents is specific to Elasticsearch and Site pages to Sharepoint — each maps to any object or custom field on the other side. | |
| Index mappings Field type definitions that determine how synced fields are indexed and queried. | Sites SharePoint site collections and subsites via /sites; read site properties and discover the document libraries (drives) and lists each site contains, addressed by hostname and site path or site ID. | Index mappings is specific to Elasticsearch and Sites to Sharepoint — 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 Elasticsearch for changes on an incremental schedule, reading only records changed since the previous pass. Polling on timestamp or sequence fields.
DeliveryEach detected change is written to Sharepoint through its API, with automatic retries and rate-limit backoff.
DetectionSharepoint notifies Stacksync of record changes through webhook events. Delta query (pull) tracks created, updated, and deleted list items (/lists/{id}/items/delta) and drive items (/drives/{id}/root/delta) since the last.
DeliveryEach detected change is written to Elasticsearch through its API, with automatic retries and rate-limit backoff.
Real-time sync, workflow automation, event queues, EDI, and monitoring, for every Elasticsearch–Sharepoint connection.
Changes in Elasticsearch or Sharepoint instantly reflect in both systems. No stale data, no manual imports.
Trigger automated workflows whenever Elasticsearch or Sharepoint data changes, update records, fire webhooks, or kick off sequences without brittle API scripts.
Handle millions of events per minute without losing a single Elasticsearch or Sharepoint record.
Track your Elasticsearch ⇄ Sharepoint sync health, view errors, and replay failed events in one click.
Transform legacy EDI complexity into simple database interactions between Elasticsearch and Sharepoint.
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 Elasticsearch and Sharepoint 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 Elasticsearch and Sharepoint 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.
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 511 integrations available for Elasticsearch and Sharepoint.