# Normalize any OEM tag data to a universal schema via API

**URL:** <https://forum.inductiveautomation.com/t/normalize-any-oem-tag-data-to-a-universal-schema-via-api/115439>\
**Category:** General Discussion\
**Tags:** scripting\
**Created:** [May 7, 2026, 4:52pm UTC](https://forum.inductiveautomation.com/t/normalize-any-oem-tag-data-to-a-universal-schema-via-api/115439 "2026-05-07T16:52:06Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![foundrynet](https://avatars.discourse-cdn.com/v4/letter/f/76d3ee/32.png) [@foundrynet](https://forum.inductiveautomation.com/u/foundrynet)\
**Post date:** [May 7, 2026, 4:52pm UTC](https://forum.inductiveautomation.com/t/normalize-any-oem-tag-data-to-a-universal-schema-via-api/115439/1 "2026-05-07T16:52:06Z")

</div>

I built an API that normalizes raw OEM tag data into a universal canonical schema. 169 fields across CNC, robotics, and industrial equipment. SP\_ACT\_SPEED becomes spindle\_speed\_rpm. CoolantTemp becomes sensor\_readings.coolant\_temp. X1\_ActualPosition becomes axes.x\_position. Works across Fanuc, Siemens, Haas, DMG Mori, Ignition, and others without per-machine configuration. You can set up triggers in plain English ("alert me when coolant exceeds 32") and it fires webhooks to Slack, CMMS, ERP, or anything with a URL. I also wrote an Ignition integration script (MIT licensed) that reads tags from your gateway via the Web Dev module and pushes them through the normalizer on a configurable interval. 1 cent per normalize call. No subscriptions. Looking for anyone running mixed OEM fleets willing to test with real tag data. Live demo: [foundrynet.io](http://foundrynet.io)

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [May 7, 2026, 5:07pm UTC](https://forum.inductiveautomation.com/t/normalize-any-oem-tag-data-to-a-universal-schema-via-api/115439/2 "2026-05-07T17:07:38Z")

</div>

A bit of a bait-and-switch, IMNSHO. The first words in your topic title are "open-source", but that only describes the API layer. **Using** the API, and the implementation of the API, is not open at all.

I haven't flagged as spam yet, as this is the general discussion category, but this very much is a sales pitch for your non-free service.

(And Ignition is not even in your public list of systems under the "works with everything" heading on your site.)

---

<div class="post-metadata">

**Author:** ![foundrynet](https://avatars.discourse-cdn.com/v4/letter/f/76d3ee/32.png) [@foundrynet](https://forum.inductiveautomation.com/u/foundrynet)\
**Post date:** [May 7, 2026, 6:00pm UTC](https://forum.inductiveautomation.com/t/normalize-any-oem-tag-data-to-a-universal-schema-via-api/115439/3 "2026-05-07T18:00:13Z")

</div>

Fair points, both of them. You're right that "open source" in the title is misleading. The integration scripts are open (MIT license, on GitHub) but the API itself is a paid service.

I'll ask a mod to update the title to remove "open source." That was sloppy wording on my part. And you're right that Ignition isn't on the site yet. I built the Ignition integration scripts specifically for this community but hadn't updated the landing page. Fixing that today.  
Appreciate the feedback.
