Build with Factory OS
The cloud MES for discrete and process manufacturers. Connect machines, orchestrate production, and turn shop-floor data into cash flow — over a clean REST API.
Generated from the live spec · v0.271.0 · 218 endpoints
curl https://api.xentr.ai/api/factories/[factory-slug]/machines \ -H "Authorization: Bearer $XENTR_TOKEN"const res = await fetch( 'https://api.xentr.ai/api/factories/[factory-slug]/machines', { headers: { Authorization: `Bearer ${process.env.XENTR_TOKEN}` } },);const machines = await res.json();import os, requestsres = requests.get( "https://api.xentr.ai/api/factories/[factory-slug]/machines", headers={"Authorization": f"Bearer {os.environ['XENTR_TOKEN']}"},)print(res.json())
One API for the whole factory
From PLCs on the shop floor to dashboards in the boardroom — every primitive you need, exposed over a clean REST API.
Machine Integrations
Stream telemetry from CNCs, molders, and PLCs via MQTT or REST.
Learn moreProduction Automation
Create, schedule, and dispatch work orders programmatically.
Learn moreQuality & Andon
Log defects, trigger andon calls, and drive escalations in real time.
Learn moreCustom Dashboards
Pipe OEE, availability, and throughput into any BI tool.
Learn morePrimitives
The building blocks real manufacturers rely on — each one a documented surface you can call today.
Register, claim, and list the machines on a factory floor.
ORDERSCreate, schedule, dispatch, and close production orders.
METHODSProduction methods tie products to machines and target rates.
QUALITYQuality records, defect categories, NCRs, and inspection plans.
TELEMETRYMQTT + REST ingest, time-series storage, resampling.
ROLESSeven canonical roles, invitation-only onboarding.
WEBHOOKSSubscribe to andon calls, downtime, and job events (coming soon).
AUDITEvery mutation recorded with user, timestamp, and diff.
What's new
The latest changes shipped to Xentr, straight from the changelog.
Working security contact, and a documentation accuracy pass
Our published security contact no longer goes to a dead mailbox. SECURITY.md and .well-known/security.txt advertised security@xentr.ai, but the xentr.ai domain has no inbound mail configured — any vulnerability report sent there was silently lost. Both files now point at a monitored address.
2026-08-06Downtime reports: \"Awaiting reason\" now means something you can act on
If your downtime report showed hundreds of stoppages "awaiting reason" even though your operators had cleared every item in their inbox, they were right and the report was wrong. Those counts were almost entirely auto-detected blips under a minute — the kind a machine produces dozens of times an hour — which the operator inbox deliberately rolls up rather than asking anyone to categorise one by one. The report was still counting them as outstanding work, so the number could never reach zero. On one plant this showed 596 "awaiting" when the real figure was 7.
2026-07-13The whole marketing site goes dark
The ink‑and‑signal duotone look now covers the entire marketing site, not just the homepage and pricing. Solutions, Resources, Compare, Integrations, Trust, the changelog and the blog all share the same dark surfaces, one violet accent, and yellow reserved strictly for the numbers that matter — so the site reads as one system end to end. We also removed the old pre‑revamp homepage sections that were no longer used.
Learn Xentr
Six chapters, ~30 minutes — from an empty account to a running, staffed factory.
Ready to build?
Wire up your first machine, ship a work order, or pipe OEE into Grafana — it all starts with one API call.
