Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Description of MobiusFlow Engine RESTful API V1
The MobiusFlow Engine API is used interface with MobiusFlow via http and https. The API allows clients to perform all functions within MobiusFlow, from managing user accounts, to getting and setting data, as well as manipulating the MobiusFlow configuration by adding, removing and editing MobiusFlow objects, services and flows.
Additionally, the API allows clients to subscribe to specific real-time events within happening within a given MobiusFlow instance (see subscription controller). In this use case, the API will upgrade the client to use the Websocket protocol (ws / wss).
All API endpoints are described in the following subsections. The subsections are divided into the functional groups (controllers); , , , , , , , and .
If connecting to a local instance of MobiusFlow, the http protocol can be used. If connecting to an instance of MobiusFlow via the internet, https should be used. The API is always exposed on port 8443.
All endpoints lead with:
{{protocol}}://{{hostname}}:8443/api/v1
Where the protocol and hostname parameters are replaced with the true protocol and hostname. For example, in the case of connecting to a local instance of MobiusFlow, the leading path would look like:
http://localhost:8443/api/v1
Swagger documentation describing the API in full, can be found . This documentation includes example bodies and responses for every endpoint. Finally, a postman collection containing parameterised examples of all client calls can be downloaded below.
API Subscription Websocket
Full functionality of Subscription Websocket is described in the connect call below.
API Discover calls
The discover calls are used to learn about the present state of a given MobiusFlow instance
API Service Calls
The service calls are used to read, add, remove and manipulate MobiusFlow services.
API Object & Resource Calls
The object calls are used to read, add, remove and manipulate MobiusFlow objects and resources.
API Calls for Licence Management
API Send Command Calls
API Calls for Node-RED Flows
Used get and set the full configuration the flows.
API Calls for Service Profiles, Object Profiles and Command Profiles
API Authorization calls
The authorization controller is used to login to the API, in addition user management.
When a login call is completed, the API will return a bearer token which should be used in the auth header of all future calls. This token is set to expire 10 minutes after its generation.
A refresh token is also included in the login response, and this is used in the body of the refresh call to get new tokens with refreshed expiry times. Ensure a refresh call is made prior to any given bearer token's expiry to avoid having to login again.
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$Time, in seconds, since last update to consider object as dead. Assumed 24 hours if not specified
Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
Default Response
No content
Default Response
No content
Upon making this request, the server will upgrade to websocket connection. The websocket can then be used to manage subscriptions to MobiusFlow object COVs (change of values), resource COVs, service status changes and broadcast commands. Once the connection is initally established, the websocket server sends back a connected message, featuring the topic 'connected' as shown below. Once the upgrade is complete, all subsequent subcription communications are performed via websocket messages.
Following the inital http connect call, the now upgraded websocket connection expects a follow up authorization websocket message within 10 seconds. The authorization websocket message must feature the topic 'authorize' and a payload containing the API bearer token. An example message is shown below:
On successful authorization, the websocket server will send back a confirmation message, containing the topic 'authorized' as shown below.
If no authorization message is received by the websockeet server within 10 seconds, the connection is dropped by the server.
Each subscription or unsubscription message must contain topic 'subscribe' or 'unsubscibe' respectively. Additonally, each message must feature a payload containing both the subscription type and subscription URI. Valid subscription types are denoted in the following table:
Note, the URI field may contain MQTT style wildcards where appropriate.
An example subscibe message is shown below:
Following a successful subscription or unsubscripton message, the websocket server will echo the message back to the client, confirming the action has been made.
Each event response will feature a timestamp, topic and payload. The topic will be one of the valid event types as denoted in the above table. The payload will contain uri and value fields, the form of the latter varrying based on the type and nature of the event. An example response is shown below:
The values for each event type are as follows:
Switching Protocols
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$MobiusFlow Object Profile ID
{"value":"014A"}Pattern: ^[0-9A-Fa-f]{4}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$MobiusFlow Object Profile ID
{"value":"014A"}Pattern: ^[0-9A-Fa-f]{4}$MobiusFlow Object Instance ID
{"value":"0001"}Pattern: ^[0-9A-Fa-f]{4}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$MobiusFlow Object Profile ID
{"value":"014A"}Pattern: ^[0-9A-Fa-f]{4}$MobiusFlow Object Instance ID
{"value":"0001"}Pattern: ^[0-9A-Fa-f]{4}$MobiusFlow Resource ID
{"value":"40"}Pattern: ^[0-9A-Fa-f]{2}$Ok response
Bad Request
Unauthorized
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$New service information
Service ID
^[0-9A-F]{3}$Service profile ID
^[0-9A-F]{4}$Service name
Service enabled flag
Service run at start flag
Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$Clone service information
Number of copies
Starting service ID for 1st copy, subsequent copies will be incremented
^[0-9A-F]{3}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$New service ID information
New service ID
^[0-9A-F]{3}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$New service configuration
Service name
Service enabled flag
Service run at start flag
Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$Array of configured objects on service
Object PID
Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$MobiusFlow Object Profile ID
{"value":"014A"}Pattern: ^[0-9A-Fa-f]{4}$MobiusFlow Object Instance ID
{"value":"0001"}Pattern: ^[0-9A-Fa-f]{4}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$MobiusFlow Object Profile ID
{"value":"014A"}Pattern: ^[0-9A-Fa-f]{4}$MobiusFlow Object Instance ID
{"value":"0001"}Pattern: ^[0-9A-Fa-f]{4}$MobiusFlow Resource ID
{"value":"40"}Pattern: ^[0-9A-Fa-f]{2}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$MobiusFlow Object Profile ID
{"value":"014A"}Pattern: ^[0-9A-Fa-f]{4}$MobiusFlow Object Instance ID
{"value":"0001"}Pattern: ^[0-9A-Fa-f]{4}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$MobiusFlow Object Profile ID
{"value":"014A"}Pattern: ^[0-9A-Fa-f]{4}$Array of resources
Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$MobiusFlow Object Profile ID
{"value":"014A"}Pattern: ^[0-9A-Fa-f]{4}$MobiusFlow Object Instance ID
{"value":"0001"}Pattern: ^[0-9A-Fa-f]{4}$Array of resources
Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$MobiusFlow Object Profile ID
{"value":"014A"}Pattern: ^[0-9A-Fa-f]{4}$MobiusFlow Object Instance ID
{"value":"0001"}Pattern: ^[0-9A-Fa-f]{4}$Object cloning information
Number of copies to be created
Starting instance ID of the 1st copy, subsequent copies will be incremented
^[0-9A-F]{4}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$MobiusFlow Object Profile ID
{"value":"014A"}Pattern: ^[0-9A-Fa-f]{4}$MobiusFlow Object Instance ID
{"value":"0001"}Pattern: ^[0-9A-Fa-f]{4}$MobiusFlow Resource ID
{"value":"40"}Pattern: ^[0-9A-Fa-f]{2}$Resource information
Priority of the resource value
Value of the resource
Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$MobiusFlow Object Profile ID
{"value":"014A"}Pattern: ^[0-9A-Fa-f]{4}$MobiusFlow Object Instance ID
{"value":"0001"}Pattern: ^[0-9A-Fa-f]{4}$Array of patched live resources
Resource ID
Priority of the resource value
Value of the resource
Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$MobiusFlow Object Profile ID
{"value":"014A"}Pattern: ^[0-9A-Fa-f]{4}$MobiusFlow Object Instance ID
{"value":"0001"}Pattern: ^[0-9A-Fa-f]{4}$MobiusFlow Resource ID
{"value":"40"}Pattern: ^[0-9A-Fa-f]{2}$Resource information
Priority of the resource value
Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$MobiusFlow Object Profile ID
{"value":"014A"}Pattern: ^[0-9A-Fa-f]{4}$MobiusFlow Object Instance ID
{"value":"0001"}Pattern: ^[0-9A-Fa-f]{4}$Object information
Replacement object instance ID
Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service ID
{"value":"020"}Pattern: ^[0-9A-Fa-f]{3}$MobiusFlow Object Profile ID
{"value":"014A"}Pattern: ^[0-9A-Fa-f]{4}$MobiusFlow Object Instance ID
{"value":"0001"}Pattern: ^[0-9A-Fa-f]{4}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$Licence code data
Licence code
Ok response
Bad Request
Unauthorized
Internal Server Error
MobiusFlow Command ID
{"value":"ENOCEAN_RADIO_ERP1"}Payload of command
{"rorg":"F6","db_0":100,"db_1":80,"db_2":60,"db_3":40,"uid":"12345678","status":23,"subTelNum":1,"dBm":-5}Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$Ok response
Bad Request
Unauthorized
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$Array of flow configurations
Ok response
Bad Request
Unauthorized
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Service Profile ID
{"value":"0032"}Pattern: ^[0-9A-Fa-f]{4}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Object Profile ID
{"value":"014A"}Pattern: ^[0-9A-Fa-f]{4}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Object Profile Name
{"value":"iqrf_05383_AirQuality"}Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
MobiusFlow Hub ID
{"value":"000001"}Pattern: ^[0-9A-Fa-f]{6}$MobiusFlow Command ID
{"value":"ENOCEAN_RADIO_ERP1"}Pattern: ^[0-9A-Za-z_]*$Ok response
Bad Request
Unauthorized
Not Found
Request Timeout
Internal Server Error
Ok response
Unauthorized
Internal Server Error
User ID
New password information
New password
Ok response
Unauthorized
Not Found
Internal Server Error
GET /api/v1/mobius/node/backup HTTP/1.1
Host:
Accept: */*
Ok response
GET /api/v1/mobius/node/config/{hid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": [
{
"id": "0004/002",
"name": "mobius-engine-api",
"enabled": true,
"runAtStart": true
},
{
"id": "0012/012",
"name": "mobius-ui-restapi",
"enabled": true,
"runAtStart": true
},
{
"id": "0021/020",
"name": "enocean devices",
"enabled": true,
"runAtStart": true
},
{
"id": "000E/021",
"name": "node-red connector",
"enabled": true,
"runAtStart": true
}
]
}GET /api/v1/mobius/node/configtree/{hid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": [
{
"sid": "002",
"spid": "0004",
"name": "mobius-engine-api",
"enabled": true,
"runAtStart": true,
"settings": {
"mqtt": {
"host": "mqtt://localhost",
"port": 2016
},
"timeouts": {
"local": 10000,
"remote": 5000
}
},
"custom": {},
"objects": []
},
{
"sid": "012",
"spid": "0012",
"name": "mobius-ui-restapi",
"enabled": true,
"runAtStart": true,
"settings": {
"mqtt": {
"host": "mqtt://localhost",
"port": 2016
},
"timeouts": {
"local": 10000,
"remote": 5000
}
},
"custom": {
"resin-vpn": false
},
"objects": [
{
"pid": "0002",
"objects": [
{
"pid": "0002",
"ins": "0001",
"rids": []
}
]
}
]
},
{
"sid": "020",
"spid": "0021",
"name": "enocean devices",
"enabled": true,
"runAtStart": true,
"settings": {
"mqtt": {
"host": "mqtt://localhost",
"port": 2016
},
"timeouts": {
"local": 500,
"remote": 5000
}
},
"custom": {},
"objects": [
{
"pid": "000D",
"objects": [
{
"pid": "000D",
"ins": "0001",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor"
}
},
{
"rid": "0B",
"settings": {
"pv": "12345678"
}
}
]
},
{
"pid": "000D",
"ins": "0002",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor"
}
},
{
"rid": "0B",
"settings": {
"pv": "11223344"
}
}
]
}
]
},
{
"pid": "0010",
"objects": [
{
"pid": "0010",
"ins": "0001",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-02-02 Temperature Sensor (-30C to 10C)"
}
},
{
"rid": "0B",
"settings": {
"pv": "12121212"
}
}
]
}
]
}
]
},
{
"sid": "021",
"spid": "000E",
"name": "node-red connector",
"enabled": true,
"runAtStart": true,
"settings": {
"mqtt": {
"host": "mqtt://localhost",
"port": 2016
},
"timeouts": {
"local": 500,
"remote": 5000
}
},
"custom": {
"host": "localhost",
"port": 1890,
"psk": "node-red"
},
"objects": []
}
]
}POST /api/v1/mobius/node/resetpsks/{hid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"result": "OK"
}
}GET /api/v1/mobius/node/healthcheck/{hid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": [
{
"sid": "002",
"status": "OK",
"name": "mobius-engine-api",
"objectsInFaultCount": 0,
"objectsInFault": []
},
{
"sid": "012",
"status": "OK",
"name": "mobius-ui-restapi",
"objectsInFaultCount": 0,
"objectsInFault": []
},
{
"sid": "020",
"status": "OK",
"name": "enocean devices",
"objectsInFaultCount": 1,
"objectsInFault": [
{
"uri": "000001/020/000B/0001",
"lastUpdated": "1970-01-01T00:00:00.000Z",
"lastUpdatedEpoch": 0,
"name": "EnOcean EEP A5-08-01 Light Sensor - Hall",
"profileName": "EnOcean EEP A5-08-01 Light Sensor"
}
]
}
]
}GET /api/v1/mobius/node/servicestatus/{hid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": null
}GET /api/v1/mobius/discover/{hid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": [
{
"id": "0004/002",
"spid": "0004",
"registered": "2022-12-21T09:27:33.406Z",
"status": "online"
},
{
"id": "0012/012",
"spid": "0012",
"registered": "2022-12-21T09:27:35.006Z",
"status": "online"
},
{
"id": "0021/020",
"spid": "0021",
"registered": "2022-12-21T10:24:51.695Z",
"status": "online"
}
]
}GET /api/v1/mobius/discover/{hid}/{sid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001/020",
"data": [
"0001",
"000D",
"0010"
]
}GET /api/v1/mobius/discover/{hid}/{sid}/{pid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001/020/000D",
"data": [
"0001",
"0002"
]
}GET /api/v1/mobius/discover/{hid}/{sid}/{pid}/{ins} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001/020/000D/0001",
"data": [
{
"pid": "000D",
"ins": "0001",
"profileName": "enocean_A5-08-01",
"description": "EnOcean light, temperature and occupancy sensor",
"resources": [
{
"rid": "00",
"type": "string",
"name": "parentObject",
"pv": "",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"",
""
],
"settings": {
"access": "rw",
"tags": {
"attribute": "true"
}
}
},
{
"rid": "01",
"type": "string",
"name": "name",
"pv": "EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor",
""
],
"settings": {
"access": "r",
"tags": {
"attribute": "true"
}
}
},
{
"rid": "02",
"type": "datetime",
"name": "objectLastUpdated",
"pv": "1970-01-01T00:00:00.000Z",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"1970-01-01T00:00:00.000Z",
"1970-01-01T00:00:00.000Z"
],
"settings": {
"access": "r"
}
},
{
"rid": "03",
"type": "string",
"name": "description",
"pv": "",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"",
""
],
"settings": {
"access": "r",
"tags": {
"attribute": "true"
}
}
},
{
"rid": "04",
"type": "string",
"name": "location",
"pv": "",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"",
""
],
"settings": {
"access": "r",
"tags": {
"attribute": "true"
}
}
},
{
"rid": "0A",
"type": "string",
"name": "eep",
"pv": "A5-08-01",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"A5-08-01",
""
],
"settings": {
"access": "r",
"tags": {
"attribute": "true"
}
}
},
{
"rid": "0B",
"type": "string",
"name": "uid",
"pv": "12345678",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"12345678",
""
],
"settings": {
"access": "r",
"maxlen": 8,
"tags": {
"attribute": "true"
}
}
},
{
"rid": "0C",
"type": "number",
"name": "status",
"pv": 0,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
0,
0
],
"settings": {
"access": "r"
}
},
{
"rid": "0D",
"type": "number",
"name": "dBm",
"pv": 0,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
0,
0
],
"settings": {
"access": "r",
"units": "dBm"
}
},
{
"rid": "0E",
"type": "bool",
"name": "lrn",
"pv": false,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
false,
false
],
"settings": {
"access": "r"
}
},
{
"rid": "40",
"type": "number",
"name": "tmp",
"pv": 0,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
0,
0
],
"settings": {
"access": "r",
"min": 0,
"max": 51,
"precision": 1,
"units": "C"
}
},
{
"rid": "41",
"type": "number",
"name": "lux",
"pv": 0,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
0,
0
],
"settings": {
"access": "r",
"min": 0,
"max": 510,
"precision": 1,
"units": "lx"
}
},
{
"rid": "42",
"type": "bool",
"name": "pirs",
"pv": false,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
false,
false
],
"settings": {
"access": "r"
}
},
{
"rid": "43",
"type": "bool",
"name": "occupany",
"pv": false,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
false,
false
],
"settings": {
"access": "r"
}
},
{
"rid": "44",
"type": "number",
"name": "supplyVoltage",
"pv": 0,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
0,
0
],
"settings": {
"access": "r",
"min": 0,
"max": 5.1,
"precision": 1,
"units": "V"
}
}
],
"families": [
"EnOcean",
"TemperatureSensor",
"OccupancySensor",
"LightSensor"
],
"isFromConfig": 1
}
]
}GET /api/v1/mobius/discover/{hid}/{sid}/{pid}/{ins}/{rid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001/020/000D/0001/40",
"data": [
{
"rid": "40",
"type": "number",
"name": "tmp",
"pv": 0,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
0,
0
],
"settings": {
"access": "r",
"min": 0,
"max": 51,
"precision": 1,
"units": "C"
}
}
]
}GET /api/v1/mobius/service/config/{hid}/{sid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"sid": "020",
"spid": "0021",
"name": "enocean devices",
"enabled": true,
"runAtStart": true,
"settings": {
"mqtt": {
"host": "mqtt://localhost",
"port": 2016
},
"timeouts": {
"local": 500,
"remote": 5000
}
},
"custom": {},
"objects": [
{
"pid": "000D",
"objects": [
{
"pid": "000D",
"ins": "0002",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor"
}
},
{
"rid": "0B",
"settings": {
"pv": "11223344"
}
}
]
},
{
"pid": "000D",
"ins": "0006",
"rids": [
{
"rid": "40",
"settings": {
"min": 30
}
}
]
},
{
"pid": "000D",
"ins": "0001",
"rids": [
{
"rid": "40",
"settings": {
"min": 30
}
}
]
},
{
"pid": "000D",
"ins": "000A",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor"
}
},
{
"rid": "0B",
"settings": {
"pv": "11223344"
}
}
]
}
]
},
{
"pid": "0010",
"objects": [
{
"pid": "0010",
"ins": "0001",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-02-02 Temperature Sensor (-30C to 10C)"
}
},
{
"rid": "0B",
"settings": {
"pv": "12121212"
}
}
]
}
]
},
{
"pid": "0201",
"objects": [
{
"pid": "0201",
"ins": "0001",
"rids": []
}
]
}
]
}
}POST /api/v1/mobius/service/start/{hid}/{sid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"result": "OK"
}
}POST /api/v1/mobius/service/stop/{hid}/{sid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"result": "OK"
}
}POST /api/v1/mobius/service/reload/{hid}/{sid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001/020",
"data": {
"result": "OK"
}
}POST /api/v1/mobius/service/{hid} HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 91
{
"spid": "000E",
"name": "New example nr-connector service",
"enabled": false,
"runAtStart": true
}{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": [
{
"id": "0004/002",
"name": "mobius-engine-api",
"enabled": true,
"runAtStart": true
},
{
"id": "0012/012",
"name": "mobius-ui-restapi",
"enabled": true,
"runAtStart": true
},
{
"id": "0021/020",
"name": "enocean devices",
"enabled": true,
"runAtStart": true
},
{
"id": "000E/021",
"name": "Test",
"enabled": false,
"runAtStart": true
},
{
"id": "000E/022",
"name": "New example nr-connector service",
"enabled": false,
"runAtStart": true
}
]
}POST /api/v1/mobius/service/clone/{hid}/{sid} HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 26
{
"copies": 1,
"start": "030"
}{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": [
{
"id": "0004/002",
"name": "mobius-engine-api",
"enabled": true,
"runAtStart": true
},
{
"id": "0012/012",
"name": "mobius-ui-restapi",
"enabled": true,
"runAtStart": true
},
{
"id": "0021/020",
"name": "enocean devices",
"enabled": true,
"runAtStart": true
},
{
"id": "000E/021",
"name": "Test",
"enabled": false,
"runAtStart": true
},
{
"id": "0021/030",
"name": "Clone of 020 0",
"enabled": true,
"runAtStart": true
}
]
}PATCH /api/v1/mobius/service/config/sid/{hid}/{sid} HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 16
{
"newSID": "02A"
}{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": [
{
"id": "0004/002",
"name": "mobius-engine-api",
"enabled": true,
"runAtStart": true
},
{
"id": "0012/012",
"name": "mobius-ui-restapi",
"enabled": true,
"runAtStart": true
},
{
"id": "0021/020",
"name": "enocean devices",
"enabled": true,
"runAtStart": true
},
{
"id": "000E/02A",
"name": "nr-connector",
"enabled": true,
"runAtStart": true
}
]
}PATCH /api/v1/mobius/service/config/{hid}/{sid} HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 56
{
"name": "nr-connector",
"runAtStart": true,
"enabled": true
}{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"sid": "021",
"spid": "000E",
"name": "nr-connector",
"enabled": true,
"runAtStart": true,
"settings": {
"mqtt": {
"host": "mqtt://localhost",
"port": 2016
},
"timeouts": {
"local": 500,
"remote": 5000
}
},
"custom": {
"host": "localhost",
"port": 1890,
"psk": "node-red"
},
"objects": []
}
}PUT /api/v1/mobius/service/config/replaceAllObjects/{hid}/{sid} HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 538
[
{
"pid": "000D",
"objects": [
{
"pid": "000D",
"ins": "0002",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor"
}
},
{
"rid": "0B",
"settings": {
"pv": "11223344"
}
}
]
},
{
"pid": "000D",
"ins": "0006",
"rids": [
{
"rid": "40",
"settings": {
"min": 30
}
}
]
},
{
"pid": "000D",
"ins": "0001",
"rids": [
{
"rid": "40",
"settings": {
"min": 30
}
}
]
}
]
},
{
"pid": "0010",
"objects": [
{
"pid": "0010",
"ins": "0001",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-02-02 Temperature Sensor (-30C to 10C)"
}
},
{
"rid": "0B",
"settings": {
"pv": "12121212"
}
}
]
}
]
}
]{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"sid": "020",
"spid": "0021",
"name": "enocean devices",
"enabled": true,
"runAtStart": true,
"settings": {
"mqtt": {
"host": "mqtt://localhost",
"port": 2016
},
"timeouts": {
"local": 500,
"remote": 5000
}
},
"custom": {},
"objects": [
{
"pid": "000D",
"objects": [
{
"pid": "000D",
"ins": "0002",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor"
}
},
{
"rid": "0B",
"settings": {
"pv": "11223344"
}
}
]
},
{
"pid": "000D",
"ins": "0006",
"rids": [
{
"rid": "40",
"settings": {
"min": 30
}
}
]
},
{
"pid": "000D",
"ins": "0001",
"rids": [
{
"rid": "40",
"settings": {
"min": 30
}
}
]
}
]
},
{
"pid": "0010",
"objects": [
{
"pid": "0010",
"ins": "0001",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-02-02 Temperature Sensor (-30C to 10C)"
}
},
{
"rid": "0B",
"settings": {
"pv": "12121212"
}
}
]
}
]
}
]
}
}DELETE /api/v1/mobius/service/{hid}/{sid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"sid": "020",
"spid": "0021",
"name": "enocean devices",
"enabled": true,
"runAtStart": true,
"settings": {
"mqtt": {
"host": "mqtt://localhost",
"port": 2016
},
"timeouts": {
"local": 500,
"remote": 5000
}
},
"custom": {},
"objects": [
{
"pid": "000D",
"objects": [
{
"pid": "000D",
"ins": "0002",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor"
}
},
{
"rid": "0B",
"settings": {
"pv": "11223344"
}
}
]
},
{
"pid": "000D",
"ins": "0006",
"rids": [
{
"rid": "40",
"settings": {
"min": 30
}
}
]
},
{
"pid": "000D",
"ins": "0001",
"rids": [
{
"rid": "40",
"settings": {
"min": 30
}
}
]
}
]
},
{
"pid": "0010",
"objects": [
{
"pid": "0010",
"ins": "0001",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-02-02 Temperature Sensor (-30C to 10C)"
}
},
{
"rid": "0B",
"settings": {
"pv": "12121212"
}
}
]
}
]
}
]
}
}GET /api/v2/mobius/licence/{hid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"licenceCode": "text",
"size": 1,
"used": 1,
"isActive": true,
"isValid": true,
"type": "text",
"objectCount": 1,
"isObjectBased": true,
"pointsPerObject": 1,
"useCustomPointsMap": true
}
}PUT /api/v2/mobius/licence/{hid} HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 153
{
"licenceCode": "c2480687816cf833-20e44db08a00df1c-62fff13ac04f16e4-9066e16d9b185417-9ef8fce8c3115e69-bd5f6186a806e4dd-256e3a2b53ee1b1d-9fd943dbd60a58b2"
}{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"licenceCode": "c2480687816cf833-20e44db08a00df1c-62fff13ac04f16e4-9066e16d9b185417-9ef8fce8c3115e69-bd5f6186a806e4dd-256e3a2b53ee1b1d-9fd943dbd60a58b2"
}
}POST /api/v1/mobius/command/{cid} HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 106
{
"rorg": "F6",
"db_0": 100,
"db_1": 80,
"db_2": 60,
"db_3": 40,
"uid": "12345678",
"status": 23,
"subTelNum": 1,
"dBm": -5
}{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "ENOCEAN_RADIO_ERP1",
"data": {
"result": "OK"
}
}GET /api/v1/mobius/flow/{hid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": [
{
"id": "3423ebadc41ce452",
"type": "tab",
"label": "Flow 1",
"disabled": false,
"info": "",
"env": []
},
{
"id": "dd17eb69b4c36475",
"type": "mobius connection",
"host": "localhost",
"port": "1890",
"psk": "node-red"
},
{
"id": "64328273c1ade1ed",
"type": "mobius resource cov",
"z": "3423ebadc41ce452",
"name": "",
"detailedOutput": false,
"resource": "000001/020/000D/0001/40",
"connection": "dd17eb69b4c36475",
"x": 330,
"y": 100,
"wires": [
[
"19d9af2e1a4761ac"
],
[]
]
},
{
"id": "19d9af2e1a4761ac",
"type": "debug",
"z": "3423ebadc41ce452",
"name": "debug 1",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "false",
"statusVal": "",
"statusType": "auto",
"x": 620,
"y": 100,
"wires": []
}
]
}PUT /api/v1/mobius/flow/{hid} HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 611
[
{
"id": "6aa8ab4d100707b8",
"type": "tab",
"label": "Pigs will fly",
"disabled": false,
"info": "",
"env": []
},
{
"id": "f3e2539aafeaa03c",
"type": "azureiotdevice",
"z": "6aa8ab4d100707b8",
"deviceid": "A00001_021_012D_0001",
"pnpModelid": "",
"connectiontype": "dps",
"authenticationmethod": "sas",
"iothub": "",
"isIotcentral": true,
"scopeid": "0ne004C4815",
"enrollmenttype": "device",
"saskey": "UhjPQxY299AdQ3/TVL2kHFIi36a/cpWTUT/0BJvZjAg=",
"certname": "",
"keyname": "",
"passphrase": "",
"protocol": "mqtt",
"retryInterval": 10,
"methods": [],
"DPSpayload": "",
"gatewayHostname": "",
"caname": "",
"cert": "",
"key": "",
"ca": "",
"x": 920,
"y": 120,
"wires": [
[]
]
}
]{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": "OK"
}GET /api/v1/mobius/profile/service/{hid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": [
{
"spid": "0001",
"defaultID": "001",
"name": "mobius router",
"description": "POPULATE",
"isConfigurable": true,
"icon": "default",
"allowedObjectFamilies": []
},
{
"spid": "FE02",
"defaultID": "E00",
"name": "iqrf connector",
"description": "POPULATE",
"isConfigurable": false,
"icon": "default",
"allowedObjectFamilies": []
},
{
"spid": "FE03",
"defaultID": "E00",
"name": "room display",
"description": "POPULATE",
"isConfigurable": false,
"icon": "default",
"allowedObjectFamilies": []
}
]
}GET /api/v1/mobius/profile/service/{hid}/{spid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"spid": "000E",
"defaultID": "00E",
"name": "node-red connector",
"description": "This service creates a connection between the MobiusFlow Services, Objects, and Resources and the logic Flows. The host address and port, and the pre-shared key must be entered into both the service settings and the Flow.",
"isConfigurable": true,
"icon": "default",
"allowedObjectFamilies": []
}
}GET /api/v1/mobius/profile/object/families/{hid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"GeneralIO": {
"type": "InputOutput",
"description": "General analog and digital IO"
},
"DigitalInput": {
"type": "Input",
"description": "Digital input"
},
"DigitalOutput": {
"type": "Output",
"description": "Digital output"
}
}
}GET /api/v1/mobius/profile/object/{hid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"serviceStatus": {
"header": {
"pid": "1",
"profileName": "serviceStatus",
"isConfigurable": false,
"instances": "single",
"uiname": "Mobius Service Status"
},
"resources": {
"parentObject": {
"rid": "0",
"access": "rw",
"type": "string",
"uiname": "Parent",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"status": {
"rid": "1",
"access": "r",
"type": "enum",
"uiname": "Status",
"settings": {
"enum": {
"Unknown": -1,
"Fault": 0,
"OK": 1
}
}
},
"statusText": {
"rid": "2",
"access": "r",
"type": "string",
"uiname": "Status Text",
"settings": {
"pv": "Unknown"
}
},
"lastChanged": {
"rid": "3",
"access": "r",
"type": "datetime",
"uiname": "Last Changed",
"settings": {
"pv": "NOW"
}
}
}
},
"licenceStatus": {
"header": {
"pid": "2",
"profileName": "licenceStatus",
"isConfigurable": false,
"instances": "single",
"uiname": "Mobius Licence Status"
},
"resources": {
"licenceCode": {
"rid": "0",
"access": "rw",
"type": "string",
"uiname": "LicenceCode",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"status": {
"rid": "1",
"access": "r",
"type": "enum",
"uiname": "Status",
"settings": {
"pv": -1,
"enum": {
"Unknown": -1,
"Valid": 0,
"Wrong Licence Type": 1,
"Hub Not Registered": 2,
"Licence Not Active": 4,
"Licence Not Yet Valid": 8,
"Licence Expired": 16,
"Licence Size Exceeded": 32,
"Error": 128
}
}
},
"expiryDate": {
"rid": "2",
"access": "r",
"type": "string",
"uiname": "Expiry Date",
"settings": {
"pv": ""
}
},
"licenceSize": {
"rid": "3",
"access": "r",
"type": "number",
"uiname": "Licence Size"
},
"objectCount": {
"rid": "4",
"access": "r",
"type": "number",
"uiname": "Object Count"
},
"server": {
"rid": "5",
"access": "r",
"type": "string",
"uiname": "Server"
},
"lastVerified": {
"rid": "6",
"access": "r",
"type": "string",
"uiname": "Last Verified"
},
"slowCheckInterval": {
"rid": "7",
"access": "r",
"type": "number",
"uiname": "Slow Check Interval"
},
"fastCheckInterval": {
"rid": "8",
"access": "r",
"type": "number",
"uiname": "Fast Check Interval"
}
}
},
"mobiusFlowConnector": {
"header": {
"pid": "65472",
"profileName": "mobiusFlowConnector",
"instances": "multiple",
"uiname": "MobiusFlow Connector"
},
"resources": {
"parentObject": {
"rid": "0",
"access": "rw",
"type": "string",
"uiname": "Parent",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"name": {
"rid": "1",
"access": "r",
"type": "string",
"uiname": "Name",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"objectLastUpdated": {
"rid": "2",
"access": "r",
"type": "datetime",
"uiname": "Object Last Updated"
},
"description": {
"rid": "3",
"access": "r",
"type": "string",
"uiname": "Description",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"location": {
"rid": "4",
"access": "r",
"type": "string",
"uiname": "Location",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"partNumber": {
"rid": "10",
"access": "r",
"type": "string",
"uiname": "Part Number",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"serialNumber": {
"rid": "11",
"access": "r",
"type": "string",
"uiname": "Serial Number",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"psk": {
"rid": "12",
"access": "r",
"type": "string",
"uiname": "Pre-shared Key",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"firmwareVersion": {
"rid": "13",
"access": "r",
"type": "string",
"uiname": "Firmware Version",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"module1Type": {
"rid": "14",
"access": "r",
"type": "string",
"uiname": "Module 1 Type",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"module2Type": {
"rid": "15",
"access": "r",
"type": "string",
"uiname": "Module 2 Type",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"enOceanChipID": {
"rid": "16",
"access": "r",
"type": "string",
"uiname": "EnOcean Chip ID",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"macAddress": {
"rid": "17",
"access": "r",
"type": "string",
"uiname": "MAC Address",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"ipAddress": {
"rid": "18",
"access": "r",
"type": "string",
"uiname": "IP Address"
},
"subnetMask": {
"rid": "19",
"access": "r",
"type": "string",
"uiname": "Subnet Mask"
},
"dnsAddress": {
"rid": "20",
"access": "r",
"type": "string",
"uiname": "DNS Address"
},
"defaultGateway": {
"rid": "21",
"access": "r",
"type": "string",
"uiname": "Default Gateway"
},
"ssid": {
"rid": "22",
"access": "r",
"type": "string",
"uiname": "SSID"
},
"rssi": {
"rid": "23",
"access": "r",
"type": "number",
"uiname": "RSSI"
},
"bssid": {
"rid": "24",
"access": "r",
"type": "string",
"uiname": "BSSID"
},
"online": {
"rid": "64",
"access": "r",
"type": "bool",
"uiname": "Online"
},
"uptime": {
"rid": "65",
"access": "r",
"type": "string",
"uiname": "Uptime (days:hours:minutes)"
},
"lastEnOceanUID": {
"rid": "66",
"access": "r",
"type": "string",
"uiname": "Last EnOcean UID"
},
"lastWorkOccUID": {
"rid": "67",
"access": "r",
"type": "string",
"uiname": "Last WorkOcc UID"
}
}
},
"arubaEnOceanAP": {
"header": {
"pid": "65473",
"profileName": "arubaEnOceanAP",
"instances": "multiple",
"uiname": "Aruba Access Point"
},
"resources": {
"parentObject": {
"rid": "0",
"access": "rw",
"type": "string",
"uiname": "Parent",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"name": {
"rid": "1",
"access": "r",
"type": "string",
"uiname": "Name",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"objectLastUpdated": {
"rid": "2",
"access": "r",
"type": "datetime",
"uiname": "Object Last Updated"
},
"description": {
"rid": "3",
"access": "r",
"type": "string",
"uiname": "Description",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"location": {
"rid": "4",
"access": "r",
"type": "string",
"uiname": "Location",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"macAddress": {
"rid": "11",
"access": "r",
"type": "string",
"uiname": "MAC Address",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"psk": {
"rid": "12",
"access": "r",
"type": "string",
"uiname": "Pre-shared Key",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"firmwareVersion": {
"rid": "13",
"access": "r",
"type": "string",
"uiname": "Firmware Version",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"enOceanChipID": {
"rid": "16",
"access": "r",
"type": "string",
"uiname": "EnOcean Chip ID",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"ipAddress": {
"rid": "18",
"access": "r",
"type": "string",
"uiname": "IP Address"
},
"online": {
"rid": "64",
"access": "r",
"type": "bool",
"uiname": "Online"
},
"uptime": {
"rid": "65",
"access": "r",
"type": "string",
"uiname": "Uptime (days:hours:minutes)"
},
"lastEnOceanUID": {
"rid": "66",
"access": "r",
"type": "string",
"uiname": "Last EnOcean UID"
}
}
}
}
}GET /api/v1/mobius/profile/object/{hid}/{pid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"header": {
"pid": "513",
"profileName": "numericValue",
"instances": "multiple",
"uiname": "Numeric Value"
},
"resources": {
"parentObject": {
"rid": "0",
"access": "rw",
"type": "string",
"uiname": "Parent",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"name": {
"rid": "1",
"access": "r",
"type": "string",
"uiname": "Name",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"objectLastUpdated": {
"rid": "2",
"access": "r",
"type": "datetime",
"uiname": "Object Last Updated"
},
"description": {
"rid": "3",
"access": "r",
"type": "string",
"uiname": "Description",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"location": {
"rid": "4",
"access": "r",
"type": "string",
"uiname": "Location",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"value": {
"rid": "64",
"access": "rw",
"type": "number",
"uiname": "Value",
"settings": {
"pv": 0
}
}
}
}
}GET /api/v1/mobius/profile/object/by-name/{hid}/{profileName} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"header": {
"pid": "513",
"profileName": "numericValue",
"instances": "multiple",
"uiname": "Numeric Value"
},
"resources": {
"parentObject": {
"rid": "0",
"access": "rw",
"type": "string",
"uiname": "Parent",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"name": {
"rid": "1",
"access": "r",
"type": "string",
"uiname": "Name",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"objectLastUpdated": {
"rid": "2",
"access": "r",
"type": "datetime",
"uiname": "Object Last Updated"
},
"description": {
"rid": "3",
"access": "r",
"type": "string",
"uiname": "Description",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"location": {
"rid": "4",
"access": "r",
"type": "string",
"uiname": "Location",
"settings": {
"tags": {
"attribute": "true"
}
}
},
"value": {
"rid": "64",
"access": "rw",
"type": "number",
"uiname": "Value",
"settings": {
"pv": 0
}
}
}
}
}GET /api/v1/mobius/profile/command/{hid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"ENOCEAN_RADIO_RAW": {
"description": "Broadcast a received EnOcean raw radio telegram",
"schema": {
"type": "object",
"properties": {
"rorg": {
"type": "string",
"minLength": 2,
"maxLength": 2
},
"rawData": {
"type": "array"
}
},
"required": [
"rorg",
"rawData"
]
}
},
"ENOCEAN_RADIO_ERP1": {
"description": "Broadcast a received EnOcean ERP1 type radio telegram",
"schema": {
"type": "object",
"properties": {
"rorg": {
"type": "string",
"minLength": 2,
"maxLength": 2
},
"db_0": {
"type": "number"
},
"db_1": {
"type": "number"
},
"db_2": {
"type": "number"
},
"db_3": {
"type": "number"
},
"uid": {
"type": "string",
"minLength": 8,
"maxLength": 8
},
"status": {
"type": "number"
},
"subTelNum": {
"type": "number"
},
"dBm": {
"type": "number"
}
},
"required": [
"rorg",
"db_0",
"db_1",
"db_2",
"db_3",
"uid",
"status",
"subTelNum",
"dBm"
]
}
},
"ENOCEAN_RADIO_ERP1_VLD": {
"description": "Broadcast a received EnOcean ERP1 type radio telegram",
"schema": {
"type": "object",
"properties": {
"rorg": {
"type": "string",
"minLength": 2,
"maxLength": 2
},
"vlData": {
"type": "array"
},
"uid": {
"type": "string",
"minLength": 8,
"maxLength": 8
},
"status": {
"type": "number"
},
"subTelNum": {
"type": "number"
},
"dBm": {
"type": "number"
}
},
"required": [
"rorg",
"vlData",
"uid",
"status",
"subTelNum",
"dBm"
]
}
},
"ENOCEAN_RADIO_MSC": {
"description": "Broadcast a received EnOcean MSC type radio telegram",
"schema": {
"type": "object",
"properties": {
"rorg": {
"type": "string",
"minLength": 2,
"maxLength": 2
},
"func": {
"type": "string",
"minLength": 2,
"maxLength": 2
},
"type": {
"type": "string",
"minLength": 2,
"maxLength": 2
},
"mscData": {
"type": "array"
},
"uid": {
"type": "string",
"minLength": 8,
"maxLength": 8
},
"status": {
"type": "number"
},
"subTelNum": {
"type": "number"
},
"dBm": {
"type": "number"
}
},
"required": [
"rorg",
"func",
"type",
"mscData",
"uid",
"status",
"subTelNum",
"dBm"
]
}
},
"ENOCEAN_RADIO_RMC": {
"description": "Broadcast a received EnOcean MSC type radio telegram",
"schema": {
"type": "object",
"properties": {
"packetType": {
"type": "string",
"minLength": 2,
"maxLength": 2
},
"funcNum": {
"type": "number"
},
"manufId": {
"type": "number"
},
"destUID": {
"type": "string",
"minLength": 8,
"maxLength": 8
},
"srcUID": {
"type": "string",
"minLength": 8,
"maxLength": 8
},
"dBm": {
"type": "number"
},
"cmdData": {
"type": "array"
}
},
"required": [
"packetType",
"funcNum",
"manufId",
"destUID",
"srcUID",
"dBm",
"cmdData"
]
}
}
}
}GET /api/v1/mobius/profile/command/{hid}/{command} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"description": "Broadcast a received EnOcean raw radio telegram",
"schema": {
"type": "object",
"properties": {
"rorg": {
"type": "string",
"minLength": 2,
"maxLength": 2
},
"rawData": {
"type": "array"
}
},
"required": [
"rorg",
"rawData"
]
}
}
}POST /api/v1/auth/login HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 55
{
"username": "exampleUser",
"password": "examplePassword"
}{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJfaWQiOiIyYTZlMzQzNC1kZjI4LTQ1NDQtOTYzYS1mZTViMmQ1NTg0ZWIiLCJyb2xlcyI6MjU1LCJpYXQiOjE2NzMyODY1MjYsImV4cCI6MTY3MzI5MDEyNn0.eDnLoBQSp8mkI6C4rkgm1iBFL_dSPAWoYiXOtitaCAs",
"refreshToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJfaWQiOiIyYTZlMzQzNC1kZjI4LTQ1NDQtOTYzYS1mZTViMmQ1NTg0ZWIiLCJyZWZyZXNoVG9rZW4iOnRydWUsImlhdCI6MTY3MzI4NjUyNiwiZXhwIjoxNjczMzI5NzI2fQ.TsB2JUhjh8I8dvJrXxVNL4anJKUO5j_sS2EL3x4c5SE"
}POST /api/v1/auth/refresh HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 234
{
"refreshToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJfaWQiOiIyYTZlMzQzNC1kZjI4LTQ1NDQtOTYzYS1mZTViMmQ1NTg0ZWIiLCJyZWZyZXNoVG9rZW4iOnRydWUsImlhdCI6MTY3MTYxNzY2MiwiZXhwIjoxNjcxNjYwODYyfQ.Mwjbo13AQH-wyfuK_HI5sjwikUZSRboyHa6nkrkm-Xg"
}{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJfaWQiOiIyYTZlMzQzNC1kZjI4LTQ1NDQtOTYzYS1mZTViMmQ1NTg0ZWIiLCJyb2xlcyI6MjU1LCJpYXQiOjE2NzMyODcyMDUsImV4cCI6MTY3MzI5MDgwNX0.T2D6l1AMMEbBJXshJjyyHjt1t7XUB5k35Vegusg2HZc",
"refreshToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJfaWQiOiIyYTZlMzQzNC1kZjI4LTQ1NDQtOTYzYS1mZTViMmQ1NTg0ZWIiLCJyZWZyZXNoVG9rZW4iOnRydWUsImlhdCI6MTY3MzI4NzIwNSwiZXhwIjoxNjczMzMwNDA1fQ.AJxGVcUr0raGWYYUDY8hxq9It_gd7byodocjKuzo35I"
}POST /api/v1/auth/user HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 147
{
"username": "[email protected]",
"password": "12345678",
"roles": {
"admin": false,
"flows": true,
"configure": false,
"subscribe": true,
"write": true,
"read": true
}
}{
"_id": "71abe4f9-c636-4b1c-950f-968459cea908"
}GET /api/v1/auth/user/{username} HTTP/1.1
Host:
Accept: */*
71abe4f9-c636-4b1c-950f-968459cea908GET /api/v1/auth/users HTTP/1.1
Host:
Accept: */*
[
"admin",
"[email protected]",
"[email protected]"
]GET /api/v1/auth/user/roles/{_id} HTTP/1.1
Host:
Accept: */*
{
"admin": false,
"flows": true,
"configure": false,
"subscribe": true,
"write": true,
"read": true
}PATCH /api/v1/auth/user/roles/{_id} HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 97
{
"roles": {
"admin": true,
"flows": true,
"configure": false,
"subscribe": true,
"write": true,
"read": true
}
}{
"roles": {
"admin": true,
"flows": true,
"configure": false,
"subscribe": true,
"write": true,
"read": true
}
}PATCH /api/v1/auth/user/password/{_id} HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 19
{
"password": "text"
}{
"result": "text"
}DELETE /api/v1/auth/user/{_id} HTTP/1.1
Host:
Accept: */*
{
"result": "OK"
}{
"topic": "connected"
}GET /api/v1/mobius/subscribe/connect HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001/020/000D/0001/40",
"data": {
"rid": "40",
"type": "number",
"name": "tmp",
"pv": 10,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
10,
0
],
"settings": {
"access": "r",
"min": 0,
"max": 51,
"precision": 1,
"units": "C"
}
}
}{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001/020/000D/0001/40",
"data": {
"rid": "40",
"type": "number",
"name": "tmp",
"pv": 0,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
0
],
"settings": {
"access": "r",
"min": 0,
"max": 51,
"precision": 1,
"units": "C"
}
}
}GET /api/v1/mobius/object/{hid}/{sid}/{pid}/{ins} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001/020/000D/0001",
"data": {
"pid": "000D",
"ins": "0001",
"profileName": "enocean_A5-08-01",
"description": "EnOcean light, temperature and occupancy sensor",
"resources": [
{
"rid": "00",
"type": "string",
"name": "parentObject",
"pv": "",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"",
""
],
"settings": {
"access": "rw",
"tags": {
"attribute": "true"
}
}
},
{
"rid": "01",
"type": "string",
"name": "name",
"pv": "EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor",
""
],
"settings": {
"access": "r",
"tags": {
"attribute": "true"
}
}
},
{
"rid": "02",
"type": "datetime",
"name": "objectLastUpdated",
"pv": "1970-01-01T00:00:00.000Z",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"1970-01-01T00:00:00.000Z",
"1970-01-01T00:00:00.000Z"
],
"settings": {
"access": "r"
}
},
{
"rid": "03",
"type": "string",
"name": "description",
"pv": "",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"",
""
],
"settings": {
"access": "r",
"tags": {
"attribute": "true"
}
}
},
{
"rid": "04",
"type": "string",
"name": "location",
"pv": "",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"",
""
],
"settings": {
"access": "r",
"tags": {
"attribute": "true"
}
}
},
{
"rid": "0A",
"type": "string",
"name": "eep",
"pv": "A5-08-01",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"A5-08-01",
""
],
"settings": {
"access": "r",
"tags": {
"attribute": "true"
}
}
},
{
"rid": "0B",
"type": "string",
"name": "uid",
"pv": "12345678",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"12345678",
""
],
"settings": {
"access": "r",
"maxlen": 8,
"tags": {
"attribute": "true"
}
}
},
{
"rid": "0C",
"type": "number",
"name": "status",
"pv": 0,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
0,
0
],
"settings": {
"access": "r"
}
},
{
"rid": "0D",
"type": "number",
"name": "dBm",
"pv": 0,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
0,
0
],
"settings": {
"access": "r",
"units": "dBm"
}
},
{
"rid": "0E",
"type": "bool",
"name": "lrn",
"pv": false,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
false,
false
],
"settings": {
"access": "r"
}
},
{
"rid": "40",
"type": "number",
"name": "tmp",
"pv": 0,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
0,
0
],
"settings": {
"access": "r",
"min": 0,
"max": 51,
"precision": 1,
"units": "C"
}
},
{
"rid": "41",
"type": "number",
"name": "lux",
"pv": 0,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
0,
0
],
"settings": {
"access": "r",
"min": 0,
"max": 510,
"precision": 1,
"units": "lx"
}
},
{
"rid": "42",
"type": "bool",
"name": "pirs",
"pv": false,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
false,
false
],
"settings": {
"access": "r"
}
},
{
"rid": "43",
"type": "bool",
"name": "occupany",
"pv": false,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
false,
false
],
"settings": {
"access": "r"
}
},
{
"rid": "44",
"type": "number",
"name": "supplyVoltage",
"pv": 0,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
0,
0
],
"settings": {
"access": "r",
"min": 0,
"max": 5.1,
"precision": 1,
"units": "V"
}
}
],
"families": [
"EnOcean",
"TemperatureSensor",
"OccupancySensor",
"LightSensor"
],
"isFromConfig": 1
}
}GET /api/v1/mobius/object/resource/{hid}/{sid}/{pid}/{ins}/{rid} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001/020/000D/0001/40",
"data": {
"rid": "40",
"type": "number",
"name": "tmp",
"pv": 0,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
0,
0
],
"settings": {
"access": "r",
"min": 0,
"max": 51,
"precision": 1,
"units": "C"
}
}
}GET /api/v1/mobius/object/config/{hid}/{sid}/{pid}/{ins} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"pid": "000D",
"ins": "0001",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor"
}
},
{
"rid": "0B",
"settings": {
"pv": "12345678"
}
}
]
}
}POST /api/v1/mobius/object/{hid}/{sid}/{pid} HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 36
[
{
"rid": "40",
"settings": {
"min": 30
}
}
]{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"sid": "020",
"spid": "0021",
"name": "enocean devices",
"enabled": true,
"runAtStart": true,
"settings": {
"mqtt": {
"host": "mqtt://localhost",
"port": 2016
},
"timeouts": {
"local": 500,
"remote": 5000
}
},
"custom": {},
"objects": [
{
"pid": "000D",
"objects": [
{
"pid": "000D",
"ins": "0005",
"rids": [
{
"rid": "40",
"settings": {
"min": 22
}
}
]
},
{
"pid": "000D",
"ins": "0002",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor"
}
},
{
"rid": "0B",
"settings": {
"pv": "11223344"
}
}
]
},
{
"pid": "000D",
"ins": "0006",
"rids": [
{
"rid": "40",
"settings": {
"min": 30
}
}
]
}
]
},
{
"pid": "0010",
"objects": [
{
"pid": "0010",
"ins": "0001",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-02-02 Temperature Sensor (-30C to 10C)"
}
},
{
"rid": "0B",
"settings": {
"pv": "12121212"
}
}
]
}
]
}
]
}
}POST /api/v1/mobius/object/{hid}/{sid}/{pid}/{ins} HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 36
[
{
"rid": "40",
"settings": {
"min": 30
}
}
]{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"sid": "020",
"spid": "0021",
"name": "enocean devices",
"enabled": true,
"runAtStart": true,
"settings": {
"mqtt": {
"host": "mqtt://localhost",
"port": 2016
},
"timeouts": {
"local": 500,
"remote": 5000
}
},
"custom": {},
"objects": [
{
"pid": "000D",
"objects": [
{
"pid": "000D",
"ins": "0005",
"rids": [
{
"rid": "40",
"settings": {
"min": 22
}
}
]
},
{
"pid": "000D",
"ins": "0002",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor"
}
},
{
"rid": "0B",
"settings": {
"pv": "11223344"
}
}
]
},
{
"pid": "000D",
"ins": "0006",
"rids": [
{
"rid": "40",
"settings": {
"min": 30
}
}
]
}
]
},
{
"pid": "0010",
"objects": [
{
"pid": "0010",
"ins": "0001",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-02-02 Temperature Sensor (-30C to 10C)"
}
},
{
"rid": "0B",
"settings": {
"pv": "12121212"
}
}
]
}
]
}
]
}
}POST /api/v1/mobius/object/clone/{hid}/{sid}/{pid}/{ins} HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 27
{
"copies": 1,
"start": "000A"
}{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"sid": "020",
"spid": "0021",
"name": "enocean devices",
"enabled": true,
"runAtStart": true,
"settings": {
"mqtt": {
"host": "mqtt://localhost",
"port": 2016
},
"timeouts": {
"local": 500,
"remote": 5000
}
},
"objects": [
{
"pid": "000D",
"objects": [
{
"ins": "0002",
"pid": "000D",
"uiname": "EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor"
}
},
{
"rid": "0B",
"settings": {
"pv": "11223344"
}
}
],
"timestamp": 1671618304292
},
{
"ins": "0006",
"pid": "000D",
"rids": [
{
"rid": "40",
"settings": {
"min": 30
}
}
]
},
{
"ins": "0001",
"pid": "000D",
"rids": [
{
"rid": "40",
"settings": {
"min": 30
}
}
]
},
{
"ins": "000A",
"pid": "000D",
"uiname": "EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor"
}
},
{
"rid": "0B",
"settings": {
"pv": "11223344"
}
}
],
"timestamp": 1671618304292
}
]
},
{
"pid": "0010",
"objects": [
{
"ins": "0001",
"pid": "0010",
"uiname": "EnOcean EEP A5-02-02 Temperature Sensor (-30C to 10C)",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-02-02 Temperature Sensor (-30C to 10C)"
}
},
{
"rid": "0B",
"settings": {
"pv": "12121212"
}
}
],
"timestamp": 1671618299023
}
]
}
],
"custom": {}
}
}PATCH /api/v1/mobius/object/resource/{hid}/{sid}/{pid}/{ins}/{rid} HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 26
{
"priority": 15,
"value": 10
}PATCH /api/v1/mobius/object/resource/{hid}/{sid}/{pid}/{ins} HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 58
[
{
"r": "00",
"p": 15,
"v": "Hello"
},
{
"r": "40",
"p": 15,
"v": 43.9
}
]PATCH /api/v1/mobius/object/resource/clear/{hid}/{sid}/{pid}/{ins}/{rid} HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 15
{
"priority": 15
}PATCH /api/v1/mobius/object/config/{hid}/{sid}/{pid}/{ins} HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 58
{
"ins": "0005",
"rids": [
{
"rid": "40",
"settings": {
"min": 22
}
}
]
}{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"pid": "000D",
"ins": "0005",
"rids": [
{
"rid": "40",
"settings": {
"min": 22
}
}
]
}
}DELETE /api/v1/mobius/object/{hid}/{sid}/{pid}/{ins} HTTP/1.1
Host:
Accept: */*
{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001",
"data": {
"sid": "020",
"spid": "0021",
"name": "enocean devices",
"enabled": true,
"runAtStart": true,
"settings": {
"mqtt": {
"host": "mqtt://localhost",
"port": 2016
},
"timeouts": {
"local": 500,
"remote": 5000
}
},
"custom": {},
"objects": [
{
"pid": "000D",
"objects": [
{
"pid": "000D",
"ins": "0002",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor"
}
},
{
"rid": "0B",
"settings": {
"pv": "11223344"
}
}
]
},
{
"pid": "000D",
"ins": "0006",
"rids": [
{
"rid": "40",
"settings": {
"min": 30
}
}
]
},
{
"pid": "000D",
"ins": "0001",
"rids": [
{
"rid": "40",
"settings": {
"min": 30
}
}
]
}
]
},
{
"pid": "0010",
"objects": [
{
"pid": "0010",
"ins": "0001",
"rids": [
{
"rid": "01",
"settings": {
"pv": "EnOcean EEP A5-02-02 Temperature Sensor (-30C to 10C)"
}
},
{
"rid": "0B",
"settings": {
"pv": "12121212"
}
}
]
}
]
}
]
}
}{
"ts": "2022-12-21T10:25:54.585Z",
"uri": "000001/020/000D/0001",
"data": {
"pid": "000D",
"ins": "0001",
"profileName": "enocean_A5-08-01",
"description": "EnOcean light, temperature and occupancy sensor",
"resources": [
{
"rid": "00",
"type": "string",
"name": "parentObject",
"pv": "Hello",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"Hello",
""
],
"settings": {
"access": "rw",
"tags": {
"attribute": "true"
}
}
},
{
"rid": "01",
"type": "string",
"name": "name",
"pv": "EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"EnOcean EEP A5-08-01 Light, Temperature and Occupancy Sensor",
""
],
"settings": {
"access": "r",
"tags": {
"attribute": "true"
}
}
},
{
"rid": "02",
"type": "datetime",
"name": "objectLastUpdated",
"pv": "2022-12-21T12:12:40.566Z",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"2022-12-21T12:12:40.566Z",
"1970-01-01T00:00:00.000Z"
],
"settings": {
"access": "r"
}
},
{
"rid": "03",
"type": "string",
"name": "description",
"pv": "",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"",
""
],
"settings": {
"access": "r",
"tags": {
"attribute": "true"
}
}
},
{
"rid": "04",
"type": "string",
"name": "location",
"pv": "",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"",
""
],
"settings": {
"access": "r",
"tags": {
"attribute": "true"
}
}
},
{
"rid": "0A",
"type": "string",
"name": "eep",
"pv": "A5-08-01",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"A5-08-01",
""
],
"settings": {
"access": "r",
"tags": {
"attribute": "true"
}
}
},
{
"rid": "0B",
"type": "string",
"name": "uid",
"pv": "12345678",
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"12345678",
""
],
"settings": {
"access": "r",
"maxlen": 8,
"tags": {
"attribute": "true"
}
}
},
{
"rid": "0C",
"type": "number",
"name": "status",
"pv": 0,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
0,
0
],
"settings": {
"access": "r"
}
},
{
"rid": "0D",
"type": "number",
"name": "dBm",
"pv": 0,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
0,
0
],
"settings": {
"access": "r",
"units": "dBm"
}
},
{
"rid": "0E",
"type": "bool",
"name": "lrn",
"pv": false,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
false,
false
],
"settings": {
"access": "r"
}
},
{
"rid": "40",
"type": "number",
"name": "tmp",
"pv": 43.9,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
43.9,
0
],
"settings": {
"access": "r",
"min": 0,
"max": 51,
"precision": 1,
"units": "C"
}
},
{
"rid": "41",
"type": "number",
"name": "lux",
"pv": 0,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
0,
0
],
"settings": {
"access": "r",
"min": 0,
"max": 510,
"precision": 1,
"units": "lx"
}
},
{
"rid": "42",
"type": "bool",
"name": "pirs",
"pv": false,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
false,
false
],
"settings": {
"access": "r"
}
},
{
"rid": "43",
"type": "bool",
"name": "occupany",
"pv": false,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
false,
false
],
"settings": {
"access": "r"
}
},
{
"rid": "44",
"type": "number",
"name": "supplyVoltage",
"pv": 0,
"prar": [
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
0,
0
],
"settings": {
"access": "r",
"min": 0,
"max": 5.1,
"precision": 1,
"units": "V"
}
}
],
"families": [
"EnOcean",
"TemperatureSensor",
"OccupancySensor",
"LightSensor"
],
"isFromConfig": 1
}
}