Skip to content

Data Connectors

Querri supports connecting to various data sources through its connector system. This guide covers setting up and using connectors.

  • MySQL - Connect to MySQL and MariaDB databases
  • PostgreSQL - Connect to PostgreSQL databases
  • SQL Server (MSSQL) - Connect to Microsoft SQL Server
  • SQLite - Connect to SQLite database files
  • ODBC - Generic ODBC connector for other databases
  • CSV - Comma-separated values
  • Excel - .xlsx and .xls files
  • JSON - JSON data files
  • Parquet - Columnar data format
  • REST API - Generic HTTP/REST API connector
  • OAuth Services - OAuth 2.0 enabled services
  • HubSpot - CRM and marketing platform
  1. Navigate to Connectors

    • Go to Settings → Connectors
    • Click “Add Connector”
  2. Select MySQL

    • Choose “MySQL” from the connector types
  3. Configure Connection

Host: localhost (or your server IP)
Port: 3306 (default MySQL port)
Database: your_database_name
Username: your_username
Password: your_password
  1. Test Connection

    • Click “Test Connection” to verify
    • Save the connector if successful
  2. Use in Projects

    • Create a new step in your project
    • Select “Database Query”
    • Choose your MySQL connector
    • Write your SQL query

Similar to MySQL with these defaults:

Host: localhost
Port: 5432
Database: your_database_name
Username: postgres
Password: your_password

Additional Options:

  • SSL Mode: require, prefer, disable
  • Schema: public (default)
Host: localhost
Port: 1433
Database: your_database_name
Username: sa
Password: your_password

Options:

  • Authentication: SQL Server or Windows
  • Encrypt: yes/no
  • Trust Server Certificate: yes/no

For databases not directly supported:

DSN: your_odbc_dsn_name
Username: your_username
Password: your_password

Or use a connection string:

Connection String:
DRIVER={MySQL ODBC 8.0 Driver};
SERVER=localhost;
DATABASE=mydb;
USER=root;
PASSWORD=secret;
  1. Add Step in your project
  2. Select “Database Query”
  3. Choose your connector
  4. Write your query or use visual query builder
SELECT
customer_id,
customer_name,
SUM(order_total) as total_revenue
FROM orders
WHERE order_date >= '2024-01-01'
GROUP BY customer_id, customer_name
ORDER BY total_revenue DESC
LIMIT 100;

Use parameters for dynamic queries:

SELECT * FROM sales
WHERE date BETWEEN {{start_date}} AND {{end_date}}
AND region = {{region}}

Set parameter values when executing the step.

  1. Go to Settings → Connectors
  2. Click the connector to edit
  3. Update configuration
  4. Save changes

Note: Changes affect all projects using this connector.

  1. Go to Settings → Connectors
  2. Click delete icon
  3. Confirm deletion

Warning: Projects using this connector will need to be updated.

Connectors are organization-level resources:

  • Organization admins can create/edit/delete
  • All members can use connectors in their projects
  • Credentials are encrypted and not visible to users

Create dedicated database users for Querri:

-- MySQL example
CREATE USER 'querri_readonly'@'%'
IDENTIFIED BY 'secure_password';
GRANT SELECT ON mydb.*
TO 'querri_readonly'@'%';
FLUSH PRIVILEGES;

Grant only necessary permissions:

  • Read-only for analysis workloads
  • Write access only when needed for data updates
  • No DROP or TRUNCATE permissions

For better performance and security:

  • Connectors use connection pooling automatically
  • Connections are reused across queries
  • Idle connections timeout after 5 minutes
  • Credentials are encrypted at rest
  • Never logged or exposed in API responses
  • Accessible only to connector owner and org admins
  1. Create new step → “Upload File”

  2. Select CSV file

  3. Configure options:

    • Delimiter: , (comma), ; (semicolon), \t (tab)
    • Header row: Yes/No
    • Encoding: UTF-8, ISO-8859-1, etc.
  4. Preview data

  5. Confirm to create data source

  1. Select .xlsx or .xls file
  2. Choose sheet to import
  3. Specify header row
  4. Preview and confirm

Supports:

  • JSON array: [{...}, {...}]
  • JSON lines: One JSON object per line
  • Nested JSON: Automatically flattened
  1. Create Connector

    • Go to Settings → Connectors
    • Select “HubSpot”
  2. Authenticate

    • Click “Connect to HubSpot”
    • Log in to your HubSpot account
    • Authorize Querri access
  3. Use in Projects

    • Create step → “HubSpot”
    • Select object type:
      • Contacts
      • Companies
      • Deals
      • Tickets
      • Custom objects
  4. Automatic Syncing

    • Data syncs automatically
    • Configure sync frequency in connector settings

Support for OAuth-enabled APIs:

  1. Configure OAuth app credentials
  2. Authorize access
  3. Use in API connector steps

For custom API integrations:

  1. Create API Connector

    • Settings → Connectors → “REST API”
  2. Configure

    Base URL: https://api.example.com
    Authentication: Bearer Token / API Key / OAuth
    Headers:
    Content-Type: application/json
    X-API-Key: your_key
  3. Use in Steps

    Method: GET
    Endpoint: /users
    Query Parameters:
    limit: 100
    offset: 0

If connections are timing out:

  1. Check network access to database server
  2. Verify firewall rules allow connection
  3. Increase timeout in connector settings
  4. Check database server load
  1. Verify username/password are correct
  2. Check user has necessary permissions
  3. For Windows auth, verify domain settings
  4. Check password hasn’t expired
  1. Add indexes to queried columns
  2. Limit result set size
  3. Use query parameters for filtering
  4. Check database server performance

For secure connections:

  1. Enable SSL in connector settings
  2. Upload CA certificate if required
  3. Verify server certificate is valid
  4. Check TLS version compatibility