-
Notifications
You must be signed in to change notification settings - Fork 17
03 Device API
This guide describes how to query the built-in UGS API, and the typical responses of the NAS.
β Important: Add &token={token} to every URL below. Every API call must include a valid token! β
To obtain a valid token from your NAS:
- Open the NAS Web UI in your browser and log in.
- Press
F12to open Developer Tools. - Use
Ctrl + Fto search forstatic_tokenorapi_token.
- Double-click the token, copy / paste it sowewhere (e.g. an editor).
Update: Since firmware 1.3 (06/2025),
static_tokenno longer works. Always useapi_token.
Call these endpoints to get full system information:
By using a get request:
GET /ugreen/v1/sysinfo/machine/common?token=your_token
Or alternatively in your browser:
http://192.168.178.9:9999/ugreen/v1/sysinfo/machine/common?token=your_token
Example response (shortened):
{
"code": 200,
"data": {
"common": {
"nas_name": "DXP480TPLUS",
"model": "DXP480T Plus",
"serial": "********",
"mac": ["**:**:**:**:**:**"],
"system_version": "1.6.0",
"run_time": 24386
},
"hardware": {
"cpu": [{"model": "Intel i5", "core": 10, "thread": 12}],
"mem": [{"manufacturer": "Samsung", "size": 8}],
"net": [{"model": "eth0", "ip": "192.168.x.x"}]
}
}
}GET /ugreen/v1/desktop/components/data?id=desktop.component.SystemStatus&token=your_token
Example response (shortened):
{
"code": 200,
"data": {
"dev_name": "DXP480TPLUS",
"network_info": [
{"connection": 1, "ipv4": "192.168.x.x", "label": "LAN1"}
],
"system_version": "1.6.0",
"total_run_time": 24411
}
}GET /ugreen/v1/desktop/components/data?id=desktop.component.DeviceMonitoring&token=your_token
Example response (shortened):
{
"code": 200,
"data": {
"cpu_usage_rate": 0.8,
"ram_usage_rate": "28.8",
"upload_speed": {"value": 3.8, "unit": "MB/s"},
"download_speed": {"value": 6.6, "unit": "MB/s"}
}
}GET /ugreen/v1/desktop/components/data?id=desktop.component.TemperatureMonitoring&token=your_token
Example response (shortened):
{
"code": 200,
"data": {
"cpu_temperature": 41,
"disk_list": [
{"label": "M.2 Drive 1", "temperature": 43}
],
"fan_list": [
{"speed": 685},
{"speed": 799}
],
"message": "Temperature normal"
}
}GET /ugreen/v1/storage/pool/list?token=your_token
Example response (shortened):
{
"code": 200,
"data": {
"result": [
{
"name": "pool1",
"total": 983681728512,
"used": 983547510784,
"free": 134217728,
"disks": [
{"label": "M.2 Drive 1", "size": 983684874240}
],
"volumes": [
{"label": "Volume 1", "filesystem": "btrfs"}
]
}
]
}
}GET /ugreen/v2/storage/disk/list?token=your_token
Example response (shortened):
{
"code": 200,
"data": {
"result": [
{
"model": "Samsung SSD 1TB",
"size": 1000204886016,
"label": "M.2 Drive 1",
"status": 1,
"temperature": 42
}
]
}
}- All API requests require token=your_token at the end.
- The token is valid for a limited time - generate a new one if needed.
- Keep sensitive data like serial numbers and MAC addresses private.
If you come across different API endpoints, please post them here: π GitHub Discussion #43
This helps with the development and imrpvement of this integration.
Disclaimer: Any information on this Wiki is informal advice only. It is not supported nor endorsed by UGreen. There is no warranty expressed or implied: You take sole responsibility for everything you do with your NAS.
- Before you start
- Adding the Integration to HA
- Adopting your NAS(es)
- Optional: The example dashboard
- Troubleshooting
- Preparations
- Including the card template
- Creating the dashboard view
- Dashboard fine-tuning
- Future Roadmap