Overview
Snowflake is a cloud-based data platform used by organizations to store, query, and analyze large volumes of structured and semi-structured data.
The Alchemer integration with Snowflake supports automated data retrieval, row inserts, row updates, and row upserts. The Alchemer Snowflake integration allows Alchemer to use information from Snowflake to get data, personalize workflow paths, enrich routing logic, create merge codes, and update Snowflake tables without manual intervention.
Common uses for the Alchemer Snowflake integration
- Personalize emails and workflow steps with data stored in Snowflake
- Use Snowflake table data in workflow logic
- Automatically insert or update Snowflake rows when a workflow step triggers
- Reduce manual data entry and record maintenance
- Keep Snowflake tables synchronized with responses collected in Alchemer
What can the Alchemer Snowflake integration do?
- Push to Table (basic authentication)
- Get Data (basic authentication)
- Get data
- Push to table
- Update row
- Upsert row
You will need
- Snowflake authentication credentials. More details in the authentication how-to guide.
- Basic authentication: Snowflake username and password
- Key-pair authentication: Snowflake account identifier, username, and private key
- An Alchemer plan that includes integrations and the Integration Manager permission enabled.
- Contact us if you are unsure if your plan includes integrations.
Setup Alchemer Snowflake integration in workflow
Snowflake | Push to Table (basic authentication)
You will need:
- Snowflake username and password
- Workflow fields containing the data you want to insert into the Snowflake table
Configure the action
- Open your workflow in Workflow Builder.
- On the right side, drag and drop the Snowflake connection where you want the action to trigger.
- In the connection box, click the pencil icon in the top-right corner.
- Select Snowflake | Push to Table (basic authentication).
- Snowflake | Authentication: Select an existing authentication or create a new one.
- Snowflake | Choose Table: Select the Snowflake table you would like to use from the dropdown.
- Snowflake | Insert Row Into Table: Map Alchemer workflow fields to the corresponding Snowflake table columns you want to insert data into.
- Snowflake | Get data back: Select metadata fields (e.g., message, status code) to return. These help with debugging your integration.
- Save the action.
Status codes
- 200: Row was successfully inserted into the Snowflake table
- 400: The Snowflake API returned an error
Snowflake | Get Data (basic authentication)
You will need:
- Snowflake username and password
- A workflow field containing a unique identifier for the Snowflake row you want to retrieve
Configure the action
- Open your workflow in Workflow Builder.
- On the right side, drag and drop the Snowflake connection where you want the action to trigger.
- In the connection box, click the pencil icon in the top-right corner.
- Select Snowflake | Get Data (basic authentication).
- Snowflake | Authentication: Select an existing authentication or create a new one.
- Snowflake | Choose Table: Select the Snowflake table you would like to use from the dropdown.
- Snowflake | Query Row in Table: Choose the workflow data you want to use to query a row for in your Snowflake table.
- Snowflake | Choose Column to Order By: Select which column you would like to order by and whether you would like this to be ascending or descending.
- Snowflake | Get data back: Select the Snowflake table columns you want returned to the workflow. These values can be used to personalize workflow steps or drive logic.
- Save the action.
Status codes
- 200: A row was successfully found
- 202: Multiple rows were found (first returned is used)
- 400: Error returned by Snowflake API or failed to find a matching row
Snowflake | Get data
You will need:
- Snowflake account identifier, username, and private key
- A workflow field containing a unique identifier for the Snowflake row you want to retrieve
Configure the action
- Open your workflow in Workflow Builder.
- On the right side, drag and drop the Snowflake connection where you want the action to trigger.
- In the connection box, click the pencil icon in the top-right corner.
- Select Snowflake | Get data.
- Snowflake | Authentication: Select an existing authentication or create a new one.
- Snowflake | Select database: Select the Snowflake database you would like to use from the dropdown.
- Snowflake | Select schema: Select the Snowflake schema you would like to use from the dropdown.
- Snowflake | Select table: Select the Snowflake table you would like to use from the dropdown.
- Snowflake | Find row: Choose the workflow data you want to use to find a row in your Snowflake table.
- Note: Multiple fields will be combined with either (AND, OR) depending on the operator you select.
- Snowflake | Get data back: Select the Snowflake table columns you want returned to the workflow. These values can be used to personalize workflow steps or drive logic.
- Save the action.
Status codes
- 200: A single row was successfully found
- 201: Query ran successfully, but no rows were found
- 202: More than one row was found. The first row is used for the values returned to Alchemer
- 400: The external integration returned an error
Snowflake | Push to table
You will need:
- Snowflake account identifier, username, and private key
- Workflow fields containing the data you want to insert into the Snowflake table
Configure the action
- Open your workflow in Workflow Builder.
- On the right side, drag and drop the Snowflake connection where you want the action to trigger.
- In the connection box, click the pencil icon in the top-right corner.
- Select Snowflake | Push to table.
- Snowflake | Authentication: Select an existing authentication or create a new one.
- Snowflake | Select database: Select the Snowflake database you would like to use from the dropdown.
- Snowflake | Select schema: Select the Snowflake schema you would like to use from the dropdown.
- Snowflake | Select table: Select the Snowflake table you would like to use from the dropdown.
- Snowflake | Insert row into table: Choose the workflow data you want to use to insert a row into your Snowflake table.
- Snowflake | Get data back: Select metadata fields (e.g., message, status code) to return. These help with debugging your integration.
- Save the action.
Status codes
- 200: Successfully inserted row
- 400: The external integration returned an error
Snowflake | Update row
You will need:
- Snowflake account identifier, username, and private key
- A workflow field containing a unique identifier for the Snowflake row you want to update
Configure the action
- Open your workflow in Workflow Builder.
- On the right side, drag and drop the Snowflake connection where you want the action to trigger.
- In the connection box, click the pencil icon in the top-right corner.
- Select Snowflake | Update row.
- Snowflake | Authentication: Select an existing authentication or create a new one.
- Snowflake | Select database: Select the Snowflake database you would like to use from the dropdown.
- Snowflake | Select schema: Select the Snowflake schema you would like to use from the dropdown.
- Snowflake | Select table: Select the Snowflake table you would like to use from the dropdown.
- Snowflake | Find row: Choose the workflow data you want to use to find a row in your Snowflake table. Multiple fields will be combined with either (AND, OR) depending on the operator you select.
- Snowflake | Update row in table: Choose the workflow data you want to use to update a row in your Snowflake table.
- Snowflake | Get data back: Select metadata fields (e.g., message, status code) to return. These help with debugging your integration.
- Save the action.
Status codes
- 200: Successfully updated row
- 201: Query ran successfully. No rows updated
- 202: Multiple rows were found. X row(s) updated
- 400: The external integration returned an error
Snowflake | Upsert row
You will need:
- Snowflake account identifier, username, and private key
- A workflow field containing a unique identifier for the Snowflake row you want to upsert
Configure the action
- Open your workflow in Workflow Builder.
- On the right side, drag and drop the Snowflake connection where you want the action to trigger.
- In the connection box, click the pencil icon in the top-right corner.
- Select Snowflake | Upsert row.
- Snowflake | Authentication: Select an existing authentication or create a new one.
- Snowflake | Select database: Select the Snowflake database you would like to use from the dropdown.
- Snowflake | Select schema: Select the Snowflake schema you would like to use from the dropdown.
- Snowflake | Select table: Select the Snowflake table you would like to use from the dropdown.
- Snowflake | Find row: Choose the workflow data you want to use to find a row in your Snowflake table. Multiple fields will be combined with either (AND, OR) depending on the operator you select.
- Snowflake | Upsert row in table: Choose the workflow data you want to use to upsert a row in your Snowflake table. This will either update a row if the data matches or create a new row.
- Snowflake | Get data back: Select metadata fields (e.g., message, status code) to return. These help with debugging your integration.
- Save the action.
Status codes
- 200: Successfully inserted row
- 201: Query ran successfully. No rows updated
- 202: Successfully updated X row(s)
- 400: The external integration returned an error
Testing and Troubleshooting
Testing and Validation
How to test
- Trigger the workflow and monitor individual runs in the Monitor tab.
- Click on individual workflow runs to see metadata outputs.
- Confirm the expected row activity in Snowflake (inserted, updated, retrieved, or upserted).
- Use metadata values returned to verify success or help debug issues.
How to verify results
- Inspect the affected Snowflake table or row directly in Snowflake.
- Ensure all retrieved or updated values match workflow expectations.
Monitoring Integration Activity
Where to find logs
- Go to Results → Monitor.
- Select the integration step you want to inspect.
What logs display
- Input/Output
Troubleshooting
Authentication issues
- Incorrect username or password (basic authentication)
- Invalid or malformed private key (key-pair authentication)
- Incorrect account identifier
- Insufficient Snowflake role permissions
Lookup failures
- No matching row found for the provided identifier
- Lookup field value does not match the column data type
Mapping errors
- Incorrect data type formatting (e.g., dates must match Snowflake's expected format)
- Column names do not match the target Snowflake table
API errors
- Snowflake warehouse is suspended or unavailable
- Query or insert validation failures
FAQs
What permissions do I need?
Integration Manager in Alchemer and a Snowflake role with read/write access to the relevant database, schema, and tables.
Integration Manager in Alchemer and a Snowflake role with read/write access to the relevant database, schema, and tables.
When does the integration run?
When the workflow triggers and reaches the Snowflake integration step.
When the workflow triggers and reaches the Snowflake integration step.
Can I use multiple Snowflake actions in one workflow?
Yes. Actions can run independently or in sequence.
Yes. Actions can run independently or in sequence.
What is the difference between basic and key-pair authentication actions?
Basic authentication actions use a Snowflake username and password. Key-pair authentication actions use an account identifier, username, and private key, which is recommended for production environments.
Basic authentication actions use a Snowflake username and password. Key-pair authentication actions use an account identifier, username, and private key, which is recommended for production environments.
Why isn't my data updating?
Check the Monitor logs for lookup issues, mapping problems, or API errors.
Check the Monitor logs for lookup issues, mapping problems, or API errors.
What if I need additional functionality?
Contact Alchemer Support for enhancement requests.
Contact Alchemer Support for enhancement requests.