mirror of
https://github.com/home-assistant/supervisor.git
synced 2025-04-20 03:07:17 +00:00
4.5 KiB
4.5 KiB
HassIO Server
HassIO REST API
Interface for HomeAssistant to control things from supervisor.
On error:
{
"result": "error",
"message": ""
}
On success
{
"result": "ok",
"data": { }
}
HassIO
-
GET
/supervisor/ping
-
GET
/supervisor/info
The addons from addons
are only installed one.
{
"version": "INSTALL_VERSION",
"last_version": "LAST_VERSION",
"arch": "armhf|aarch64|i386|amd64",
"beta_channel": "true|false",
"addons": [
{
"name": "xy bla",
"slug": "xy",
"description": "description",
"arch": ["armhf", "aarch64", "i386", "amd64"],
"repository": "12345678|null",
"version": "LAST_VERSION",
"installed": "INSTALL_VERSION",
"detached": "bool",
"build": "bool",
"url": "null|url"
}
],
"addons_repositories": [
"REPO_URL"
]
}
- GET
/supervisor/addons
Get all available addons
{
"addons": [
{
"name": "xy bla",
"slug": "xy",
"description": "description",
"arch": ["armhf", "aarch64", "i386", "amd64"],
"repository": "core|local|REP_ID",
"version": "LAST_VERSION",
"installed": "none|INSTALL_VERSION",
"detached": "bool",
"build": "bool",
"url": "null|url"
}
],
"repositories": [
{
"slug": "12345678",
"name": "Repitory Name",
"source": "URL_OF_REPOSITORY",
"url": "null|WEBSITE",
"maintainer": "null|BLA BLU <fla@dld.ch>"
}
]
}
- POST
/supervisor/update
Optional:
{
"version": "VERSION"
}
- POST
/supervisor/options
{
"beta_channel": "true|false",
"addons_repositories": [
"REPO_URL"
]
}
- POST
/supervisor/reload
Reload addons/version.
- GET
/supervisor/logs
Output the raw docker log
Security
- GET
/security/info
{
"initialize": "bool",
"totp": "bool"
}
- POST
/security/options
{
"password": "xy"
}
- POST
/security/totp
{
"password": "xy"
}
Return QR-Code
- POST
/security/session
{
"password": "xy",
"totp": "null|123456"
}
Host
-
POST
/host/shutdown
-
POST
/host/reboot
-
GET
/host/info
See HostControl info command.
{
"type": "",
"version": "",
"last_version": "",
"features": ["shutdown", "reboot", "update", "network_info", "network_control"],
"hostname": "",
"os": ""
}
- POST
/host/update
Optional:
{
"version": "VERSION"
}
Network
-
GET
/network/info
-
POST
/network/options
{
"hostname": "",
"mode": "dhcp|fixed",
"ssid": "",
"ip": "",
"netmask": "",
"gateway": ""
}
HomeAssistant
- GET
/homeassistant/info
{
"version": "INSTALL_VERSION",
"last_version": "LAST_VERSION"
}
- POST
/homeassistant/update
Optional:
{
"version": "VERSION"
}
- GET
/homeassistant/logs
Output the raw docker log
- POST
/homeassistant/restart
REST API addons
- GET
/addons/{addon}/info
{
"name": "xy bla",
"description": "description",
"url": "null|url of addon",
"detached": "bool",
"repository": "12345678|null",
"version": "VERSION",
"last_version": "LAST_VERSION",
"state": "started|stopped",
"boot": "auto|manual",
"build": "bool",
"options": {},
}
- POST
/addons/{addon}/options
{
"boot": "auto|manual",
"options": {},
}
-
POST
/addons/{addon}/start
-
POST
/addons/{addon}/stop
-
POST
/addons/{addon}/install
Optional:
{
"version": "VERSION"
}
-
POST
/addons/{addon}/uninstall
-
POST
/addons/{addon}/update
Optional:
{
"version": "VERSION"
}
- GET
/addons/{addon}/logs
Output the raw docker log
- POST
/addons/{addon}/restart
Host Control
Communicate over unix socket with a host daemon.
- commands
# info
-> {'type', 'version', 'last_version', 'features', 'hostname'}
# reboot
# shutdown
# host-update [v]
# hostname xy
# network info
-> {}
# network wlan ssd xy
# network wlan password xy
# network int ip xy
# network int netmask xy
# network int route xy
features:
- shutdown
- reboot
- update
- hostname
- network_info
- network_control
Answer:
{}|OK|ERROR|WRONG
- {}: json
- OK: call was successfully
- ERROR: error on call
- WRONG: not supported