> For the complete documentation index, see [llms.txt](https://docs.infotopics.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.infotopics.com/trulyp/data/semantic-providers.md).

# Semantic providers

A Semantic provider like VDS allows Trulyp to connect to an external semantic source, and import it as is from the source.

<figure><img src="https://2312557015-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWbWxEBax8PKTjFYRLWgi%2Fuploads%2FEB5kZCRIrDYJ63pWnw7T%2Fimage.png?alt=media&amp;token=245fe463-8129-4383-8173-a724985a68d8" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
To create a new Semantic provider, you will need to be logged into an account added through Tableau Sync. Read more about this in [Sync members & teams](/trulyp/tableau-sync.md)
{% endhint %}

### Provider details

When creating a new Semantic Provider, first complete the general information.

#### Label

Enter a descriptive name for the Semantic Provider. This name is used within Trulyp to identify the provider.

#### Description (Optional)

Optionally, add a description to explain the purpose of this Semantic Provider.

### Provider

{% tabs %}
{% tab title="Tableau VDS (VizQL Data Service)" %}
To configure a VDS Semantic Provider, you first need to create a **Tableau Connected App**.

### Create a Connected App in Tableau

1. Open **Tableau**.
2. Navigate to **Site Settings**.
3. Open the **Connected Apps** tab.
4. Click **New Connected App** and select **Direct Trust**.
5. Enter a name for the Connected App.
6. Click **Create**.
7. Open the newly created Connected App.
8. Here you can now copy over the '**Client ID**' this is one of the values you need in Trulyp.
9. By default a newly connected app is disabled in Tableau: Next to the connected app's name, select the actions menu and select '**Enable**'.

<figure><img src="https://2312557015-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWbWxEBax8PKTjFYRLWgi%2Fuploads%2FQwlfPedjXgYYragq2kso%2Fimage.png?alt=media&amp;token=f2e76636-c590-4929-ac57-0897463282f1" alt=""><figcaption></figcaption></figure>

### Generate a secret in the connected app

1. On the detail page of you're newly created connected app select '**Generate** **New Secret'**.
2. Here you can now copy over the 'Secret ID' and the 'Secret value', these are also needed in Trulyp.

After these first two steps you should have the following credentials from the connected app to further set it up:

* Client ID
* Secret ID
* Secret value

These values are required to configure the VDS provider in Trulyp.

### Configure the VDS Provider

#### Prerequisites

Before configuring a VDS Semantic Provider, ensure that each member who will use the provider has their **Platform Username** configured correctly in Trulyp.

The Platform Username **must exactly match** the username of the corresponding user in Tableau. To make this easier use [Sync members & teams](/trulyp/tableau-sync.md) for example. This username is used when authenticating through the Tableau Connected App.

> **Important:** If the Platform Username does not match the Tableau username, authentication will fail and the user will not be able to use the Semantic Provider.

Complete the VDS-specific configuration using the information from the Tableau Connected App.

<table data-search="false"><thead><tr><th>Field</th><th>Description</th></tr></thead><tbody><tr><td><strong>Connected App Label</strong></td><td>A descriptive name for the Connected App within Trulyp. (The connected app can be reused for other semantic providers, so a clear label can help for this)</td></tr><tr><td><strong>Tableau Deployment</strong></td><td>Select whether you are using Tableau Cloud or Tableau Server.</td></tr><tr><td><strong>Tableau Online Region</strong></td><td>Select the Tableau Cloud region of you're site. This automatically populates the Server URL. (Only applicable for Tableau Cloud.)</td></tr><tr><td><strong>Server URL</strong></td><td>Automatically populated for Tableau Cloud or manually enter the Tableau Server URL.</td></tr><tr><td><strong>Site Content URL</strong></td><td>The Tableau site slug (for example, <code>sales</code> from <code>/site/sales</code>).</td></tr><tr><td><strong>Client ID</strong></td><td>The Client ID from the Tableau Connected App.</td></tr><tr><td><strong>Secret ID</strong></td><td>The Secret ID from the Tableau Connected App.</td></tr><tr><td><strong>Secret Value</strong></td><td>The generated Secret Value from the Tableau Connected App.</td></tr></tbody></table>
{% endtab %}
{% endtabs %}

### Test Authentication

After completing the configuration, click **Test Authentication**.

Trulyp attempts to authenticate using the provided provider credentials

If the connection is successful, a confirmation message is displayed indicating that authentication succeeded.

### Access Control

Once authentication has been successfully verified, you can configure which teams are allowed to use this Semantic Provider.

Under **Authorized Teams**, select one or more teams.

* **Everyone** – All users can use this Semantic Provider.
* **Specific team(s)** – Only members of the selected team(s) can access the provider.

### Finish the Configuration

After reviewing the configuration, click **Finish Setup** to create the Semantic Provider.

When editing an existing provider, click **Save Changes** instead.

The Semantic Provider is now configured and ready to be used within Trulyp.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.infotopics.com/trulyp/data/semantic-providers.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
