<!--
{
  "availability" : [
    "iOS: 16.0.0 -",
    "iPadOS: 16.0.0 -",
    "macCatalyst: 16.0.0 -",
    "macOS: 13.3.0 -",
    "watchOS: 9.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "CarKey",
  "identifier" : "/documentation/CarKey/VehicleReport",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "CarKey"
    ],
    "preciseIdentifier" : "s:6CarKey13VehicleReportV"
  },
  "title" : "VehicleReport"
}
-->

# VehicleReport

A type that contains information about a vehicle configured for
remote keyless entry in the user’s Apple Wallet.

```
struct VehicleReport
```

## Overview

A `VehicleReport` type provides information about a vehicle
you manufacture. The system generates a vehicle report for each
vehicle that matches your company’s make, and that the owner
configured in their Apple Wallet. Use a vehicle report to get
information about the vehicle, such as whether it’s currently
connected and able to receive commands. You can also use the
report to determine which vehicle features you can operate
from your app.

A vehicle can optionally attach proprietary data to one of its function
identifiers. You might use this data to support additional features
related to that vehicle feature. For example, you might want to
attach a unique security code to the door lock function. Use the vehicle
report to retrieve any data your vehicle sends. If the vehicle
sends new data, the system updates the report and notifies your
session delegate.

## Topics

### Getting the Vehicle Details

[`let identifier: String`](/documentation/CarKey/VehicleReport/identifier)

The string you use to identify the vehicle when making requests.

[`var isConnected: Bool`](/documentation/CarKey/VehicleReport/isConnected)

A Boolean value that indicates whether the vehicle is currently
connected over Bluetooth.

### Getting the Vehicle’s Supported Functions

[`var supportedFunctions: [FunctionIdentifier]`](/documentation/CarKey/VehicleReport/supportedFunctions)

An array of function identifiers that indicates the features
the vehicle supports, populated only after the first BLE connection
with the vehicle.

[`func status(for: FunctionIdentifier) throws -> FunctionStatus?`](/documentation/CarKey/VehicleReport/status(for:))

Returns the current status of the specified vehicle function.

[`struct FunctionStatus`](/documentation/CarKey/FunctionStatus)

A value that the vehicle can return to indicate the status of
a particular vehicle feature.

### Fetching Data Sent by the Vehicle

[`func proprietaryData(for: FunctionIdentifier) throws -> Data?`](/documentation/CarKey/VehicleReport/proprietaryData(for:))

Retrieves the proprietary data associated with one of the
vehicle’s functions.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)