Skip to main content

Python library for interacting with a Vivint security and smart home system.

Project description

vivintpy

PyPI - Version Buy Me A Coffee/Beer Sponsor on GitHub

GitHub License PyPI - Python Version Pepy Total Downloads PyPI - Downloads

Python library for interacting with a Vivint security and smart home system.

This was built to support the Vivint for Home Assistant integration but should work outside of it too. Currently, it can be utilized via HACS and is available as a default integration.

Credit

This was inspired by the great work done by Mike Reibard to reverse engineer the Vivint Sky API and Ovidiu Stateina for the repository from which this is forked and expanded on.

Features

It currently has support for the following device types:

  • alarm panels
  • cameras
  • door locks
  • garage doors
  • switches
    • binary
    • multilevel
  • thermostats
  • wireless sensors
    • carbon monoxide
    • door/window
    • flood
    • glass break
    • motion
    • smoke/fire
    • etc

In addition, it integrates with PubNub to receive real-time updates for devices. This subscription stops receiving notifications around 15-20 minutes unless a call is made to the Vivint Sky API periodically. This might be related to the cookie expiration since it expires 20 minutes after the last API call was received. If another client connects, however, the notifications start to stream again for all currently connected clients.

Usage

See demo.py for a demonstration on how to use this library.

TODO:

  • write a better readme
  • write some documentation
  • add advanced support for:
    • thermostats
  • add tests

❤️ Support Me

I maintain this python project in my spare time and provide it as-is, without guarantees. If you find it useful, consider supporting development:

If you don't already own a Vivint system, please consider using my referral code (35fr23sv) and get a free Doorbell Camera Pro from Vivint (as well as a tip to me in appreciation)! You can also call (855) 747-7199 and mention referral code 35fr23sv.

📈 Star History

Star History Chart

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

vivintpy-2026.0.4.tar.gz (123.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vivintpy-2026.0.4-py3-none-any.whl (123.6 kB view details)

Uploaded Python 3

File details

Details for the file vivintpy-2026.0.4.tar.gz.

File metadata

  • Download URL: vivintpy-2026.0.4.tar.gz
  • Upload date:
  • Size: 123.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for vivintpy-2026.0.4.tar.gz
Algorithm Hash digest
SHA256 d6de9186485beb868642ea629becce2b27b5561a535c9b34175b019a9340d9b6
MD5 f681869eb00eab2957cbacada684a68a
BLAKE2b-256 acc9e2b7b2be846e9ce39e2febae1cf20f113c1451ea7eec78ab5790ce3bd079

See more details on using hashes here.

File details

Details for the file vivintpy-2026.0.4-py3-none-any.whl.

File metadata

  • Download URL: vivintpy-2026.0.4-py3-none-any.whl
  • Upload date:
  • Size: 123.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for vivintpy-2026.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 8e0dd97e7e3d5f5679e368aa709a1d289d0cf09fe3515bdfc2bef20a08550e6d
MD5 3f474dd3a780fed81a1380d33c933905
BLAKE2b-256 1d8d1d257b26d8f46ef419e16189ec13209b274c475e1ed2057938cd5e6ce6c7

See more details on using hashes here.

Supported by

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