Response samples
- 200
{- "data": {
- "type": "general",
- "description": "This is My Thingspro Edge.",
- "hostName": "Moxa",
- "modelName": "UC-8112A-ME-T-LX-EU",
- "serialNumber": "IMOXA1234567",
- "thingsproVersion": "2.0.0-1600",
- "firmwareVersion": "1.0.0",
- "biosVersion": "1.0.0S01",
- "lastRebootTime": "2019-06-27T10:10:16+08:00",
- "memorySize": 1056120832,
- "cpu": "ARMv7 Processor rev 2 (v7l)",
- "disk": [
- {
- "name": "System",
- "mount": "/",
- "device": "/dev/root",
- "total": 3206059008,
- "free": 1905097752,
- "used": 1138657820,
- "percent": 35.5,
- "tags": {
- "used": "systemDiskUsed",
- "free": "systemDiskFree",
- "percent": "systemDiskPercent"
}
}
]
}
}
Update device general configuration.
Update device general configuration.
Authorizations:
Request Body schema: application/json
description | string <= 512 This is My Thingspro Edge. |
hostName | string [ 1 .. 64 ] ^[a-zA-Z]([a-zA-Z0-9-]*[a-zA-Z0-9])?(\.[a-zA-... device hostname. |
Responses
Request samples
- Payload
{- "description": "This is My Thingspro Edge."
}
Response samples
- 200
{- "data": {
- "type": "general",
- "description": "This is My Thingspro Edge.",
- "hostName": "MyHost",
- "modelName": "UC-8112A-ME-T-LX-EU",
- "serialNumber": "IMOXA1234567",
- "thingsproVersion": "2.0.0-1600",
- "firmwareVersion": "1.0.0",
- "biosVersion": "1.0.0S01",
- "lastRebootTime": "2019-06-27T10:10:16+08:00",
- "memorySize": 1056120832,
- "cpu": "ARMv7 Processor rev 2 (v7l)",
- "disk": [
- {
- "name": "System",
- "mount": "/",
- "device": "/dev/root",
- "total": 3206059008,
- "free": 1905097752,
- "used": 1138657820,
- "percent": 35.5,
- "tags": {
- "used": "systemDiskUsed",
- "free": "systemDiskFree",
- "percent": "systemDiskPercent"
}
}
]
}
}
Response samples
- 200
{- "data": {
- "type": "time",
- "lastUpdateTime": "-",
- "time": "2015-03-26T16:27:48+08:00",
- "timezone": "Asia/Taipei",
- "ntp": {
- "enable": false,
- "source": "timeserver",
- "server": "pool.ntp.org",
- "gpsLongJump": true,
- "interval": 86400
}
}
}
Update device time configuration.
Update device time configuration.
Authorizations:
Request Body schema: application/json
time | string [ 20 .. 35 ] characters Current system time (format: RFC3339). |
timezone | string [ 1 .. 64 ] characters device timezone. |
object |
Responses
Request samples
- Payload
{- "time": "2015-03-26T16:27:48+08:00"
}
Response samples
- 200
{- "data": {
- "type": "time",
- "lastUpdateTime": "-",
- "time": "2015-03-26T16:27:48+08:00",
- "timezone": "Asia/Taipei",
- "ntp": {
- "enable": false,
- "source": "timeserver",
- "server": "pool.ntp.org",
- "gpsLongJump": true,
- "interval": 86400
}
}
}
Response samples
- 200
{- "data": {
- "zone": [
- {
- "cca2": "AD",
- "name": "Europe/Andorra",
- "offset": "+0100"
}, - {
- "cca2": "AE",
- "name": "Asia/Dubai",
- "offset": "+0400"
}, - {
- "cca2": "AF",
- "name": "Asia/Kabul",
- "offset": "+0430"
}
], - "iso3166": [
- {
- "cca2": "AD",
- "name": "Andorra"
}, - {
- "cca2": "AE",
- "name": "United Arab Emirates"
}, - {
- "cca2": "AF",
- "name": "Afghanistan"
}
]
}
}
Response samples
- 200
{- "data": {
- "type": "route",
- "default": "LAN1",
- "priorityList": [
- "LAN1",
- "Cellular1",
- "LAN2"
]
}
}
Update device route configuration.
Update device route configuration.
Authorizations:
Request Body schema: application/json
priorityList | Array of strings[ items [ 2 .. 15 ] characters [A-Za-z0-9_-]+ ] |
Responses
Request samples
- Payload
{- "priorityList": [
- "LAN2",
- "Cellular1",
- "LAN1"
]
}
Response samples
- 200
{- "data": {
- "type": "route",
- "default": "LAN2",
- "priorityList": [
- "LAN2",
- "Cellular1",
- "LAN1"
]
}
}
Response samples
- 200
{- "data": {
- "status": "ConnectedToInternet"
}
}
Update configuration of internet check alive
Update configuration of internet check alive
Authorizations:
Request Body schema: application/json
enable | boolean enable/disable internet check alive service |
target | string [ 1 .. 255 ] characters target for internet check alive |
interval | integer [ 10 .. 3600 ] interval in seconds for internet check alive |
timeout | integer [ 1 .. 60 ] each check timeout in seconds for internet check alive |
retry | integer [ 1 .. 10 ] retry times for internet check alive |
Responses
Request samples
- Payload
{- "enable": true,
- "target": "www.moxa.com",
- "interval": 120,
- "timeout": 10,
- "retry": 5
}
Response samples
- 200
{- "data": {
- "enable": true,
- "target": "www.moxa.com",
- "interval": 120,
- "timeout": 10,
- "retry": 5
}
}
Get ethernet interfaces configuration.
Get ethernet interfaces configuration.
Authorizations:
Responses
Response samples
- 200
{- "data": [
- {
- "type": "ethernets",
- "id": 1,
- "displayName": "LAN1",
- "name": "eth0",
- "wan": true,
- "enable": true,
- "status": "connected",
- "enableDhcp": false,
- "ip": "192.168.3.100",
- "netmask": "255.255.255.0",
- "subnet": "192.168.3.0",
- "broadcast": "192.168.3.255",
- "gateway": "192.168.3.254",
- "dns": [
- "8.8.8.8",
- "4.4.4.4"
], - "mac": "00:90:e8:12:34:56"
}
], - "count": 1
}
Get ethernet interface configuration.
Get ethernet interface configuration.
Authorizations:
path Parameters
id required | integer Example: 1 Ethernet interface id. |
Responses
Response samples
- 200
{- "data": {
- "type": "ethernets",
- "id": 1,
- "displayName": "LAN1",
- "name": "eth0",
- "wan": true,
- "enable": true,
- "status": "connected",
- "enableDhcp": false,
- "ip": "192.168.3.100",
- "netmask": "255.255.255.0",
- "subnet": "192.168.3.0",
- "broadcast": "192.168.3.255",
- "gateway": "192.168.3.254",
- "dns": [
- "8.8.8.8",
- "4.4.4.4"
], - "mac": "00:90:e8:12:34:56"
}
}
Update ethernet interface configuration.
Update ethernet interface configuration.
Authorizations:
path Parameters
id required | integer Example: 1 Ethernet interface id. |
Request Body schema: application/json
id | integer >= 1 Identifier of an Ethernet interface. |
enable required | boolean Set interface UP. |
enableDhcp required | boolean Enable ( |
wan required | boolean Define the interface type is WAN ( |
Responses
Request samples
- Payload
{- "enable": true,
- "enableDhcp": true,
- "wan": true
}
Response samples
- 200
{- "data": {
- "type": "ethernets",
- "id": 1,
- "displayName": "LAN1",
- "name": "eth0",
- "wan": true,
- "enable": true,
- "status": "connected",
- "enableDhcp": true,
- "ip": "192.168.3.100",
- "netmask": "255.255.255.0",
- "subnet": "192.168.3.0",
- "broadcast": "192.168.3.255",
- "gateway": "192.168.3.254",
- "dns": [
- "8.8.8.8",
- "4.4.4.4"
], - "mac": "00:90:e8:12:34:56"
}
}
Response samples
- 200
{- "data": [
- {
- "type": "serials",
- "id": 1,
- "mode": "rs232",
- "displayName": "P1",
- "device": "/dev/ttyM0",
- "baudRate": 9600,
- "parity": "none",
- "dataBits": 8,
- "stopBits": 1,
- "flowControl": "hardware",
- "capabilities": {
- "mode": [
- "rs232",
- "rs422",
- "rs4852w",
- "rs4854w"
], - "baudRate": {
- "special": false,
- "range": [
- 300,
- 600,
- 1200,
- 1800,
- 2400,
- 4800,
- 9600,
- 19200,
- 38400,
- 57600,
- 115200,
- 230400,
- 460800,
- 921600
]
}, - "parities": [
- "none",
- "odd",
- "even",
- "space",
- "mark"
], - "dataBits": [
- 5,
- 6,
- 7,
- 8
], - "stopBits": [
- 1,
- 2,
- 1.5
], - "flowControl": [
- "none",
- "hardware",
- "software"
]
}
}, - {
- "type": "serials",
- "id": 2,
- "mode": "rs422",
- "displayName": "P2",
- "device": "/dev/ttyM1",
- "baudRate": 115200,
- "parity": "none",
- "dataBits": 8,
- "stopBits": 1,
- "flowControl": "software",
- "capabilities": {
- "mode": [
- "rs232",
- "rs422",
- "rs4852w",
- "rs4854w"
], - "baudRate": {
- "special": false,
- "range": [
- 300,
- 600,
- 1200,
- 1800,
- 2400,
- 4800,
- 9600,
- 19200,
- 38400,
- 57600,
- 115200,
- 230400,
- 460800,
- 921600
]
}, - "parities": [
- "none",
- "odd",
- "even",
- "space",
- "mark"
], - "dataBits": [
- 5,
- 6,
- 7,
- 8
], - "stopBits": [
- 1,
- 2,
- 1.5
], - "flowControl": [
- "none",
- "hardware",
- "software"
]
}
}
], - "count": 2
}
Update serial interfaces configuration.
Update serial interfaces configuration.
Authorizations:
Request Body schema: application/json
id | integer Interface id. |
mode | string Enum: "rs232" "rs422" "rs4852w" "rs4854w" Serial interface mode. |
baudRate | integer baud rate |
parity | string parity |
dataBits | integer data bits |
stopBits | number stop bits |
flowControl | string flow control |
Responses
Request samples
- Payload
[- {
- "id": 1,
- "mode": "rs232"
}, - {
- "id": 2,
- "mode": "rs4852w",
- "baudRate": 19200,
- "parity": "none",
- "dataBits": 8,
- "stopBits": 1,
- "flowControl": "none"
}
]
Response samples
- 200
{- "data": [
- {
- "type": "serials",
- "id": 1,
- "mode": "rs232",
- "displayName": "P1",
- "device": "/dev/ttyM0",
- "baudRate": 9600,
- "parity": "none",
- "dataBits": 8,
- "stopBits": 1,
- "flowControl": "hardware"
}, - {
- "type": "serials",
- "id": 2,
- "mode": "rs4852w",
- "displayName": "P2",
- "device": "/dev/ttyM1",
- "baudRate": 19200,
- "parity": "none",
- "dataBits": 8,
- "stopBits": 1,
- "flowControl": "none"
}
], - "count": 2
}
Get serial interface configuration.
Get serial interface configuration.
Authorizations:
path Parameters
id required | integer Example: 1 Serial interface id. |
Responses
Response samples
- 200
{- "data": {
- "type": "serials",
- "id": 1,
- "mode": "rs232",
- "displayName": "P1",
- "device": "/dev/ttyM0",
- "baudRate": 9600,
- "parity": "none",
- "dataBits": 8,
- "stopBits": 1,
- "flowControl": "hardware",
- "capabilities": {
- "mode": [
- "rs232",
- "rs422",
- "rs4852w",
- "rs4854w"
], - "baudRate": {
- "special": false,
- "range": [
- 300,
- 600,
- 1200,
- 1800,
- 2400,
- 4800,
- 9600,
- 19200,
- 38400,
- 57600,
- 115200,
- 230400,
- 460800,
- 921600
]
}, - "parities": [
- "none",
- "odd",
- "even",
- "space",
- "mark"
], - "dataBits": [
- 5,
- 6,
- 7,
- 8
], - "stopBits": [
- 1,
- 2,
- 1.5
], - "flowControl": [
- "none",
- "hardware",
- "software"
]
}
}
}
Update serial interface configuration.
Update serial interface configuration.
Authorizations:
path Parameters
id required | integer Example: 1 Serial interface id. |
Request Body schema: application/json
id | integer Interface id. |
mode | string Enum: "rs232" "rs422" "rs4852w" "rs4854w" Serial interface mode. |
baudRate | integer baud rate |
parity | string parity |
dataBits | integer data bits |
stopBits | number stop bits |
flowControl | string flow control |
Responses
Request samples
- Payload
{- "mode": "rs422",
- "flowControl": "software"
}
Response samples
- 200
{- "data": {
- "type": "serial",
- "id": 1,
- "mode": "rs422",
- "displayName": "P1",
- "device": "/dev/ttyM0",
- "baudRate": 115200,
- "parity": "none",
- "dataBits": 8,
- "stopBits": 1,
- "flowControl": "software"
}
}
Get cellular interfaces configuration.
Get cellular interfaces configuration.
Authorizations:
Responses
Response samples
- 200
{- "count": 1,
- "data": [
- {
- "currentProfileId": 1,
- "carrier": "ATT",
- "ip": "",
- "tac": "",
- "type": "cellular",
- "operatorName": "",
- "keepalive": {
- "intervalSec": 60,
- "enable": true,
- "targetHost": "8.8.8.8",
- "reboot": {
- "enable": true,
- "intervalMin": 20
}
}, - "capabilities": {
- "sim": 1,
- "carriers": [
- "ATT",
- "SPRINT"
]
}, - "id": 1,
- "gateway": "",
- "autoDetect": false,
- "profileTimeout": 120,
- "esn": "80AF33D7",
- "imsi": "466977300046885",
- "status": "ready",
- "enable": false,
- "available": true,
- "dns": [ ],
- "bid": "",
- "nid": "",
- "lac": "11114",
- "mac": "00:00:11:12:13:14",
- "imei": "359841080332053",
- "cellId": "6326",
- "name": "wwan0",
- "displayName": "wwan0",
- "signal": {
- "rssi": -67,
- "rsrq": 0,
- "csq": 16,
- "ecio": 0
}, - "pinRetryRemain": -1,
- "netmask": "",
- "profiles": [
- {
- "pinCode": "0000",
- "init": [
- "sim:1",
- "carrier:ATT"
], - "id": 1,
- "name": "SIM1",
- "pdpContext": {
- "static": true,
- "apn": "internet",
- "id": 1,
- "auth": {
- "protocol": "none",
- "username": "",
- "password": ""
}, - "type": "ipv4"
}
}
], - "mode": "lte",
- "iccId": "89886971410730170000"
}
]
}
Update cellular interfaces configuration.
Update cellular interfaces configuration.
Authorizations:
Request Body schema: application/json
id | integer Interface id. |
enable required | boolean Enable Cellular Networking. |
autoDetect | boolean Auto detect SIM slot, carrier and APN to create profiles |
profileTimeout | integer [ 60 .. 3600 ] Retry timeout in seconds for switch profiles. |
Array of objects (Cellular Profile) [ items ] Profiles for redundancy | |
object (Keepalive Settings) |
Responses
Request samples
- Payload
[- {
- "id": 1,
- "enable": true,
- "keepalive": {
- "intervalSec": 60,
- "enable": true,
- "targetHost": "8.8.8.8",
- "reboot": {
- "enable": true,
- "intervalMin": 20
}
}, - "autoDetect": false,
- "profileTimeout": 120,
- "profiles": [
- {
- "pinCode": "0000",
- "init": [
- "sim:1",
- "carrier:ATT"
], - "name": "SIM1",
- "pdpContext": {
- "static": true,
- "apn": "internet",
- "id": 1,
- "auth": {
- "protocol": "none",
- "username": "",
- "password": ""
}, - "type": "ipv4"
}
}
]
}
]
Response samples
- 200
{- "count": 1,
- "data": [
- {
- "currentProfileId": 1,
- "carrier": "ATT",
- "ip": "",
- "tac": "",
- "type": "cellular",
- "operatorName": "",
- "keepalive": {
- "intervalSec": 60,
- "enable": true,
- "targetHost": "8.8.8.8",
- "reboot": {
- "enable": true,
- "intervalMin": 20
}
}, - "capabilities": {
- "sim": 1,
- "carriers": [
- "ATT",
- "SPRINT"
]
}, - "id": 1,
- "gateway": "",
- "autoDetect": false,
- "profileTimeout": 120,
- "esn": "80AF33D7",
- "imsi": "466977300046885",
- "status": "ready",
- "enable": false,
- "available": true,
- "dns": [ ],
- "bid": "",
- "nid": "",
- "lac": "11114",
- "mac": "00:00:11:12:13:14",
- "imei": "359841080332053",
- "cellId": "6326",
- "name": "wwan0",
- "displayName": "wwan0",
- "signal": {
- "rssi": -67,
- "rsrq": 0,
- "csq": 16,
- "ecio": 0
}, - "pinRetryRemain": -1,
- "netmask": "",
- "profiles": [
- {
- "pinCode": "0000",
- "init": [
- "sim:1",
- "carrier:ATT"
], - "id": 1,
- "name": "SIM1",
- "pdpContext": {
- "static": true,
- "apn": "internet",
- "id": 1,
- "auth": {
- "protocol": "none",
- "username": "",
- "password": ""
}, - "type": "ipv4"
}
}
], - "mode": "lte",
- "iccId": "89886971410730170000"
}
]
}
Get cellular interface configuration.
Get cellular interface configuration.
Authorizations:
path Parameters
id required | integer Cellular interface id. |
Responses
Response samples
- 200
{- "currentProfileId": 1,
- "carrier": "ATT",
- "ip": "",
- "tac": "",
- "type": "cellular",
- "operatorName": "",
- "keepalive": {
- "intervalSec": 60,
- "enable": true,
- "targetHost": "8.8.8.8",
- "reboot": {
- "enable": true,
- "intervalMin": 20
}
}, - "capabilities": {
- "sim": 1,
- "carriers": [
- "ATT",
- "SPRINT"
]
}, - "id": 1,
- "gateway": "",
- "autoDetect": false,
- "profileTimeout": 120,
- "esn": "80AF33D7",
- "imsi": "466977300046885",
- "status": "ready",
- "enable": false,
- "available": true,
- "dns": [ ],
- "bid": "",
- "nid": "",
- "lac": "11114",
- "mac": "00:00:11:12:13:14",
- "imei": "359841080332053",
- "cellId": "6326",
- "name": "wwan0",
- "displayName": "wwan0",
- "signal": {
- "rssi": -67,
- "rsrq": 0,
- "csq": 16,
- "ecio": 0
}, - "pinRetryRemain": -1,
- "netmask": "",
- "profiles": [
- {
- "pinCode": "0000",
- "init": [
- "sim:1",
- "carrier:ATT"
], - "id": 1,
- "name": "SIM1",
- "pdpContext": {
- "static": true,
- "apn": "internet",
- "id": 1,
- "auth": {
- "protocol": "none",
- "username": "",
- "password": ""
}, - "type": "ipv4"
}
}
], - "mode": "lte",
- "iccId": "89886971410730170000"
}
Update cellular configuration.
Update cellular configuration.
Authorizations:
path Parameters
id required | integer Cellular interface id. |
Request Body schema: application/json
enable required | boolean Enable Cellular Networking. |
autoDetect | boolean Auto detect SIM slot, carrier and APN to create profiles |
profileTimeout | integer [ 60 .. 3600 ] Retry timeout in seconds for switch profiles. |
Array of objects (Cellular Profile) [ items ] Profiles for redundancy | |
object (Keepalive Settings) |
Responses
Request samples
- Payload
{- "enable": true,
- "keepalive": {
- "intervalSec": 60,
- "enable": true,
- "targetHost": "8.8.8.8",
- "reboot": {
- "enable": true,
- "intervalMin": 20
}
}, - "autoDetect": false,
- "profileTimeout": 120,
- "profiles": [
- {
- "pinCode": "0000",
- "init": [
- "sim:1",
- "carrier:ATT"
], - "name": "SIM1",
- "pdpContext": {
- "static": true,
- "apn": "internet",
- "id": 1,
- "auth": {
- "protocol": "none",
- "username": "",
- "password": ""
}, - "type": "ipv4"
}
}
]
}
Response samples
- 200
{- "currentProfileId": 1,
- "carrier": "ATT",
- "ip": "",
- "tac": "",
- "type": "cellular",
- "operatorName": "",
- "keepalive": {
- "intervalSec": 60,
- "enable": true,
- "targetHost": "8.8.8.8",
- "reboot": {
- "enable": true,
- "intervalMin": 20
}
}, - "capabilities": {
- "sim": 1,
- "carriers": [
- "ATT",
- "SPRINT"
]
}, - "id": 1,
- "gateway": "",
- "autoDetect": false,
- "profileTimeout": 120,
- "esn": "80AF33D7",
- "imsi": "466977300046885",
- "status": "ready",
- "enable": false,
- "available": true,
- "dns": [ ],
- "bid": "",
- "nid": "",
- "lac": "11114",
- "mac": "00:00:11:12:13:14",
- "imei": "359841080332053",
- "cellId": "6326",
- "name": "wwan0",
- "displayName": "wwan0",
- "signal": {
- "rssi": -67,
- "rsrq": 0,
- "csq": 16,
- "ecio": 0
}, - "pinRetryRemain": -1,
- "netmask": "",
- "profiles": [
- {
- "pinCode": "0000",
- "init": [
- "sim:1",
- "carrier:ATT"
], - "id": 1,
- "name": "SIM1",
- "pdpContext": {
- "static": true,
- "apn": "internet",
- "id": 1,
- "auth": {
- "protocol": "none",
- "username": "",
- "password": ""
}, - "type": "ipv4"
}
}
], - "mode": "lte",
- "iccId": "89886971410730170000"
}
Response samples
- 200
{- "data": {
- "type": "gps",
- "mode": "manual",
- "interface": "",
- "location": {
- "lat": 23.5,
- "lng": 121.2
}, - "capabilities": {
- "interface": [
- "/dev/ttyUSB0",
- "/dev/ttyUSB1"
]
}
}
}
Patch gps configuration.
Patch gps configuration.
Authorizations:
Request Body schema: application/json
mode required | string GPS mode setting. Could be one of |
interface required | string GPS interface setting from capability. The field is required for |
object (GpsLocation) Location information, with |
Responses
Request samples
- Payload
{- "mode": "manual",
- "location": {
- "lat": 23.5,
- "lng": 121.2
}
}
Response samples
- 200
{- "data": {
- "type": "gps",
- "mode": "manual",
- "interface": "",
- "location": {
- "lat": 23.5,
- "lng": 121.2
}
}
}
Response samples
- 200
{- "data": [
- {
- "type": "dhcpservers",
- "id": 1,
- "status": true,
- "available": true,
- "name": "eth0",
- "displayName": "LAN1",
- "enable": true,
- "startIp": "192.168.3.100",
- "endIp": "192.168.3.200",
- "netmask": "255.255.255.0",
- "domainNameServers": [
- "8.8.8.8"
], - "domainName": "example.com",
- "leaseTime": 2592000
}, - {
- "type": "dhcpservers",
- "id": 2,
- "status": true,
- "available": true,
- "name": "eth1",
- "displayName": "LAN2",
- "enable": true,
- "startIp": "192.168.4.100",
- "endIp": "192.168.4.200",
- "netmask": "255.255.255.0",
- "domainNameServers": [
- "8.8.8.8"
], - "domainName": "example.com",
- "leaseTime": 2592000
}
], - "count": 2
}
Patch DHCP Server configuration
Patch DHCP Server configuration
Authorizations:
Request Body schema: application/json
id required | integer >= 1 Identifier of a DHCP Server |
enable | boolean Enable ( |
startIp | string^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\... Range IP start |
endIp | string^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\... Range IP end |
netmask | string^(?:(?:254|252|248|240|224|192|128)\.0\.0\.0|... Netmask of DHCP Server |
domainNameServers | Array of strings Domain name servers |
domainName | string [ 2 .. 253 ] characters (?=^.{2,253}$)(?:^(?!\.|-)[a-zA-Z0-9\-]{0,62}... Domain name, empty is allowed |
leaseTime | integer [ 60 .. 2592000 ] Lease time of DHCP pool |
Responses
Request samples
- Payload
[- {
- "id": 1,
- "enable": true,
- "startIp": "192.168.3.100",
- "endIp": "192.168.3.200",
- "netmask": "255.255.255.0",
- "domainNameServers": [
- "8.8.8.8"
], - "domainName": "example.com",
- "leaseTime": 2592000
}
]
Response samples
- 200
{- "data": [
- {
- "type": "dhcpservers",
- "id": 1,
- "status": true,
- "available": true,
- "enable": true,
- "name": "eth0",
- "displayName": "LAN1",
- "startIp": "192.168.3.100",
- "endIp": "192.168.3.200",
- "netmask": "255.255.255.0",
- "domainNameServers": [
- "8.8.8.8"
], - "domainName": "example.com",
- "leaseTime": 2592000
}
], - "count": 1
}
Get DHCP Server configuration
Get DHCP Server configuration
Authorizations:
path Parameters
id required | integer DHCP Server ID |
Responses
Response samples
- 200
{- "data": {
- "type": "dhcpservers",
- "id": 1,
- "status": true,
- "available": true,
- "name": "eth0",
- "displayName": "LAN1",
- "enable": true,
- "startIp": "192.168.3.100",
- "endIp": "192.168.3.200",
- "netmask": "255.255.255.0",
- "domainNameServers": [
- "8.8.8.8"
], - "domainName": "example.com",
- "leaseTime": 2592000
}
}
Patch DHCP Server configuration
Patch DHCP Server configuration
Authorizations:
path Parameters
id required | integer DHCP Server ID |
Request Body schema: application/json
id required | integer >= 1 Identifier of a DHCP Server |
enable | boolean Enable ( |
startIp | string^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\... Range IP start |
endIp | string^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\... Range IP end |
netmask | string^(?:(?:254|252|248|240|224|192|128)\.0\.0\.0|... Netmask of DHCP Server |
domainNameServers | Array of strings Domain name servers |
domainName | string [ 2 .. 253 ] characters (?=^.{2,253}$)(?:^(?!\.|-)[a-zA-Z0-9\-]{0,62}... Domain name, empty is allowed |
leaseTime | integer [ 60 .. 2592000 ] Lease time of DHCP pool |
Responses
Request samples
- Payload
{- "id": 1,
- "enable": true,
- "startIp": "192.168.3.100",
- "endIp": "192.168.3.200",
- "netmask": "255.255.255.0",
- "domainNameServers": [
- "8.8.8.8"
], - "domainName": "example.com",
- "leaseTime": 2592000
}
Response samples
- 200
{- "data": {
- "type": "dhcpservers",
- "id": 1,
- "status": true,
- "available": true,
- "name": "eth0",
- "displayName": "LAN1",
- "enable": true,
- "startIp": "192.168.3.100",
- "endIp": "192.168.3.200",
- "netmask": "255.255.255.0",
- "domainNameServers": [
- "8.8.8.8"
], - "domainName": "example.com",
- "leaseTime": 2592000
}
}
Response samples
- 200
{- "data": [
- {
- "type": "wifi",
- "id": 1,
- "name": "wlan0",
- "displayName": "Wi-Fi1",
- "available": true,
- "mode": "ap",
- "enable": false,
- "status": false,
- "capabilities": {
- "mode": [
- "ap",
- "client"
], - "band": [
- "band24",
- "band50"
]
}, - "regions": [
- {
- "name": "North America",
- "countryCode": "US",
- "band24": [
- 1,
- 2,
- 3,
- 4,
- 5,
- 6,
- 7,
- 8,
- 9,
- 10,
- 11
], - "band50": [
- 36,
- 38,
- 40,
- 42,
- 44,
- 46,
- 48,
- 149,
- 153,
- 157,
- 161,
- 165
]
}, - {
- "name": "Europe",
- "countryCode": "GB",
- "band24": [
- 1,
- 2,
- 3,
- 4,
- 5,
- 6,
- 7,
- 8,
- 9,
- 10,
- 11,
- 12,
- 13
], - "band50": [
- 36,
- 38,
- 40,
- 42,
- 44,
- 46,
- 48
]
}, - {
- "name": "Taiwan",
- "countryCode": "TW",
- "band24": [
- 1,
- 2,
- 3,
- 4,
- 5,
- 6,
- 7,
- 8,
- 9,
- 10,
- 11,
- 12,
- 13
], - "band50": [
- 34,
- 36,
- 38,
- 40,
- 42,
- 44,
- 46,
- 48,
- 149,
- 153,
- 157,
- 161,
- 165
]
}
], - "ap": {
- "band": "band24",
- "broadcastSsid": true,
- "ssid": "moxa-test-ap-1",
- "security": {
- "mode": "wpa2-personal",
- "encryption": "aes",
- "password": ""
}, - "channel": 6,
- "region": "TW",
- "clients": [ ]
}
}
], - "count": 1
}
Update Wi-Fi interface configuration.
Update Wi-Fi interface configuration.
Authorizations:
Request Body schema: application/json
Array of objects[ items ] | |
count | integer Array length. |
Responses
Request samples
- Payload
[- {
- "type": "wifi",
- "id": 1,
- "name": "wlan0",
- "displayName": "Wi-Fi1",
- "mode": "ap",
- "enable": true,
- "ap": {
- "band": "band24",
- "broadcastSsid": true,
- "ssid": "moxa-test-ap-1",
- "security": {
- "mode": "personal",
- "encryption": "aes",
- "password": ""
}, - "channel": 6,
- "region": "US"
}
}
]
Response samples
- 200
{- "data": [
- {
- "type": "wifi",
- "id": 1,
- "name": "wlan0",
- "displayName": "Wi-Fi1",
- "mode": "ap",
- "enable": true,
- "ap": {
- "band": "band24",
- "broadcastSsid": true,
- "ssid": "moxa-test-ap-1",
- "security": {
- "mode": "wpa2",
- "encryption": "aes",
- "password": ""
}, - "channel": 11,
- "region": "US"
}
}
], - "count": 1
}
Get Wi-Fi interface configuration.
Get Wi-Fi interface configuration.
Authorizations:
path Parameters
id required | integer Interface id. |
Responses
Response samples
- 200
{- "data": {
- "type": "wifi",
- "id": 1,
- "name": "wlan0",
- "displayName": "Wi-Fi1",
- "available": true,
- "mode": "ap",
- "enable": false,
- "status": false,
- "capabilities": {
- "mode": [
- "ap",
- "client"
], - "band": [
- "band24",
- "band50"
]
}, - "regions": [
- {
- "name": "North America",
- "countryCode": "US",
- "band24": [
- 1,
- 2,
- 3,
- 4,
- 5,
- 6,
- 7,
- 8,
- 9,
- 10,
- 11
], - "band50": [
- 36,
- 38,
- 40,
- 42,
- 44,
- 46,
- 48,
- 149,
- 153,
- 157,
- 161,
- 165
]
}, - {
- "name": "Europe",
- "countryCode": "GB",
- "band24": [
- 1,
- 2,
- 3,
- 4,
- 5,
- 6,
- 7,
- 8,
- 9,
- 10,
- 11,
- 12,
- 13
], - "band50": [
- 36,
- 38,
- 40,
- 42,
- 44,
- 46,
- 48
]
}, - {
- "name": "Taiwan",
- "countryCode": "TW",
- "band24": [
- 1,
- 2,
- 3,
- 4,
- 5,
- 6,
- 7,
- 8,
- 9,
- 10,
- 11,
- 12,
- 13
], - "band50": [
- 34,
- 36,
- 38,
- 40,
- 42,
- 44,
- 46,
- 48,
- 149,
- 153,
- 157,
- 161,
- 165
]
}
], - "ap": {
- "band": "band24",
- "broadcastSsid": true,
- "ssid": "moxa-test-ap-1",
- "security": {
- "mode": "wpa2",
- "encryption": "aes",
- "password": ""
}, - "channel": 6,
- "region": "TW",
- "clients": [ ]
}
}
}
Update Wi-Fi interface configuration.
Update Wi-Fi interface configuration.
Authorizations:
path Parameters
id required | integer Interface id. |
Request Body schema: application/json
object (Wifi Information) | |||||||||||||
|
Responses
Request samples
- Payload
{- "type": "wifi",
- "id": 1,
- "name": "wlan0",
- "displayName": "Wi-Fi1",
- "mode": "ap",
- "enable": true,
- "ap": {
- "band": "band24",
- "broadcastSsid": true,
- "ssid": "moxa-test-ap-1",
- "security": {
- "mode": "wpa2",
- "encryption": "aes",
- "password": ""
}, - "channel": 6,
- "region": "US"
}
}
Response samples
- 200
{- "data": {
- "type": "wifi",
- "id": 1,
- "name": "wlan0",
- "displayName": "Wi-Fi1",
- "mode": "ap",
- "enable": true,
- "ap": {
- "band": "band24",
- "broadcastSsid": true,
- "ssid": "moxa-test-ap-1",
- "security": {
- "mode": "wpa2",
- "encryption": "aes",
- "password": ""
}, - "channel": 11,
- "region": "US"
}
}
}
Get Wi-Fi client networks list
Get Wi-Fi client networks list
Authorizations:
path Parameters
id required | integer Interface id. |
Responses
Response samples
- 200
{- "data": [
- {
- "uuid": "bzLJpU7MR",
- "ssid": "moxa-test-ap-1",
- "bssid": "10:c3:7b:c6:47:f8",
- "security": {
- "mode": "wpa2-personal",
- "encryption": "aes",
- "password": "!2345678"
}, - "signal": -17,
- "band": "band50"
}
]
}
Post a new Wi-Fi client network to list
Post a new Wi-Fi client network to list
Authorizations:
path Parameters
id required | integer Interface id. |
Request Body schema: application/json
ssid required | string Wi-Fi client network SSID |
password required | string Wi-Fi client network password |
Responses
Request samples
- Payload
{- "ssid": "moxa-ap-2",
- "password": "!2345678"
}
Response samples
- 200
{- "data": [
- {
- "uuid": "bzLJpU7MR",
- "ssid": "moxa-test-ap-1",
- "bssid": "10:c3:7b:c6:47:f8",
- "security": {
- "mode": "wpa2-personal",
- "encryption": "aes",
- "password": "!2345678"
}, - "signal": -17,
- "band": "band50"
}, - {
- "uuid": "kcpJpUnMR",
- "ssid": "moxa-ap-2",
- "bssid": "",
- "security": {
- "mode": "wpa2-personal",
- "encryption": "aes",
- "password": "!2345678"
}, - "signal": null,
- "band": "band24"
}
]
}
Update Wi-Fi client network password
Update Wi-Fi client network password
Authorizations:
path Parameters
id required | integer Interface id. |
uuid required | string uuid of Wifi client network |
Request Body schema: application/json
ssid required | string Wi-Fi client network SSID |
password required | string Wi-Fi client network password |
Responses
Request samples
- Payload
{- "password": "*7654321"
}
Response samples
- 200
{- "data": {
- "uuid": "kcpJpUnMR",
- "ssid": "moxa-test-ap-1",
- "bssid": "10:c3:7b:c6:47:f8",
- "security": {
- "mode": "wpa2-personal",
- "encryption": "aes",
- "password": "*7654321"
}, - "signal": -17,
- "band": "band50"
}
}
Get Wi-Fi client networks scan results
Get Wi-Fi client networks scan results
Authorizations:
path Parameters
id required | integer Interface id. |
query Parameters
event | boolean Get runtime scan, ex: {[{ssid: moxa-test-ap-1, security:{mode: wpa2-personal, encryption: aes, support: true}, signal: -17, band: band50},{...}]} |
Responses
Response samples
- 200
{- "data": [
- {
- "ssid": "moxa-test-ap-1",
- "security": {
- "mode": "wpa2-personal",
- "encryption": "aes",
- "support": true
}, - "signal": -17,
- "band": "band50"
}, - {
- "ssid": "D-k",
- "security": {
- "mode": "none",
- "encryption": "none",
- "support": true
}, - "signal": -43,
- "band": "band24"
}, - {
- "ssid": "TP-k",
- "security": {
- "mode": "wpa2-enterprise",
- "encryption": "aes",
- "support": false
}, - "signal": -58,
- "band": "band50"
}, - {
- "ssid": "ASOS",
- "security": {
- "mode": "wpa-personal",
- "encryption": "aes",
- "support": false
}, - "signal": -69,
- "band": "band24"
}, - {
- "ssid": "Wow",
- "security": {
- "mode": "wpa2-personal",
- "encryption": "tkip",
- "support": true
}, - "signal": -72,
- "band": "band24"
}, - {
- "ssid": "Mom",
- "security": {
- "mode": "wpa-personal",
- "encryption": "tkip",
- "support": false
}, - "signal": -75,
- "band": "band24"
}
]
}
Get device firewall inbound status overview.
Get device firewall inbound status overview.
Authorizations:
Responses
Response samples
- 200
{- "data": [
- {
- "id": 1,
- "name": "Port_SSH",
- "description": "ssh port",
- "priority": 1000,
- "gatewayPort": "22",
- "protocol": "tcp",
- "sourceIp": "",
- "sourcePort": "",
- "destinationIp": "",
- "action": "allow"
}
], - "count": 1
}
Add a device firewall inbound configuration
Add a device firewall inbound configuration
Authorizations:
Request Body schema: application/json
id | integer Inbound rule id |
name required | string [ 1 .. 255 ] characters rule name |
description | string [ 1 .. 255 ] characters rule description |
priority | integer >= 501 Default: 501 Inbound rule priority. 1-500 are system reserved priority rule, api access is not allowed. 501-1000 is for inbound forward rule, and 1001-1500 is for inbound filter rule. Auto-increasement will apply when api payload doesn't specify the priority |
gatewayPort | string Default: "" Public port in device firewall inbound. It stand for packet destination port of filter, or external port of portforward. Support:
|
protocol required | string Default: "any" Enum: "any" "tcp" "udp" "icmp" Rule handles the specified protocol |
sourceIp | string Default: "" Packet soruce IP. Support:
|
sourcePort | string Default: "" Packet soruce port. Support:
|
destinationIp | string Default: "" Packet destination IP. In forward case, it stand for internal child device ip(or private ip). Support:
|
destinationPort | string Default: "" Required in forward case only. e.g. internal child device port. |
action required | string Enum: "allow" "forward" TPE device outbound policy deny all by default.
|
Responses
Request samples
- Payload
[- {
- "name": "Port_ssh",
- "description": "Ssh port",
- "priority": 1001,
- "gatewayPort": "22",
- "protocol": "tcp",
- "action": "allow"
}
]
Response samples
- 200
- 400
{- "data": {
- "id": 83,
- "name": "Port_SSH",
- "description": "ssh port",
- "priority": 1001,
- "gatewayPort": "22",
- "protocol": "tcp",
- "sourceIp": "",
- "sourcePort": "",
- "destinationIp": "",
- "action": "allow"
}
}
Update a device firewall inbound configuration
Update a device firewall inbound configuration
Authorizations:
Request Body schema: application/json
id | integer Inbound rule id |
name required | string [ 1 .. 255 ] characters rule name |
description | string [ 1 .. 255 ] characters rule description |
priority | integer >= 501 Default: 501 Inbound rule priority. 1-500 are system reserved priority rule, api access is not allowed. 501-1000 is for inbound forward rule, and 1001-1500 is for inbound filter rule. Auto-increasement will apply when api payload doesn't specify the priority |
gatewayPort | string Default: "" Public port in device firewall inbound. It stand for packet destination port of filter, or external port of portforward. Support:
|
protocol required | string Default: "any" Enum: "any" "tcp" "udp" "icmp" Rule handles the specified protocol |
sourceIp | string Default: "" Packet soruce IP. Support:
|
sourcePort | string Default: "" Packet soruce port. Support:
|
destinationIp | string Default: "" Packet destination IP. In forward case, it stand for internal child device ip(or private ip). Support:
|
destinationPort | string Default: "" Required in forward case only. e.g. internal child device port. |
action required | string Enum: "allow" "forward" TPE device outbound policy deny all by default.
|
Responses
Request samples
- Payload
[- {
- "id": 15,
- "name": "Port_https",
- "description": "https port",
- "priority": 1002,
- "gatewayPort": "8443",
- "protocol": "tcp",
- "action": "allow"
}
]
Response samples
- 200
{- "data": [
- {
- "id": 15,
- "name": "Port_HTTPS",
- "description": "https port",
- "priority": 1002,
- "gatewayPort": "8443",
- "protocol": "tcp",
- "sourceIp": "",
- "sourcePort": "",
- "destinationIp": "",
- "action": "allow"
}
]
}
Patch device firewall inbound configuration
Patch device firewall inbound configuration
Authorizations:
Request Body schema: application/json
id | integer Inbound rule id |
name required | string [ 1 .. 255 ] characters rule name |
description | string [ 1 .. 255 ] characters rule description |
priority | integer >= 501 Default: 501 Inbound rule priority. 1-500 are system reserved priority rule, api access is not allowed. 501-1000 is for inbound forward rule, and 1001-1500 is for inbound filter rule. Auto-increasement will apply when api payload doesn't specify the priority |
gatewayPort | string Default: "" Public port in device firewall inbound. It stand for packet destination port of filter, or external port of portforward. Support:
|
protocol required | string Default: "any" Enum: "any" "tcp" "udp" "icmp" Rule handles the specified protocol |
sourceIp | string Default: "" Packet soruce IP. Support:
|
sourcePort | string Default: "" Packet soruce port. Support:
|
destinationIp | string Default: "" Packet destination IP. In forward case, it stand for internal child device ip(or private ip). Support:
|
destinationPort | string Default: "" Required in forward case only. e.g. internal child device port. |
action required | string Enum: "allow" "forward" TPE device outbound policy deny all by default.
|
Responses
Request samples
- Payload
[- {
- "id": 83,
- "gatewayPort": "8022"
}
]
Response samples
- 200
{- "data": [
- {
- "id": 83,
- "name": "Port_SSH",
- "description": "ssh port",
- "priority": 1001,
- "gatewayPort": "8022",
- "protocol": "tcp",
- "sourceIp": "",
- "sourcePort": "",
- "destinationIp": "",
- "action": "allow"
}
]
}