Connected devices · HTTP API
Node-RED, Home Assistant or your script, connected to maintenance
Many sites already read their meters somewhere: a Node-RED flow polling a Modbus analyser, a Home Assistant instance with a dozen sensors, a PLC gateway, a Python script on a small PC. FreeMaint Connect lets any of them send their values with one HTTP request, so those measurements finally reach the assets, the alerts and the work orders.
Free your maintenance · Free Core tier, unlimited users, no credit card.
In short
FreeMaint Connect accepts measurements from any system that can send JSON over HTTP: Node-RED, Home Assistant, a Modbus or PLC gateway, a Teltonika router or a script. Each request carries an access key in its header and lists devices with their values; FreeMaint converts units, creates channels on the first message, and lets alert rules, run-hour counters and energy meters use them like any certified device.
Updated October 16, 2026
What the HTTP API gives you
One request, many devices
A single POST can carry up to 500 devices and 5,000 values, each with its own time. Devices and channels are created automatically on their first message.
Included in BusinessUnits converted for you
Send energy in Wh, kWh or MWh, temperatures in °C or °F, vibration velocity in mm/s or in/s: FreeMaint stores each quantity in one unit, so values from different systems add up.
Included in BusinessCounters understood as counters
Mark a value as cumulative — an energy total, a run-hours counter — and FreeMaint computes the consumption between readings, even across a reset.
Included in BusinessThe same alerts and work orders as any device
Once a value arrives it is a channel like any other: alert rules, ISO 20816 vibration zones, run hours, links to asset and energy meters, and the live view on the mobile app.
Included in BusinessA key per connection
Each connection has its own access key, sent in a header and never in the URL. Rotate it at any time, keeping the old one valid for 24 hours or revoking it immediately.
Included in BusinessWhen the HTTP API is the right path
FreeMaint decodes a few devices itself — Shelly energy meters and two Milesight LoRaWAN sensors. Everything else goes through the HTTP API, and that covers most of an industrial site: a Modbus power analyser read by Node-RED, a Home Assistant sensor, a building management system exporting its points, a PLC that already publishes its counters, a vibration sensor read by its own gateway.
FreeMaint does not speak Modbus, MQTT, BACnet or OPC UA directly. That is deliberate: the gateway that already sits on your network knows the protocol and the register map, and FreeMaint only needs the values. A Node-RED flow or a short script that turns registers into JSON is usually a few lines.
- Node-RED flows reading Modbus RTU or TCP devices
- Home Assistant automations forwarding sensors
- Teltonika routers with Data to Server
- PLC and building-management gateways
- Scripts on a small PC or a Raspberry Pi
What a request looks like
The request is a POST to the URL FreeMaint shows when you create the connection, with two headers: Authorization, carrying the access key, and Content-Type set to application/json. The body lists items: each item is a device identifier, an optional display name and time, and its points. A point has a key such as power or energy_total, a value, and ideally a unit, a quantity and, for counters, the cumulative kind.
FreeMaint answers 202 when the data is accepted and stores it within seconds. A malformed request gets a 400 answer naming the problem, so a misconfigured gateway is fixed in minutes rather than discovered weeks later. Each connection accepts up to 120 requests per minute; beyond that FreeMaint answers 429 and your system should retry later.
Run hours and energy from your own system
If your PLC already counts run hours, send the counter as a cumulative value and link the channel to the asset’s run-hours meter: preventive plans trigger on it. If it only reports power or current, let FreeMaint calculate run hours from that channel. For energy, link the channel to an energy meter and FreeMaint records a reading every 15 minutes with its cost and CO2.
Plans and limits
The HTTP API is part of FreeMaint Connect, in the Business plan at $99 per month per company, flat, with 100 active channels. The Enterprise plan includes 5,000. An inactive channel does not count, and data already received stays visible on every plan. For reading and writing the rest of FreeMaint — work orders, assets, parts — there is also a GraphQL API on Business and signed outbound webhooks from Starter.
Send your first values in four steps
- 1
Create the connection
In Connected devices → Integrations, click Connect a device and choose HTTP API (Node-RED, script…).
- 2
Copy the URL and the key
FreeMaint shows the URL, the two headers and an example body. The key is shown only once.
- 3
Send a request
From Node-RED, Home Assistant or your script, POST the JSON with the two headers.
- 4
Use the channels
Attach the new device to its asset, add alert rules and link channels to meters.
Frequently asked questions
Can FreeMaint read my Modbus meter directly?
No. A gateway reads the Modbus registers — Node-RED, Home Assistant, a Teltonika router or a script — and sends the values to FreeMaint as JSON over HTTPS.
Is MQTT supported?
Not directly. A gateway that subscribes to your MQTT topics, such as Node-RED, can forward the values to the HTTP API.
How many values can one request carry?
Up to 500 devices and 5,000 points per request, and up to 120 requests per minute per connection.
What happens if my request is wrong?
FreeMaint answers 400 and names the problem, so you can fix the gateway at once. Accepted data gets a 202.
Can values from my script open work orders?
Yes. Once a value arrives it is a channel: an alert rule with Create a work order ticked opens a work order on the asset.
Which plan do I need?
Business, at $99 per month per company, with 100 active channels. Enterprise includes 5,000.
Related pages
Bring the data you already have
Start on the free Core tier, then move to Business when you are ready to send measurements.
Create your free account