Skip to main content

Connect a database

AgentData reads your data read-only. It profiles the schema and stores metadata in its own registry — it never copies rows into the registry.

Supported sources

CategorySources
RelationalPostgreSQL, MySQL, SQL Server, Oracle, SQLite
WarehousesSnowflake, Redshift, Azure Synapse
LakesAWS S3 (+ Glue / Athena), Azure Blob Storage
SaaS APIsHubSpot, Hunter.io, Apollo.io
On-premOutbound-only agent connector that runs inside your network

To see exactly what's available in your deployment, call GET /api/sources/types, or open Sources → + Add source and browse the On-premise, Cloud and Lakes categories:

Supported data sources

Register a source

In the app: Sources → Add. Or via the API:

curl -X POST https://agentdata.mdm.biskilled.com/api/sources \
-H "Authorization: Bearer agentdata_sk_…" \
-H "Content-Type: application/json" \
-d '{
"name": "warehouse",
"type": "snowflake",
"conn_str": "snowflake://readonly@account/db/schema?warehouse=wh"
}'

You can validate a connection before registering it with POST /api/sources/test.

Use a read-only role

Give AgentData a database user that can only SELECT. The adapters enforce read-only as well, but a least-privilege credential is good defence in depth. Credentials are encrypted at rest with Fernet.

Scan it

A scan profiles tables, classifies columns (including PII detection), and proposes entities:

curl -X POST https://agentdata.mdm.biskilled.com/api/discovery/scan/{source_id} \
-H "Authorization: Bearer agentdata_sk_…"

Pass fresh=true to rescan from scratch. Check progress with GET /api/discovery/scans.

Review the model

Registered sources show their type, family and connection status in the Sources list:

Sources list

After a scan, open Entities to approve, rename, merge, split, or add calculated columns. Only confirmed entities are queryable. See Core concepts for what each field means, then head to Querying.