# pyBYD live API mapping snapshot

Generated with `scripts/generate_api_mapping_tables.py`:
- `python scripts/generate_api_mapping_tables.py --output api-mapping-live.md`
- Optional: `python scripts/generate_api_mapping_tables.py --vin YOUR_VIN --skip-push`

Generated: 2026-03-04T20:00:52.092795+00:00
VIN: <REDACTED>

## Realtime

### Mapped

| Raw API key | Raw current value | Parsed in pyBYD |
|---|---:|---|
| abs | 0 | 0 → 0 |
| airRunState | 0 | 0 → AirCirculationMode.UNAVAILABLE<br><br>Enum AirCirculationMode:<br>-1 → AirCirculationMode.UNKNOWN<br>0 → AirCirculationMode.UNAVAILABLE<br>1 → AirCirculationMode.EXTERNAL<br>2 → AirCirculationMode.INTERNAL |
| batteryHeatState | 0 | 0 → 0 |
| bookingChargeState | 0 | 0 → 0 |
| bookingChargingHour | 0 | 0 → 0 |
| bookingChargingMinute | 0 | 0 → 0 |
| brakingSystem | 0 | 0 → 0 |
| chargeHeatState | 0 | 0 → 0 |
| chargeState | 15 | 15 → ChargingState.CONNECTED<br><br>Enum ChargingState:<br>-1 → ChargingState.UNKNOWN<br>0 → ChargingState.NOT_CHARGING<br>1 → ChargingState.CHARGING<br>15 → ChargingState.CONNECTED |
| chargingState | -1 | -1 → ChargingState.UNKNOWN<br><br>Enum ChargingState:<br>-1 → ChargingState.UNKNOWN<br>0 → ChargingState.NOT_CHARGING<br>1 → ChargingState.CHARGING<br>15 → ChargingState.CONNECTED |
| chargingSystem | 0 | 0 → 0 |
| connectState | -1 | -1 → ConnectState.UNKNOWN<br><br>Enum ConnectState:<br>-1 → ConnectState.UNKNOWN<br>0 → ConnectState.DISCONNECTED<br>1 → ConnectState.CONNECTED |
| copilotSeatHeatState | 1 | 1 → SeatHeatVentState.OFF<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| copilotSeatVentilationState | 1 | 1 → SeatHeatVentState.OFF<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| ect | 0 | 0 → 0 |
| ectValue | -1 | -1 → None |
| elecPercent | 81 | 81 → 81.0 |
| enduranceMileage | 327 | 327 → 327.0 |
| enduranceMileageV2 | 327 | 327 → 327.0 |
| enduranceMileageV2Unit | km | km → km |
| energyConsumption | 30.1 | 30.1 → 30.1 |
| engineStatus | 0 | 0 → 0 |
| epb | 0 | 0 → 0 |
| eps | 0 | 0 → 0 |
| esp | 0 | 0 → 0 |
| evEndurance | 327 | 327 → 327.0 |
| forehold | 0 | 0 → DoorOpenState.CLOSED<br><br>Enum DoorOpenState:<br>-1 → DoorOpenState.UNKNOWN<br>0 → DoorOpenState.CLOSED<br>1 → DoorOpenState.OPEN |
| fullHour | -1 | -1 → None |
| fullMinute | -1 | -1 → None |
| gl | 0.0 | 0.0 → 0.0 |
| ins | 0 | 0 → 0 |
| leftFrontDoor | 0 | 0 → DoorOpenState.CLOSED<br><br>Enum DoorOpenState:<br>-1 → DoorOpenState.UNKNOWN<br>0 → DoorOpenState.CLOSED<br>1 → DoorOpenState.OPEN |
| leftFrontDoorLock | 2 | 2 → LockState.LOCKED<br><br>Enum LockState:<br>-1 → LockState.UNKNOWN<br>0 → LockState.UNAVAILABLE<br>1 → LockState.UNLOCKED<br>2 → LockState.LOCKED |
| leftFrontTireStatus | 0 | 0 → 0 |
| leftFrontTirepressure | 2.9 | 2.9 → 2.9 |
| leftFrontWindow | 1 | 1 → WindowState.CLOSED<br><br>Enum WindowState:<br>-1 → WindowState.UNKNOWN<br>1 → WindowState.CLOSED<br>2 → WindowState.OPEN |
| leftRearDoor | 0 | 0 → DoorOpenState.CLOSED<br><br>Enum DoorOpenState:<br>-1 → DoorOpenState.UNKNOWN<br>0 → DoorOpenState.CLOSED<br>1 → DoorOpenState.OPEN |
| leftRearDoorLock | 2 | 2 → LockState.LOCKED<br><br>Enum LockState:<br>-1 → LockState.UNKNOWN<br>0 → LockState.UNAVAILABLE<br>1 → LockState.UNLOCKED<br>2 → LockState.LOCKED |
| leftRearTireStatus | 0 | 0 → 0 |
| leftRearTirepressure | 3.1 | 3.1 → 3.1 |
| leftRearWindow | 1 | 1 → WindowState.CLOSED<br><br>Enum WindowState:<br>-1 → WindowState.UNKNOWN<br>1 → WindowState.CLOSED<br>2 → WindowState.OPEN |
| lessOneMin | False | False → False |
| lrSeatHeatState | 0 | 0 → SeatHeatVentState.NO_DATA<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| lrSeatVentilationState | 0 | 0 → SeatHeatVentState.NO_DATA<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| lrThirdHeatState | 0 | 0 → SeatHeatVentState.NO_DATA<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| lrThirdVentilationState | 0 | 0 → SeatHeatVentState.NO_DATA<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| mainSeatHeatState | 1 | 1 → SeatHeatVentState.OFF<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| mainSeatVentilationState | 1 | 1 → SeatHeatVentState.OFF<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| mainSettingTemp | 0 | 0 → 0 |
| mainSettingTempNew | 0.0 | 0.0 → 0.0 |
| nearestEnergyConsumption | -- | -- → None |
| nearestEnergyConsumptionUnit | -- | -- → None |
| oilEndurance | -1 | -1 → None |
| oilPercent | 0 | 0 → 0.0 |
| oilPressureSystem | 0 | 0 → 0 |
| okLight | 0 | 0 → 0 |
| onlineState | 1 | 1 → OnlineState.ONLINE<br><br>Enum OnlineState:<br>-1 → OnlineState.UNKNOWN<br>1 → OnlineState.ONLINE<br>2 → OnlineState.OFFLINE |
| powerBattery | 0 | 0 → 0.0 |
| powerBatteryConnection | 0 | 0 → 0 |
| powerGear | 1 | 1 → PowerGear.OFF<br><br>Enum PowerGear:<br>-1 → PowerGear.UNKNOWN<br>1 → PowerGear.OFF<br>3 → PowerGear.ON |
| powerSystem | 0 | 0 → 0 |
| pwr | 2 | 2 → 2 |
| rapidTireLeak | 0 | 0 → 0 |
| rate | -999 | -999 → None |
| recent50kmEnergy | -- | -- → None |
| remainingHours | -1 | -1 → None |
| remainingMinutes | -1 | -1 → None |
| repairModeSwitch | 0 | 0 → 0 |
| requestSerial | <REDACTED> | <REDACTED> → <REDACTED> |
| rightFrontDoor | 0 | 0 → DoorOpenState.CLOSED<br><br>Enum DoorOpenState:<br>-1 → DoorOpenState.UNKNOWN<br>0 → DoorOpenState.CLOSED<br>1 → DoorOpenState.OPEN |
| rightFrontDoorLock | 2 | 2 → LockState.LOCKED<br><br>Enum LockState:<br>-1 → LockState.UNKNOWN<br>0 → LockState.UNAVAILABLE<br>1 → LockState.UNLOCKED<br>2 → LockState.LOCKED |
| rightFrontTireStatus | 0 | 0 → 0 |
| rightFrontTirepressure | 2.7 | 2.7 → 2.7 |
| rightFrontWindow | 1 | 1 → WindowState.CLOSED<br><br>Enum WindowState:<br>-1 → WindowState.UNKNOWN<br>1 → WindowState.CLOSED<br>2 → WindowState.OPEN |
| rightRearDoor | 0 | 0 → DoorOpenState.CLOSED<br><br>Enum DoorOpenState:<br>-1 → DoorOpenState.UNKNOWN<br>0 → DoorOpenState.CLOSED<br>1 → DoorOpenState.OPEN |
| rightRearDoorLock | 2 | 2 → LockState.LOCKED<br><br>Enum LockState:<br>-1 → LockState.UNKNOWN<br>0 → LockState.UNAVAILABLE<br>1 → LockState.UNLOCKED<br>2 → LockState.LOCKED |
| rightRearTireStatus | 0 | 0 → 0 |
| rightRearTirepressure | 3.1 | 3.1 → 3.1 |
| rightRearWindow | 1 | 1 → WindowState.CLOSED<br><br>Enum WindowState:<br>-1 → WindowState.UNKNOWN<br>1 → WindowState.CLOSED<br>2 → WindowState.OPEN |
| rrSeatHeatState | 0 | 0 → SeatHeatVentState.NO_DATA<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| rrSeatVentilationState | 0 | 0 → SeatHeatVentState.NO_DATA<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| rrThirdHeatState | 0 | 0 → SeatHeatVentState.NO_DATA<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| rrThirdVentilationState | 0 | 0 → SeatHeatVentState.NO_DATA<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| sentryStatus | 2 | 2 → 2 |
| skylight | 1 | 1 → WindowState.CLOSED<br><br>Enum WindowState:<br>-1 → WindowState.UNKNOWN<br>1 → WindowState.CLOSED<br>2 → WindowState.OPEN |
| slidingDoor | 0 | 0 → DoorOpenState.CLOSED<br><br>Enum DoorOpenState:<br>-1 → DoorOpenState.UNKNOWN<br>0 → DoorOpenState.CLOSED<br>1 → DoorOpenState.OPEN |
| slidingDoorLock | 2 | 2 → LockState.LOCKED<br><br>Enum LockState:<br>-1 → LockState.UNKNOWN<br>0 → LockState.UNAVAILABLE<br>1 → LockState.UNLOCKED<br>2 → LockState.LOCKED |
| speed | 0 | 0 → 0.0 |
| srs | 0 | 0 → 0 |
| steeringSystem | 0 | 0 → 0 |
| steeringWheelHeatState | 0 | 0 → StearingWheelHeat.ON<br><br>Enum StearingWheelHeat:<br>-1 → StearingWheelHeat.ON<br>1 → StearingWheelHeat.OFF |
| svs | 0 | 0 → 0 |
| tempInCar | -129 | -129 → None |
| time | 1772654453 | 1772654453 → <REDACTED> |
| tirePressUnit | 1 | 1 → TirePressureUnit.BAR<br><br>Enum TirePressureUnit:<br>-1 → TirePressureUnit.UNKNOWN<br>1 → TirePressureUnit.BAR<br>2 → TirePressureUnit.PSI<br>3 → TirePressureUnit.KPA |
| tirepressureSystem | 0 | 0 → 0 |
| totalConsumption | 30.1度/百公里 | 30.1度/百公里 → 30.1度/百公里 |
| totalConsumptionEn | 30.1kW·h/100km | 30.1kW·h/100km → 30.1kW·h/100km |
| totalEnergy | -- | -- → None |
| totalMileage | 60154 | 60154 → 60154.0 |
| totalMileageV2 | 60154 | 60154 → 60154.0 |
| totalMileageV2Unit | km | km → km |
| totalOil | 0.0 | 0.0 → 0.0 |
| totalPower | 0.0 | 0.0 → 0.0 |
| trunkLid | 0 | 0 → DoorOpenState.CLOSED<br><br>Enum DoorOpenState:<br>-1 → DoorOpenState.UNKNOWN<br>0 → DoorOpenState.CLOSED<br>1 → DoorOpenState.OPEN |
| upgradeStatus | 0 | 0 → 0 |
| vehicleState | 2 | 2 → VehicleState.ON<br><br>Enum VehicleState:<br>-1 → VehicleState.UNKNOWN<br>0 → VehicleState.OFF<br>2 → VehicleState.ON |
| waitStatus | 0 | 0 → 0 |

### Unmapped

| Raw API key | Raw current value | Parsed in pyBYD |
|---|---:|---|
| _(no rows)_ |  |  |

## GPS

### Mapped

| Raw API key | Raw current value | Parsed in pyBYD |
|---|---:|---|
| requestSerial | <REDACTED> | <REDACTED> → request_serial (str \| NoneType) |

### Unmapped

| Raw API key | Raw current value | Parsed in pyBYD |
|---|---:|---|
| code | 6051 | Not parsed (raw only) |
| identifier | 421162 | Not parsed (raw only) |
| message | 获取车辆位置失败 | Not parsed (raw only) |
| uuid | 333B194C15074A72A51F6F2F1F7548EF | Not parsed (raw only) |

## HVAC

### Mapped

| Raw API key | Raw current value | Parsed in pyBYD |
|---|---:|---|
| acSwitch | 0 | 0 → 0<br><br>Enum AcSwitch:<br>-1 → AcSwitch.UNKNOWN |
| airConditioningMode | 0 | 0 → 0<br><br>Enum AirConditioningMode:<br>-1 → AirConditioningMode.UNKNOWN<br>0 → AirConditioningMode.OFF<br>1 → AirConditioningMode.AUTO<br>2 → AirConditioningMode.MANUAL |
| copilotSeatHeatState | 1 | 1 → SeatHeatVentState.OFF<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| copilotSeatVentilationState | 1 | 1 → SeatHeatVentState.OFF<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| copilotSettingTemp | 0 | 0 → 0.0 |
| copilotSettingTempNew | 0.0 | 0.0 → 0.0 |
| cycleChoice | 1 | 1 → 1<br><br>Enum AirCirculationMode:<br>-1 → AirCirculationMode.UNKNOWN<br>0 → AirCirculationMode.UNAVAILABLE<br>1 → AirCirculationMode.EXTERNAL<br>2 → AirCirculationMode.INTERNAL |
| electricDefrostStatus | 0 | 0 → 0 |
| frontDefrostStatus | 0 | 0 → 0 |
| lrSeatHeatState | 0 | 0 → SeatHeatVentState.NO_DATA<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| lrSeatVentilationState | 0 | 0 → SeatHeatVentState.NO_DATA<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| mainSeatHeatState | 1 | 1 → SeatHeatVentState.OFF<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| mainSeatVentilationState | 1 | 1 → SeatHeatVentState.OFF<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| mainSettingTemp | 0 | 0 → 0.0 |
| mainSettingTempNew | 0.0 | 0.0 → 0.0 |
| pm | 0 | 0 → 0.0 |
| pm25StateOutCar | 0 | 0 → 0.0 |
| rapidDecreaseTempState | 0 | 0 → 0 |
| rapidIncreaseTempState | 0 | 0 → 0 |
| refrigeratorDoorState | 0 | 0 → 0 |
| refrigeratorState | 0 | 0 → 0 |
| rrSeatHeatState | 0 | 0 → SeatHeatVentState.NO_DATA<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| rrSeatVentilationState | 0 | 0 → SeatHeatVentState.NO_DATA<br><br>Enum SeatHeatVentState:<br>-1 → SeatHeatVentState.UNKNOWN<br>0 → SeatHeatVentState.NO_DATA<br>1 → SeatHeatVentState.OFF<br>2 → SeatHeatVentState.LOW<br>3 → SeatHeatVentState.HIGH |
| status | 0 | 0 → 0<br><br>Enum HvacOverallStatus:<br>-1 → HvacOverallStatus.UNKNOWN<br>1 → HvacOverallStatus.ON<br>2 → HvacOverallStatus.OFF |
| steeringWheelHeatState | 0 | 0 → StearingWheelHeat.ON<br><br>Enum StearingWheelHeat:<br>-1 → StearingWheelHeat.ON<br>1 → StearingWheelHeat.OFF |
| tempInCar | -129 | -129 → None |
| tempOutCar | 0 | 0 → 0.0 |
| whetherSupportAdjustTemp | 1 | 1 → 1 |
| windMode | 0 | 0 → 0<br><br>Enum HvacWindMode:<br>-1 → HvacWindMode.UNKNOWN<br>0 → HvacWindMode.OFF<br>1 → HvacWindMode.FACE<br>2 → HvacWindMode.FACE_FOOT<br>3 → HvacWindMode.FOOT<br>4 → HvacWindMode.FOOT_DEFROST<br>5 → HvacWindMode.DEFROST |
| windPosition | 0 | 0 → 0<br><br>Enum HvacWindPosition:<br>-1 → HvacWindPosition.UNKNOWN<br>0 → HvacWindPosition.OFF<br>1 → HvacWindPosition.POSITION_1<br>2 → HvacWindPosition.POSITION_2<br>3 → HvacWindPosition.POSITION_3<br>4 → HvacWindPosition.POSITION_4<br>5 → HvacWindPosition.POSITION_5<br>6 → HvacWindPosition.POSITION_6<br>7 → HvacWindPosition.POSITION_7 |
| wiperHeatStatus | 0 | 0 → 0 |

### Unmapped

| Raw API key | Raw current value | Parsed in pyBYD |
|---|---:|---|
| airConditionTempRange | 0 | Not parsed (raw only) |
| airTempLevel | 0 | Not parsed (raw only) |
| firstWarm | 0 | Not parsed (raw only) |
| firstWind | 0 | Not parsed (raw only) |
| frontAirSumPattern | 0 | Not parsed (raw only) |
| lrThirdHeatState | 0 | Not parsed (raw only) |
| lrThirdVentilationState | 0 | Not parsed (raw only) |
| rrThirdHeatState | 0 | Not parsed (raw only) |
| rrThirdVentilationState | 0 | Not parsed (raw only) |
| secondWarm | 0 | Not parsed (raw only) |
| secondWind | 0 | Not parsed (raw only) |
| temp | 0 | Not parsed (raw only) |
| timeChoice | 3 | Not parsed (raw only) |

## Charging

### Mapped

| Raw API key | Raw current value | Parsed in pyBYD |
|---|---:|---|
| chargingState | 15 | 15 → 15 |
| connectState | 0 | 0 → 0 |
| fullHour | -1 | -1 → None |
| fullMinute | -1 | -1 → None |
| soc | 81 | 81 → 81 |
| updateTime | <REDACTED> | <REDACTED> → <REDACTED> |
| waitStatus | 0 | 0 → 0 |

### Unmapped

| Raw API key | Raw current value | Parsed in pyBYD |
|---|---:|---|
| vin | <REDACTED> | Not parsed (raw only) |

## Energy

> Endpoint fetch failed: ApiError code=1001 endpoint=/vehicleInfo/vehicle/getEnergyConsumption message=/vehicleInfo/vehicle/getEnergyConsumption not supported for VIN <REDACTED> (code=1001)

## Latest Config

### Mapped

| Raw API key | Raw current value | Parsed in pyBYD |
|---|---:|---|
| appConfigVersion | 2 | 2 → 2 |
| configVersion | 1772201446 | 1772201446 → 1772201446 |
| styleId | 2 | 2 → 2 |
| terminalType | 0 | 0 → 0 |
| widgetConfigId | 202602271410460027 | 202602271410460027 → 202602271410460027 |
| __normalized.source__ | latest_config | latest_config → source (str) |
| __normalized.lock__ | True | True → lock (bool \| NoneType) |
| __normalized.unlock__ | True | True → unlock (bool \| NoneType) |
| __normalized.climate__ | True | True → climate (bool \| NoneType) |
| __normalized.car_on__ | True | True → car_on (bool \| NoneType) |
| __normalized.battery_heat__ | False | False → battery_heat (bool \| NoneType) |
| __normalized.steering_wheel_heat__ | True | True → steering_wheel_heat (bool \| NoneType) |
| __normalized.driver_seat_heat__ | True | True → driver_seat_heat (bool \| NoneType) |
| __normalized.driver_seat_ventilation__ | True | True → driver_seat_ventilation (bool \| NoneType) |
| __normalized.passenger_seat_heat__ | True | True → passenger_seat_heat (bool \| NoneType) |
| __normalized.passenger_seat_ventilation__ | True | True → passenger_seat_ventilation (bool \| NoneType) |
| __normalized.find_car__ | True | True → find_car (bool \| NoneType) |
| __normalized.flash_lights__ | True | True → flash_lights (bool \| NoneType) |
| __normalized.close_windows__ | True | True → close_windows (bool \| NoneType) |
| __normalized.location__ | True | True → location (bool \| NoneType) |
| __normalized.function_nos__ | ["1001", "1002", "10020001", "10020002", "10020003", "10020004", "10020005", "1003", "10030001", "10030002", "10030004", "10030005", "10030010", "10030011", "1004", "10040001", "1005", "1006", "1007", "1008", "1014", "1026", "1030", "10300001", "10300003", "10300004"] | ["1001", "1002", "10020001", "10020002", "10020003", "10020004", "10020005", "1003", "10030001", "10030002", "10030004", "10030005", "10030010", "10030011", "1004", "10040001", "1005", "1006", "1007", "1008", "1014", "1026", "1030", "10300001", "10300003", "10300004"] → function_nos (str) |
| __normalized.codes__ | ["AC", "AIR", "CLOSEWINDOWS", "DIRECTTIREPRESSURE", "DOORWINDOW", "DRIVERSEATHEATING", "DRIVERSEATVENTILATIO", "FINDCAR", "FLASHLIGHTNOWHISTLE", "FPSH", "FPSV", "HEATEDSTEERINGWHEEL", "HOOD", "LOCKING", "ONETAPPREP", "SEATROWS", "SEATS", "STEERINGWHEELHEATIN", "SUNROOF", "TIREPRESSURE", "TRUNK", "UNLOCKING", "UPWINDOWSREMOTELY", "VENTILATIONHEATING", "WINDOWS"] | ["AC", "AIR", "CLOSEWINDOWS", "DIRECTTIREPRESSURE", "DOORWINDOW", "DRIVERSEATHEATING", "DRIVERSEATVENTILATIO", "FINDCAR", "FLASHLIGHTNOWHISTLE", "FPSH", "FPSV", "HEATEDSTEERINGWHEEL", "HOOD", "LOCKING", "ONETAPPREP", "SEATROWS", "SEATS", "STEERINGWHEELHEATIN", "SUNROOF", "TIREPRESSURE", "TRUNK", "UNLOCKING", "UPWINDOWSREMOTELY", "VENTILATIONHEATING", "WINDOWS"] → codes (str) |
| __normalized.unknown_function_nos__ | [] | [] → unknown_function_nos (str) |
| __function_no.1001__ | {"functionNo": "1001", "registered": true} | True → function_no_registered (1001) |
| __function_no.1002__ | {"functionNo": "1002", "registered": true} | True → function_no_registered (1002) |
| __function_no.10020001__ | {"functionNo": "10020001", "registered": true} | True → function_no_registered (10020001) |
| __function_no.10020002__ | {"functionNo": "10020002", "registered": true} | True → function_no_registered (10020002) |
| __function_no.10020003__ | {"functionNo": "10020003", "registered": true} | True → function_no_registered (10020003) |
| __function_no.10020004__ | {"functionNo": "10020004", "registered": true} | True → function_no_registered (10020004) |
| __function_no.10020005__ | {"functionNo": "10020005", "registered": true} | True → function_no_registered (10020005) |
| __function_no.1003__ | {"functionNo": "1003", "registered": true} | True → function_no_registered (1003) |
| __function_no.10030001__ | {"functionNo": "10030001", "registered": true} | True → function_no_registered (10030001) |
| __function_no.10030002__ | {"functionNo": "10030002", "registered": true} | True → function_no_registered (10030002) |
| __function_no.10030004__ | {"functionNo": "10030004", "registered": true} | True → function_no_registered (10030004) |
| __function_no.10030005__ | {"functionNo": "10030005", "registered": true} | True → function_no_registered (10030005) |
| __function_no.10030010__ | {"functionNo": "10030010", "registered": true} | True → function_no_registered (10030010) |
| __function_no.10030011__ | {"functionNo": "10030011", "registered": true} | True → function_no_registered (10030011) |
| __function_no.1004__ | {"functionNo": "1004", "registered": true} | True → function_no_registered (1004) |
| __function_no.10040001__ | {"functionNo": "10040001", "registered": true} | True → function_no_registered (10040001) |
| __function_no.1005__ | {"functionNo": "1005", "registered": true} | True → function_no_registered (1005) |
| __function_no.1006__ | {"functionNo": "1006", "registered": true} | True → function_no_registered (1006) |
| __function_no.1007__ | {"functionNo": "1007", "registered": true} | True → function_no_registered (1007) |
| __function_no.1008__ | {"functionNo": "1008", "registered": true} | True → function_no_registered (1008) |
| __function_no.1014__ | {"functionNo": "1014", "registered": true} | True → function_no_registered (1014) |
| __function_no.1026__ | {"functionNo": "1026", "registered": true} | True → function_no_registered (1026) |
| __function_no.1030__ | {"functionNo": "1030", "registered": true} | True → function_no_registered (1030) |
| __function_no.10300001__ | {"functionNo": "10300001", "registered": true} | True → function_no_registered (10300001) |
| __function_no.10300003__ | {"functionNo": "10300003", "registered": true} | True → function_no_registered (10300003) |
| __function_no.10300004__ | {"functionNo": "10300004", "registered": true} | True → function_no_registered (10300004) |
| __command_gate.LOCKDOOR.lock__ | {"command": "LOCKDOOR", "gateId": "lock", "supported": true, "reason": "supported", "matchedFunctionNos": ["1005"], "counterpartFunctionNos": []} | True → command_gate (reason=supported; matched_function_nos=['1005']; counterpart_function_nos=[]) |
| __command_gate.OPENDOOR.unlock__ | {"command": "OPENDOOR", "gateId": "unlock", "supported": true, "reason": "supported", "matchedFunctionNos": ["1006"], "counterpartFunctionNos": []} | True → command_gate (reason=supported; matched_function_nos=['1006']; counterpart_function_nos=[]) |
| __command_gate.OPENAIR.climate__ | {"command": "OPENAIR", "gateId": "climate", "supported": true, "reason": "supported", "matchedFunctionNos": ["1001", "10300001"], "counterpartFunctionNos": []} | True → command_gate (reason=supported; matched_function_nos=['1001', '10300001']; counterpart_function_nos=[]) |
| __command_gate.CLOSEAIR.climate__ | {"command": "CLOSEAIR", "gateId": "climate", "supported": true, "reason": "supported", "matchedFunctionNos": ["1001", "10300001"], "counterpartFunctionNos": []} | True → command_gate (reason=supported; matched_function_nos=['1001', '10300001']; counterpart_function_nos=[]) |
| __command_gate.BOOKINGAIR.climate_schedule__ | {"command": "BOOKINGAIR", "gateId": "climate_schedule", "supported": true, "reason": "supported", "matchedFunctionNos": ["1001", "10300001"], "counterpartFunctionNos": []} | True → command_gate (reason=supported; matched_function_nos=['1001', '10300001']; counterpart_function_nos=[]) |
| __command_gate.FINDCAR.find_car__ | {"command": "FINDCAR", "gateId": "find_car", "supported": true, "reason": "supported", "matchedFunctionNos": ["1007"], "counterpartFunctionNos": []} | True → command_gate (reason=supported; matched_function_nos=['1007']; counterpart_function_nos=[]) |
| __command_gate.FLASHLIGHTNOWHISTLE.flash_lights__ | {"command": "FLASHLIGHTNOWHISTLE", "gateId": "flash_lights", "supported": true, "reason": "supported", "matchedFunctionNos": ["1008"], "counterpartFunctionNos": []} | True → command_gate (reason=supported; matched_function_nos=['1008']; counterpart_function_nos=[]) |
| __command_gate.CLOSEWINDOW.close_windows__ | {"command": "CLOSEWINDOW", "gateId": "close_windows", "supported": true, "reason": "supported", "matchedFunctionNos": ["1026"], "counterpartFunctionNos": []} | True → command_gate (reason=supported; matched_function_nos=['1026']; counterpart_function_nos=[]) |
| __command_gate.VENTILATIONHEATING.seat_driver__ | {"command": "VENTILATIONHEATING", "gateId": "seat_driver", "supported": true, "reason": "supported", "matchedFunctionNos": ["10030001", "10030002", "10300003"], "counterpartFunctionNos": []} | True → command_gate (reason=supported; matched_function_nos=['10030001', '10030002', '10300003']; counterpart_function_nos=[]) |
| __command_gate.VENTILATIONHEATING.seat_passenger__ | {"command": "VENTILATIONHEATING", "gateId": "seat_passenger", "supported": true, "reason": "supported", "matchedFunctionNos": ["10030004", "10030005", "10300003"], "counterpartFunctionNos": []} | True → command_gate (reason=supported; matched_function_nos=['10030004', '10030005', '10300003']; counterpart_function_nos=[]) |
| __command_gate.VENTILATIONHEATING.steering_wheel_heat__ | {"command": "VENTILATIONHEATING", "gateId": "steering_wheel_heat", "supported": true, "reason": "supported", "matchedFunctionNos": ["10030010", "10300004"], "counterpartFunctionNos": []} | True → command_gate (reason=supported; matched_function_nos=['10030010', '10300004']; counterpart_function_nos=[]) |
| __command_gate.BATTERYHEAT.battery_heat__ | {"command": "BATTERYHEAT", "gateId": "battery_heat", "supported": false, "reason": "function_no_missing", "matchedFunctionNos": [], "counterpartFunctionNos": ["10300002"]} | False → command_gate (reason=function_no_missing; matched_function_nos=[]; counterpart_function_nos=['10300002']) |

### Unmapped

| Raw API key | Raw current value | Parsed in pyBYD |
|---|---:|---|
| bluetoothConfigList | [] | Not parsed (raw only) |
| cfFixedList[0].code | LOCKING | Not parsed (raw only) |
| cfFixedList[0].functionName | 闭锁 | Not parsed (raw only) |
| cfFixedList[0].functionNo | 1005 | Not parsed (raw only) |
| cfFixedList[0].sortNum | 5 | Not parsed (raw only) |
| cfFixedList[10].code | UNLOCKING | Not parsed (raw only) |
| cfFixedList[10].functionName | 解锁 | Not parsed (raw only) |
| cfFixedList[10].functionNo | 1006 | Not parsed (raw only) |
| cfFixedList[10].sortNum | 6 | Not parsed (raw only) |
| cfFixedList[1].cfFixedSecondLevelList[0].code | Direct tire pressure | Not parsed (raw only) |
| cfFixedList[1].cfFixedSecondLevelList[0].functionName | 直接式胎压 | Not parsed (raw only) |
| cfFixedList[1].cfFixedSecondLevelList[0].functionNo | 10040001 | Not parsed (raw only) |
| cfFixedList[1].code | TIREPRESSURE | Not parsed (raw only) |
| cfFixedList[1].functionName | 胎压 | Not parsed (raw only) |
| cfFixedList[1].functionNo | 1004 | Not parsed (raw only) |
| cfFixedList[1].sortNum | 4 | Not parsed (raw only) |
| cfFixedList[2].cfFixedSecondLevelList[0].code | FPSH | Not parsed (raw only) |
| cfFixedList[2].cfFixedSecondLevelList[0].functionName | 副驾加热 | Not parsed (raw only) |
| cfFixedList[2].cfFixedSecondLevelList[0].functionNo | 10030005 | Not parsed (raw only) |
| cfFixedList[2].cfFixedSecondLevelList[1].code | FPSV | Not parsed (raw only) |
| cfFixedList[2].cfFixedSecondLevelList[1].functionName | 副驾通风 | Not parsed (raw only) |
| cfFixedList[2].cfFixedSecondLevelList[1].functionNo | 10030004 | Not parsed (raw only) |
| cfFixedList[2].cfFixedSecondLevelList[2].code | DRIVERSEATHEATING | Not parsed (raw only) |
| cfFixedList[2].cfFixedSecondLevelList[2].functionName | 主驾加热 | Not parsed (raw only) |
| cfFixedList[2].cfFixedSecondLevelList[2].functionNo | 10030002 | Not parsed (raw only) |
| cfFixedList[2].cfFixedSecondLevelList[3].code | DRIVERSEATVENTILATIO | Not parsed (raw only) |
| cfFixedList[2].cfFixedSecondLevelList[3].functionName | 主驾通风 | Not parsed (raw only) |
| cfFixedList[2].cfFixedSecondLevelList[3].functionNo | 10030001 | Not parsed (raw only) |
| cfFixedList[2].cfFixedSecondLevelList[4].code | STEERINGWHEELHEATIN | Not parsed (raw only) |
| cfFixedList[2].cfFixedSecondLevelList[4].functionName | 方向盘加热 | Not parsed (raw only) |
| cfFixedList[2].cfFixedSecondLevelList[4].functionNo | 10030010 | Not parsed (raw only) |
| cfFixedList[2].cfFixedSecondLevelList[5].code | Seat rows | Not parsed (raw only) |
| cfFixedList[2].cfFixedSecondLevelList[5].functionName | 座椅排数是否三排 | Not parsed (raw only) |
| cfFixedList[2].cfFixedSecondLevelList[5].functionNo | 10030011 | Not parsed (raw only) |
| cfFixedList[2].code | VENTILATIONHEATING | Not parsed (raw only) |
| cfFixedList[2].functionName | 座椅 | Not parsed (raw only) |
| cfFixedList[2].functionNo | 1003 | Not parsed (raw only) |
| cfFixedList[2].sortNum | 3 | Not parsed (raw only) |
| cfFixedList[3].cfFixedSecondLevelList[0].code | UPWINDOWSREMOTELY | Not parsed (raw only) |
| cfFixedList[3].cfFixedSecondLevelList[0].functionName | 一键升窗 | Not parsed (raw only) |
| cfFixedList[3].cfFixedSecondLevelList[0].functionNo | 10020004 | Not parsed (raw only) |
| cfFixedList[3].cfFixedSecondLevelList[1].code | TRUNK | Not parsed (raw only) |
| cfFixedList[3].cfFixedSecondLevelList[1].functionName | 后备箱 | Not parsed (raw only) |
| cfFixedList[3].cfFixedSecondLevelList[1].functionNo | 10020003 | Not parsed (raw only) |
| cfFixedList[3].cfFixedSecondLevelList[2].code | HOOD | Not parsed (raw only) |
| cfFixedList[3].cfFixedSecondLevelList[2].functionName | 引擎盖 | Not parsed (raw only) |
| cfFixedList[3].cfFixedSecondLevelList[2].functionNo | 10020002 | Not parsed (raw only) |
| cfFixedList[3].cfFixedSecondLevelList[3].code | SUNROOF | Not parsed (raw only) |
| cfFixedList[3].cfFixedSecondLevelList[3].functionName | 天窗 | Not parsed (raw only) |
| cfFixedList[3].cfFixedSecondLevelList[3].functionNo | 10020001 | Not parsed (raw only) |
| cfFixedList[3].cfFixedSecondLevelList[4].code | windows | Not parsed (raw only) |
| cfFixedList[3].cfFixedSecondLevelList[4].functionName | 车窗 | Not parsed (raw only) |
| cfFixedList[3].cfFixedSecondLevelList[4].functionNo | 10020005 | Not parsed (raw only) |
| cfFixedList[3].code | DOORWINDOW | Not parsed (raw only) |
| cfFixedList[3].functionName | 门窗 | Not parsed (raw only) |
| cfFixedList[3].functionNo | 1002 | Not parsed (raw only) |
| cfFixedList[3].sortNum | 2 | Not parsed (raw only) |
| cfFixedList[4].code | AIR | Not parsed (raw only) |
| cfFixedList[4].functionName | 空调A/C | Not parsed (raw only) |
| cfFixedList[4].functionNo | 1001 | Not parsed (raw only) |
| cfFixedList[4].sortNum | 1 | Not parsed (raw only) |
| cfFixedList[5].code | CLOSEWINDOWS | Not parsed (raw only) |
| cfFixedList[5].functionName | 一键升窗 | Not parsed (raw only) |
| cfFixedList[5].functionNo | 1026 | Not parsed (raw only) |
| cfFixedList[5].sortNum | 26 | Not parsed (raw only) |
| cfFixedList[6].cfFixedSecondLevelList[0].code | A/C | Not parsed (raw only) |
| cfFixedList[6].cfFixedSecondLevelList[0].functionName | 空调 | Not parsed (raw only) |
| cfFixedList[6].cfFixedSecondLevelList[0].functionNo | 10300001 | Not parsed (raw only) |
| cfFixedList[6].cfFixedSecondLevelList[1].code | Seats | Not parsed (raw only) |
| cfFixedList[6].cfFixedSecondLevelList[1].functionName | 座椅 | Not parsed (raw only) |
| cfFixedList[6].cfFixedSecondLevelList[1].functionNo | 10300003 | Not parsed (raw only) |
| cfFixedList[6].cfFixedSecondLevelList[2].code | Heated SteeringWheel | Not parsed (raw only) |
| cfFixedList[6].cfFixedSecondLevelList[2].functionName | 方向盘加热 | Not parsed (raw only) |
| cfFixedList[6].cfFixedSecondLevelList[2].functionNo | 10300004 | Not parsed (raw only) |
| cfFixedList[6].code | One-Tap Prep | Not parsed (raw only) |
| cfFixedList[6].functionName | 一键备车 | Not parsed (raw only) |
| cfFixedList[6].functionNo | 1030 | Not parsed (raw only) |
| cfFixedList[6].sortNum | 89 | Not parsed (raw only) |
| cfFixedList[7].code | 车辆位置 | Not parsed (raw only) |
| cfFixedList[7].functionName | 车辆位置 | Not parsed (raw only) |
| cfFixedList[7].functionNo | 1014 | Not parsed (raw only) |
| cfFixedList[7].sortNum | 14 | Not parsed (raw only) |
| cfFixedList[8].code | FLASHLIGHTNOWHISTLE | Not parsed (raw only) |
| cfFixedList[8].functionName | 闪灯 | Not parsed (raw only) |
| cfFixedList[8].functionNo | 1008 | Not parsed (raw only) |
| cfFixedList[8].sortNum | 8 | Not parsed (raw only) |
| cfFixedList[9].code | FINDCAR | Not parsed (raw only) |
| cfFixedList[9].functionName | 闪灯鸣笛 | Not parsed (raw only) |
| cfFixedList[9].functionNo | 1007 | Not parsed (raw only) |
| cfFixedList[9].sortNum | 7 | Not parsed (raw only) |
| cfPic.clrCode | MR0001 | Not parsed (raw only) |
| cfPic.flag | 0 | Not parsed (raw only) |
| cfPic.picMainUrl | https://yunservice-storage-eu-gcp.byd.auto/autoPic/prod/1660807363859A65E6A4754E3CB5FFF45E1692C768 | Not parsed (raw only) |
| cfPic.picSetUrl | https://yunservice-storage-eu-gcp.byd.auto/autoPic/prod/1660807364FB4A7243CEFA42E8AAD854826BFB9029 | Not parsed (raw only) |
| cfPics[0].clrCode | MR0001 | Not parsed (raw only) |
| cfPics[0].flag | 0 | Not parsed (raw only) |
| cfPics[0].picMainUrl | https://yunservice-storage-eu-gcp.byd.auto/autoPic/prod/1660807363859A65E6A4754E3CB5FFF45E1692C768 | Not parsed (raw only) |
| cfPics[0].picSetUrl | https://yunservice-storage-eu-gcp.byd.auto/autoPic/prod/1660807364FB4A7243CEFA42E8AAD854826BFB9029 | Not parsed (raw only) |

## Push Notifications

> Endpoint fetch failed: TransportError status=404 endpoint=/app/push/getPushSwitchState message=HTTP 404 from /app/push/getPushSwitchState: {
	"timestamp":"<REDACTED>",
	"status":404,
	"error":"Not Found",
	"message":"",
	"path":"/push/getPushSwitchState"
}
