Switcher WebAPI Docs
flowchart LR
A([User]) -- HTTP --> B([Container]) -- TCP --> C([Device])
docker run -d -p 8000:8000 --name switcher_webapi tomerfi/switcher_webapi:latest
Debugging issues? Set the log level.
docker run -d -p 8000:8000 -e LOG_LEVEL=DEBUG --name switcher_webapi tomerfi/switcher_webapi:latest
Accepted values: DEBUG / INFO / WARNING / ERROR / CRITICAL
New Switcher devices require a token.
Get the token at https://switcher.co.il/GetKey.
Since version 2.x.x, all endpoints require a device type query param.
State Endpoints
Get State
Method |
Endpoint |
Description |
GET |
/switcher/get_state |
Returns the current state of a device. |
Query Params
Param |
Type |
Description |
Required |
Example |
type |
Device Type |
the type of the selected device |
Yes |
mini |
id |
string |
the id of the selected device |
Yes |
ab1c2d |
key |
string |
the login key of the selected device |
No |
18 |
ip |
string |
the ip address of the selected device |
Yes |
10.0.0.1 |
index |
integer |
the circuit number to operate |
No |
0 |
token |
string |
the user token from Switcher API |
No |
zvVvd7JxtN7CgvkD1Psujw== |
State Response
Key |
Type |
Example |
state |
string |
ON |
time_left |
string |
01:15:32 |
time_on |
string |
00:14:28 |
auto_shutdown |
string |
02:30:00 |
power_consumption |
string |
1274 |
electric_current |
string |
16.4 |
Get Breeze State
Method |
Endpoint |
Description |
GET |
/switcher/get_breeze_state |
Returns the current state of Breeze devices. |
Query Params
Param |
Type |
Description |
Required |
Example |
type |
Device Type |
the type of the selected device |
Yes |
mini |
id |
string |
the id of the selected device |
Yes |
ab1c2d |
key |
string |
the login key of the selected device |
No |
18 |
ip |
string |
the ip address of the selected device |
Yes |
10.0.0.1 |
index |
integer |
the circuit number to operate |
No |
0 |
token |
string |
the user token from Switcher API |
No |
zvVvd7JxtN7CgvkD1Psujw== |
Breeze State Response
Key |
Type |
Example |
state |
string |
ON |
mode |
string |
COOL |
fan_level |
string |
AUTO |
temperature |
integer |
9.5 |
target_temperature |
string |
0, |
swing |
string |
ON |
remote_id |
string |
DLK65863 |
Get Shutter State
Method |
Endpoint |
Description |
GET |
/switcher/get_shutter_state |
Returns the current state of Shutter devices. |
Query Params
Param |
Type |
Description |
Required |
Example |
type |
Device Type |
the type of the selected device |
Yes |
mini |
id |
string |
the id of the selected device |
Yes |
ab1c2d |
key |
string |
the login key of the selected device |
No |
18 |
ip |
string |
the ip address of the selected device |
Yes |
10.0.0.1 |
index |
integer |
the circuit number to operate |
No |
0 |
token |
string |
the user token from Switcher API |
No |
zvVvd7JxtN7CgvkD1Psujw== |
Get Light State
Method |
Endpoint |
Description |
GET |
/switcher/get_light_state |
Returns the current state of Light devices. |
Query Params
Param |
Type |
Description |
Required |
Example |
type |
Device Type |
the type of the selected device |
Yes |
mini |
id |
string |
the id of the selected device |
Yes |
ab1c2d |
key |
string |
the login key of the selected device |
No |
18 |
ip |
string |
the ip address of the selected device |
Yes |
10.0.0.1 |
index |
integer |
the circuit number to operate |
No |
0 |
token |
string |
the user token from Switcher API |
No |
zvVvd7JxtN7CgvkD1Psujw== |
Shutter State Response
Key |
Type |
Example |
direction |
string |
SHUTTER_STOP |
position |
integer |
95 |
Action Endpoints
Turn On
Method |
Endpoint |
Description |
POST |
/switcher/turn_on |
Turn a device on, optionally setting a timer for turning it back off automatically. |
Query Params
Param |
Type |
Description |
Required |
Example |
type |
Device Type |
the type of the selected device |
Yes |
mini |
id |
string |
the id of the selected device |
Yes |
ab1c2d |
key |
string |
the login key of the selected device |
No |
18 |
ip |
string |
the ip address of the selected device |
Yes |
10.0.0.1 |
index |
integer |
the circuit number to operate |
No |
0 |
token |
string |
the user token from Switcher API |
No |
zvVvd7JxtN7CgvkD1Psujw== |
Body
Key |
Type |
Required |
Example |
minutes |
integer |
No |
90 |
Turn Off
Method |
Endpoint |
Description |
POST |
/switcher/turn_off |
Turn a device off. |
Query Params
Param |
Type |
Description |
Required |
Example |
type |
Device Type |
the type of the selected device |
Yes |
mini |
id |
string |
the id of the selected device |
Yes |
ab1c2d |
key |
string |
the login key of the selected device |
No |
18 |
ip |
string |
the ip address of the selected device |
Yes |
10.0.0.1 |
index |
integer |
the circuit number to operate |
No |
0 |
token |
string |
the user token from Switcher API |
No |
zvVvd7JxtN7CgvkD1Psujw== |
Turn On Light
Method |
Endpoint |
Description |
POST |
/switcher/turn_on_light |
Turn a light device on. |
Query Params
Param |
Type |
Description |
Required |
Example |
type |
Device Type |
the type of the selected device |
Yes |
mini |
id |
string |
the id of the selected device |
Yes |
ab1c2d |
key |
string |
the login key of the selected device |
No |
18 |
ip |
string |
the ip address of the selected device |
Yes |
10.0.0.1 |
index |
integer |
the circuit number to operate |
No |
0 |
token |
string |
the user token from Switcher API |
No |
zvVvd7JxtN7CgvkD1Psujw== |
Turn Off Light
Method |
Endpoint |
Description |
POST |
/switcher/turn_off_light |
Turn a light device off. |
Query Params
Param |
Type |
Description |
Required |
Example |
type |
Device Type |
the type of the selected device |
Yes |
mini |
id |
string |
the id of the selected device |
Yes |
ab1c2d |
key |
string |
the login key of the selected device |
No |
18 |
ip |
string |
the ip address of the selected device |
Yes |
10.0.0.1 |
index |
integer |
the circuit number to operate |
No |
0 |
token |
string |
the user token from Switcher API |
No |
zvVvd7JxtN7CgvkD1Psujw== |
Stop Shutter
Method |
Endpoint |
Description |
POST |
/switcher/set_stop_shutter |
Stop a shutter device. |
Query Params
Param |
Type |
Description |
Required |
Example |
type |
Device Type |
the type of the selected device |
Yes |
mini |
id |
string |
the id of the selected device |
Yes |
ab1c2d |
key |
string |
the login key of the selected device |
No |
18 |
ip |
string |
the ip address of the selected device |
Yes |
10.0.0.1 |
index |
integer |
the circuit number to operate |
No |
0 |
token |
string |
the user token from Switcher API |
No |
zvVvd7JxtN7CgvkD1Psujw== |
Control Breeze
Method |
Endpoint |
Description |
POST |
/switcher/control_breeze_device |
Control a breeze device. |
Query Params
Param |
Type |
Description |
Required |
Example |
type |
Device Type |
the type of the selected device |
Yes |
mini |
id |
string |
the id of the selected device |
Yes |
ab1c2d |
key |
string |
the login key of the selected device |
No |
18 |
ip |
string |
the ip address of the selected device |
Yes |
10.0.0.1 |
index |
integer |
the circuit number to operate |
No |
0 |
token |
string |
the user token from Switcher API |
No |
zvVvd7JxtN7CgvkD1Psujw== |
Body
Key |
Type |
Required |
Example |
device_state |
string |
No |
on |
thermostat_mode |
string |
No |
auto |
target_temp |
integer |
No |
25 |
fan_level |
string |
No |
low |
thermostat_swing |
string |
No |
off |
remote_id |
string |
Yes |
DLK65863 |
Configuration Endpoints
Set Name
Method |
Endpoint |
Description |
PATCH |
/switcher/set_name |
Set the name of a device. |
Query Params
Param |
Type |
Description |
Required |
Example |
type |
Device Type |
the type of the selected device |
Yes |
mini |
id |
string |
the id of the selected device |
Yes |
ab1c2d |
key |
string |
the login key of the selected device |
No |
18 |
ip |
string |
the ip address of the selected device |
Yes |
10.0.0.1 |
index |
integer |
the circuit number to operate |
No |
0 |
token |
string |
the user token from Switcher API |
No |
zvVvd7JxtN7CgvkD1Psujw== |
Body
Key |
Type |
Required |
Example |
name |
string |
Yes |
MySwitcherDevice |
Set Auto Shutdown
Method |
Endpoint |
Description |
PATCH |
/switcher/set_auto_shutdown |
Set the auto shutdown configuration for a device. |
Query Params
Param |
Type |
Description |
Required |
Example |
type |
Device Type |
the type of the selected device |
Yes |
mini |
id |
string |
the id of the selected device |
Yes |
ab1c2d |
key |
string |
the login key of the selected device |
No |
18 |
ip |
string |
the ip address of the selected device |
Yes |
10.0.0.1 |
index |
integer |
the circuit number to operate |
No |
0 |
token |
string |
the user token from Switcher API |
No |
zvVvd7JxtN7CgvkD1Psujw== |
Body
Key |
Type |
Required |
Example |
hours |
integer |
Yes |
2 |
minutes |
integer |
No |
30 |
Set Shutter Position
Method |
Endpoint |
Description |
POST |
/switcher/set_shutter_position |
Set the shutter position of the Runner and Runner Mini devices. |
Query Params
Param |
Type |
Description |
Required |
Example |
type |
Device Type |
the type of the selected device |
Yes |
mini |
id |
string |
the id of the selected device |
Yes |
ab1c2d |
key |
string |
the login key of the selected device |
No |
18 |
ip |
string |
the ip address of the selected device |
Yes |
10.0.0.1 |
index |
integer |
the circuit number to operate |
No |
0 |
token |
string |
the user token from Switcher API |
No |
zvVvd7JxtN7CgvkD1Psujw== |
Body
Key |
Type |
Required |
Example |
position |
string |
Yes |
50 |
Schedule Endpoints
Get Schedules
Method |
Endpoint |
Description |
GET |
/switcher/get_schedules |
Returns an array of schedule objects from a device. |
Query Params
Param |
Type |
Description |
Required |
Example |
type |
Device Type |
the type of the selected device |
Yes |
mini |
id |
string |
the id of the selected device |
Yes |
ab1c2d |
key |
string |
the login key of the selected device |
No |
18 |
ip |
string |
the ip address of the selected device |
Yes |
10.0.0.1 |
index |
integer |
the circuit number to operate |
No |
0 |
token |
string |
the user token from Switcher API |
No |
zvVvd7JxtN7CgvkD1Psujw== |
Schedule Object
Key |
Type |
Example |
schedule_id |
string |
0 |
recurring |
boolean |
true |
days |
[string] |
[FRIDAY, SUNDAY, MONDAY] |
start_time |
string |
23:30 |
duration |
string |
0:30:00 |
display |
string |
Due next Friday at 23:00 |
Delete a Schedule
Method |
Endpoint |
Description |
DELETE |
/switcher/delete_schedule |
Delete a known schedule from a device. |
Query Params
Param |
Type |
Description |
Required |
Example |
type |
Device Type |
the type of the selected device |
Yes |
mini |
id |
string |
the id of the selected device |
Yes |
ab1c2d |
key |
string |
the login key of the selected device |
No |
18 |
ip |
string |
the ip address of the selected device |
Yes |
10.0.0.1 |
index |
integer |
the circuit number to operate |
No |
0 |
token |
string |
the user token from Switcher API |
No |
zvVvd7JxtN7CgvkD1Psujw== |
Body
Key |
Type |
Required |
Example |
schedule |
string |
Yes |
7 |
Create a Schedule
Method |
Endpoint |
Description |
POST |
/switcher/create_schedule |
Create a new schedule on a device. |
Query Params
Param |
Type |
Description |
Required |
Example |
type |
Device Type |
the type of the selected device |
Yes |
mini |
id |
string |
the id of the selected device |
Yes |
ab1c2d |
key |
string |
the login key of the selected device |
No |
18 |
ip |
string |
the ip address of the selected device |
Yes |
10.0.0.1 |
index |
integer |
the circuit number to operate |
No |
0 |
token |
string |
the user token from Switcher API |
No |
zvVvd7JxtN7CgvkD1Psujw== |
Body
Key |
Type |
Required |
Example |
start |
string |
Yes |
17:00 |
stop |
string |
Yes |
18:30 |
days |
[string] |
No |
[Wednesday, Saturday] |