Skip to main content
To add Snowflake as a data source, go to Settings → Workspace → Integrations → Datasources and click New Datasource. Select Snowflake and fill in the connection parameters below, then click Test & Save Datasource.

Connection parameters

FieldDescription
Connection NameA label for this connection within Datachecks
Account IdentifierThe unique identifier for your Snowflake account
UsernameThe dedicated user for Datachecks
PasswordThe password for the Datachecks user
WarehouseThe Snowflake virtual warehouse used for query execution
DatabaseThe Snowflake database you want to connect to
RoleThe role assigned to the Datachecks user
SchemaOptional — specify to limit access to a single schema

Setup

Run the following SQL in your Snowflake account to create a dedicated role and user for Datachecks.

1. Create role and user

CREATE ROLE DATACHECKSROLE;
CREATE USER DATACHECKS
  DEFAULT_ROLE = "DATACHECKSROLE"
  MUST_CHANGE_PASSWORD = FALSE;
GRANT ROLE DATACHECKSROLE TO USER DATACHECKS;

2. Set password

ALTER USER DATACHECKS SET PASSWORD = 'YourStrongPassword';

3. Grant execution monitoring

GRANT MONITOR EXECUTION ON ACCOUNT TO ROLE DATACHECKSROLE;
GRANT IMPORTED PRIVILEGES ON DATABASE SNOWFLAKE TO ROLE DATACHECKSROLE;

4. Create temporary schema

Datachecks uses this schema for intermediate processing.
CREATE SCHEMA <database_name>.DATACHECKS_TMP;
GRANT ALL ON SCHEMA <database_name>.DATACHECKS_TMP TO ROLE DATACHECKSROLE;

5. Grant data access

Repeat for each database you want to connect:
GRANT USAGE ON WAREHOUSE <warehouse_name> TO ROLE DATACHECKSROLE;
GRANT USAGE ON DATABASE <database_name> TO ROLE DATACHECKSROLE;
GRANT USAGE ON ALL SCHEMAS IN DATABASE <database_name> TO ROLE DATACHECKSROLE;
GRANT SELECT ON ALL TABLES IN DATABASE <database_name> TO ROLE DATACHECKSROLE;
GRANT SELECT ON ALL VIEWS IN DATABASE <database_name> TO ROLE DATACHECKSROLE;