Skip to main content
Typeform is a platform for creating online forms, surveys, and quizzes with a user-friendly interface. It provides an interactive way to collect and analyze data from users through customizable forms.

Configuring Typeform as a Source

In the Sources tab, click on the “Add source” button located on the top right of your screen. Then, select the Typeform option from the list of connectors. Click Next and you’ll be prompted to add your access.

1. Add account access

You’ll need your Typeform Personal Access Token for this connection. You can find it in your Typeform developer settings. The following configurations are available:
  • Access Token: The personal access token used to authenticate against the API service.
  • Form ID (optional): The ID of the form to sync. The form ID can be found in the share URL (for example, in the URL https://form.typeform.com/to/DldPkDcN the ID is DldPkDcN). If not provided, all forms will be synced.
    • Single Form Mode: When you provide a Form ID, the connector will only sync data from that specific form.
    • Multiple Forms Mode: When no Form ID is provided, the connector will sync all forms and their responses. In this mode, all responses from all forms will be available in a single responses table.
  • Start Date: The earliest record date to sync. Only responses submitted after this date will be extracted.
Once you’re done, click Next.

2. Select streams

Choose which data streams you want to sync - you can select all streams or pick specific ones that matter most to you.
Tip: The stream can be found more easily by typing its name.
Select the streams and click Next.

3. Configure data streams

Customize how you want your data to appear in your catalog. Select a name for each table (which will contain the fetched data) and the type of sync.
  • Table name: we suggest a name, but feel free to customize it. You have the option to add a prefix and make this process faster!
  • Sync Type: you can choose between INCREMENTAL and FULL_TABLE.
    • Incremental: every time the extraction happens, we’ll get only the new data - which is good if, for example, you want to keep every record ever fetched.
    • Full table: every time the extraction happens, we’ll get the current state of the data - which is good if, for example, you don’t want to have deleted data in your catalog.
Once you are done configuring, click Next.

4. Configure data source

Describe your data source for easy identification within your organization, not exceeding 140 characters. To define your Trigger, consider how often you want data to be extracted from this source. This decision usually depends on how frequently you need the new table data updated (every day, once a week, or only at specific times). Optionally, you can determine when to execute a full sync. This will complement the incremental data extractions, ensuring that your data is completely synchronized with your source every once in a while. Once you are ready, click Next to finalize the setup.

5. Check your new source

You can view your new source on the Sources page. If needed, manually trigger the source extraction by clicking on the arrow button. Once executed, your data will appear in your Catalog.
For you to be able to see it on your Catalog, you need at least one successful source run.

Streams and Fields

Below you’ll find all available data streams from Typeform and their corresponding fields:
Stream containing form definitions and configurations.Key Fields:
  • id - Unique identifier for the form
  • type - Type of the form
  • title - Title of the form
  • created_at - Time of the form’s creation
  • last_updated_at - Time of the last update
  • published_at - Time when the form was published
Settings:
  • settings object containing:
    • language - Form language code
    • progress_bar - Progress bar type
    • is_public - Whether the form is public
    • is_trial - Whether the form is in trial mode
    • show_progress_bar - Whether to show progress bar
    • show_typeform_branding - Whether to show Typeform branding
    • are_uploads_public - Whether uploaded files are public
    • show_time_to_complete - Whether to show completion time
    • show_number_of_submissions - Whether to show submission count
    • show_cookie_consent - Whether to show cookie consent
    • show_question_number - Whether to show question numbers
    • autosave_progress - Whether to autosave progress
    • free_form_navigation - Whether free navigation is enabled
Fields: Array of form fields containing:
  • id - Field ID
  • title - Field title
  • ref - Field reference
  • type - Field type
  • properties - Field configuration including:
    • randomize - Whether choices are randomized
    • allow_multiple_selection - Whether multiple selections are allowed
    • allow_other_choice - Whether custom choices are allowed
    • choices - Array of available choices
  • validations - Field validation rules
Thank You Screens: Array of end screens containing:
  • id - Screen ID
  • ref - Screen reference
  • title - Screen title
  • type - Screen type
  • properties - Screen configuration
Links:
  • _links object containing:
    • display - URL for the actual form
    • responses - URL for the responses API
Stream containing form submissions and answers.Key Fields:
  • form_id - ID of the form this response belongs to
  • response_id - Unique identifier for the response
  • landing_id - Landing ID
  • token - Response token
  • response_type - Type of response (e.g., completed)
  • landed_at - Time when respondent landed on form
  • submitted_at - Time when response was submitted
Metadata:
  • metadata object containing:
    • browser - Browser used
    • platform - Platform used
    • user_agent - User agent string
    • network_id - Network identifier
    • referer - Referrer URL
Answers: Array of answers containing:
  • type - Answer type
  • field - Field information:
    • id - Field ID
    • ref - Field reference
    • type - Field type
  • Answer value (one of):
    • text - Text response
    • email - Email response
    • number - Numeric response
    • boolean - Boolean response
    • phone_number - Phone number response
    • date - Date response
    • file_url - File upload URL
    • choice - Single choice response
    • choices - Multiple choice response
Variables: Array of variables containing:
  • key - Variable key
  • type - Variable type
  • text - Text value
  • number - Numeric value
Additional Data:
  • hidden - Hidden field values
  • calculated - Calculated values including scores

Data Model

The following diagram illustrates the relationships between the data streams in Typeform:

Usage Modes

Single Form Mode

When configuring the source with a specific Form ID:
  • Only data from the specified form will be extracted
  • The Forms stream will contain a single record
  • The Responses stream will only contain responses for that form
  • Useful when you only need data from a specific form

Multiple Forms Mode

When configuring the source without a Form ID:
  • Data from all accessible forms will be extracted
  • The Forms stream will contain all your forms
  • The Responses stream will contain responses from all forms in a single table
  • Each response will have a form_id field to link it to its form
  • Useful when you need to analyze data across multiple forms
I