# Typeform

## Authentication methods

#### Personal Access Token

To generate a token:

1. Visit <https://admin.typeform.com/user/tokens>
2. Generate a new token
3. Give it any name, then select the following Scopes:

   Forms: Read\
   Responses: Read\
   Workspaces: Read

Make note of the generated token and provide it during connection creation.

## Inbound Syncs

For each inbound sync, a single workspace is selected and responses for multiple forms can be included in the sync.

Each form will appear as two streams: **\<form name> - Responses** and **\<form name> - Answers**.

The reason for this is that each response contains an array of answers, and it would require some flattening within Snowflake to extract them. To avoid this, we offer the two streams, where each "Answers" stream record contains a **response\_id** to link to its parent Response.

Naturally you would want to choose both streams for each form that you need the responses from.

Also, each form stream is referenced by its name, rather than its ID. This is deliberate, so that if different workspaces are used like environments containing the same form definitions, these can be toggled by a branch-only workspace parameters.

### Supported Sync Strategies

* Full Refresh, Incremental

## Outbound Syncs

There is currently no outbound syncing support for this App, but please let us know if you have a use case in mind.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.omnata.com/omnata-product-documentation/omnata-sync-for-snowflake/apps/typeform.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
