Connectors & Connector Breadth
Connectors are org-scoped, reusable, credentialed connections to external systems (databases, object stores, vector DBs) that ingestion / vector nodes can reference by id instead of re-declaring credentials per flow.
Managing connectors (API)
The connectors module (src/dagy_api/connectors/) stores records in the table
named by DAGY_CONNECTORS (documented default dagy-connectors-{environment}).
| Method & path | Purpose |
|---|---|
GET /connectors/ | list connectors |
GET /connectors/{connector_id} | connector detail |
POST /connectors/ | create a connector |
PUT /connectors/{connector_id} | update a connector |
DELETE /connectors/{connector_id} | delete a connector |
POST /connectors/{connector_id}/test | test connectivity |
POST /connectors/discover/s3-buckets | discover reachable S3 buckets |
Access is governed by the connectors.read / connectors.write /
connectors.delete permissions (see Auth); mutations are
audit-logged.
The nodes extra (connector breadth)
The built-in ingestion sources and vector-DB targets need third-party driver
libraries that are intentionally kept out of the core install. Install them with
the nodes optional extra:
uv sync --extra nodes # or: pip install "dagy[nodes]"
This brings in, among others: pymysql, snowflake-connector-python,
redshift_connector, google-cloud-storage + google-auth,
azure-storage-blob, pymongo, paramiko (ingestion sources), and
qdrant-client, psycopg[binary], opensearch-py (vector databases). The
canonical list lives in pyproject.toml under
[project.optional-dependencies].nodes.