Skip to main content

Wrapper around the Shelly HTTP api

Project description


not to be confused with pyShelly
Python 2 and 3 Wrapper around the Shelly HTTP api


other packages like pyShelly only support CoAP or MSQT, neither I am comfortable with using in personal projects



a simple working example for the Shelly 1 that turns a relay on

import ShellyPy

device = ShellyPy.Shelly("")

device.relay(0, turn=True)



a simple working example for the Shelly 1 that request monitor information

import ShellyPy

device = ShellyPy.Shelly("")

deviceMeter = device.meter(0)   #request meter information
print(deviceMeter['power'])     #print power information
print(deviceMeter['total'])     #print total information

other examples are available as well examples/



  • Shelly1
  • Shelly1PM
  • Shelly2
  • Shelly2.5
  • Shelly4Pro (untested)
  • Shelly Plug (untested)
  • Shelly PlugS (untested)
  • Shelly Bulb (untested)
  • Shelly H&T (untested)
  • Shelly Smoke (untested)
  • Shelly EM (untested)
  • Shelly flood (untested)


  • Shelly Sense (documentation is inaccurate, incomplete)
  • Shelly RGBW (documentation is incomplete)


this wrapper is best used in closed networks where other solutions are either not an option or not desired
give your shelly devices static IP adresses for best results


this project is licensed under the MIT License
feel free to do whatever you want with it

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ShellyPy-0.3.0.tar.gz (7.5 kB view hashes)

Uploaded Source

Built Distribution

ShellyPy-0.3.0-py3-none-any.whl (9.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page