# Teamcenter FAQ

<details>

<summary>How does the Teamcenter integration work?</summary>

Violet operates in a hub-and-spoke architecture: Violet is the hub, and each integrated app is a spoke.

First, a persistent connection is established between Violet and an app. This connection can be made in a variety of ways depending on the app:

* Basic authentication (username and password)
* API token
* OAuth (via Single Sign-On or Client ID & Secret)

Once connected, Violet fetches data from the app on a user-specified time interval (for example, every hour). Violet structures all data in a Violet Data Language and stores it in its own SQL database.&#x20;

Upon each fetch, if there are any changes in the data, Violet updates the database. In doing so, Violet maintains a history of all data changes over time.

</details>

<details>

<summary>What's needed in order to connect to an on-prem instance of Teamcenter?</summary>

We’ll need to set up a couple things to enable the connection:

* Violet will need access to your Teamcenter server, which is either via simple allowlisting or VPN.
* Let us know if you have any Custom Item Types or Custom Properties in Teamcenter.
* We’ll need a read-only Violet user account for your Teamcenter instance, and access to Active Workspace if you have it.

Complete instructions are provided [here](https://docs.violetlabs.com/apps/t/teamcenter/broken-reference).

</details>

<details>

<summary>What's needed in order to connect to Teamcenter X?</summary>

In order to connect to Teamcenter X, your instance will need to have the **Expanded API Support** provided by Siemens. This option is available for any tier/plan of Teamcenter X.

</details>
