Connect & Ingest
Connect built-in integrations or write custom connectors that ingest typed nodes and edges into the graph — and keep them in sync.
This section is for developers and admins getting data into Curiosity Studio — connecting built-in integrations and writing custom connectors that keep the graph fresh.
For the schema and graph concepts behind ingestion, see Learn Curiosity Studio. To deploy and operate the platform, see Deploy and manage. To extend the workspace with endpoints, AI tools, and custom front-ends, see Build enterprise AI apps.
Curiosity Studio ships with built-in integrations for the systems most teams already rely on — cloud storage, email, calendars, chat, knowledge bases, issue trackers, CRMs, and the open web. Each integration is a packaged data connector: it authenticates against the source, ingests typed nodes and edges into the workspace graph, and runs on a schedule so the graph stays in sync.
When the built-in list doesn't fit your data, you write a custom connector with the Curiosity.Library SDK. The Recipes section walks through reusable, runnable examples (CSV, JSON, REST, SQL, Kafka, S3, PDFs, …) that you can fork as a starting point.
How data flows from a source to the graph
Every integration — whether it's a built-in SaaS connector or a custom recipe you wrote — follows the same pipeline. Source records become typed nodes; relationships become edges; permissions become access-group memberships; everything is keyed for idempotent merges.
One graph, many sources
Every connector emits nodes with a stable [Key]. When two connectors emit a node with the same key, the workspace merges rather than duplicates. That is what lets your Slack-of-record meet your Jira-of-record meet your Confluence-of-record in one searchable graph.
What gets ingested
Each integration documents three things up front so you can decide quickly whether it fits:
Data synchronized
The exact node types created by the connector — files, messages, pages, tickets, contacts, events, custom records — and the edges between them.
Access control mapping
Whether the source system's ACLs (per-file sharing, channel membership, project roles) are carried into the workspace graph as access groups.
Authentication
What the user needs to provide — OAuth login, an API token, a service account, or anonymous access — and what scopes are requested.
Built-in integrations
Browse by category. Each card links to a page with the data model, ACL mapping, authentication flow, and any source-specific behavior worth knowing.
Cloud storage
Calendar
Chat & messaging
Knowledge bases
Issue tracking & code
CRM & business apps
Web & feeds
Choosing an integration vs. building a recipe
Use the built-in integration when it exists
It already handles OAuth refresh, delta sync, ACL mapping, and retries. Drop down to a recipe only when you need custom mapping, custom keys, or a source the built-in list doesn't cover.
Need help?
- Community Support — ask questions and share your projects.
- Report Issues — found a bug? Let us know.