All data models used by the Hello Smart integration.
Source: models.py
API region identifier.
| Value | Description |
|---|---|
EU |
European region (Gigya auth) |
INTL |
International region (direct auth) |
Account authentication state.
| Value | Description |
|---|---|
unauthenticated |
No active session |
authenticated |
Valid token |
token_expired |
Token needs refresh |
auth_failed |
Authentication error |
Vehicle charging status, mapped from chargerState integer.
| Value | chargerState | Description |
|---|---|---|
not_charging |
0 | Not charging |
ac_charging |
2 | AC charging active |
dc_charging |
15 | DC fast charging active |
super_charging |
24 | Super charging (DC fast) |
plugged_not_charging |
25 | Plugged in but not charging |
boost_charging |
28 | Boost charging active |
wireless_charging |
30 | Wireless charging active |
Vehicle ignition power state.
| Value | powerMode | Description |
|---|---|---|
off |
"0" |
Vehicle off |
accessory |
"1" |
Accessory mode |
on |
"2" |
Ignition on / ready to drive |
cranking |
"3" |
Engine starting |
Smart vehicle model line, derived from matCode[0:3] or seriesCodeVs.
Source: APK VehicleModel.java, VehicleInfoConstants.java
| Value | matCode Prefix | Series Code | Marketing Name |
|---|---|---|---|
#1 |
HX1 |
HX11 |
Smart #1 (compact SUV) |
#3 |
HC1 |
HC11 |
Smart #3 (mid-size SUV) |
#5 |
HY1 |
HY11 |
Smart #5 (full-size SUV) |
Unknown |
— | — | Unrecognised model |
Vehicle trim/edition level, derived from matCode[5:7].
Source: APK VehicleEdition.java, ClimateFragment.java
| Value | matCode[5:7] | Description |
|---|---|---|
Pure |
80 |
Entry-level |
Pro |
D1 |
Mid-range |
Pulse |
GN |
Mid-range (EU naming) |
Premium |
D2 |
Upper-range |
BRABUS |
D3 |
Performance / top-range |
Launch Edition |
01 |
Limited launch variant |
Unknown |
— | Unrecognised trim code |
| Property | Method | Pure | Pro | Pulse | Premium | BRABUS | Launch |
|---|---|---|---|---|---|---|---|
| Driver seat heating | has_driver_seat_heating |
No | Yes | Yes | Yes | Yes | Yes |
| PM2.5 sensor | has_pm25 |
No | No | Yes | Yes | Yes | Yes |
These gates are used by the integration to automatically exclude entities that the vehicle hardware doesn't support.
User authentication state and tokens.
| Field | Type | Description |
|---|---|---|
username |
str |
Account email |
region |
Region |
EU or INTL |
auth_state |
AuthState |
Current authentication state |
api_access_token |
str | None |
API access token |
api_refresh_token |
str | None |
API refresh token |
api_user_id |
str | None |
API user ID |
device_id |
str |
Random device identifier |
Vehicle identity information from List Vehicles.
| Field | Type | Description |
|---|---|---|
vin |
str |
Vehicle Identification Number |
model_name |
str |
Full model name (e.g., CM590_HC11_Performance_4WD_RHD_APAC) |
model_year |
str |
Model year |
series_code |
str |
Series/variant code with region suffix (e.g., HC11_IL) |
color_name |
str |
Paint colour name |
color_code |
str |
Paint colour code |
model_code |
str |
Full model code (used by VC endpoint) |
factory_code |
str |
Factory / production plant code |
mat_code |
str |
Material code — encodes model and trim |
series_name |
str |
Series name (e.g., HC11) |
vehicle_type |
str |
Vehicle type identifier |
fuel_tank_capacity |
str |
Fuel tank capacity (always "0" for BEV) |
ihu_platform |
str |
IHU (infotainment) platform type |
tbox_platform |
str |
T-Box (telematics) platform type |
plate_no |
str |
Registration plate number |
engine_no |
str |
Motor/engine serial number |
default_vehicle |
bool |
Whether this is the user's primary vehicle |
share_status |
str |
Share status: "N" / "Y" |
| Property | Type | Description |
|---|---|---|
edition |
VehicleEdition |
Trim level derived from mat_code[5:7] |
smart_model |
VehicleModel |
Model line derived from mat_code[0:3] / series_code |
Comprehensive vehicle state from Full Vehicle Status and SOC.
| Field | Type | Unit | Optional |
|---|---|---|---|
battery_level |
int |
% | Yes |
range_remaining |
float |
km | Yes |
charging_state |
ChargingState |
— | Yes |
charger_connected |
bool |
— | Yes |
charge_voltage |
float |
V | Yes |
charge_current |
float |
A | Yes |
time_to_full |
int |
min | Yes |
doors |
dict[str, bool] |
— | Yes |
windows |
dict[str, bool] |
— | Yes |
climate_active |
bool |
— | Yes |
fragrance_active |
bool |
— | Yes |
interior_temp |
float |
°C | Yes |
exterior_temp |
float |
°C | Yes |
latitude |
float |
degrees | Yes |
longitude |
float |
degrees | Yes |
tyre_pressure_fl |
float |
kPa | Yes |
tyre_pressure_fr |
float |
kPa | Yes |
tyre_pressure_rl |
float |
kPa | Yes |
tyre_pressure_rr |
float |
kPa | Yes |
tyre_temp_fl |
float |
°C | Yes |
tyre_temp_fr |
float |
°C | Yes |
tyre_temp_rl |
float |
°C | Yes |
tyre_temp_rr |
float |
°C | Yes |
tyre_warning_fl |
bool |
— | Yes |
tyre_warning_fr |
bool |
— | Yes |
tyre_warning_rl |
bool |
— | Yes |
tyre_warning_rr |
bool |
— | Yes |
odometer |
float |
km | Yes |
days_to_service |
int |
days | Yes |
distance_to_service |
float |
km | Yes |
washer_fluid_low |
bool |
— | Yes |
brake_fluid_ok |
bool |
— | Yes |
battery_12v_voltage |
float |
V | Yes |
battery_12v_level |
float |
% | Yes |
power_mode |
PowerMode |
— | Yes |
last_updated |
datetime |
— | Yes |
window_position_driver |
int | None |
% | Yes |
window_position_passenger |
int | None |
% | Yes |
window_position_driver_rear |
int | None |
% | Yes |
window_position_passenger_rear |
int | None |
% | Yes |
sunroof_position |
int | None |
% | Yes |
sunroof_open |
bool | None |
— | Yes |
curtain_position |
int | None |
% | Yes |
curtain_open |
bool | None |
— | Yes |
sun_curtain_rear_position |
int | None |
% | Yes |
sun_curtain_rear_open |
bool | None |
— | Yes |
driver_seat_heating |
int | None |
level | Yes |
passenger_seat_heating |
int | None |
level | Yes |
rear_left_seat_heating |
int | None |
level | Yes |
rear_right_seat_heating |
int | None |
level | Yes |
driver_seat_ventilation |
int | None |
level | Yes |
passenger_seat_ventilation |
int | None |
level | Yes |
rear_left_seat_ventilation |
int | None |
level | Yes |
rear_right_seat_ventilation |
int | None |
level | Yes |
steering_wheel_heating |
int | None |
level | Yes |
pre_climate_active |
bool | None |
— | Yes |
defrost_active |
bool | None |
— | Yes |
air_blower_active |
bool | None |
— | Yes |
climate_overheat_protection |
bool | None |
— | Yes |
Note on
Nonevalues: Position fields (sunroof_position,curtain_position,sun_curtain_rear_position, window positions) returnNonewhen the API reports the sentinel value101, indicating the hardware is not equipped. The corresponding boolean fields (e.g.,sunroof_open) are also set toNone. See Sentinel Values.
Firmware versions from OTA Info.
| Field | Type | Description |
|---|---|---|
current_version |
str |
Installed firmware version |
target_version |
str |
Available firmware version |
update_available |
bool (property) |
True if versions differ |
Telematics unit from Telematics Status.
| Field | Type | Unit | Description |
|---|---|---|---|
connected |
bool |
— | Whether telematics is online |
sw_version |
str |
— | Software version |
hw_version |
str |
— | Hardware version |
imei |
str |
— | IMEI number |
power_mode |
PowerMode |
— | Unit power mode |
backup_battery_voltage |
float | None |
V | Backup battery voltage |
backup_battery_level |
float | None |
% | Backup battery charge |
Running state from Vehicle Running State.
| Field | Type | Unit |
|---|---|---|
power_mode |
PowerMode |
— |
speed |
float |
km/h |
Last trip data from Trip Journal.
| Field | Type | Unit |
|---|---|---|
trip_id |
str |
— |
distance |
float |
km |
duration |
int |
seconds |
energy_consumption |
float |
kWh |
avg_energy_consumption |
float |
kWh/100km |
avg_speed |
float |
km/h |
max_speed |
float |
km/h |
start_time |
datetime |
— |
end_time |
datetime |
— |
Charging schedule from Charging Reservation.
| Field | Type | Unit |
|---|---|---|
active |
bool |
— |
start_time |
str |
HH:mm |
end_time |
str |
HH:mm |
target_soc |
int |
% |
Climate schedule from Climate Schedule.
| Field | Type | Unit |
|---|---|---|
enabled |
bool |
— |
scheduled_time |
str |
HH:mm |
temperature |
float |
°C |
duration |
int |
seconds |
Mini-fridge from Fridge Status.
| Field | Type | Unit |
|---|---|---|
active |
bool |
— |
temperature |
float |
°C |
mode |
str |
— |
Storage locker from Locker Status.
| Field | Type |
|---|---|
open |
bool |
locked |
bool |
Locker PIN config from Locker Secret.
| Field | Type |
|---|---|
has_secret |
bool |
secret_set |
bool |
Theft monitoring from VTM Settings.
| Field | Type |
|---|---|
enabled |
bool |
notification_enabled |
bool |
geofence_alert_enabled |
bool |
Fragrance system from Fragrance.
| Field | Type |
|---|---|
active |
bool |
level |
str |
fragrance_type |
str |
Geofence summary from Geofences.
| Field | Type |
|---|---|
count |
int |
geofences |
list[dict] |
Diagnostic trouble code from Diagnostics.
| Field | Type |
|---|---|
dtc_code |
str |
severity |
str |
timestamp |
datetime |
status |
str |
Energy ranking from Energy Ranking.
| Field | Type | Unit |
|---|---|---|
my_ranking |
int |
— |
my_value |
float |
kWh/100km |
total_participants |
int |
— |
FOTA updates from FOTA Notification.
| Field | Type |
|---|---|
has_notification |
bool |
pending_count |
int |
Combined coordinator output — aggregates all of the above models.
| Field | Type | Optional |
|---|---|---|
vehicle |
Vehicle |
No |
status |
VehicleStatus |
Yes |
ota |
OTAInfo |
Yes |
telematics |
TelematicsStatus |
Yes |
running_state |
VehicleRunningState |
Yes |
last_trip |
TripJournal |
Yes |
charging_reservation |
ChargingReservation |
Yes |
climate_schedule |
ClimateSchedule |
Yes |
fridge |
FridgeStatus |
Yes |
locker |
LockerStatus |
Yes |
locker_secret |
LockerSecret |
Yes |
vtm |
VtmSettings |
Yes |
fragrance |
FragranceDetails |
Yes |
geofence |
GeofenceInfo |
Yes |
capabilities |
VehicleCapabilities |
Yes |
diagnostic |
DiagnosticEntry |
Yes |
energy_ranking |
EnergyRanking |
Yes |
fota_notification |
FOTANotification |
Yes |
ability |
VehicleAbility |
Yes |
vehicle_image_path |
str |
Yes |
total_distance |
float |
Yes |
plant_no |
str |
Yes |
Vehicle visual configuration and remote control capabilities from the VC service.
| Field | Type | Optional | Description |
|---|---|---|---|
images_path |
str |
No | CDN URL for side-view image |
top_images_path |
str |
No | CDN URL for top-down image |
battery_images_path |
str |
No | CDN URL for battery image |
interior_images_path |
str |
No | CDN URL for interior image (may be empty) |
color_code |
str |
No | Exterior color code |
color_name_mss |
str |
No | Exterior color name |
contrast_color_code |
str |
No | Accent color code |
contrast_color_name |
str |
No | Accent color name |
interior_color_name |
str |
No | Interior color name |
hub_code |
str |
No | Hub/dealer code |
hub_name |
str |
No | Hub/dealer name |
model_code_mss |
str |
No | MSS model code |
model_code_vdp |
str |
No | VDP model code |
model_name |
str |
No | Model name |
vehicle_name |
str |
No | Internal vehicle name |
vehicle_nickname |
str |
No | User-assigned nickname |
side_logo_light_name |
str |
No | Side logo light style |
license_plate_number |
str |
No | Registration plate |
Vehicle capability flags from the Capabilities API.
| Field | Type | Description |
|---|---|---|
service_ids |
list[str] |
Legacy service identifiers where enabled == true (backward compat) |
capability_flags |
dict[str, bool] |
Function ID → enabled mapping from data.list[].functionId/valueEnable |
The capability_flags dict is used by entity platforms to filter entities at setup time. Keys are functionId strings (e.g., "remote_control_lock", "charging_status"). Values are True (enabled) or False (disabled).
Cached static vehicle data fetched once per session. Used by SmartDataCoordinator._static_cache to avoid re-fetching data that doesn't change between polls.
| Field | Type | Description |
|---|---|---|
capabilities |
VehicleCapabilities | None |
Vehicle capability flags |
ability |
VehicleAbility | None |
Vehicle visual config and images |
plant_no |
str |
Plant number for device info |
vehicle_image_path |
str |
Local path to downloaded vehicle image |