Skip to main content

Async Python client for the Verisure Italy alarm API

Project description

verisure-italy

Async Python client for the Verisure Italy alarm API.

Talks directly to customers.verisure.it/owa-api/graphql. Typed, async, Pydantic models for all request/response types. No Any, no dict soup. Pyright strict, zero errors.

Not affiliated with Verisure Group or Securitas Direct.

Installation

pip install verisure-italy

Usage

import aiohttp
from verisure_italy import VerisureClient, generate_device_id, generate_uuid

async with aiohttp.ClientSession() as session:
    client = VerisureClient(
        username="your@email.com",
        password="your-password",
        http_session=session,
        device_id=generate_device_id(),
        uuid=generate_uuid(),
        id_device_indigitall="",
    )

    # Login (may raise TwoFactorRequiredError)
    await client.login()

    # List installations
    installations = await client.list_installations()
    inst = installations[0]
    await client.get_services(inst)

    # Get alarm status (passive — no panel ping, no timeline entry)
    status = await client.get_general_status(inst)
    print(f"Alarm: {status.status}")  # D, B, A, E, P, T

    # Arm / disarm
    from verisure_italy import AlarmState, InteriorMode, PerimeterMode

    target = AlarmState(interior=InteriorMode.PARTIAL, perimeter=PerimeterMode.ON)
    result = await client.arm(inst, target)

    await client.disarm(inst)
    await client.logout()

Alarm States

State Interior Perimeter Proto
Disarmed OFF OFF D
Partial + Perimeter PARTIAL ON B
Total + Perimeter TOTAL ON A
Perimeter only OFF ON E
Partial PARTIAL OFF P
Total TOTAL OFF T

Home Assistant

Looking for the Home Assistant integration? See ha-verisure-italy on GitHub, or install via HACS.

License

MIT. See LICENSE.

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

verisure_italy-0.4.2.tar.gz (33.5 kB view details)

Uploaded Source

Built Distribution

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

verisure_italy-0.4.2-py3-none-any.whl (21.2 kB view details)

Uploaded Python 3

File details

Details for the file verisure_italy-0.4.2.tar.gz.

File metadata

  • Download URL: verisure_italy-0.4.2.tar.gz
  • Upload date:
  • Size: 33.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for verisure_italy-0.4.2.tar.gz
Algorithm Hash digest
SHA256 c53cd857f8dbe9481565582f523aa5e2ce590c7c35a1d31ab25f349a7a10cfd3
MD5 dce3636f11bf3b0d42f7127781e4401d
BLAKE2b-256 7a68f4f69c13680deceed4fbb04fdf0388c8533dbfe2c83f6374de0fd2928eca

See more details on using hashes here.

File details

Details for the file verisure_italy-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: verisure_italy-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 21.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for verisure_italy-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 867a856c23e8c9bdc11e37f768a23fcc27d1fbe01f901f2a5c7b3632ecc8a0f7
MD5 b0996b8c7643838866d05725ee131128
BLAKE2b-256 6d0ce0d2b3b659920e9dbffe73ed5c3a828e30fbb9cf47d077ca4995af5e2104

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