All docs
/
Export
/
Snowflake integration

Snowflake integration

Cloud-based data platform enabling data storage, analysis, and sharing.

Overview

Snowflake is a cloud data platform that enables organizations to store, analyze, and share data securely.

With this integration, you can connect to your Snowflake data warehouse and import data directly into Clay.

Connecting to Snowflake

When connecting your Snowflake account to Clay, you can choose between two authentication methods:

  • Key-pair authentication (recommended): Uses a private key for secure authentication. This is the preferred method for enterprise teams. See Snowflake's key-pair authentication documentation for a guide to generating and configuring keys.
  • Username and password: Traditional authentication method. Note that Snowflake is deprecating this method in favor of key-pair authentication.

Setting up key-pair authentication

Key-pair authentication requires an RSA key-pair. If you haven't already generated your keys, refer to Snowflake's key-pair authentication documentation for detailed instructions.

When setting up key-pair authentication, you'll need to provide:

  • Connection name: A name to identify this connection in Clay.
  • Username: The username tied to your private key.
  • Private key: Upload your Snowflake private key file (.p8), or drag and drop it into the field.
  • Private key passphrase: The passphrase for your private key, if applicable.
  • Account: The account identifier for your Snowflake instance. This can either be an account ID or a full URL (e.g., NHDCQCP-SBB20777). For detailed instructions on how to find your account identifier, refer to the Snowflake documentation.
  • Role (optional): The role to assume when connecting to Snowflake.
  • Database (optional): The name of the database to connect to in Snowflake. If not specified, you'll be prompted to enter it when setting up a Snowflake enrichment.
  • Schema (optional): The schema to connect to in Snowflake. If not specified, you'll be prompted to enter it when setting up a Snowflake enrichment.
  • Warehouse (optional): The warehouse to use for queries in Snowflake. If not specified, you'll be prompted to enter it when setting up a Snowflake enrichment.
  • Use static IP (optional): Enable this to ensure that the action runs from the same IP address, which can be useful for allow-listing.

Setting up username and password authentication

If your organization uses Okta, enter your Okta URL (e.g., example.okta.com) to ensure the integration functions correctly.

Creating a table with Snowflake

  1. In a workbook, click + Add at the bottom.
  2. Search for Snowflake and select from the results.
  3. In the modal, you will be asked to Select Snowflake account.
    • If you haven't already connected your Snowflake account, click + Add account and select your authentication method.

Source Import from Snowflake

You can use Snowflake as a source for a new or existing table.

Inputs

  • Snowflake account ID
  • Database name
  • Schema
  • Table name
  • Snowflake warehouse
  • Role (optional)

Enriching data with Snowflake

  1. While in a Clay table, click Add enrichment and search for Snowflake.
  2. Under Integrations, select one of the Snowflake options.
  3. In the modal, you will be asked to Select Snowflake account.
    • If you haven't already connected your Snowflake account, click + Add account and select your authentication method.

Action Insert row

Insert a row into a Snowflake database.

Inputs

  • Snowflake account ID
  • Database name
  • Schema
  • Table name
  • Snowflake warehouse
  • Role (optional)

Action Lookup row

Check if a row exists in your Snowflake database.

Inputs

  • Snowflake account ID
  • Database name
  • Schema
  • Snowflake warehouse (optional)
  • Role (optional)
  • Query: The raw SELECT SQL query to run.

Action Upsert row

Upsert a row into a Snowflake database using a single field as a unique identifier. If the identifier exists, the row will be updated. If not, a new row will be created.

Inputs

  • Snowflake account ID
  • Database name
  • Schema
  • Table name
  • Snowflake warehouse
  • Role (optional)

Action Update row

Update a row in a Snowflake database using a single field as a unique identifier. If the identifier exists, the row will be updated. If not, a new row will be created.

Inputs

  • Snowflake account ID
  • Database name
  • Schema
  • Table name
  • Snowflake warehouse
  • Role (optional)

Run settings

Explore other docs

Getting started

Table versions

Table versioning lets you track structural changes to your Clay tables over time and restore previous configurations when needed.

View article
Getting started

Table alerts

Table alerts automatically monitor your Clay tables and notify you when something needs attention.

View article
Export

Salesforce integration FAQs

Answering common questions about connecting and troubleshooting the Salesforce integration.

View article
Web scraping

Meer integration

Screen phone numbers against national do-not-call registries before initiating outbound calls.

View article
Settings & admin

Best practices for B2B email direct marketing

Conduct effective outbound email outreach whilst also lowering the risk of challenges

View article
Settings & admin

Do Not Contact (DNC) compliance & best practices

Information about DNC compliance and best practices.

View article
Web scraping

BuyerCaddy integration

Enrich company tech stacks, verify technology usage, and more!

View article

Other popular resources

Experts

Find a Clay Expert

Explore our network of Clay experts and agencies.

View experts
Community

Join our slack community

Find help in our slack community, and support channels.

Go to slack
Cohorts

Join a cohort, learn Clay fast!

The faster way to master Clay. Sign in if you're enrolled in a cohort (current or past) or apply!

Learn more about cohorts
Talents

Hire GTME Talent

Find and connect with GTM talent who've demonstrated expertise in building advanced workflows

Explore GTME talents