Skip to main content

A Python API for accessing the Shelly devices.

Project description

shelly-cloud

A python library to access the Shelly cloud API. Refer also to the Shelly API Docs. This repo provides functionality for:

  • Getting devices status
  • Getting the status of a single device
  • Getting a list of device IDs

Installing the library locally

Python 3 is recommended for this project.

python -m pip install -e .

This is needed for the first time when working with the library/examples/tests.

Example usage

SHELLY_API_URL="https://HOST:PORT" SHELLY_API_TOKEN="REPLACE_ME" python3 examples/simple.py

or

from shellyapi.shellyapi import ShellyApi

shelly = ShellyApi('provide_api_url', 'provide_api_token')
# or you can define additional optional parameters
# shelly = ShellyApi('provide_api_url', 'provide_api_token', timeout=10)

print(shelly.get_device_ids())

Development

Installing required pip packages

python pip install -r requirenments.txt
pre-commit install -t pre-push

Linting

pylint shellyapi/*.py tests/*.py examples/*.py

Unit testing

pytest tests/*.py

# show logs
pytest -o log_cli=true

# code coverage
pytest --durations=10 --cov-report term-missing --cov=shellyapi tests

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

shelly-cloud-0.2.0.tar.gz (16.8 kB view details)

Uploaded Source

Built Distribution

shelly_cloud-0.2.0-py3-none-any.whl (17.7 kB view details)

Uploaded Python 3

File details

Details for the file shelly-cloud-0.2.0.tar.gz.

File metadata

  • Download URL: shelly-cloud-0.2.0.tar.gz
  • Upload date:
  • Size: 16.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.1

File hashes

Hashes for shelly-cloud-0.2.0.tar.gz
Algorithm Hash digest
SHA256 eea9e2dcdf358dcc43dbed80ed5ef72c2170da357570ab9537aa70fc0173215e
MD5 2d55bc984a9ef65d507fe69375d5a98c
BLAKE2b-256 df41054f8df8d2b2b2fda1c7e92ee53245f65823a740d75716c3552a96aa7694

See more details on using hashes here.

File details

Details for the file shelly_cloud-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: shelly_cloud-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 17.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.1

File hashes

Hashes for shelly_cloud-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8346e787ecc686727467b0c192b2cc1cd7ac6e521016715ec39be40bdcf1ba0a
MD5 c1c950bcd503ede39947df14f05f2483
BLAKE2b-256 7aa7489233038d06785c30b522fc339b9729ccb3d9806d3d3dea36f264bc08ef

See more details on using hashes here.

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