---
title: ElectricVehicleStatusEvent
framework: energykit
role: symbol
role_heading: Structure
path: energykit/electricvehiclestatusevent
---

# ElectricVehicleStatusEvent

An event that represents the status of an electric vehicle while connected to a charger.

## Declaration

```swift
struct ElectricVehicleStatusEvent
```

## Mentioned in

Providing charging history for electric vehicles

## Overview

Overview Status events can provide additional information in connection with a ElectricVehicleLoadEvent by explaining why a vehicle isn’t charging when connected, when charging will begin, and why charging started or stopped. Unlike load events, which track session-based energy flow with information about continuity included, status events are point-in-time observations without session context. For example, when a vehicle waits for cleaner energy before charging begins, a status event captures this idle state and explains the delay, even though no load event session exists. Submit status events to provide visibility into vehicle behavior and enable the Home app to display an informative activity log. For an example that uses status events, see Optimizing home electricity usage.

## Topics

### Creating a status event

- [init(timestamp:device:venueID:status:stateOfCharge:energy:estimatedRange:chargingTarget:sessionIdentifier:)](energykit/electricvehiclestatusevent/init(timestamp:device:venueid:status:stateofcharge:energy:estimatedrange:chargingtarget:sessionidentifier:).md)

### Getting status information

- [status](energykit/electricvehiclestatusevent/status-swift.property.md)
- [ElectricVehicleStatusEvent.Status](energykit/electricvehiclestatusevent/status-swift.enum.md)
- [stateOfCharge](energykit/electricvehiclestatusevent/stateofcharge.md)
- [energy](energykit/electricvehiclestatusevent/energy.md)
- [estimatedRange](energykit/electricvehiclestatusevent/estimatedrange.md)

### Getting charging targets

- [chargingTarget](energykit/electricvehiclestatusevent/chargingtarget-swift.property.md)
- [ElectricVehicleStatusEvent.ChargingTarget](energykit/electricvehiclestatusevent/chargingtarget-swift.struct.md)

### Identifying the event

- [id](energykit/electricvehiclestatusevent/id.md)
- [timestamp](energykit/electricvehiclestatusevent/timestamp.md)
- [sessionIdentifier](energykit/electricvehiclestatusevent/sessionidentifier.md)

### Identifying the device and venue

- [deviceID](energykit/electricvehiclestatusevent/deviceid.md)
- [deviceName](energykit/electricvehiclestatusevent/devicename.md)
- [venueID](energykit/electricvehiclestatusevent/venueid.md)

## Relationships

### Conforms To

- [Decodable](swift/decodable.md)
- [ElectricalLoadEventProtocol](energykit/electricalloadeventprotocol.md)
- [Encodable](swift/encodable.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [Identifiable](swift/identifiable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Electric vehicle events

- [ElectricVehicleLoadEvent](energykit/electricvehicleloadevent.md)
- [ElectricVehicleChargingReason](energykit/electricvehiclechargingreason.md)
