Live — enterprise connector. Fully supported today (SAT-validated). One of Zwiron’s five production connectors: PostgreSQL, MySQL, MongoDB, Snowflake, BigQuery.
Supported sync modes
How to connect
You can connect Zwiron to Snowflake using OAuth (recommended) or username + password.- OAuth (recommended)
- Username + Password
OAuth lets you connect without storing a password — you authorise Zwiron directly from your Snowflake account.This returns a JSON object. Copy the values of
Step 1 — Create a Security Integration in Snowflake
A Security Integration is Snowflake’s term for an OAuth app. You need to create one inside your Snowflake account so Zwiron can request access on your behalf.Open a Snowflake worksheet and run:You need the
ACCOUNTADMIN role to create Security Integrations.Step 2 — Get your client ID and secret
OAUTH_CLIENT_ID and OAUTH_CLIENT_SECRET — you’ll need them in the next step.Step 3 — Add the credentials to Zwiron
Contact your Zwiron administrator to set the following environment variables for your workspace:Step 4 — Find your account identifier
You must provide your account identifier to start OAuth. Unlike providers such as GitHub, Snowflake has no single global login URL — every customer has their own dedicated server (e.g.ym34109.ap-southeast-1.snowflakecomputing.com). Zwiron needs to know which server to open the OAuth popup for before the login can begin. There is no way to discover this automatically.Your account identifier is the subdomain from your Snowflake login URL — including the region.Step 5 — Connect in Zwiron
- Go to Connections → Add Connection → Snowflake
- Enter your Account identifier (e.g.
ym34109.ap-southeast-1) - Click Sign in with Snowflake
- A Snowflake login popup opens — sign in and approve the access request
- Zwiron fills your credentials automatically
- Fill in Database and Warehouse in the form
- Click Test Connection to verify, then Next to save
Finding your account identifier
Your account identifier is shown in Snowflake under Admin → Accounts. Hover over your account name to see the full identifier. The format is usually one of:abc12345.us-east-1(legacy)orgname-accountname(newer organisation accounts)
How Zwiron writes to Snowflake
Zwiron uses Snowflake’s bulk COPY INTO for high-throughput writes — data is staged internally then loaded in one shot. This is far faster than row-by-row inserts. For upsert mode, Zwiron uses a staging table +MERGE INTO pattern:
- Write incoming rows to a temporary staging table
MERGE INTOthe target table using the primary key- Drop the staging table
Schema management
Zwiron creates tables automatically if they don’t exist, mapping source types to Snowflake types:Troubleshooting
Databases, schemas, or warehouses not showing in the dropdown
Databases, schemas, or warehouses not showing in the dropdown
Zwiron lists only resources that your role has access to. If you don’t see a database, schema, or warehouse in the dropdown after connecting:After granting permissions, go back to Zwiron and re-test the connection — the resources will appear.
- Check which role is active — the dropdown only shows resources visible to that role
- Grant the missing permissions in a Snowflake worksheet:
- If the schema does not exist yet, create it first:
OAuth popup closes but nothing happens
OAuth popup closes but nothing happens
Make sure the
OAUTH_REDIRECT_URI in your Security Integration exactly matches https://api.zwiron.com/v1/oauth/callback. Even a trailing slash difference will cause a redirect mismatch error from Snowflake.'This integration is not enabled' error
'This integration is not enabled' error
Run
ALTER SECURITY INTEGRATION zwiron_oauth SET ENABLED = TRUE; in Snowflake.Warehouse suspended / auto-resume not enabled
Warehouse suspended / auto-resume not enabled
Enable auto-resume:
ALTER WAREHOUSE your_warehouse SET AUTO_RESUME = TRUE;Insufficient privileges
Insufficient privileges
Make sure the Zwiron role has
CREATE TABLE on the schema and INSERT, UPDATE, DELETE on the tables. Re-run the setup SQL from the password tab above.Account identifier format
Account identifier format
Use the full identifier including cloud region, e.g.
abc12345.us-east-1. Find it in Snowflake under Admin → Accounts. For organisation accounts use orgname-accountname.