Your Quick Start to Mendix–Teamcenter Integrations

Key takeaways
- The Teamcenter Extension Sample App is the best place to start your journey integrating Mendix with Teamcenter. By using the Sample App, you’ll get a running start because you have a set of integrations that work out-of-the-box.
- How to authenticate to Teamcenter depends on your environment. Setting up authentication for Teamcenter X is different than for traditional Teamcenter. It’s important to follow all the required steps for your setup.
- The Teamcenter Extension Sample App is the perfect way to understand how integrations with Teamcenter from Mendix work under the hood. You can inspect how the most common types of integrations are set up directly in Studio Pro.
In this guide you’re going to set up your first application which integrates with your Teamcenter environment. Our goal is to get the Teamcenter Extension Sample App up and running and add our first own integration. Please ensure you have access to a Teamcenter or Teamcenter X environment to be able to follow all the steps in this guide.
The Teamcenter Extension Sample App already includes both the Teamcenter Connector and the Teamcenter Extension. In this guide, you’ll only be using the Teamcenter Connector to make your first calls to Teamcenter. In a follow-up blog post, you will also use the Teamcenter Extension to create a new custom integration. To learn more about these modules, please read our recent blog post on that exact topic!
1 – Creating your app
We’ll create a new app with Mendix Studio Pro 10.24.2 and use the Teamcenter Extension Sample App v4.1.0 as our starting point. Create your app using one of the following two methods.
- Option 1: To do so, first open Studio Pro and select Create New App. From the overview of available starter apps, select the Teamcenter Extension Sample App.

- Option 2: Alternatively, navigate to the Teamcenter Extension Sample App marketplace page and choose Start with App to go through the app creation wizard. Note that the app will be created in Mendix version 10.12.6, so make sure open the app in Studio Pro version 10.24.2 and upgrade it.

As soon as the project is opened in Studio Pro for the first time, you will be prompted to enable the add-on module TeamcenterExtension.mxmodule. Make sure to choose Trust module and enable extension.

We’re now greeted by our newly created app in Studio Pro. Let’s start by solving the error that shows up in the error pane. The error prompts us to set a value for the Encryption key, which is needed to securely store credentials in the app.
Double click the error to open the app settings dialog.

In the settings dialog open the Default configuration, go to the Constants tab and set the EncryptionKey constant to a key of exactly 32 characters. Use your method of choice to generate a secure key.

Now we’re ready to start configuring our application to connect to Teamcenter.
2 – Connecting to Teamcenter
Run the project and view the app. Log in as the MxAdmin user.

We’re greeted with this configuration page for the Administrator. Click Configure Teamcenter.

On this page we’ll find a list of all our Teamcenter configurations. A Teamcenter configuration is required for each instance you want to connect to. The list is currently empty, so we’re going to create our configuration.

How we continue depends on your Teamcenter environment. If the environment is Teamcenter (traditional) and set up to authenticate using credentials, continue with section 2.1. If the environment is Teamcenter (traditional) but uses SSO to authenticate, continue with section 2.2. If you have access to a Teamcenter X Premium environment, go to section 2.3.
2.1 – Connect using credentials
Continue with this section if you have an environment where you authenticate using credentials. On the Teamcenter Configurations page, click New and configure your Teamcenter instance. In this case, you only need the Teamcenter Host Address and the Teamcenter FMS URL, like below. If your domain starts with https, you may need to import the client certificate of your Teamcenter instance per the documentation on this page.

Save the configuration. Use the demo switcher on the right-hand side of the page and switch to demo_user.

Here we’re greeted by the user dashboard. Currently, we’re logged in to our Mendix app but not yet to our Teamcenter instance. Press Teamcenter Login.

Enter your username and password and sign in. The Group and Role fields could be required, but this is often not the case.

If everything went correctly, you’re now greeted by the user dashboard. The tile on the right indicates the user has a valid Teamcenter Session. At this point, you’re ready to continue to section three to make your first call from Mendix to Teamcenter.

2.2 – Connect to SSO
Continue with this section if you have a traditional Teamcenter environment where you authenticate using SSO. First, we need to return to Studio Pro. Go to App Settings, and on the Runtime tab set the After startup microflow to SSO_RegisterRequestHandlers from the TcConnector module. Restart the application and return to the Teamcenter Configuration page.

On the Teamcenter Configurations page, click New and configure your Teamcenter instance. Set SSO Enabled to Yes. The values below are applicable to the environment used as an example in this guide, but your endpoints may differ.
If you’re unsure how to configure these fields, please refer to section 6b in the Teamcenter Connector documentation page Configure to connect to Teamcenter, and make sure to reach out to your Teamcenter administrator.
If you have not yet added your Mendix application to the Application Registry Table, refer to this documentation page. Your domain likely starts with https. If so, you may need to import the client certificate of your Teamcenter instance per this Mendix documentation page.

Save the configuration. Use the demo switcher on the right-hand side of the page and switch to demo_user.

Here we’re greeted by the user dashboard. Currently, we’re logged in to our Mendix app but not yet to our Teamcenter instance. Press Teamcenter Login and authenticate on your SSO login page.

After successfully logging in you should be redirected back to your Mendix application, where you’re signed in as demo_user and greeted by the user dashboard. The tile on the right indicates the user has a valid Teamcenter Session. At this point, you’re ready to continue to section three make your first Teamcenter call from Mendix.

If your callback returns you to a browser error page like the one below (the exact page differs per browser) there are three important considerations to keep in mind:
- Confirm your application is registered using uid as LDAP Username Attribute in the Application Registry table.
- When registering your application, you need separate app registrations for the callback to localhost (for local development/testing purposes) and the callback to your cloud hosted application
- Confirm you have the required TLS/SSL certificates added in the project settings of your app
- Confirm the port of the callback URL is identical to the project runtime port

2.3 – Connect to Teamcenter X SSO
Continue with this section if you have a Teamcenter X environment. First, we need to return to Studio Pro. Go to the App Settings, and on the Runtime tab set the After startup microflow to OIDC.ASU_OIDC_Startup. Restart the application and return to the Teamcenter Configuration page.

On the Teamcenter Configurations page, click New and configure your Teamcenter instance. Set Is TcX Environment to Yes. The values below are applicable to the environment used as an example in this guide, but your endpoints may differ. If you’re unsure how to configure these fields, please contact your Siemens CApS team. Your domain likely starts with https. If so, you may need to import a certificate per this Mendix documentation page.

After filling out all required details, save your Teamcenter configuration. Return to the configuration page for the Administrator. Two new buttons should now be present. Click Configure MxModelReflection.

Check the Administration, MxModelReflection, OIDC, and System module and click Synchronize modules and all entities and microflows of checked modules.

When that is done, return to the configuration page for the Administrator and click Configure OIDC.

On the OIDC Provider Configuration click New to create a new OIDC configuration.

Enter the Alias, Client ID, and Client Secret. Enter the Automatic Configuration URL and click Import Configuration. If you’re unsure how to configure these fields, please contact your Siemens CApS team. Press Save at the very bottom of the page before we can continue with the next step.

Open the same OIDC Configuration again and add the following scopes: openid, profile, email, sam_account, samauth.ten. Save the configuration again.

Open the same OIDC Configuration again and go to the UserProvisioning tab. Set the The attribute where the user principal is stored to Email. Under Attribute Mapping set the mappings like in the screenshot. Save the configuration again.

Logout of the application and click on the TcX SSO sign in button.

Sign in as a user authenticated to the Teamcenter X instance. After successfully logging in you are redirected back to your Mendix application. Currently, the user is logged in to Mendix but not yet to Teamcenter, as indicated by the tile on the right. Click Teamcenter login.

After a moment, the tile on the right indicates the user has a valid Teamcenter Session. At this point, you’re ready to continue to section three to make your first call from Mendix to Teamcenter.

If your callback returns you to a browser error page like the one below (the exact page differs per browser) there are three important considerations to keep in mind:
- Confirm you have the required TLS/SSL certificates in your project settings
- Confirm the port of the callback URL is identical to the project runtime port
- When registering your application, you need separate app registrations for the callback to localhost and the callback to your cloud hosted application

If you need help registering the Mendix application and callback URL, onboarding users or need to confirm you have the right tier of Teamcenter X please contact your Siemens CApS team.
3 – Testing the app
Now that we’re logged in to Mendix and Teamcenter, the Sample App provides us with a selection of calls that are already implemented. Each of these integrations has been generated by the Teamcenter Extension and implemented in the sample app. In the next blog post in this series, we’re going to implement a newly generated integration. But for now, let’s have a look at some of the already generated integrations. Start by clicking on Search ItemRevision to start searching for item revisions.

The following page implements the Item Revision… saved query search from Teamcenter. In this implementation the Name, Item ID, and Item revision type fields are available. Search for an item revision by a name that you know is present in your Teamcenter environment.
You can search with just an asterisk to find all item revisions and derived object types. Be careful though, since this will return all matching objects so this call may take a very long time. More specific search parameters will result in faster searches.

This page displays the search results after the call to Teamcenter is completed. Click on any Item Revision to see more details. In addition to this functionality, the sample app contains implementation for: Update and Revise the selected Item Revision; show a structure (e.g. a BOM) either with a default or custom configuration; manage the item revision’s attached datasets; or create a New problem report for the item revision.

Back on the home page, there are three additional buttons. Search WorkspaceObject is an implementation of the General… saved query search. Search Datasets is an implementation of the Dataset… saved query search. Create Item creates a new item together with its first item revision.

The Teamcenter Extension Sample App showcases these existing integrations but also helps you understand how they were implemented using the Teamcenter Extension. If we look at the microflow DS_ItemRevisionSearchCriteria_GetDemoItemRevisions, the annotation informs us that the sub-microflow DemoItemRevision_SavedQueryItemRevision is generated by the Teamcenter Extension. This microflow, as implemented in the Sample App, currently works as-is. However, we could also replace it with another microflow generated by the Teamcenter Extension, which we’ll do an upcoming blog post.

I’d like to encourage you to try and explore this functionality yourself. Don’t be afraid to investigate and experiment!
Wrapping Up Your First Mendix–Teamcenter Integration
Congratulations on setting up this application integrating Mendix with Teamcenter! The Teamcenter Extension Sample App provides a strong foundation, offering out-of-the-box functionality and insights into Mendix-Teamcenter interactions. With different connection methods—via credentials, SSO, or Teamcenter X—you now have the tools to expand your integrations. Feel free to explore and experiment with the app’s features in Studio Pro, and remember to make use of documentation and community resources if you need assistance.
Frequently Asked Questions
-
What’s the best way to get started with Mendix and Teamcenter integration?
Start using the Teamcenter Extension Sample App, as it provides ready-to-use integrations and helps you quickly set up your application. Follow the detailed steps in the guide to get it running, and refer to the official documentation for additional support.
-
Why is my Mendix app failing to connect to Teamcenter?
Make sure you’ve completed all required setup steps, including setting constants, importing certificates, and configuring callback URLs correctly. Review the troubleshooting tips in each section of this guide, and if you’re still stuck, consult the Teamcenter Community Space for advice.
-
Where can I find help or resources for Mendix and Teamcenter projects?
You can access Teamcenter Extension documentation for detailed guidance or visit the Teamcenter Community Space to connect with other developers, ask questions, and share solutions.