Maintenance
Items
- GET /api/maintenance/items/
List all existing maintenance items.
- Query Parameters:
item_type (string) – get only items of a certain type
machine_id (int) – limit results to issues with this machine. Use
0
to get issues with no machine assigned. Can be provided multiple times to include issues from multiple machines.equipment_id (int) – limit results to issues with this equipment. Use
0
to get issues with no equipment assigned. Can be provided multiple times to include issues from multiple pieces of equipment.
- Returns:
a map of
MaintenanceItem
ID toMaintenanceItem
object
- GET /api/maintenance/items/(int: item_id)
Get details about a single maintenance item.
- Parameters:
item_id – the ID of the item to get details for
- Status Codes:
404 Not Found – if the item ID is invalid
- Returns:
a
MaintenanceItem
object
- PUT /api/maintenance/items/
Create a new maintenance item.
- Reqjson:
a
MaintenanceItem
object with at least the following fields: -item_type
: one ofmeasurement
,task
-name
: name for the item- Status Codes:
400 Bad Request – if a required field is missing or invalid
201 Created – on success
- Returns:
the newly created
MaintenanceItem
object
- PATCH /api/maintenance/items/(int: item_id)
Edit an existing maintenance item.
- Reqjson:
a (partial)
MaintenanceItem
object. It is not possible to change an item’s type, so theitem_type
field will be ignored.- Status Codes:
400 Bad Request – if the item properties are invalid
404 Not Found – if the item ID is not valid
- Returns:
the modified
MaintenanceItem
object
- DELETE /api/maintenance/items/(int: item_id)
Delete an existing maintenance item.
- Status Codes:
404 Not Found – if the item ID is not valid
204 No Content – on success
- GET /api/maintenance/items/(int: item_id)/entries
Get a maintenance item’s entries.
Use
limit
andoffset
to get only recent entries (results are queried newest to oldest, but the returned object is unordered).- Parameters:
item_id – the ID of the maintenance item to get entries for
- Query Parameters:
limit (int) – limit the number of entries returned
offset (int) – skip this many entries
- Status Codes:
404 Not Found – if the item ID is invalid
- Returns:
a map of
MaintenanceEntry
ID toMaintenanceEntry
object
- GET /api/maintenance/items/schedule
Get recurrence timestamps of all maintenance items in a selected date range.
- Query Parameters:
start (int) – start of time range (UNIX timestamp)
end (int) – end of time range (UNIX timestamp)
- Status Codes:
400 Bad Request – if start and/or end are missing
- Returns:
an object mapping maintenance item ID to a list of due dates (UNIX timestamps)
- POST /api/maintenance/items/previewSchedule
List the next few times when the provided schedule would run. The request body should include at least the scheduling fields of a maintenance item, but the
id
andinitial_entry
fields are also used if provided:If
id
is set, the schedule will start from the timestamp of the last maintenance entry with that item ID, falling back to theinitial_entry
field otherwise. If neither field is set, the schedule will start from the current date in the local time zone.- Query Parameters:
count (int) – how many future times to get (defaults to 1)
- Reqjson:
a partial MaintenanceItem object
- Returns:
an array of
count
UNIX timestamps
- POST /api/maintenance/items/averageCompletionDurations
Calculates the average of the
duration
values for successful completions of a maintenance item.Example request body[42, 43, 44, 45]
Example response body for the above example request, where maintenance item 44 has never been completed successfully and 45 doesn’t exist.{"42": 18.4, "43": 26.1, "44": null}
- Reqjsonarr:
IDs of the maintenance item to analyze. Invalid item IDs will be ignored.
- Returns:
an object mapping each maintenance item ID to a floating point number of minutes, which will be
null
for maintenance items that have never been completed successfully.- Status Codes:
400 Bad Request – if the JSON request body is invalid.
- GET /api/maintenance/items/import
Get a copy of the maintenance item import template that can be filled in to bulk import maintenance items.
- Returns:
an XLTX file
- POST /api/maintenance/items/import
Upload a filled-in copy of the maintenance item import template.
The request body should be the binary file.
- Query Parameters:
machine (int) – if provided, maintenance items created during this import will be assigned to the machine with this ID.
- Status Codes:
201 Created – on success
404 Not Found – if an invalid machine ID is provided
422 Unprocessable Entity – if the workbook is invalid for any reason
- Resjsonobj:
maps maintenance item ID to new maintenance item object
Entries
- PUT /api/maintenance/entries/
Create a new maintenance entry.
- Reqjson:
a
MaintenanceEntry
object- Request JSON Object:
entry_type (string) – one of
measurement
,task
(required)item_id (int) – ID of the item this entry is for (required)
- Status Codes:
400 Bad Request – if a required field is missing or invalid
201 Created – on success
- Returns:
the newly created
MaintenanceEntry
object
- PATCH /api/maintenance/entries/(int: entry_id)
Edit an existing maintenance entry.
- Reqjson:
a (partial)
MaintenanceEntry
object. It is not possible to change an entry’s type, so theentry_type
field will be ignored.- Status Codes:
404 Not Found – if the entry ID is not valid
- Returns:
the modified
MaintenanceEntry
object
- DELETE /api/maintenance/entries/(int: entry_id)
Delete an existing maintenance entry.
- Status Codes:
404 Not Found – if the entry ID is not valid
204 No Content – on success