> ## Documentation Index
> Fetch the complete documentation index at: https://honeydew.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Retool

There are two ways to connect **Retool** to Honeydew:

1. Via a **JDBC** connection, using the **Presto** protocol
2. Via a **Snowflake** connection, utilizing the [Honeydew Snowflake Native Application](/docs/integration/snowflake-native-app)

## Setting up a new Presto Data Source

Retool data sources are mapped to a Honeydew workspace and branch

<Tip>
  It is recommended to use an [API Key](/docs/access-control/api-keys) for setting up the connection.
</Tip>

1. Go to **Resources** and click on **Create New** > **Resource**

2. Search **Presto** from the full list of resource types, in the **Database** section

3. Click on **Presto**

4. Set a **Name** for the resource

5. Optionally, set a **Description** for the resource

6. Enter the following **Connection String** as the input:

   ```
   jdbc:presto://jdbc.honeydew.cloud:443/<workspace>__<branch>?user=<api key>&password=<api secret>
   ```

   Where `<api key>` is the generated API key, and `<api secret>` is the corresponding API secret.

   Or alternatively:

   ```
   jdbc:presto://jdbc.honeydew.cloud:443/<workspace>__<branch>?user=<user>&password=<password>
   ```

   Where `<user>` is a Honeydew username, and `<password>` is that user's password.

   <Note>
     API key and API secret (or alternatively, user and password) must be url-encoded.,
     i.e. `user@domain.com` is `user%40domain.com`.
     Encoding can be done using python (`from urllib.parse import quote_plus`), or via any urlencode website.
   </Note>

   <Note>
     If your organization uses a custom hostname for the JDBC connection,
     you can locate it in the Honeydew UI, under the **JDBC** section in **Settings**.
   </Note>

   For example, for user `user@domain.com`, password `123456` and workspace `tpch` (`prod` branch) the URI would be:

   ```
   jdbc:presto://jdbc.honeydew.cloud:443/tpch?user=user%40domain.com&password=123456
   ```

   And for `dev` branch:

   ```
   jdbc:presto://jdbc.honeydew.cloud:443/tpch__dev?user=user%40domain.com&password=123456
   ```

7. Click **Test Connection** to verify the connection settings

8. Click **Create resource**

You can now create queries and applications on top of the Honeydew database resource, just like with any other data resource.
For more information on how to use the Honeydew SQL interface, refer to [this section](/docs/integration/sql-interface).

## Connecting via Snowflake Connection using the Snowflake Native Application

1. Create a Snowflake data source connection in the account where you have
   the [Honeydew Snowflake Native Application](/docs/integration/snowflake-native-app) installed
2. In query editor for a new query, use the Honeydew Snowflake Native Application
   [query interfaces](/docs/integration/snowflake-native-app#queries) (`SELECT_FROM_FIELDS` or `SELECT_FROM_QUERY`)
   to query the data.
