Connecting Data Sources
Learn how to connect your databases, warehouses, and API sources to Contextflo
Last updated: 8/19/2026
Connect your data to Contextflo so your team can query it in natural language from Claude or ChatGPT.
Supported Data Sources
Databases and warehouses
Contextflo connects to the following SQL databases and cloud warehouses:
- PostgreSQL - Popular open-source database
- MySQL - Widely used relational database
- Snowflake - Cloud data warehouse
- Amazon Redshift - AWS data warehouse
- Google BigQuery - Google Cloud data warehouse
- Databricks - Lakehouse platform (Unity Catalog)
- ClickHouse - High-performance columnar database
CSV upload
No database? Upload a CSV directly and Contextflo hosts it as a queryable table. See Query a CSV with Claude for the workflow.
API connectors
Beyond databases, Contextflo connects to Amplitude so you can query product analytics the same way as your warehouse. See Connect Amplitude to Contextflo.
If you use Klaviyo, Contextflo ships a prebuilt Klaviyo data dictionary you can layer onto your warehouse tables, so your Klaviyo tables come pre-described without writing the context yourself.
General Connection Process
Step 1: Gather Connection Details
For a database or warehouse you'll typically need:
- Host/Endpoint: Server address
- Port: Database port (default varies by type)
- Database Name: Specific database to connect to
- Username: Database user
- Password: User password
Step 2: Configure Firewall
Ensure your database allows connections from Contextflo:
- Add Contextflo IPs to your allowlist
- Enable remote connections
- Configure security groups (for cloud databases)
Step 3: Test Connection
Before saving:
- Click Test Connection
- Verify the success message
- Check for any error messages
Step 4: Sync Tables
After connecting:
- Browse available tables
- Select the tables to sync
- Click Sync Selected
- Wait for completion
Connection Security
SSL/TLS
Contextflo supports encrypted connections:
- PostgreSQL: SSL mode (prefer, require, verify-ca, verify-full)
- MySQL: SSL/TLS encryption
- Cloud databases: Automatically use SSL
Credentials Storage
All credentials are:
- Encrypted at rest
- Never logged or displayed
- Stored securely, accessible only by your organization
Read-Only Access
Best practice: Create a read-only database user for Contextflo:
Loading code sample...
The per-database setup guides below include a full read-only script for each source.
Troubleshooting
Connection Timeout
Possible causes:
- Firewall blocking connection
- Incorrect host/port
- Database not accepting remote connections
Solutions:
- Check firewall rules
- Verify host and port
- Enable remote access in the database config
Authentication Failed
Possible causes:
- Wrong username/password
- User doesn't have permissions
- SSL required but not configured
Solutions:
- Double-check credentials
- Grant the necessary permissions
- Enable SSL if required
Tables Not Showing
Possible causes:
- Wrong database/schema
- User lacks SELECT permissions
- Tables are in a different schema
Solutions:
- Verify the database name
- Check user permissions
- Specify the schema in the connection settings
Per-Database Setup Guides
Each source has a step-by-step guide covering the read-only user and connection details:
- PostgreSQL — default port
5432 - MySQL — default port
3306 - Snowflake — account, warehouse, role
- Amazon Redshift — default port
5439 - Google BigQuery — service account JSON, project ID, dataset location
- Databricks — workspace URL, HTTP path, access token
- ClickHouse — HTTP port
8123/ HTTPS8443 - Amplitude — API key and secret key
Next Steps
Need Help?
Contact support if you're having trouble connecting:
- Email: [email protected]