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.2.tar.gz (123.2 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.2-py3-none-any.whl (123.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vivintpy-2026.0.2.tar.gz
  • Upload date:
  • Size: 123.2 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.2.tar.gz
Algorithm Hash digest
SHA256 a1ff9b8796e818ee082ef3e0fb8a8cab85bb5a8c4513196cfe87d016c38bb6f0
MD5 88076d146b906408aa9b9bc105a86475
BLAKE2b-256 98138768a1216ec663133d2f1a036ba5a2bd4be5e3118c7824d9bd2b072b7522

See more details on using hashes here.

File details

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

File metadata

  • Download URL: vivintpy-2026.0.2-py3-none-any.whl
  • Upload date:
  • Size: 123.4 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 00ed96e3092eb83f5edcb159aae0a1baf4ee04ab32995e1d79647ad3c855c586
MD5 74afde53f842f50d5a4b9d1908cfade3
BLAKE2b-256 efd2f4cfb3ceaf676ebc402886e8cdd16927f885569ecf10ce85c58e05f2dca0

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