CUWB Manager API
Overview
The CUWB Manager API is a REST API that is automatically runs as a systemd unit following the installation of the CUWB Manager package. This API configures all of the resource units required to facilitate the creation, configuration, and deletion of CUWB Configurations within the CUWB RTLS platform. This is the vessel through which the CUWB Manager’s web-based frontend requests adjustments through HTTP to the CUWB Configuration’s .cuwb saved state files.
Users have the option of creating their own control mechanisms utilizing this API by issuing the following requests over any of the host machine’s network interfaces on port 5000. The expected response formats are also provided for success, failure, and error scenarios.
Unless otherwise listed in the tables: the parameters, data body schemes, and responses are all required when using the API call.
This information can also be queried through the API itself via GET /api.json
Files produced:
application/json
text/html
Swagger API Access
Additionally, the API is available on the Host PC where the CUWB Manager Package is installed. This can be accessed by either going to localhost:5000/api or {hostpc_ipaddress}:5000/api. The swagger API access also has the ability to run api call examples in the interface.
Shared Schema
Classification Level
The classification level indicates the classification of each response. This is applied to every API response.
The following are the meanings behind each of the integer values for the classification portion of the Response Body.
| Value |
Description |
| 1 |
Error |
| 2 |
Warning |
| 3 |
Information |
| 4 |
Debug |
Classification Level has been shortened to Level in this documentation for ease of reading. The JSON format in the Swagger Access will shorten Classification Level to Classification.
Messages
Every API response will always include a message in a string format.
Cache Manager
This section outlines the API commands that can interact with cached data. These commands can be run regardless of whether a CUWB Configuration is active.
GET
The GET API command can be used to retrieve cached data for a particular CUWB Configuration.
GET /cache-manager/{cuwb_name}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of a CUWB Configuration |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
cached_devices |
string |
4 |
Cached Device List |
DELETE
DELETE cached data for a Device in a CUWB Configuration
DELETE /cache-manager/{cuwb_name}/{device_key}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of a CUWB Configuration |
| device_key |
Path |
string |
Either a Ciholas serial number or an integer ID. |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
message |
string |
3 |
Item Deleted |
| 500 |
message |
string |
1 |
Error |
DELETE cached data for a CUWB Configuration
DELETE /cache-manager/{cuwb_name}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of a CUWB Configuration |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
message |
string |
3 |
Item Deleted |
| 500 |
message |
string |
1 |
Error |
Calculate Maximum Tags
This section outlines API commands that can generate maximum tag calculations. These can be run regardless if whether a CUWB Configuration is active.
Data Body Schemes
Calculate Maximum Tags Parameterized Body
| Name |
Schema |
| number_of_seeders |
integer |
| seeder_period |
integer |
| tag_period |
integer |
| maximum_tag_period |
integer |
| accelerometer_period optional |
integer |
| gyroscope_period optional |
integer |
| magnetometer_period optional |
integer |
| quaternion_period optional |
integer |
| pressure_period optional |
integer |
| temperature_period optional |
integer |
| payload_overhead_size optional |
integer |
| user_data_period optional |
integer |
| user_data_size optional |
integer |
| settings optional |
string |
Calculate Maximum Tags Body
| Name |
Schema |
| role_id |
integer |
Calculate Maximum Tags via Parameters
This API command allows users to calculate the maximum number of tags allowed based on given parameters.
POST /calculate_maximum_tags
Parameters
| Name |
Type |
| calculate_maximum_tags_parameterized_body |
Body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
maximum_tags_calculation |
string |
3 |
Calculate maximum tags |
| 400 |
message |
string |
1 |
Invalid request |
| 404 |
message |
string |
1 |
Not found |
| 409 |
message |
string |
1 |
Conflict |
| 500 |
message |
string |
1 |
Internal error |
Calculate Maximum Tags via Configured Role
This API command allows users to calculate the maximum number of tags allowed based on a given role in a CUWB Configuration.
POST /cuwbnets/{cuwb_name}/calculate_maximum_tags
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| calculate_maximum_tags_body |
Body |
calculate_maximum_tags_body |
The request body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
maximum_tags_calculation |
string |
3 |
Calculate maximum tags |
| 400 |
message |
string |
1 |
Invalid request |
| 404 |
message |
string |
1 |
Not found |
| 409 |
message |
string |
1 |
Conflict |
| 500 |
message |
string |
1 |
Internal error |
CDP Streams
This section outlines the available API commands to create, modify, or delete CDP streams in a particular CUWB Configuration.
The API allows for the use of either cdp-streams or cdp_streams within the API call
Data Body Schemes
CDP Stream Body
| Name |
Schema |
| destination_ip |
string |
| destination_port |
integer |
| interface |
string |
| interface_port |
integer |
| name |
string |
| time_to_live |
integer |
POST
The following API call creates a new CDP stream for a particular CUWB Configuration.
POST /cuwbnets/{cuwb_name}/cdp-streams
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| cdp_stream_body |
Body |
cdp_stream_body |
The request body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 201 |
cdp_stream |
string |
3 |
CDP Stream |
| 400 |
message |
string |
1 |
Invalid Request |
| 409 |
message |
string |
1 |
Conflict |
| 500 |
message |
string |
1 |
Internal Error |
GET
The GET API command can be used for individual CPD streams or for a list of all the CDP streams in a particular CUWB Configuration.
GET Individual Stream
The following API call queries if an individual CPD stream exists in a particular CUWB Configuration.
GET /cuwbnets/{cuwb_name}/cdp-streams/{id}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| id |
Path |
integer |
The id of the CDP stream to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
cdp-stream |
string |
4 |
CDP Stream |
| 404 |
message |
string |
1 |
Not found |
GET List of All Streams
The following API call gets a list of all the CDP streams in a particular CUWB Configuration.
GET /cuwbnets/{cuwb_name}/cdp-streams
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
cdp-streams |
< object > array |
4 |
CDP Stream List |
GET List of Default Stream
The following API call gets a list of the default CDP Streams.
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
cdp-streams |
< object > array |
4 |
CDP Stream List |
PATCH
The following API call can adjust a single existing CDP stream in a CUWB Configuration.
PATCH /cuwbnets/{cuwb_name}/cdp-streams/{id}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| id |
Path |
integer |
The id of the CDP stream to use |
| cdp_stream_body |
Body |
cdp_stream_body |
The request body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
cdp-stream |
string |
3 |
CDP Stream |
| 400 |
message |
string |
1 |
Invalid request |
| 404 |
message |
string |
1 |
Not found |
| 409 |
message |
string |
1 |
Conflict |
| 500 |
message |
string |
1 |
Internal error |
DELETE
The following API command removes an existing CDP Stream from a particular CUWB Configuration.
DELETE /cuwbnets/{cuwb_name}/cdp-streams/{id}
Config, Anchor, and User CDP Streams cannot be removed.
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| id |
Path |
integer |
The id of the CDP stream to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
message |
string |
3 |
Item Deleted or Reset (if a default stream) |
| 400 |
message |
string |
1 |
Invalid request |
| 404 |
message |
string |
1 |
Not found |
| 409 |
message |
string |
1 |
Conflict |
Commands
Data Body Schemas
Device Command Body
| Name |
Schema |
| action |
string |
Multi-Device Command Body
| Name |
Schema |
| action |
string |
| serial_numbers |
list < string > |
Valid Actions
| Name |
Description |
| soft_reset |
Reset the device’s CUWBNet state without rebooting. |
| hard_reset |
Reboots the device. |
| set_led |
Sets a temporary LED behavior on a device. See LED Identification for additional details. |
| clear_device_error |
Clears any LED behavior related to errors. See individual device datasheets for detailed error information. |
| ship_mode |
Readies a device for Ship Mode. |
| get_property_list |
Retrieves a list of all Persistent Properties ID a device contains. |
| get_property |
Retrieves a value of a specific Persistent Property ID. |
| set_property |
Sets a value for a specific Persistent Property ID. |
| get_device_attributes |
Retrieves a list of device attributes and associated values. |
POST
Post a Device Action for Individual Device
This API call posts an action to a device. Must be a valid action.
POST /cuwbnets/{cuwb_name}/devices/{device_key}/action
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| device_key |
Path |
string |
Either a Ciholas serial number or an integer ID |
| device_command_body |
Body |
device_command_body |
The request body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
status |
string |
3 |
Device Command |
| 400 |
message |
string |
1 |
Invalid request |
| 404 |
message |
string |
1 |
Not found |
Post a Device Action for Multiple Devices
This API call posts an action to multiple devices. Must be a valid action.
POST /cuwbnets/{cuwb_name}/devices/action
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| multi_device_command_body |
Body |
multi_device_command_body |
The request body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
status |
string |
3 |
Device Command |
| 400 |
message |
string |
1 |
Invalid request |
| 404 |
message |
string |
1 |
Not found |
CUWB Configurations
This section outlines the available API commands to create, modify, or delete CUWB Configurations/CUWBNets.
Data Body Schemes
CUWB Network Body
| Name |
Schema |
| instance |
string |
| name |
string |
Action Body
| Name |
Schema |
| action |
enum |
| name |
string |
Valid Actions
These are the valid actions available for the CUWB Configuration Action Body:
| Name |
Description |
| copy |
Duplicate the CUWB Configuration to a new CUWB Configuration |
| delete |
Delete a CUWB Configuration |
| start |
Start the CUWBNet |
| stop |
Stop the CUWBNet |
POST
The POST API command can create a new CUWB Configuration, upload an existing CUWB Configuration, or send an action to a CUWB Configuration.
POST Create New
Create a new CUWB Configuration.
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_network_body |
Body |
cuwb_network_body |
The request body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 201 |
cuwbnets |
string |
3 |
CUWB Configuration |
| 400 |
message |
string |
1 |
Invalid request |
| 409 |
message |
string |
1 |
Conflict |
POST Upload Existing
Upload an existing CUWB Configuration to the CUWB Manager.
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_file |
FormData |
file |
A CUWB Configuration file to upload |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 201 |
cuwbnets |
string |
3 |
CUWB Configuration |
| 400 |
message |
string |
1 |
Invalid request |
| 409 |
message |
string |
1 |
CUWB Configuration already exists |
Consumes
POST an Action
POST an action to a CUWB Configuration. Must be a valid action.
POST /cuwbnets/{cuwb_name}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of a CUWB Configuration |
| action_body |
Body |
action_body |
The request body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
status |
string |
3 |
Action succeeded |
| 400 |
message |
string |
1 |
Invalid request |
| 404 |
message |
string |
1 |
Not found |
GET
The GET API command can be used to query if an individual CUWB Configuration exists, get a list of all CUWB Configurations on a single Host PC, or download an existing CUWB Configuration to a local PC.
GET Individual CUWB Configuration
The following API command queries if an individual CUWB Configuration exists on a particular Host PC.
GET /cuwbnets/{cuwb_name}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of a CUWB Configuration |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
cuwbnets |
string |
4 |
CUWB Configuration |
| 404 |
message |
string |
1 |
Not found |
GET List of All CUWB Configurations
The following API call gets a list of all the CUWB Configurations available on a particular Host PC.
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
cuwbnets |
< object > array |
4 |
CUWB Configuration List |
GET Download existing CUWB Configuration
The following API calls downloads a copy of the specified CUWB Configuration.
GET /cuwbnets/{cuwb_name}/download
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of a CUWB Configuration |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
file |
string |
3 |
CUWB Configuration File |
| 404 |
message |
string |
1 |
Not found |
PATCH
The following API command can be used to update a CUWB Configuration.
PATCH /cuwbnets/{cuwb_name}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of a CUWB Configuration |
| cuwb_network_body |
Body |
cuwb_network_body |
The request body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
cuwbnets |
string |
3 |
CUWB Configuration |
| 400 |
message |
string |
1 |
Invalid request |
| 404 |
message |
string |
1 |
Not found |
DELETE
Delete a CUWB Configuration
DELETE /cuwbnets/{cuwb_name}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of a CUWB Configuration |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 204 |
message |
string |
3 |
Item deleted |
Devices
Data Body Schemes
Device Body
| Name |
Schema |
| serial_number |
string |
| interfaces |
string |
| disabled |
boolean |
| name optional |
string |
| id optional |
string |
Multiple Device Patch Body
| Name |
Schema |
| serial_number |
string |
| interfaces |
string |
| disabled |
boolean |
| name optional |
string |
Multiple Device Delete Body
| Name |
Schema |
| delete |
string |
POST
The POST method for adding a new device.
POST /cuwbnets/{cuwb_name}/devices
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| device_body |
Body |
device_body |
The request body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 201 |
device |
string |
3 |
Device |
| 400 |
message |
string |
1 |
Invalid request |
| 409 |
message |
string |
1 |
Conflict |
| 500 |
message |
string |
1 |
Internal error |
GET
GET Individual Device
GET /cuwbnets/{cuwb_name}/devices/{device_key}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| device_key |
Path |
string |
Either a Ciholas serial number or an integer ID |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
device |
string |
4 |
Device |
| 404 |
message |
string |
1 |
Not found |
GET List of All Devices
The GET method for a list of all devices.
GET /cuwbnets/{cuwb_name}/devices
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
devices |
string |
4 |
Device List |
GET /cuwbnets/{cuwb_name}/unconfigured_devices
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
devices |
string |
4 |
Unconfigured Device List |
GET /unconfigured_devices
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
devices |
string |
4 |
Unconfigured Device List |
PATCH
Patch Individual Device
The PATCH method for a single device.
PATCH /cuwbnets/{cuwb_name}/devices/{device_key}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| device_key |
Path |
string |
Either a Ciholas serial number or an integer ID |
| device_body |
Body |
device_body |
The request body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
device |
string |
3 |
Device |
| 400 |
message |
string |
1 |
Invalid request |
| 404 |
message |
string |
1 |
Not Found |
| 409 |
message |
string |
1 |
Conflict |
| 500 |
message |
string |
1 |
Internal error |
PATCH Multiple Devices
The PATCH method for multiple devices.
PATCH /cuwbnets/{cuwb_name}/devices
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| device_body |
Body |
device_body, object |
The request body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
device |
string |
3 |
Device |
| 400 |
message |
string |
1 |
Invalid request |
| 404 |
message |
string |
1 |
Not Found |
| 409 |
message |
string |
1 |
Conflict |
| 500 |
message |
string |
1 |
Internal error |
DELETE
DELETE Single Device
The DELETE method for a single device.
DELETE /cuwbnets/{cuwb_name}/devices/{device_key}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| device_key |
Path |
string |
Either a Ciholas serial number or an integer ID |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
message |
string |
3 |
Item deleted |
DELETE Multiple Devices
The DELETE method for multiple devices.
DELETE /cuwbnets/{cuwb_name}/devices
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| multiple_device_delete_body |
Body |
multiple_device_delete_body |
The request body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
message |
string |
3 |
Devices deleted |
Device Pairs
Data Body Schemes
Device Pairs Body
Pair Body
| Name |
Schema |
| serial_number_1 |
string |
| serial_number_2 |
string |
| type |
string |
POST
The POST method for adding new device pairs.
POST /cuwbnets/{cuwb_name}/device_pairs
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| device_body |
Body |
device_pairs_body |
The request body: an array of pair_body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 201 |
message |
string |
3 |
Successfully created pairs |
| 206 |
message |
string |
2 |
Successfully created some pairs |
| 400 |
message |
string |
1 |
Invalid request |
| 409 |
message |
string |
1 |
Conflict |
| 417 |
message |
string |
1 |
Expected behavior failed |
| 500 |
message |
string |
1 |
Internal error |
GET
GET All Pairs for one Device
The GET method for getting all device pairs for one device in a CUWB Configuration.
GET /cuwbnets/{cuwb_name}/device_pairs/{serial_number}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| serial_number |
Path |
string |
The Ciholas Serial Number of the device |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
message |
string |
4 |
A list of device pairs |
GET All Pairs for CUWB Configuration
The GET method for getting all device pairs.
GET /cuwbnets/{cuwb_name}/device_pairs
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
message |
string |
4 |
A list of device pairs |
DELETE
The DELETE method for deleting device pairs.
DELETE /cuwbnets/{cuwb_name}/device_pairs
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| device_body |
Body |
device_pairs_body |
The request body: an array of pair_body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
message |
string |
3 |
Successfully deleted pairs |
| 206 |
message |
string |
2 |
Successfully deleted some pairs |
| 400 |
message |
string |
1 |
Invalid request |
| 409 |
message |
string |
1 |
Conflict |
| 417 |
message |
string |
1 |
Expected behavior failed |
| 500 |
message |
string |
1 |
Internal error |
Group Images
Data Body Schemes
Group Image Patch Body
GET
The GET method for group images.
GET /cuwbnets/{cuwb_name}/group_image
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
group_images |
string |
3 |
Group Images |
| 404 |
message |
string |
1 |
Not found |
PATCH
The PATCH method for group images.
PATCH /cuwbnets/{cuwb_name}/group_image
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| group_image_patch_body |
Body |
group_image_patch_body |
The PATCH body - must include at least one field |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
group_images |
string |
3 |
Group Images |
| 404 |
message |
string |
1 |
Not found |
| 500 |
message |
string |
1 |
Internal error |
Interfaces
The API allows the use of either {device_key}-{interface_identifier} or {device_key}/interfaces/{interface_identifier} within the API call.
GET
GET Individual Interface
The GET method for a single interface.
GET /cuwbnets/{cuwb_name}/devices/{device_key}-{interface_identifier}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| device_key |
Path |
string |
Either a Ciholas serial number or an integer ID |
| interface_identifier |
Path |
integer |
An identifier for interfaces |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
interface |
string |
4 |
Device interface |
| 404 |
message |
string |
1 |
Not found |
GET All Interfaces
The GET method for a list of all interfaces.
GET /cuwbnets/{cuwb_name}/devices/{device_key}/interfaces
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| device_key |
Path |
string |
Either a Ciholas serial number or an integer ID |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
interface |
string |
3 |
Device interface |
| 404 |
message |
string |
1 |
Not found |
DELETE
The DELETE method for a single interface.
DELETE /cuwbnets/{cuwb_name}/devices/{device_key}-{interface_identifier}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| device_key |
Path |
string |
Either a Ciholas serial number or an integer ID |
| interface_identifier |
Path |
integer |
An identifier for interfaces |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
message |
string |
3 |
Item deleted |
Logs
GET
GET Log Messages
The GET method for a list of all log messages.
GET /cuwbnets/{cuwb_name}/log_messages
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
log_messages |
< string > array |
4 |
Log Message List |
GET List of Logs
The GET method for a list of the filenames of all the logs.
GET /cuwbnets/{cuwb_name}/logs
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
log_messages |
< string > array |
4 |
Log Filenames List |
GET Download a Log
The GET method for downloading a specific log.
GET /cuwbnets/{cuwb_name}/logs/{log_file_name}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| log_file_name |
Path |
string |
The name of the log file to download |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
log_file |
file |
4 |
The log file to download |
| 404 |
message |
string |
1 |
Not Found |
Magnetometer Calibration
Data Body Schemes
Magnetometer Calibration Body
| Name |
Schema |
| x_offset |
integer |
| y_offset |
integer |
| z_offset |
integer |
POST
Create a new magnetometer calibration.
POST /cuwbnets/{cuwb_name}/devices/{device_key}/set_magnetometer_calibration
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| device_key |
Path |
string |
Either a Ciholas serial number or an integer ID |
| magnetometer_calibration_body |
Body |
magnetometer_calibration_body |
The request body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 201 |
magnetometer_calibration |
string |
3 |
Magnetometer Calibration |
| 400 |
message |
string |
1 |
Invalid request |
| 404 |
message |
string |
1 |
Not found |
| 409 |
message |
string |
1 |
Conflict |
| 500 |
message |
string |
1 |
Internal error |
Network Information
GET
The GET method for system network interfaces.
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
network_interfaces |
string |
3 |
System Network Interface List |
Notifications
Data Body Schemes
Notification Patch Body
GET Notifications
GET Individual Notification
The GET method for a single notification.
GET /cuwbnets/{cuwb_name}/notifications/{identifier}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| identifier |
Path |
integer |
The identifier of the notification |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
notification |
string |
4 |
Notifications |
| 404 |
message |
string |
1 |
Not Found |
GET All Notifications
The GET method for notifications.
GET /cuwbnets/{cuwb_name}/notifications
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
notification |
string |
4 |
Notifications |
GET Count of Unread Notifications
The GET method for the number of unread notifications.
GET /cuwbnets/{cuwb_name}/notifications_count
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
count |
integer |
4 |
Number of Unread Notifications |
PATCH
PATCH Individual Notification
The PATCH method to toggle a notification’s read status.
PATCH /cuwbnets/{cuwb_name}/notifications/{identifier}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| identifier |
Path |
integer |
The identifier of the notification |
| notification_patch_body |
Body |
notification_patch_body |
The PATCH body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
notification |
string |
3 |
Notification |
| 404 |
message |
string |
1 |
Not Found |
PATCH All Notifications
The PATCH method to mark all notifications as read or unread.
PATCH /cuwbnets/{cuwb_name}/notifications
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| notification_patch_body |
Body |
notification_patch_body |
The PATCH body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
notification |
string |
3 |
Notifications |
Operating Modes
Data Body Schemes
Operating Mode Patch Body
| Name |
Schema |
| network_mode |
string |
GET
The GET method for a list of all operational modes.
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
network_modes |
string |
4 |
Operating Mode List |
PATCH
The PATCH method for the operational mode.
PATCH /cuwbnets/{cuwb_name}/network_mode
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| operating_mode_patch_body |
Body |
operating_mode_patch_body |
The PATCH body - must include at least one field |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
network_mode |
string |
3 |
Operating Mode |
| 404 |
message |
string |
1 |
Not found |
| 409 |
message |
string |
1 |
Conflict |
| 500 |
message |
string |
1 |
Internal error |
Packages
GET
The GET method for PPA packages.
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
ppa_status |
string |
4 |
Packages |
| 404 |
ppa_status |
string |
1 |
Not found |
Position Limits
The Position Limits are used to describe a Bounding Box for a CUWBNet. As a result, the term Bounding Box may be used in some of the endpoints.
Data Body Schemes
Position Limits Post Body
| Name |
Schema |
| max_x |
integer |
| max_y |
integer |
| max_z |
integer |
| min_x |
integer |
| min_y |
integer |
| min_z |
integer |
| name |
string |
Position Limits Patch Body
| Name |
Schema |
| max_x |
integer |
| max_y |
integer |
| max_z |
integer |
| min_x |
integer |
| min_y |
integer |
| min_z |
integer |
POST
Create a new Position Limit object
POST /cuwbnets/{cuwb_name}/position_limits
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| position_limits_post_body |
Body |
position_limits_post_body |
The POST body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
position_limits |
string |
3 |
Position Limit |
| 400 |
message |
string |
1 |
Invalid request |
| 409 |
message |
string |
1 |
Conflict |
GET
GET Individual Position Limit
The GET method for a single position limit.
GET /cuwbnets/{cuwb_name}/position_limits/{id}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| id |
Path |
integer |
The id of the position limit to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
position_limits |
string |
4 |
Position Limit |
| 404 |
message |
string |
1 |
Not Found |
GET List of All Limits
The GET method for a list of all position limits.
GET /cuwbnets/{cuwb_name}/position_limits
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
position_limits |
string |
4 |
Position Limit List |
PATCH
The PATCH method for a single position limit.
PATCH /cuwbnets/{cuwb_name}/position_limits/{id}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| id |
Path |
integer |
The id of the position limit to use |
| position_limits_patch_body |
Body |
position_limits_patch_body |
The PATCH body - must include at least one field |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
position_limits |
string |
3 |
Position Limit List |
| 404 |
message |
string |
1 |
Not found |
| 409 |
message |
string |
1 |
Conflict |
| 500 |
message |
string |
1 |
Internal error |
DELETE
The DELETE method for a single position limit.
DELETE /cuwbnets/{cuwb_name}/position_limits/{id}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| id |
Path |
integer |
The id of the position limit to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
message |
string |
3 |
Item Deleted |
RF Settings
Data Body Schemes
RF Settings Post Body
| Name |
Schema |
| bit_rate |
integer |
| channel |
integer |
| name |
string |
| preamble_code |
integer |
| preamble_length |
integer |
| prf |
integer |
RF Settings Patch Body
| Name |
Schema |
| bit_rate |
integer |
| channel |
integer |
| preamble_code |
integer |
| preamble_length |
integer |
| prf |
integer |
POST
Create a new RF Settings object.
POST /cuwbnets/{cuwb_name}/rf_settings
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the CUWB Configuration to use |
| rf_settings_post_body |
Body |
rf_settings_post_body |
The POST body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
rf_settings |
string |
3 |
RF Setting |
| 400 |
message |
string |
1 |
Invalid request |
| 409 |
message |
string |
1 |
Conflict |
PATCH
The PATCH method for a single RF Settings.
PATCH /cuwbnets/{cuwb_name}/rf_settings/{name}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the cuwbnet to use |
| name |
Path |
string |
The name of the RF Settings to use |
| rf_settings_patch_body |
Body |
rf_settings_patch_body |
The PATCH body - must include at least one field |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
rf_settings |
string |
3 |
RF Setting |
| 404 |
message |
string |
1 |
Not Found |
| 409 |
*message** |
string |
1 |
Conflict |
| 500 |
message |
string |
1 |
Internal Error |
GET
GET Single RF Setting
The GET method for a single RF Setting.
GET /cuwbnets/{cuwb_name}/rf_settings/{name}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the cuwbnet to use |
| name |
Path |
string |
The name of the RF Settings to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
rf_settings |
string |
4 |
RF Setting |
| 404 |
message |
string |
1 |
Not Found |
GET List of all RF Settings
The GET method for a list of all RF Settings.
GET /cuwbnets/{cuwb_name}/rf_settings
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the cuwbnet to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
rf_settings |
string |
4 |
RF Setting |
DELETE
The DELETE method for a single RF Setting.
DELETE /cuwbnets/{cuwb_name}/rf_settings/{name}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the cuwbnet to use |
| name |
Path |
string |
The name of the RF Settings to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 204 |
message |
string |
3 |
Item Deleted |
| 409 |
message |
string |
1 |
Conflict |
Roles
Data Body Schemes
Role Post Body
| Name |
Schema |
| name |
string |
| network_period |
integer |
| window_duration optional |
integer |
| device_count optional |
integer |
| accelerometer_period optional |
integer |
| gyroscope_period optional |
integer |
| quaternion_period optional |
integer |
| magnetometer_period optional |
integer |
| pressure_period optional |
integer |
| temperature_period optional |
integer |
| led_brightness optional |
string |
Role Patch Body
| Name |
Schema |
| name |
string |
| network_period |
integer |
| window_duration |
integer |
| device_count |
integer |
| accelerometer_period |
integer |
| gyroscope_period |
integer |
| quaternion_period |
integer |
| magnetometer_period |
integer |
| pressure_period |
integer |
| temperature_period |
integer |
| led_brightness |
string |
POST
The POST method for adding a new role.
POST /cuwbnets/{cuwb_name}/roles
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the cuwbnet to use |
| role_body |
Body |
role_body |
The request body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 201 |
role |
string |
3 |
Device Role |
| 400 |
message |
string |
1 |
Invalid request |
| 409 |
message |
string |
1 |
Conflict |
| 500 |
message |
string |
1 |
Internal error |
GET
GET Individual Role
The GET method for a single role
GET /cuwbnets/{cuwb_name}/roles/{role_id}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the cuwbnet to use |
| role_id |
Path |
integer |
An id for roles |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
role |
string |
4 |
Device Role |
| 404 |
message |
string |
1 |
Not found |
GET a List of All Roles
The GET method for a list of all roles.
GET /cuwbnets/{cuwb_name}/roles
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the cuwbnet to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
role |
string |
4 |
Device Role |
PATCH
The PATCH method for a single role.
PATCH /cuwbnets/{cuwb_name}/roles/{role_id}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the cuwbnet to use |
| role_id |
Path |
integer |
An id for roles |
| role_body |
Body |
role_body |
The request body - must use at least one body field |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
role |
string |
3 |
Role |
| 400 |
message |
string |
1 |
Invalid request |
| 404 |
message |
string |
1 |
Not found |
| 409 |
message |
string |
1 |
Conflict |
| 500 |
message |
string |
1 |
Internal error |
DELETE
The DELETE method for a single role.
DELETE /cuwbnets/{cuwb_name}/roles/{role_id}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the cuwbnet to use |
| role_id |
Path |
integer |
An id for roles |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 204 |
message |
string |
3 |
Item Deleted |
| 409 |
message |
string |
1 |
Conflict |
System Settings Keys
These API calls are under the Special Settings in the Swagger UI.
The API allows the use of either /settings or /settings/{setting_class}/{setting_id} within the API call.
Data Body Schemes
Settings Body
| Name |
Schema |
| setting_key |
string |
POST
The POST method to create a new setting.
POST /cuwbnets/{cuwb_name}/settings
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the cuwbnet to use |
| setting_class optional |
Path |
string |
The setting class of the setting to use |
| setting_id optional |
Path |
integer |
The setting id of the setting to use |
| settings_body |
Body |
settings_body, object |
The request body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
setting |
string |
3 |
Setting |
| 409 |
message |
string |
1 |
Conflict |
| 500 |
message |
string |
1 |
Internal error |
GET
GET Individual Setting
The GET method for a single setting.
GET /cuwbnets/{cuwb_name}/settings/{key}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the cuwbnet to use |
| key |
Path |
string |
The key of the setting to use |
| setting_class optional |
Path |
string |
The setting class of the setting to use |
| setting_id optional |
Path |
integer |
The setting id of the setting to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
setting |
string |
4 |
Setting |
| 404 |
message |
string |
4 |
Not found |
| 409 |
message |
string |
4 |
Conflict |
GET a List of All Settings
The GET method for a list of all settings.
GET /cuwbnets/{cuwb_name}/settings
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the cuwbnet to use |
| setting_class optional |
Path |
string |
The setting class of the setting to use |
| setting_id optional |
Path |
integer |
The setting id of the setting to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
setting |
string |
4 |
Setting List |
| 409 |
message |
string |
1 |
Conflict |
PUT
The PUT method for a single setting.
PUT /cuwbnets/{cuwb_name}/settings
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the cuwbnet to use |
| setting_class optional |
Path |
string |
The setting class of the setting to use |
| setting_id optional |
Path |
integer |
The setting id of the setting to use |
| settings_body |
Body |
settings_body, object |
The request body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
setting |
string |
3 |
Setting List |
| 409 |
message |
string |
1 |
Conflict |
| 500 |
message |
string |
1 |
Internal error |
PATCH
The PATCH method for a single setting.
PATCH /cuwbnets/{cuwb_name}/settings
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the cuwbnet to use |
| setting_class optional |
Path |
string |
The setting class of the setting to use |
| setting_id optional |
Path |
integer |
The setting id of the setting to use |
| settings_body |
Body |
settings_body, object |
The request body |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
setting |
string |
3 |
Setting List |
| 404 |
message |
string |
1 |
Not Found |
| 409 |
message |
string |
1 |
Conflict |
| 500 |
message |
string |
1 |
Internal error |
DELETE
The DELETE method for a single setting.
DELETE /cuwbnets/{cuwb_name}/settings/{key}
Parameters
| Name |
Type |
Schema |
Description |
| cuwb_name |
Path |
string |
The name of the cuwbnet to use |
| key |
Path |
string |
The key of the setting to use |
| setting_class optional |
Path |
string |
The setting class of the setting to use |
| setting_id optional |
Path |
integer |
The setting id of the setting to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
message |
string |
3 |
Item Deleted |
| 409 |
message |
string |
1 |
Conflict |
System Settings Keys Defaults
These API commands retrieve the available system setting keys that a CUWB Configuration could use and their default values. These are not the system setting keys that have been applied to a CUWB Configuration.
The API allows for the use of either default-settings or default_settings within the API call.
GET
GET Individual setting
This API call provides the default value for a single system setting key.
GET /default-settings/{key}
Parameters
| Name |
Type |
Schema |
Description |
| key |
Path |
string |
The key of the setting to use |
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
default_setting |
string |
4 |
Setting |
| 404 |
message |
string |
1 |
Not found |
GET List of all settings
This API call provides a list of the available system settings keys that could be applied to a CUWB Configuration and their default values.
Responses
| HTTP Code |
Name |
Schema |
Level |
Description |
| 200 |
default_setting |
string |
4 |
Setting List |
Revision
| Version |
Date |
Change Description |
| 5.1.0 |
2026-05-01 |
Updating Response tables with classification level for logging. Adding Cache Manager API control. Revisions to Logs, Network Information, and Notifications sections. |
| 5.0.1 |
2025-11-11 |
Removing Device Settings, Reformatting tables, Adding callouts for optional parameters |
| 5.0.0 |
2025-10-31 |
Initial Release, Compatible with 300 series devices |