How to Connect Snowflake to Zendesk? | 2 Methods Simplified

on Activate, Data Warehouses, DataOps, Hevo Activate, Operational Analytics, Reverse ETL, Snowflake, Tutorials • June 28th, 2022 • Write for Hevo

Snowflake to Zendesk- Featured Image

Organizations worldwide are on a constant lookout for products and systems that can help them become more customer-centric. With the addition of new and growing data sources, the first step towards leveraging diverse data is to get data into your warehouse like Snowflake. The second and more important, step is to get this acquired data from Snowflake into operational systems like Zendesk, so your teams can capitalize on it, and take action fast.

Snowflake to Zendesk integration can fetch data of newly raised customer tickets or leads from other platforms and pass this dataset to Zendesk, helping your sales and support teams trigger activities and start their lead conversion processes as soon as this information becomes available in their Zendesk platform.

In this guide, we explore two methods to connect Snowflake to Zendesk, one that uses Snowflake to Zendesk CSV export/import options and the other using Hevo Activate which is simpler, faster, and better and just requires a few clicks of your mouse to set up.

Table of Contents

What Is Snowflake?

Snowflake Logo: Snowflake to Zendesk
Image Source: Wikimedia Commons

The emergence of Cloud-based Data Warehouses has marked a move away from traditional Data Warehousing Solutions, which were often limited by fixed resources, dependence on complex ETL pipelines, and physical tuning. With these systems, software delivery and execution were confined to local servers. These systems were designed to run on small clusters of machines that had a poor architectural fit.

As data volumes have started growing, and Data Analytics becoming a company-wide practice, companies of today require faster, and more efficient Data Warehouses like Snowflake that combine performance, security, and scalability with the convenience of the cloud.

Snowflake is a cutting-edge Data Platform that offers capabilities like Data Storage, Data Processing, and Data Analytics in a faster, more user-friendly, and more customizable way than traditional Data Warehousing Solutions. It is available as a Software-as-a-Service (SaaS), on the cloud, which means you and your workgroup can store, query, and analyze data on Snowflake anywhere without the hassles of choosing, installing, configuring, or managing hardware.

Snowflake features a novel design that separates the storage, compute, and services layers to give an unrivaled performance. These layers are logically integrated to deliver an optimal number of resources for your data needs with the right balance of IO, memory, CPU, etc. Snowflake also optimizes and stores data in a columnar format within the storage layer, organized into databases as specified by the user. 

Business Benefits of Using Snowflake

  • Easy to Use Interface: Snowflake Warehouse is well known for its easy-to-use interface that is consistent with DDL and DML SQL standard syntax. Getting started with Snowflake is very easy where you and your workgroup can spin up or down high computational clusters of any size and get answers quickly.
  • Pay-as-you-go Data Service: Your Snowflake pricing is determined by your usage and your region. Since you pay for each warehouse by the hour, costs are always known and understood.

Read more about Snowflake pricing here – Snowflake Pricing: A Comprehensive Guide for 2022.

  • Cloud-Enabled Scale: Snowflake’s micro partition architecture allows for continuous writes, creating a non-locking data retrieval mechanism from storage files in cloud data storage. This kind of architecture allows for massive scale and ensures that data only has one single source, without requiring to create and maintain multiple copies.
  • Native Support for Semi-Structured Data: Snowflake warehouse supports semi-structured data formats like JSON, Avro, Parquet, and XML. It provides native storage of semi-structured data together with native support for the relational model. You can even load semi-structured data directly into Snowflake without pre-processing.
  • Automated Data Maintenance and Scaling: Snowflake’s Massive Parallel Processing Architecture is a game-changer that allows internal indexing and scaling for the analytical database. This frees organizations from bulk complexity and people costs.
  • Unmatched Performance and Trust: The Forrester Wave Cloud Data Warehouse report (Q1 2021) has recognized Snowflake as a leader in Cloud Data Warehouse offerings, giving it the highest scores for automation, provisioning, and upgrades. Thousands of companies across the world like Adobe, AT&T, Dropbox, Electronic Arts, PepsiCo, etc. use Snowflake to unite, discover and securely share their data.

What Is Zendesk?

Zendesk Logo: Snowflake to Zendesk
Image Source: Zendesk

Every business understands the value and trust their customers place in them. Continuing these strong ties requires clear and straightforward communication when they need help, across all channels – email, phone, SMS, and social media. Moreover, with increasing competitiveness, it is difficult for businesses to constantly keep in touch with their customers and respond quickly, especially when customer expectations have gone high and every other company wants to capture some other’s audience.

Zendesk is an omnichannel, cloud-based customer support platform that places customer convenience above all. It enables quicker and easier interaction between businesses and customers so that businesses can profit from effortless customer experiences and grow on channels that bring in higher customer satisfaction, faster resolution times, and better all-around customer experiences.

Using Zendesk you and your workgroup can track and record one-on-one conversations or customer support requests, received through phone, chat, email, and social media. Zendesk offers a plethora of tools to tailor your offerings and meet your customer expectations through web and mobile self-service, communities, virtual agents, automated chat dialogues, and chatbots.

Business Benefits of Using Zendesk

  • Ticketing System: Zendesk is a one-stop solution to converge all your customer support requests from any source and manage them from one location. You can bring in customer requests from various sources with a unified channel API, and provide them with the same fabulous experience no matter what channel they use.
  • Knowledge Base: A knowledge base is a self-service library to help your customers find quality answers to their questions instantly without having to contact an agent. Having a quality knowledge base helps your agents free up time and focus more on solving complex and serious issues rather than the repetitive job of addressing FAQs.
  • Automation Bots: Zendesk leverages AI to provide answer bots for your customers. This functionality can be set up in minutes and reduces your agent’s repetitive work of collecting customer information like name, email, issue type, and more.
  • Reporting & Analytics: Zendesk Explore is a native reporting and analytics service to dig deep into metrics and make decisions that boost growth. Zendesk Explore provides powerful, built-in reports to visualize key information on your customers and your support resources.
  • Community Forums: Strong customer relationships thrive on active and engaging communities that help customers voice their concerns and receive answers from other compeers. Zendesk provides community forums through Zendesk Gather where your customers can talk and help each other instead of constantly relying on your support team.

Why Sync Data From Snowflake to Zendesk?

The pursuit of delivering an amazing customer experience requires a thorough understanding of your customer’s behaviors and interests. Data Analysis of multiple touchpoints across a customer’s journey helps you identify their buying behaviors and preferences, purchase roadblocks, and key performance metrics. Ultimately, this helps drive a holistic customer experience.

By syncing data from Snowflake to Zendesk, you can actualize your customer insights and deliver tailored emails/messages based on customers’ product use or past interactions. Consider receiving a call from a customer who signed up for a free trial on your website a few days ago. He/she intends to become a paid user and is interested in the usefulness of your premium product. Using Snowflake to Zendesk connector, you and your teams can know and share the key information using real-time synchronized data based on his/her product use, or continue from previous conversations right where they were left.

Snowflake to Zendesk integration syncs data from Snowflake (which in turn is acquired from various channels) to Zendesk, so that your sales and support team can pinpoint the highest priority queues and provide the necessary attention your customers need. With the Snowflake Zendesk integration, they’ll gain insight into the status of customers’ pending tickets, and they’ll be able to resolve them faster by gaining full visibility into where the customer query has been stopped, or what needs to be resolved from the sales or marketing front. 

Read more on how Operational Analytics helps actualize Data Insights.

Methods to Set Up Snowflake to Zendesk Integration

In the upcoming sections of the Snowflake Zendesk integration guide, we discuss the different procedures to export your Snowflake tables from the Snowflake warehouse.

Explore Methods to Connect Snowflake to Zendesk

Method 1: Using CSV Files to Manually Connect Snowflake to Zendesk

This method requires you to manually convert your Snowflake Warehouse data into CSV files using SQL commands. The data present in the CSV Files must then be modified according to the format given by Zendesk. Afterward, the data can be imported and mapped directly into Zendesk.

It is a time-consuming approach, one-time approach that will also require manually fixing specific troubleshooting errors. To sync new and updated data, you’d have to go through the same steps again.

Method 2: Automated Data Sync From Snowflake to Zendesk Using Hevo Activate

Hevo Activate provides a hassle-free, one-stop solution to connect Snowflake to Zendesk in an effortless manner. Hevo Activate syncs customer/product data in the Snowflake Warehouse to your Business Software.

Hevo Activate brings the data to the fingertips of your business teams, where they need it the most – Business Applications. Teams can now make faster, more innovative actions. Sync customer & product usage data, analyze the customer journeys, and create personalized experiences with Hevo Activate.

Get Started with Hevo Activate for Free

Method 1: Using CSV Files to Manually Connect Snowflake to Zendesk

Exporting Snowflake Data Into CSV Using COPY Command

Snowflake’s COPY INTO <location> command lets you unload Snowflake data into a named internal stage or external cloud storage location. Since Snowflake can be hosted on Amazon Web Services (AWS), Google Cloud Platform (GCP), and Microsoft Azure Platform, using the COPY INTO command will export your Snowflake table data into your native cloud platform’s storage. 

For example, if your Snowflake is hosted on AWS, it will export your Snowflake to Zendesk table data into Amazon S3 buckets. After exporting it to your cloud storage location, you can then download the files to your local system.

For exporting Snowflake data in a named internal stage, you can use a COPY INTO command as follows:

copy into @stage_location/customers/data_ from (select * from customers)
   file_format=(format_name='fileformatname' compression='gzip');

Here, “stage_location” is a named internal stage that uses a folder/filename prefix “customers/data_” and a named file format “fileformatname” with gzip compression.

To unload Snowflake data into your external cloud storage location, use the following COPY INTO command as per your Snowflake host environment.

Snowflake to Zendesk on Amazon Web Services (AWS)

When accessing the referenced S3 using a referenced storage integration named myint:

copy into 's3://snowflaketozendeskbucket/unload/'
  from customers
  storage_integration = myint
  file_format = (format_name =csv_file_format);

When accessing the referenced S3 using supplied credentials:

copy into 's3://snowflaketozendeskbucket/unload/'
  from customers
  credentials = (aws_key_id='xxxx' aws_secret_key='xxxxx' aws_token='xxxxxx')
  file_format = (format_name = csv_file_format);

Snowflake to Zendesk on Google Cloud Platform (GCP)

When accessing the GCS bucket using a referenced storage integration named myint:

copy into 'gcs://snowflaketozendeskbucket/unload/'
  from customers
  storage_integration = myint
  file_format = (format_name = csv_file_format);

Snowflake to Zendesk on Microsoft Azure

When accessing the referenced container using a referenced storage integration named myint:

copy into 'azure://myaccount.blob.core.windows.net/unload/'
  from customers
  storage_integration = myint
  file_format = (format_name = csv_file_format);

When accessing the referenced container using supplied credentials:

copy into 'azure://myaccount.blob.core.windows.net/snowflaketozendeskbucket/unload/'
  from customers
  credentials=(azure_sas_token='xxxx')
  file_format = (format_name = csv_file_format);

If you need to create a cloud storage integration in Snowflake, you can do so using the CREATE STORAGE INTEGRATION command as shown below:

CREATE STORAGE INTEGRATION <name_of_integration>
  TYPE = EXTERNAL_STAGE
  STORAGE_PROVIDER = S3
  ENABLED = TRUE
  STORAGE_AWS_ROLE_ARN = '<iam_role>'
  [ STORAGE_AWS_OBJECT_ACL = 'bucket-owner-full-control' ]
  STORAGE_ALLOWED_LOCATIONS = ('s3://<bucket>/<path>/', 's3://<bucket>/<path>/')
  [ STORAGE_BLOCKED_LOCATIONS = ('s3://<bucket>/<path>/', 's3://<bucket>/<path>/') ]

Here, 

  • <name_of_integration> refers to the name of the integration.
  • <iam_role> refers to the Amazon Resource Name (ARN).
  • <bucket> refers to the name of the S3 bucket that will store your data files.
  • <path> specifies granular control over objects in the S3 bucket.

Exporting Snowflake Data Using SnowSQL CSV Export

SnowSQL is a Python-based CLI Client for executing SQL queries and performing all DDL and DML operations on Snowflake. With SnowSQL, you have complete control over every aspect of your Snowflake Data Cloud, including uploading data, querying data, changing data, and deleting data.

SnowSQL is a handy tool when it comes to exporting data from Snowflake and performing Snowflake to Zendesk integration. We won’t be covering the SnowSQL setup process in this guide, however, you can find SnowSQL installation instructions in the Snowflake documentation.

Once you have installed and set up SnowSQL, you can execute the following command, in Linux or macOS, to export Snowflake data into a CSV file format.

snowsql -c snowflake_to_zendesk_connection 
  -d customers_sales  
  -s public 
  -q 'select * from customers limit 10' 
  -o output_format=csv  
  -o header=false 
  -o timing=false > snowflake_to_zendesk_output.csv

Where,

  • -c is a connection parameter to specify a named connection.
  • snowflake_to_zendesk_connection is the name of your connection.
  • -d refers to the name of the database.
  • -s refers to the name of the schema.
  • -q refers to the query to select records from your database.
  • -o specifies options.
  • -o timing indicates to turn off timestamping.
  • > output_file.csv refers to the name of the CSV file and describes its destination.

It is usually best to use a connection file for security reasons. This way, you can connect to Snowflake without entering a password. However, you should always safeguard your SnowSQL configuration file.

For Windows users, you can use the same command with double quotes instead of single quotes in the SELECT query.

snowsql -c snowflake_to_zendesk_connection 
  -d customers_sales  
  -s public 
  -q “select * from customers limit 10” 
  -o output_format=csv  
  -o header=false 
  -o timing=false > snowflake_to_zendesk_output.csv

This completes your Snowflake to Zendesk table export process. Up next, we discuss how to import CSV into Zendesk.

Importing CSV Files to Zendesk From Snowflake

Zendesk requires you to import CSV files that contain Zendesk required field data. Zendesk supports three different flavors of CSV files:

  1. CSV file with tickets
  2. CSV file with ticket comments
  3. CSV file with Knowledge Base

For the scope of this blog, we’ll be importing and using CSV files with tickets. This CSV file with tickets must include the following header columns:

  • TicketId
  • Subject
  • Description
  • Type
  • Status
  • Priority
  • AgentEmail
  • AgentName
  • ContactEmail
  • ContactName
  • CreatedTime
  • UpdatedTime

Including or excluding these optional header columns:

  • Tags
  • DepartmentName
  • ContactPhone
  • CompanyName
  • ClosedTime
  • Attachments

While preparing your CSV files, please bear in mind that:

  • Your CSV file size should not exceed 1 GB.
  • All CSV files must contain the necessary header rows.
  • All CSV files must have a comma as a delimiter. 
  • For data spanning multiple lines, use double-quote marks (“).
  • Headers must be written in English and begin with a capital letter.

Once all your CSV files have met all requirements, you can visit the Help Desk Migration website and begin your import. 

Zendesk Upload Your CSV File: Snowflake to Zendesk
Image Source: Zendesk

Choose Zendesk as the destination platform and enter your company’s Zendesk URL. Select which records to migrate and map ticket fields. You can start a Free Demo Migration to obtain a quote and see if the data transferred successfully. Finally, review the result of your migration by referring to this guide.

Limitations of Using CSV Export/Import Option For Snowflake Zendesk Integration

Clearly, this CSV export/import process isn’t quick and easy. Moreover, manually exporting and importing your Snowflake table data from Snowflake Warehouse to Zendesk Support is a static one-time process. If changes happen in your Snowflake tables, sadly, you will need to repeat the same process again. It is also possible that you will encounter inescapable errors, such as duplicate Zendesk tickets or customer records. You should have proper resolution mechanisms in place to deal with these issues. 

Luckily, using the next method, you don’t have to do the legwork of capturing and transferring CSV files from Snowflake to Zendesk repetitively. Hevo Activate offers a fully automated Data Sync from Snowflake to Zendesk with options to deduplicate the data and directly load it to the target destination. Explore what Hevo Activate has to offer to streamline Data Sync from Snowflake to Zendesk.

Method 2: Automated Data Sync From Snowflake to Zendesk Using Hevo Activate

Hevo Activate: Snowflake to Zendesk Using Hevo Activate

Reverse ETL empowers businesses to make their data actionable. It enables them to sync data from Data Warehouses like Snowflake into their Marketing, Sales, and Support Platforms like HubSpot, Salesforce, or Zendesk for data-informed decisions. This way, business teams get to derive actionable insights beyond static reports and excel and are able to produce relevant and effective customer campaigns.

Hevo Activate is a Data Automation Platform that helps you seamlessly sync data from Snowflake to Zendesk. It is a fully managed solution that completely automates the process of not only importing data from your selected source but also enriching the data and changing it into an analysis-ready format. Hevo Activate’s fault-tolerant design ensures that data is handled in a safe, consistent manner with zero data loss.

Sign up here for a 14-Day Free Trial!

Hevo Activate offers a broad set of features to make your Reverse ETL experience best-in-class. Check out what makes Hevo Activate a standout.

  • Real-Time Data Replication: Hevo Activate, with its strong integration with various data sources, allows you to replicate data quickly & efficiently. This ensures efficient utilization of bandwidth on both ends.
  • No APIs, CSVs, Just SQL!: You can use the powerful and smart SQL Query Editor to filter and transform data from your Data Warehouse table to a Target object. The in-built validation checks ensure each query is validated before you save it.
  • On-Demand Sync: Hevo Activate gives users the option to resume the sync or run sync now to execute Data Sync as per their demand.
  • Intelligent Data Type Conversion: During the mapping action, Hevo Activate transforms the field types of the synced data automatically. 
  • Data Transformation: Hevo Activate provides a simple interface to perfect, modify, and enrich the data you want to transfer. 
  • Live Support: The Hevo Activate team is available round the clock to extend exceptional support to its customers through chat, email, and support calls.

Setting up a Reverse ETL Data Pipeline with Hevo Activate is a simple four-step process. All you have to do is configure your warehouse source, target SaaS destination, select data, and map it from the warehouse to the SaaS application.

Step 1: Configure Snowflake as your Data Source

Visit the Asset Palette section on the home page. Select ACTIVATE for Reverse ETL Data Pipeline creation (syncing data from Warehouse to Business App). 

If this is your first time creating an activation, click +CREATE ACTIVATION on the Activate home page, else click + CREATE ACTIVATION in the Activations List View.

Create Activation: Snowflake to Zendesk Using Hevo Activate

Hevo Activate will ask you to select your Data Warehouse from Amazon Redshift, Google BigQuery, and Snowflake. If you have already set up one before, you will see that listed as a source. If you are adding it for the first time, click +ADD WAREHOUSE to add a new warehouse.

To add Snowflake Data Warehouse to your Hevo inventory, click +ADD WAREHOUSE > Select Warehouse Type > Snowflake

To configure your Snowflake Data Warehouse, go to your Asset Palette, then click on the DESTINATIONS option. In the Destinations List View, click on the CREATE button.

In the Add Destination Page that appears, select “Snowflake” as the destination type. Here, you’ll be presented with a “Configure your Snowflake Warehouse” page where you can specify the required configuration parameters.

Configure your Snowflake Warehouse: Snowflake to Zendesk Using Hevo Activate

Once set up, you can test your connectivity with the Snowflake warehouse using the option TEST CONNECTION. Hit SAVE & CONTINUE to save your warehouse configuration.

Step 2: Configure Zendesk as your Target Destination

After configuring and saving your Snowflake Warehouse with Hevo Activate, you can configure your Zendesk App target destination. 

Visit the Asset Palette section on the home page, and select the TARGETS tab in the Targets List View. Click + CREATE TARGET to add Zendesk as a destination app. 

Create a Target: Snowflake to Zendesk Using Hevo Activate

On the Select a Target Type page, search for Zendesk and select it.

Select a Target Type: Snowflake to Zendesk Using Hevo Activate

Specify target information like your target name, your Zendesk subdomain, Zendesk API token, and your login ID for your Zendesk account on the Configure your Zendesk Target page.

Note: You can generate a Zendesk API token by visiting your Zendesk Home > Apps and Integrations > APIs > Zendesk API. Under Token access, click on Add API token to generate a new API token.

Configure your Zendesk Target: Snowflake to Zendesk Using Hevo Activate

Click TEST & CONTINUE to complete your target setup process. Upon successful completion, Zendesk will be available as a new target in your Targets List View.

Zendesk Activate Pipeline: Snowflake to Zendesk Using Hevo Activate

And there you have it, you have successfully assembled your Snowflake to Zendesk Connector using Hevo Activate. Hevo Activate will start syncing data from Snowflake to Zendesk once you select and map your Snowflake fields to Zendesk.

Step 3: Select Data Fields For Snowflake to Zendesk Integration

On the Select Data to Synchronize page, you can execute a SQL query to fetch data from one or more tables of your Snowflake Warehouse.

On the right pane, select your target object, making sure it contains the fields to which you want to map your Snowflake Warehouse fields.

Select Data to Sync: Snowflake to Zendesk Using Hevo Activate

Click TEST QUERY to validate the query. After a successful test, you can click TEST & MAP FIELDS.

Step 4: Map Snowflake Fields to Zendesk Fields

The last step in Snowflake to Zendesk integration using Hevo Activate is to specify your field mappings properties like target object, sync behavior, and target object fields (both required and optional). 

Field Mapping: Snowflake to Zendesk Using Hevo Activate

Once you have filled in the details, specify a unique Activation Name, and then click on CREATE ACTIVATION to kickstart your Reverse ETL Data Sync from Snowflake to Zendesk.

Conclusion

In this guide, we presented two methods to sync data from Snowflake to Zendesk: one using CSV export/import, which is cumbersome, complicated, and a one-time process, and another using a real-time Data Sync tool called Hevo Activate. 

Hevo Activate is a fast and secure Data Replication tool to sync data from Snowflake to Zendesk in as easy as 4 simple steps. It features a built-in smart SQL Query Editor to filter and transform your data from Snowflake tables to Zendesk objects. This editor has in-built validation checks to ensure each query is validated before you save it.

Visit our Website to Explore Hevo Activate

Using Hevo Activate, you can also custom set your Snowflake to Zendesk reverse ETL Pipeline frequency. Choose real-time or from a variety of available sync frequencies. This provides complete flexibility for you to decide and sync data as per your need. 

Want to see Hevo Activate in action? Sign Up for a 14-day full feature access trial and see the reverse ETL action for yourself. 

Should you have any questions about the Snowflake to Zendesk Integration? Feel free to contact us in the comment section below.

Sync Data from Snowflake to Business Apps