Warehouses and Lakes
Sales & Support Analytics

How to load data from Freshdesk to Snowflake destination

Learn how to use Airbyte to synchronize your Freshdesk data into Snowflake destination within minutes.

TL;DR

This can be done by building a data pipeline manually, usually a Python script (you can leverage a tool as Apache Airflow for this). This process can take more than a full week of development. Or it can be done in minutes on Airbyte in three easy steps:

  1. set up Freshdesk as a source connector (using Auth, or usually an API key)
  2. set up Snowflake destination as a destination connector
  3. define which data you want to transfer and how frequently

You can choose to self-host the pipeline using Airbyte Open Source or have it managed for you with Airbyte Cloud.

This tutorial’s purpose is to show you how.

What is Freshdesk

Freshdesk is a service provided by Freshworks for handling the entire spectrum of customer engagement. A customer support software based in the Cloud, Freshdesk provides a scalable solution for managing customer support simply and efficiently. Freshdesk enables teams to track incoming tickets from a variety of channels; provide support across multiple platforms including phone, chat, and other messaging apps; categorize, prioritize, and assign tickets; prepare preformatted answer to common customer support questions; and much more.

What is Snowflake destination

A cloud data platform, Snowflake Data Cloud provides a warehouse-as-a-service built specifically for the cloud. The Snowflake platform is designed to empower many types of data workloads, and offers secure, immediate, governed access to a comprehensive network of data. Snowflake’s innovative technology goes above the capabilities of the ordinary database, supplying users all the functionality of database storage, query processing, and cloud services in one package.

Integrate Freshdesk with Snowflake destination in minutes

Try for free now

Prerequisites

  1. A Freshdesk account to transfer your customer data automatically from.
  2. A Snowflake destination account.
  3. An active Airbyte Cloud account, or you can also choose to use Airbyte Open Source locally. You can follow the instructions to set up Airbyte on your system using docker-compose.

Airbyte is an open-source data integration platform that consolidates and streamlines the process of extracting and loading data from multiple data sources to data warehouses. It offers pre-built connectors, including Freshdesk and Snowflake destination, for seamless data migration.

When using Airbyte to move data from Freshdesk to Snowflake destination, it extracts data from Freshdesk using the source connector, converts it into a format Snowflake destination can ingest using the provided schema, and then loads it into Snowflake destination via the destination connector. This allows businesses to leverage their Freshdesk data for advanced analytics and insights within Snowflake destination, simplifying the ETL process and saving significant time and resources.

Step 1: Set up Freshdesk as a source connector

1. Open the Airbyte dashboard and click on "Sources" on the left-hand side of the screen.

2. Click on the "Add Source" button and select "Freshdesk" from the list of available connectors.

3. Enter a name for the connector and click on "Next".

4. Enter your Freshdesk credentials, including your Freshdesk domain, API key, and password.

5. Click on "Test Connection" to ensure that the credentials are correct and the connection is successful.

6. Once the connection is successful, select the data you want to replicate from Freshdesk, including tickets, contacts, and companies.

7. Choose the replication frequency and the destination where you want to store the data.

8. Click on "Create Source" to save the configuration and start the replication process.

9. Monitor the replication process on the Airbyte dashboard and troubleshoot any errors that may occur.

10. Once the replication is complete, you can use the data in your destination of choice for analysis and reporting.

Step 2: Set up Snowflake destination as a destination connector

1. First, navigate to the Airbyte website and log in to your account.

2. Once you are logged in, click on the "Destinations" tab on the left-hand side of the screen.

3. Scroll down until you find the Snowflake Data Cloud destination connector and click on it.

4. You will be prompted to enter your Snowflake account information, including your account name, username, and password.

5. After entering your account information, click on the "Test" button to ensure that the connection is successful.

6. If the test is successful, click on the "Save" button to save your Snowflake Data Cloud destination connector settings.

7. You can now use the Snowflake Data Cloud destination connector to transfer data from your Airbyte sources to your Snowflake account.

8. To set up a data transfer, navigate to the "Sources" tab on the left-hand side of the screen and select the source you want to transfer data from.

9. Click on the "Create New Connection" button and select the Snowflake Data Cloud destination connector as your destination.

10. Follow the prompts to set up your data transfer, including selecting the tables or data sources you want to transfer and setting up any necessary transformations or mappings.

11. Once you have set up your data transfer, click on the "Run" button to start the transfer process.

Step 3: Set up a connection to sync your Freshdesk data to Snowflake destination

Once you've successfully connected Freshdesk as a data source and Snowflake destination as a destination in Airbyte, you can set up a data pipeline between them with the following steps:

  1. Create a new connection: On the Airbyte dashboard, navigate to the 'Connections' tab and click the '+ New Connection' button.
  2. Choose your source: Select Freshdesk from the dropdown list of your configured sources.
  3. Select your destination: Choose Snowflake destination from the dropdown list of your configured destinations.
  4. Configure your sync: Define the frequency of your data syncs based on your business needs. Airbyte allows both manual and automatic scheduling for your data refreshes.
  5. Select the data to sync: Choose the specific Freshdesk objects you want to import data from towards Snowflake destination. You can sync all data or select specific tables and fields.
  6. Select the sync mode for your streams: Choose between full refreshes or incremental syncs (with deduplication if you want), and this for all streams or at the stream level. Incremental is only available for streams that have a primary cursor.
  7. Test your connection: Click the 'Test Connection' button to make sure that your setup works. If the connection test is successful, save your configuration.
  8. Start the sync: If the test passes, click 'Set Up Connection'. Airbyte will start moving data from Freshdesk to Snowflake destination according to your settings.

Remember, Airbyte keeps your data in sync at the frequency you determine, ensuring your Snowflake destination data warehouse is always up-to-date with your Freshdesk data.

Use Cases to transfer your Freshdesk data to Snowflake destination

Integrating data from Freshdesk to Snowflake destination provides several benefits. Here are a few use cases:

  1. Advanced Analytics: Snowflake destination’s powerful data processing capabilities enable you to perform complex queries and data analysis on your Freshdesk data, extracting insights that wouldn't be possible within Freshdesk alone.
  2. Data Consolidation: If you're using multiple other sources along with Freshdesk, syncing to Snowflake destination allows you to centralize your data for a holistic view of your operations, and to set up a change data capture process so you never have any discrepancies in your data again.
  3. Historical Data Analysis: Freshdesk has limits on historical data. Syncing data to Snowflake destination allows for long-term data retention and analysis of historical trends over time.
  4. Data Security and Compliance: Snowflake destination provides robust data security features. Syncing Freshdesk data to Snowflake destination ensures your data is secured and allows for advanced data governance and compliance management.
  5. Scalability: Snowflake destination can handle large volumes of data without affecting performance, providing an ideal solution for growing businesses with expanding Freshdesk data.
  6. Data Science and Machine Learning: By having Freshdesk data in Snowflake destination, you can apply machine learning models to your data for predictive analytics, customer segmentation, and more.
  7. Reporting and Visualization: While Freshdesk provides reporting tools, data visualization tools like Tableau, PowerBI, Looker (Google Data Studio) can connect to Snowflake destination, providing more advanced business intelligence options. If you have a Freshdesk table that needs to be converted to a Snowflake destination table, Airbyte can do that automatically.

Wrapping Up

To summarize, this tutorial has shown you how to:

  1. Configure a Freshdesk account as an Airbyte data source connector.
  2. Configure Snowflake destination as a data destination connector.
  3. Create an Airbyte data pipeline that will automatically be moving data directly from Freshdesk to Snowflake destination after you set a schedule

With Airbyte, creating data pipelines take minutes, and the data integration possibilities are endless. Airbyte supports the largest catalog of API tools, databases, and files, among other sources. Airbyte's connectors are open-source, so you can add any custom objects to the connector, or even build a new connector from scratch without any local dev environment or any data engineer within 10 minutes with the no-code connector builder.

We look forward to seeing you make use of it! We invite you to join the conversation on our community Slack Channel, or sign up for our newsletter. You should also check out other Airbyte tutorials, and Airbyte’s content hub!

What should you do next?

Hope you enjoyed the reading. Here are the 3 ways we can help you in your data journey:

flag icon
Easily address your data movement needs with Airbyte Cloud
Take the first step towards extensible data movement infrastructure that will give a ton of time back to your data team. 
Get started with Airbyte for free
high five icon
Talk to a data infrastructure expert
Get a free consultation with an Airbyte expert to significantly improve your data movement infrastructure. 
Talk to sales
stars sparkling
Improve your data infrastructure knowledge
Subscribe to our monthly newsletter and get the community’s new enlightening content along with Airbyte’s progress in their mission to solve data integration once and for all.
Subscribe to newsletter

To streamline data management, data synchronization between different tools has become a common practice for organizations. One classic example of this is a connection between Freshdesk and Snowflake. Both tools differ from each other and have very specific use cases, features, and functionalities. While Freshdesk is a customer support tool, Snowflake is a modern storage system.

You might want to migrate from Freshdesk to Snowflake to perform advanced analysis on your customer support data. This includes predictive modeling, more comprehensive reporting, and integration with machine learning and BI tools to gain deeper insights into customer data for enhancing your products and services.

In this article, we will discuss two easy methods to integrate data from Freshdesk to Snowflake.

Freshdesk Overview

Freshdesk is a cloud-based customer support platform that provides help desk support with automation to get things done faster. With over 60,000 clients, Freshdesk has become one of the leading customer support tools. It offers many services that meet the requirements of data-driven organizations, including multi-channel support, gamification within customer support teams, and self-service portals. Some huge organizations that use Freskdesk for automated customer support include Bridgestone, Pearson, Decathlon, and Henkel.

Key features of Freshdesk include: 

  • Multi-channel support: Freshdesk creates an instant support service across multiple communication channels, such as chats, emails, phone calls, AI bots, and social networks like Facebook and Twitter, all in one platform. 
  • Productivity Hacks: As a unified platform, Freshdesk offers many features to increase productivity in the customer support team. It allows you to use tags to classify tickets so agents can find issues, notify automatically if changes happen in tickets, create reply templates for specific situations, and more.
  • Reporting & Analytics: Freshdesk provides excellent reporting and analytics capabilities for help desk support. Using its default dashboard, you can view metrics like ticket trends, performance distribution, ticket lifecycle, recent activities, and customer satisfaction.

Snowflake Overview

Snowflake is a widely used cloud-based data warehousing platform. Its storage system leverages a shared architecture that allows you to store and manage huge databases in real-time. Besides data warehousing, it provides a unified platform for many data management services, including data engineering, data science, and data analytics. Organizations leveraging its wide variety of services in their tech stack include Adobe, Sony, Capital One, and Tech Mahindra.

Some of the key features of Snowflake are mentioned below:

  • Semi-structured Data Support: Snowflake natively supports data formats like JSON, Avro, Parquet, and XML. Using the VARIANT data type, you can store and manage semi-structured data in its relational tables.
  • Dynamic Resource Management: The unique architecture of Snowflake does the dynamic modification of configurations and independent scaling of resources for you. This means you don't have to manage resources manually. The platform adapts to each usage scenario, ensuring efficient allocation of IO memory, CPU, and IO resources.
  • Elastic Scalability: Snowflake offers you the ability to scale on demand. Whether you're dealing with interactive analytics, batch data processing, or complex data pipelines, it can adjust its performance and capacity to meet varying workloads. Therefore, you don't have to worry about upfront capacity planning and maintenance of underutilized resources.

Methods to Load Data from Freshdesk to Snowflake

  • Method 1: Using Airbyte for Freshdesk to Snowflake Data Synchronization
  • Method 2: Using custom coding for moving data from Freshdesk to Snowflake

Method 1: Using Airbyte for Freshdesk to Snowflake Data Synchronization

Airbyte is a widely known data integration tool that automates the connection between Freshdesk and Snowflake. With its rich features and functionalities like extensive pre-built connectors, open-source nature, and intuitive user interface, you can streamline every complex task moving data between both systems.

Here's a detailed guide to using Airbyte for synchronizing Freshdesk and Snowflake: 

Step 1: Configure Freshdesk as a Source

  • Create an account or log in to Airbyte. 
  • Click the Sources tab on the left navigation bar of the home page. 
  • Look for the search field at the top of the Sources page and type in Freshdesk
  • Click on the Freshdesk connector card. 
  • You will see the Create a source page where you must fill in the API Key, Domain, and other Optional fields as per your requirements.
  • Click on Set up source.

Step 2: Configure Snowflake as a Destination

  • After configuring Freshdesk as the source, click on the Destinations tab from the left navigation bar.
  • On the Destinations page, look for the search field and type in Snowflake.
  • Click on the connector card that appears in the search results.
  • You'll see a Create a destination page where you must fill in the following fields: Host, Role, Warehouse, Database, Default_Schema, and Username.
  • Choose the appropriate Authorization Method between OAuth2.0, Key Pair Authentication, Username, and Password.
  • Click Set up destination.

Step 3: Connect Source and Destination

  • Now that you have configured a source and destination in the cloud application of Airbyte, you must establish a connection between the tools. To perform this task, simply click the Connections tab from the left navigation bar.
  • On the Connections page, click on the Create a connection button.
  • Add Freshdesk as a source and Snowflake as the destination.
  • Configure the other connection details and provide a unique Connection Name. You can tweak details, including Sync mode, Streams section, and Replication frequency.
  • Lastly, click on Set up connection > Sync now to start synchronization.

That's all it takes to successfully move data from Freshdesk to Snowflake in just a few clicks.

Method 2: Using Custom Coding for Moving Data from Freshdesk to Snowflake

In this method, we will manually export the data from Freshdesk in CSV file format and copy it into the Snowflake warehousing platform. Here is a detailed guide:

Step 1: Export Freshdesk Data in a CSV file

  • Log in to your existing Freshdesk account. You can perform this task by entering yourcompanyname.freshdesk.com in the input box of the login page. 
  • On your Freshdesk dashboard, click on the Contacts tab in the navigation bar.
  • In the Contacts section, click Export.
  • A window pops up. Select the fields you wish to export.
  • Optionally, click on the Details button to get all the details about the export. Here, you'll see information like selected time periods, contact fields, ticket fields, and other information.
  • Click on the Export button at the bottom.
  • A file containing your selected data will be downloaded in CSV format.

Step 2: Import Freshdesk Data CSV File into Snowflake

For this step, we will use Snowsight to import the CSV file because of its ease of use.

  • Login to Snowsight.
  • You'll be directed to the home page. Create a database for your Freskdesk data by selecting Data > +Database from the top left navigation bar.
  • Give your database a unique name, such as Freshdesk_data.
  • Select the database you just created and click the +Schema button. Give your schema a unique name.
  • Create a table inside that schema by clicking Create > Table > Standard
  • You'll be navigated to the interface where you write SQL queries to create your table. Use the CREATE TABLE statement and make a table that matches your CSV file's columns and names.
  • Click Create to run the SQL query and create the table.
  • Select the table you just created and click the Load Data button. A pop-up will appear to upload a file from your system; select the CSV file you downloaded from Freshdesk in Step 1.
  • Set the file format as CSV and configure other settings according to your requirements.
  • Click on Next.
  • You can preview the data from your Data Preview pane on the Snowsight interface.

Note: Ensure the structure of your Snowflake database table matches the CSV file's structure; otherwise, the data will not be formatted correctly. 

That concludes the manual method to successfully replicate Freshdesk data to Snowflake by exporting and importing CSV files between both systems.

Limitations of Using the Manual Method

  • Latency: The manual Freshdesk to Snowflake data integration introduces delay as it relies on human intervention to initiate and complete the process. This delay can impact data availability in Snowflake, particularly for reporting requirements.
  • Time and Expertise Requirement: Connecting Freshdesk and Snowflake can be time-consuming and complicated, especially for huge datasets. In addition, it requires a deep level of expertise and a thorough understanding of how both systems work.

Conclusion

You have explored two straightforward ways to integrate data from Freshdesk to Snowflake. The first method uses Airbyte to streamline the data migration process. All it takes are a few clicks to connect Freshdesk to Snowflake using this method. On the other hand, the manual method requires considerable effort. First, you must export the CSV file from Freshdesk, create a database on Snowflake, configure the database schema to match CSV, and then import the CSV file successfully. Consider using Airbyte to perform the Freshdesk to Snowflake integration, as you automate almost every aspect of the data pipeline process. Using its pre-built connectors and easy-to-use interface, you not only streamline the connection between Freshdesk and Snowflake but also any source or destination of your choice.

What should you do next?

Hope you enjoyed the reading. Here are the 3 ways we can help you in your data journey:

flag icon
Easily address your data movement needs with Airbyte Cloud
Take the first step towards extensible data movement infrastructure that will give a ton of time back to your data team. 
Get started with Airbyte for free
high five icon
Talk to a data infrastructure expert
Get a free consultation with an Airbyte expert to significantly improve your data movement infrastructure. 
Talk to sales
stars sparkling
Improve your data infrastructure knowledge
Subscribe to our monthly newsletter and get the community’s new enlightening content along with Airbyte’s progress in their mission to solve data integration once and for all.
Subscribe to newsletter

Frequently Asked Questions

What data can you extract from Freshdesk?

Freshdesk's API provides access to a wide range of data related to customer support and service management. The following are the categories of data that can be accessed through Freshdesk's API:  

1. Tickets: Information related to customer support tickets, including ticket ID, status, priority, and requester details.  

2. Contacts: Data related to customer contacts, including contact ID, name, email address, and phone number.  

3. Agents: Information about support agents, including agent ID, name, email address, and role.  

4. Companies: Data related to companies that use Freshdesk for customer support, including company ID, name, and domain.  

5. Conversations: Information related to customer conversations, including conversation ID, status, and participants.  

6. Knowledge base: Data related to the knowledge base, including articles, categories, and folders.  

7. Surveys: Information related to customer satisfaction surveys, including survey ID, status, and responses.  

8. Time entries: Data related to time entries for support agents, including time spent on tickets and activities.  

9. Custom fields: Information related to custom fields created in Freshdesk, including field ID, name, and value.  

Overall, Freshdesk's API provides access to a comprehensive set of data that can be used to improve customer support and service management.

What data can you transfer to Snowflake destination?

You can transfer a wide variety of data to Snowflake destination. This usually includes structured, semi-structured, and unstructured data like transaction records, log files, JSON data, CSV files, and more, allowing robust, scalable data integration and analysis.

What are top ETL tools to transfer data from Freshdesk to Snowflake destination?

The most prominent ETL tools to transfer data from Freshdesk to Snowflake destination include:

  • Airbyte
  • Fivetran
  • Stitch
  • Matillion
  • Talend Data Integration

These tools help in extracting data from Freshdesk and various sources (APIs, databases, and more), transforming it efficiently, and loading it into Snowflake destination and other databases, data warehouses and data lakes, enhancing data management capabilities.