Metadata-Version: 2.4
Name: saic_ismart_client_ng
Version: 0.13.1
Summary: SAIC next gen client library (MG iSMART)
License-File: LICENSE
Author: Giovanni Condello
Author-email: saic-python-client@nanomad.net
Requires-Python: >=3.12
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Dist: dacite (>=1.8.1,<2.0.0)
Requires-Dist: httpx (>=0.27.0,<0.29.0)
Requires-Dist: pycryptodome (>=3.20.0,<4.0.0)
Requires-Dist: tenacity (>=9.0.0,<10.0.0)
Project-URL: Homepage, https://github.com/SAIC-iSmart-API/saic-python-client-ng
Project-URL: Issues, https://github.com/SAIC-iSmart-API/saic-python-client-ng/issues
Description-Content-Type: text/markdown

# SAIC Python client library

## About

A Python package for interacting with the MG iSMART API.

MG iSMART is the connectivity system in your MG car (MG5 MG4, ZS...).

Presets are classmethods on `SaicApiConfiguration`. Each takes `(username, password, **overrides)`.

| Preset | `base_uri` | `region` | `tenant_id` | `device_app_id` |
|---|---|---|---|---|
| `mg_eu()` | `https://gateway-mg-eu.soimt.com/api.app/v1/` | `eu` | `459771` | `com.saicmotor.europecar` |
| `mg_au()` | `https://gateway-mg-au.soimt.com/api.app/v1/` | `au` | `459771` | `com.saicmotor.europecar` |
| `mg_tr()` | `https://gateway-mg-tr.soimt.com/api.app/v1/` | `tr` | `459771` | `com.saicmotor.europecar` |
| `maxus_eu()` | `https://gateway-maxus-eu.soimt.com/api.app/v1/` | `eu` | `590224` | `com.saicmaxus.ismarteu` |

MAXUS Europe vehicles use the same API. The `maxus_eu()` values were confirmed by a live traffic capture of the MAXUS app.

Supported functionality (partial list, check the code for more)

* login
* set alarm switches
* get message list
* get vehicle status
* get cached vehicle status (does not wake the car)
* get charging status
* lock vehicle
* unlock vehicle
* start rear window heating
* stop rear window heating
* remote climate
* heated seats


## Prerequisites

You have an iSMART account (can be created in the iSMART app)
