hyundai-kia-connect-api
Python API for Hyundai, Kia, and Genesis car infotainment systems
What it is and what it does
This is a Python wrapper around the Hyundai Bluelink, Kia UVO, and Genesis Connect APIs, designed to standardize access across multiple regions (Europe, Canada, USA, China, Australia, India, New Zealand, Brazil) and brands. It handles the complexity of regional authentication differences—including RSA password encryption for EU logins via pycryptodome—and provides a unified VehicleManager class to log in, refresh tokens, retrieve vehicle state, and fetch trip history. The package is primarily consumed by Home Assistant integrations but can be used standalone via Python or a CLI tool.
Key operations include login with OTP support, token validation and refresh, cached and forced vehicle state updates, and retrieval of monthly and daily trip data where available. The API abstracts away regional differences so that the same code can work across brands and regions by passing region and brand constants. It requires Python 3.10 or newer and depends on beautifulsoup4, requests, certifi, tzdata, and pycryptodome for HTTP, HTML parsing, SSL verification, timezone handling, and cryptographic operations.
Use it for:
- Integrate Hyundai or Kia vehicle status (location, fuel, battery, climate) into Home Assistant or other home automation systems.
- Build a personal dashboard or mobile app that displays real-time vehicle telemetry and trip history across multiple cars.
- Automate vehicle commands (lock, unlock, climate control) triggered by external events or schedules in a custom application.
- Export vehicle trip data (distance, speed, fuel consumption) for personal analytics or fleet management.
- Monitor vehicle health and maintenance intervals by polling state periodically and alerting on anomalies.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides a Python API to authenticate with and query Hyundai, Kia, and Genesis vehicle infotainment systems across multiple regions, handling login, token refresh, vehicle state updates, and trip history retrieval.
Yes. The package is actively maintained, has low install friction, carries no known vulnerabilities, and uses a permissive MIT license. It is well-suited for Home Assistant users and developers building custom integrations with Hyundai, Kia, or Genesis vehicles. The main caveat is that it wraps third-party APIs that may change without notice, and the maintainer has explicitly noted they no longer own a vehicle—so community contributions are essential for long-term stability.
Install
hyundai-kia-connect-api on PyPI
pip
pip install hyundai-kia-connect-apiuv
uv add hyundai-kia-connect-apipoetry
poetry add hyundai-kia-connect-apiInstalling hyundai-kia-connect-api
Before you install
Low install friction with a pure-Python wheel and five common dependencies. Actively maintained as of 2026-08-11 with recent releases. Requires Python 3.12 or newer.
License in practice
MIT license permits commercial and private use with minimal restrictions, making it suitable for integration into home automation and third-party applications.
Quickstart
from hyundai_kia_connect_api import VehicleManager
vm = VehicleManager(
region=2, # REGION_CANADA
brand=1, # BRAND_KIA
username="user@example.com",
password="password",
pin="1234"
)
vm.check_and_refresh_token()
vm.update_all_vehicles_with_cached_state()
print(vm.vehicles)
Requires Python 3.12 or newer. Valid Hyundai/Kia/Genesis account credentials and region/brand codes from const.py are required to instantiate VehicleManager.
Verify before relying
- Whether the package handles API rate limits transparently or requires caller-side throttling logic.
- Support status for vehicle models and years beyond the description's examples.
- Stability of the underlying Hyundai/Kia/Genesis API endpoints this package wraps.
Package facts
| License | MIT license (permissive) |
| Python support | supports the current Python release (>=3.12) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 5 — beautifulsoup4, requests, certifi, tzdata, pycryptodome |
| Maintenance | actively maintained — 3 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 218,616/month — #9,337 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: hyundai_kia_connect_api-4.26.2-py2.py3-none-any.whl
Keywords: hyundai_kia_connect_api
Tags
More Internet packages
Botocore provides low-level, data-driven access…
permissive · top 100 on PyPI
aiobotocoreProvides an async client for AWS services using…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
filelockProvides a platform-independent file locking…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
googleapis-common-protosProvides common Protocol Buffer message…
permissive · top 100 on PyPI
tesla-fleet-apiProvides Python bindings to Tesla's Fleet API…
permissive · top 15,000 on PyPI
subarulinkInteract with Subaru's MySubaru Connected…
permissive · top 15,000 on PyPI
renault-apiCommunicates with Renault's private API to read…
permissive · top 15,000 on PyPI
kuksa-clientKUKSA Python SDK provides a client library and…
permissive · top 15,000 on PyPI
myskodaMySkoda is an async Python library that…
unclear · top 15,000 on PyPI
teslajsonpyAn async Python library for interacting with…
permissive · top 15,000 on PyPI
vininfoExtracts and verifies information from Vehicle…
permissive · top 15,000 on PyPI
linkedin-api-clientProvides a Python client for LinkedIn's Rest.li…
unclear · top 5,000 on PyPI
google-cloud-os-loginPython client library for Google Cloud OS…
permissive · top 1,000 on PyPI
udsoncanImplements the Unified Diagnostic Services…
permissive · top 15,000 on PyPI