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 Shutter Child Lock
| Method |
Endpoint |
Description |
| POST |
/switcher/turn_on_shutter_child_lock |
Turn a shutter child lock 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 Shutter Child Lock
| Method |
Endpoint |
Description |
| POST |
/switcher/turn_off_shutter_child_lock |
Turn a shutter child lock 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] |