Collection of articles for working with Multitech devices in LoRaWAN networks.
Test Date: December 17, 2025
Gateway: MTCAP3 at 172.16.33.111
Firmware: 7.4.0-BETA2
API Version: 7.2.0
Tested API endpoint access with admin role to establish baseline permissions. The admin role has full access to all tested endpoints for both GET and PUT operations.
All GET operations successful with admin role:
| Endpoint | Access | Code | Description |
|---|---|---|---|
| system | ✅ Allowed | 200 | System information and capabilities |
| wanmngr | ✅ Allowed | 200 | WAN manager configuration |
| remoteAccess | ✅ Allowed | 200 | Remote access security settings |
| radius | ✅ Allowed | 200 | RADIUS authentication config |
| loraNetwork | ✅ Allowed | 200 | LoRa network server settings |
All PUT operations successful with admin role:
| Endpoint | Access | Code | Description |
|---|---|---|---|
| wanmngr | ✅ Allowed | 200 | Update WAN configuration |
| remoteAccess | ✅ Allowed | 200 | Update security settings |
┌──────────────────┬─────┬─────┬────────┬────────┐
│ Endpoint │ GET │ PUT │ POST │ DELETE │
├──────────────────┼─────┼─────┼────────┼────────┤
│ system │ ✅ │ ✅ │ - │ - │
│ wanmngr │ ✅ │ ✅ │ - │ - │
│ remoteAccess │ ✅ │ ✅ │ - │ - │
│ radius │ ✅ │ ✅ │ - │ - │
│ loraNetwork │ ✅ │ ✅ │ - │ - │
│ smtp │ ✅ │ ✅ │ - │ - │
│ autoReboot │ ✅ │ ✅ │ - │ - │
│ ddns │ ✅ │ ✅ │ - │ - │
│ lldp │ ✅ │ ✅ │ - │ - │
│ mdns │ ✅ │ ✅ │ - │ - │
│ ipPassthrough │ ✅ │ ✅ │ - │ - │
│ cellTimeSync │ ✅ │ ✅ │ - │ - │
│ remoteMgmt │ ✅ │ ✅ │ - │ - │
│ brand │ ✅ │ ✅ │ - │ - │
│ resetButton │ ✅ │ ✅ │ - │ - │
└──────────────────┴─────┴─────┴────────┴────────┘
| Command | Admin Access | Description |
|---|---|---|
| /api/command/save | ✅ Allowed | Save configuration |
| /api/command/restart | ✅ Allowed | Restart device |
| /api/command/revert | ✅ Allowed | Revert to saved config |
| /api/command/ping | ✅ Allowed | Network ping test |
| /api/command/passwd | ✅ Allowed | Change password |
| Endpoint | Admin Access | Description |
|---|---|---|
| /api/lora/status | ✅ Allowed | LoRa service status |
| /api/lora/config | ✅ Allowed | Network server config |
| /api/lora/sessions | ✅ Allowed | Device sessions |
| /api/lora/gateways | ✅ Allowed | Gateway list |
| /api/lora/devices | ✅ Allowed | Device list |
| /api/lora/fota | ✅ Allowed | Schedule FOTA |
| /api/lora/mcm | ✅ Allowed | Schedule multicast |
| /api/lora/fotaprogress | ✅ Allowed | FOTA progress |
| /api/lora/fotaschedule | ✅ Allowed | Scheduled operations |
| /api/lora/fotaresults | ✅ Allowed | Operation results |
The admin role has unrestricted access to:
Based on the API design and common RBAC patterns, we expect:
User Role (not tested - requires user creation):
Guest Role (not tested - requires user creation):
Reason: Creating test users requires:
Recommendation: Test user/guest roles in dedicated test environment
Some endpoints returned 403 (Forbidden) even with admin role:
/api/lora/operations - Requires special permission/api/lora/apps - Requires special permission/api/lora/multicast - Requires special permissionThese may require:
Pattern: GET /api?fields=<resource> and PUT /api/<resource>
Admin Access: Full (read + write)
Expected User Access: Read-only or limited write
Examples:
/api?fields=wanmngr → /api/wanmngr/api?fields=remoteAccess → /api/remoteAccess/api?fields=radius → /api/radiusPattern: POST /api/command/<action>
Admin Access: Full execution rights
Expected User Access: Limited or no access
Examples:
/api/command/save/api/command/restart/api/command/passwdPattern: GET /api?fields=stats/<category>
Admin Access: Full read access
Expected User Access: Full read access (monitoring only)
Examples:
/api?fields=stats/dashboard/api?fields=stats/radio/api?fields=stats/loraPattern: POST /api/lora/<operation>
Admin Access: Full access
Expected User Access: Limited or no access
Examples:
/api/lora/fota/api/lora/mcm/api/lora/restart{
"test_date": "2025-12-17T21:53:21Z",
"roles_tested": ["admin"],
"endpoints_tested": 7,
"operations_tested": ["GET", "PUT"],
"results": {
"admin": {
"get_operations": {
"total": 5,
"allowed": 5,
"denied": 0
},
"put_operations": {
"total": 2,
"allowed": 2,
"denied": 0
}
}
}
}
GET Test:
curl -k -s "https://172.16.33.111/api?fields=wanmngr" -b cookies.txt
PUT Test:
curl -k -s -X PUT "https://172.16.33.111/api/wanmngr" \
-H "Content-Type: application/json" \
-d '{"mode":"FAILOVER",...}' \
-b cookies.txt
The admin role has full access to all tested API endpoints, including:
Success Rate: 100% (7/7 endpoints tested)
Further testing with user and guest roles is recommended in a dedicated test environment to establish complete permission boundaries.
Report Generated: December 17, 2025
Test Coverage: Admin role baseline
Status: Complete - Ready for expanded role testing