Recently active
Hello Everyone,I have a ThingWorx instance hosted on an OCI (Oracle Cloud Infrastructure) server, and I would like to enable Single Sign-On (SSO) for the platform.I am not sure about the correct steps or prerequisites for configuring SSO in this setup. Could you please guide me on the following:What are the requirements for enabling SSO on a ThingWorx server hosted in OCI?Which SSO protocols are supported (e.g., SAML, OAuth, OpenID Connect)?Is there any documentation or step-by-step guide available for configuring SSO in this environment?Do I need to make any additional configurations on the OCI side (networking, certificates, identity provider integration, etc.)?Any best practices or common issues to be aware of.can we have both native login and sso enabledAny help, references, or examples would be greatly appreciated.Thank you!
Hi,I am using the Application Key as of now to access services and Mashup for the end user. (Adding APP key in URL)If I use the SSO moving forward, how can I access those services and Mashups now?Thanks,
Hi I upgraded ThingWorx from 9.3.x to 9.7.3 yesterday. And after the upgrade the JDBC connecting Thing to MSSQL is not connecting.I have even upgraded and installed the new JDBC extension 2.1.0 as well.
Hi everyone, I have a DataTable with several entries. When I click an entry, a service runs and loads the images from the imagePath stored in that entry. Everything works fine normally — the Collection widget displays the correct images. However, when I switch between entries very very fast, sometimes the images from a previous entry stay visible and do not update, even though the selected entry has changed. It looks like the Collection widget doesn’t refresh properly when service calls overlap or happen too quickly. Has anyone experienced this behavior or found a reliable way to force-refresh the Collection widget when rapidly changing entries? Thanks,Jamal
I'm having a problem getting Flow 10 to get configured with Foundation 10. All the services start and I can connect to Foundation via the Flow nginx port but I get the following error when running WorkflowSubsystem.ValidateFlowSetup: Found 1 issues. [FLOW-API-01] - Failed to connect to Flow: Internal Server Error For more information, refer to the 'Troubleshooting Your Installation' topic in the Help Center. The ApplicationLog has these errors: 2025-11-21 14:29:06.092+0000 [L: ERROR] [O: c.t.s.s.f.WorkflowSubsystem] [I: ] [U: Administrator] [S: ] [P: ] [T: https-openssl-nio-8443-exec-7] Failed to get Delegated UserOAuths : Internal Server Error 2025-11-21 14:29:06.092+0000 [L: ERROR] [O: c.t.f.f.FlowDelegatedOAuthFilter] [I: ] [U: Administrator] [S: ] [P: ] [T: https-openssl-nio-8443-exec-7] Unable to initialize session attributes I don't have SSO currently enabled although I did have it on in previous attempts so I'm not sure with there is an OAuth error.
Hi everyone, I am currently designing a simplified deployment setup for our ThingWorx environment based on the standard multi-stage pipeline. Our planned flow looks like this: 👉 Local Instances (Developers) → DEV Environment → Git (Build Pipeline) → Artifact Repository → TEST Server → Production Servers (multiple locations like China, Italy, etc.) This structure seems efficient for our team and helps streamline deployments, but I’m unsure how to handle bug fixes in this setup. For example, if a bug is found in production, what’s the best practice for fixing and validating it —should it go directly from DEV → TEST → PROD again, or is a temporary branch/environment recommended? We are deploying our projects as extensions. Would appreciate any insights or examples from those who’ve implemented a similar lightweight pipeline. Thanks in advance! — Jamal
Resources["ContentLoaderFunctions"].PostJSON调用大模型接口,短回复没有问题,长回复报以下错:javascript service. Message ::Read timed out。请问是不是系统又限制?在哪里可以更改配置?
Hi, I have this code I can compile with C-SDK I want to make a .snap from.I'm using the version 3.2.0.3436.I used cmake and everything worked fine between thingworx and the agent I coded.The architecture is as such : > c-sdk > build > examples > my code > lib > src > test cmake is done in c-sdk>build The thing is, I now need to make a snap from this project and I don't really know where to start. If I make my snap from my project, I have the same errors I used to have before I did cmake in c-sdk>build (twApi.h: No such file or directory). I even tried to correct it by adding this in my CMakeLists.txt : include_directories( ${TW_SDK_PATH}/include include ${TW_SDK_PATH}/src ${TW_SDK_PATH}/src/api ${TW_SDK_PATH}/src/config ${TW_S
I recently faced an issue in ThingWorx Mashup related to menu visibility for another user, and although I found a workaround, I’d like to understand why this happens and if there’s a better alternative. Problem:I created a mashup that includes menus and assigned visibility and runtime permissions to another user.When I log in as myself, I can see the mashup and all menu details correctlyBut when the other user (with runtime permissions) logs in, the mashup loads but the menu items are not visible.What I Tried:When I tried to fetch the same menus through a service call, the menus loaded properly — both for me and for the other user.So, fetching via a service worked, but showing them directly in the mashup did not.My Questions:Why does this behavior occur even after providing proper visibility and runtime permissions?Are there additional permissions or settings (like for entities, data shapes, or mashup parameters) that affect menu visibility?Is using a service to load menus dynamic
Hi Community,We recently upgraded our platform to ThingWorx 10, which includes new AI capabilities, and I’m looking to better understand how these features can be utilized in real industrial applications.For additional context, we are using ThingWorx 10 together with SCPA 164, so I’m also curious about how these AI features align with or enhance SCPA-based solutions.Specifically, I’m interested in learning:How the new AI/ML features in ThingWorx 10 can help improve or optimize existing applicationsWhat use cases these AI features are intended for, and where they provide the most valueHow other developers are integrating or embedding AI into mashups, workflows, or analyticsBest practices, architecture guidance, or known limitations when using AI features in ThingWorx 10Whether any extra configuration or supporting components are required, especially when working with SCPA 164If anyone has hands-on experience with the AI features in ThingWorx 10 or has already implemented them in product
🌟New Best Practice: Using LLMs with ThingWorx — Version 2.0 Now Available!Everyone is talking about Generative AI, and Large Language Models (LLMs) continue to transform how organizations analyze and interact with data. Beyond chatbots and text generation, these models are increasingly being used to make sense of complex industrial data — from factory sensors to production analytics — helping teams make faster, smarter decisions.ThingWorx, PTC’s Industrial IoT platform, enables secure connectivity to machines, systems, and databases across the enterprise. By linking ThingWorx with an LLM, you can create an AI Assistant for industrial operations that provides insights, answers natural-language questions, and supports data-driven problem solving — all while keeping your operational data secure.🧩 What’s New in Version 2.0This new release builds on the original ThingWorx + LLM accelerator and introduces major new capabilities designed to make LLM integrations more powerful, flexible, and
Hi everyone, I’m working with a ThingWorx FileRepository where each subfolder contains only 3–4 images (like step images in an Experience).Whenever I add or delete images, I want to re-sort and rename all files sequentially — e.g., 1.png 2.png 3.png 4.png so the order always stays clean and consistent. Question: Given that each folder has only a few files (3–4 images), should I: Keep this simple in-ThingWorx loop (since performance impact is negligible), or Use a REST API batch rename approach for better scalability? Option 1 – In-ThingWorx loop (current working code) ✅ Simple and clear⚠️ Calls RenameFile() multiple times (one per file) const repoThing = Things[me.getFileRepository()]; for each (var row in existingExperienceStepFiles.rows) { var lastSlash = row.path.lastIndexOf("/"); var dir = row.path.substring(0, lastSlash); var newName = (++i) + ".png"; var newPath = dir + "/" + newName; repoThing.R
Hello All, I have an API gateway, which also acts as an OIDC IdP. There's a Windchill instance which is configured to serve APIs to that gateway with SSO. There's an external app, which uses that setup, and it works fine. I'd like to investigate an idea of connecting Navigate through the same API gateway, and not directly to Windchill. I expect to do some configuration on the ThingWorx side, but zero changes on the Windchill end, because other API gateway app(s) already work, so I assume that there's nothing to change. Before I spend time on trying to set it up, just wanted to check with the community -- is it a supported setup, and what kind of issues should I expect? Also, this might be a very lame question, but what do I need to configure on the ThingWorx side to make an external OIDC IdP work in this scenario? Thanks, Constantine
Hello Team, Am trying to upload some pdf files from thingworx repository to azure blob storage using REST API, Could you please share any sample code available for the same? below is what am trying var params = {url: "https://<AccountName>.blob.core.windows.net/<container>/<folder>?<sasToken>",headers: {"x-ms-blob-type": "BlockBlob"},content: fileContent, // Ensure this is raw file contentcontentType: "application/octet-stream",timeout: 60000 // 60 seconds};// Use ThingWorx HTTP POST/PUTvar result = Resources["ContentLoaderFunctions"].PutText(params); Not getting any result or error, please help
Hello everyone, I’d like to open up a discussion around the announcement that PTC is selling its industrial connectivity and IoT businesses — namely ThingWorx and Kepware — to TPG. Thingworx sold As someone working in industrial connectivity, IoT and manufacturing systems (and many of you probably are as well), this raises a number of questions and potential implications. I’d love to hear your thoughts. Below are some of the issues I believe we should consider: Potential positives The transaction is being promoted as a growth enabler: PTC says this move will allow the ThingWorx and Kepware businesses to “gain additional resources for growth” under TPG. PTC For users of ThingWorx this could mean heavier investment, new features, better connectivity, or stronger backing — depending on how TPG steers the business. The shift might allow PTC to focus more on its core “Intelligent Product Lifecycle” vision (CAD, PLM, ALM, SLM) — which could mean clearer strat
Hi everyone, While experimenting with InfoTables inside a ThingWorx service, I ran into some confusion regarding a documentation example that seems to contradict actual platform behavior. I’d like to get clarification (and maybe spark some discussion) around this. Documentation Example In the documentation , I found the following pattern: var referencedInfoTable = Things["thingName"].myInfoTable; var tableLength = referencedInfoTable.rows.length; for (let i = 0; i < tableLength; i++) { referencedInfoTable.rows[i] = { field1: i, field2: i * 2, field3: i * 3 }; } Things["thingName"].myInfoTable = referencedInfoTable; // Comment from docs: // "Because you are not using .AddRow() it doesn't require access to the referenced object's .AddRow() method, // therefore it doesn't need to access the cache." The Problem When this code runs in ThingWorx (especially versions 9+ and 10+), it throws: class org.mozilla.javascript.NativeObject cannot be
Hello,Im sitting with the grid widget in a mashup and have bound an infotable to the data property and have now also bound other data that is suppose to be "child" data to the first data property. How do I successfully make the expandable functionality in the grid widget work? I've tried to bind the "child" data to the ChildData property of the grid widget and the "+" buttons are showed in the mashup but nothing happends (not expanding/showing child data) when i click the "+" buttons. Additionally, no clear expandable event seem to exist for the grid widget. Anyone here with Child data configuration knowledge for grid widget in Thingworx? Thanks in advance.Sincerely,Pontus Koontz
Hello All,I had created a thing (assigned value stream) programmatically and deleted programmatically (first value stream then thing).Now, Thing is not visible in composer, there is no ghost entity, no reference in any data table. Still some time it appears in application log as error that thing not found. Any suggestion to move further.
Hello everyone, I have a setup where I’m working with a main project (Project A) that contains all the Things with configurations for two sub-modules: Project A – SubModule 1 Project A – SubModule 2 Each sub-module is component of Project A, and all configurations are stored in Project A’s Things.We have already published Project A as an extension on the production server, so both sub-modules are currently working independently (i.e., there’s no direct dependency or linkage between SubModule 1 and SubModule 2). Now, we have a new requirement where we need to access data from SubModule 1 inside SubModule 2.However, due to the independent structure and the way Project A is packaged, I cannot simply make one module depend on the other. 💡 My current idea: I’m considering creating a ThingTemplate inside the main Project A, and then creating corresponding Things for both SubModules 1 and 2 based on that template.I could then write shared services inside this template and use t
Hi, i am working on a requirement where i need create, delete and edit a row in a grid widget.Creating/adding a new row is working fine but i am having problem in restricting edit option. I have 4 columns in my grid col_a, col_b,col_c and col_d. Out of these 4 columns, col_a and col_b are keys for my data shape so should be not be allowed for editing. And only col_c and col_d should provide edit option. currently if i modify column properties and make keep col_c and col_d as editable then i am not getting col_a and col_b when i try to add a row. If i keep all 4 columns as editable then i cannot restrict user to edit col_a and col_b which are key fields.
Hi everyone,I’ve noticed that a few mobile apps (especially those that stream or load dynamic content) start lagging or sometimes stop responding when my phone is connected through certain IoT devices — like smart routers or connected displays.The internet connection itself seems stable, and other apps run fine. The slowdown mostly happens while watching longer videos or syncing data with connected devices.I’ve already tried:Restarting the phone and routerReconnecting to Wi-FiDisabling background apps and clearing cacheCould this be related to how IoT devices handle data routing or background syncing?Would appreciate any suggestions or settings that helped others improve app performance with connected devices.Thanks in advance!
Iam currently using the thingworx version 9.3.5,iam planning to upgrade the postgresql version 15.x,where it will support or not ,if any other postgresql version are available from 14.x to 15,I check in Release advisor for thingworx version 9.3.5 will support till postgresql version 13.x,even though whethere it is possible to use any postgresql version 14 or 15 ?
Hi all, I am experiencing strange behavior using QueryBooleanPropertyHistory among nearly identical things. If I specify start and end date I see data on both things, as expected: However, if I only specify end date, on one thing I get data but on the other I do not: Why would there be different behavior for one versus the other? The things are created identically from the same template. Version 10.0.0.
Little late on this, but is there a way to do this for an Infotable property? And if possible, do you have an example syntax for it?
Hi all, I am aware that you can set a mashup parameter using a URL for example:<<THINGWORX>>/Mashups/TestMashup?thingName=TestThing However, I have a use case where I would like to preload an infotable property into the URL. Is this possible? And if it is does anyone know the syntax?
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.