Surveys

With this end-to-end flow you can extract your updated data from your project survey tool (Typeform) and bring it into Keboola. After all the necessary tasks are performed on the data, you can transform the results into visualizations in any BI tool of your choice.

By using our survey template, you will get an overview of all your surveys, questions, and responses.

The flow, in a nutshell:

  • First, the Survey source component (extractor) will collect data from your account: lists of forms, questions, and responses, and basic form statistics.

  • We will then prepare four tables (surveys, questions, answer options, and responses) that can be used to visualize survey results.

  • The data will be written into a Snowflake database, Big Query database or google sheet via destination component (writer).

  • Finally, you will schedule and run the entire flow (i.e., the sequence of all the prepared, above mentioned steps, in the correct order). The survey source component, all data manipulations, and the destination component of your choice, will be processed.

Entity Relationship Diagram

An entity-relationship diagram is a specialized graphic that illustrates the relationships between entities in a data destination.

Business Data Model

Table Description

Name Description
ANSWER OPTION list of choices for each question
QUESTION list of questions, their description, position, and visibility
RESPONSES list of responses for each question
SURVEY list of surveys

Data Sources

These data sources are available in Public Beta:

Data Destinations

These data destinations are available in Public Beta:

How to Use Template

The process is simple. We will guide you through it, and, when needed, ask you to provide your credentials and authorize the destination component.

First decide which data source and which data destination you want to use. Then select the corresponding template from the Templates tab in your Keboola project. When you are done, click + Use Template.

Add New Template

This page contains information about the template. Click + Use Template again.

Add Typeform to Snowflake

You’ll be asked to write a name for the template instance you are about to create. You can use the template as many times as you want and still keep everything organized.

Typeform to Snowflake - Template Name

After clicking Next Step, you will see the template builder. Fill in all needed credentials and perform the required OAuth authorizations.

Important: Make sure to follow all the steps very carefully to prevent the newly created flow from failing because of any user authorization problems. If you are struggling with this part, go to the section Authorizing Data Destinations below.

Follow the steps one by one and authorize at least one data source from the list. Finally, the destination must be authorized as well.

Typeform to Snowflake

When you are finished, click Save in the top right corner. The template builder will create your new configuration, and when it is done, you will see the newly created flow.

Click Run Template and start building your visualizations a few minutes later.

Typeform to Google Sheets - Flows

Authorizing Data Sources

To use a selected data source component, you must first authorize the data source.

Typeform

Insert your Typeform API token.

Typeform Data Source

Authorizing Data Destinations

To create a working flow, you must select at least one data destination.

BigQuery Database

BigQuery Destination

To configure the destination component, you need to set up a Google Service Account and create a new JSON key.

A detailed guide is available here.

Google Sheets

Google Sheets Destination

Authorize your Google account.

Duplicate the sheet into your Google Drive and paste the file ID back to Keboola. It is needed for correct mapping in your duplicated Google sheet.

Snowflake Database Provided by Keboola

If you do not have your own data warehouse, follow the instructions and we will create a database for you:

  1. After clicking Save, the template will be used in your project. You will see a flow.
  2. Go there and click on Snowflake Data Destination to configure it. You will be redirected to the data destination configuration and asked to set up credentials.
  3. Select Keboola Snowflake database.
  4. Then go back to the flow and click Run.

DWH Provided by Keboola DWH Provided by Keboola DWH Provided by Keboola DWH Provided by Keboola

Everything is set up.

Snowflake Database

If you want to use your own Snowflake database, you must provide the host name (account name), user name, password, database name, schema, and a warehouse.

Snowflake Destination

We highly recommend that you create a dedicated user for the destination component in your Snowflake database. Then you must provide the user with access to the Snowflake Warehouse.

Warning: Keep in mind that Snowflake is case sensitive and if identifiers are not quoted, they are converted to upper case. So if you run, for example, a query CREATE SCHEMA john.doe;, you must enter the schema name as DOE in the destination component configuration.

More info here.

Most Common Errors

Before turning to the Keboola support team for help, make sure your error is not a common problem that can be solved without our help.

Missing Credentials to Snowflake Database

If you see the error pictured below, you have probably forgotten to set up the Snowflake database.

Click on the highlighted text under Configuration in the top left corner. This will redirect you to the Snowflake Database component. Now follow the Snowflake Database provided by Keboola on the page Authorizations/destinations.

Then go to the Jobs tab and Run the flow again.

Job - Snowflake