put
https://app.fracttal.com/api/meters/
Updates the description and serial number of an existing, enabled meter.
This endpoint lets you update the description and the serial number of an existing, enabled meter. All other meter fields are left unchanged by this service.
Input parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
code (in the URL) | text | Yes | Code of the meter to update, sent as a URL path segment. Example: /api/meters/456-fd3. |
code | text | Yes | Meter code, also sent in the body. |
isAccumulatorCounter | boolean | Yes | Indicates whether the meter is an accumulator counter. It must match the value registered for the meter. |
unit | text | Yes | Meter unit of measure (e.g. Kilómetros, kWh). It must match the unit registered for the meter. |
description | text | Conditional | New meter description. It cannot be empty or exceed 500 characters. |
serial | text | Conditional | New meter serial number. It cannot be empty or exceed 100 characters. |
Update rules
- At least one of the
descriptionorserialfields must be sent. If only one is sent, the other keeps its current value.- The
code,isAccumulatorCounterandunitparameters are always required, even if they are not being modified.- A disabled meter cannot be updated.
- In this version only
descriptionandserialcan be modified.
Output parameters
| Parameter | Type | Description |
|---|---|---|
code | text | Meter code. |
description | text | Meter description. |
serial | text | Meter serial number. |
unit | text | Meter unit of measure. |
isAccumulatorCounter | boolean | Indicates whether the meter is an accumulator counter. |
enabled | boolean | Indicates whether the meter is enabled. |
lastReading | number | Last reading recorded for the meter. |
readingDate | text | Date of the last reading. |
Errors
| Code | Cause |
|---|---|
400 | One of the required parameters (code, isAccumulatorCounter or unit) is missing. |
400 | Neither description nor serial was sent. |
400 | description or serial is empty or exceeds the maximum allowed length (500 and 100 characters respectively). |
400 | isAccumulatorCounter or unit does not match the values registered for the meter. |
400 | The meter code format is invalid. |
401 | Not authenticated: authentication failed or the information needed to authenticate the request was not found. |
403 | The user does not have permission to perform this action. |
404 | The requested meter was not found. |
405 | Operation not allowed: a disabled meter cannot be edited. |
Example
Request body
{
"code": "456-fd3",
"isAccumulatorCounter": true,
"unit": "Kilómetros",
"description": "Kilómetros - COMPACTADOR ACTUALIZADO",
"serial": "Compactador_v2"
}Response 200
200{
"success": true,
"message": "200",
"data": [
{
"code": "456-fd3",
"description": "Kilómetros - COMPACTADOR ACTUALIZADO",
"serial": "Compactador_v2",
"unit": "Kilómetros",
"isAccumulatorCounter": true,
"enabled": true,
"lastReading": 15230.5,
"readingDate": "2026-09-30T14:20:00.000000+00:00"
}
],
"total": 1
}Response — Disabled meter (405)
405){
"success": false,
"message": "405",
"data": null
}Response — Meter not found (404)
404){
"success": false,
"message": "404",
"data": null
}OpenAPI definition
{
"openapi": "3.1.0",
"info": {
"title": "meters",
"version": "2-En"
},
"servers": [
{ "url": "https://app.fracttal.com/api/meters" }
],
"security": [{}],
"paths": {
"/{code}": {
"put": {
"summary": "Update a meter",
"description": "",
"operationId": "update-a-meter",
"deprecated": false,
"security": []
}
}
},
"x-readme": {
"headers": [],
"explorer-enabled": false,
"proxy-enabled": true
},
"x-readme-fauxas": true
}