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

# RemoteKeylessEntryEnduringAction

An action with an optional stopping point that you want to perform
on a vehicle.

```
struct RemoteKeylessEntryEnduringAction
```

## Overview

Use a [`RemoteKeylessEntryEnduringAction`](/documentation/CarKey/RemoteKeylessEntryEnduringAction) object to store details about
an action that you can stop or let run to completion. For example,
you might use this type of action to lower or raise the top
of a convertible vehicle. The object stores information about
the vehicle feature to control and the action to take on that
feature. It also stores the identifier for the vehicle itself.

After you create a [`RemoteKeylessEntryEnduringAction`](/documentation/CarKey/RemoteKeylessEntryEnduringAction) object, call
your session’s [`perform(_:)`](/documentation/CarKey/CarKeyRemoteControlSession/perform(_:)-7mpsy) method
to execute the action. Use the returned
[`RemoteKeylessEntryAction.ExecutionRequest`](/documentation/CarKey/RemoteKeylessEntryAction/ExecutionRequest) object to determine
the success or failure of the request.

## Topics

### Creating the Action Request

[`init(functionID: FunctionIdentifier, actionID: ActionIdentifier, vehicleID: String)`](/documentation/CarKey/RemoteKeylessEntryEnduringAction/init(functionID:actionID:vehicleID:))

Creates a new action object with the specified action-specific
details and vehicle ID.

### Receiving the Action’s Response

[`class EnduringExecutionRequest`](/documentation/CarKey/RemoteKeylessEntryEnduringAction/EnduringExecutionRequest)

An object that reports the results of an action with an
optional stopping point.

### Getting the Action Details

[`let functionID: FunctionIdentifier`](/documentation/CarKey/RemoteKeylessEntryEnduringAction/functionID)

The vehicle-specific code that identifies which feature you
want to control.

[`let actionID: ActionIdentifier`](/documentation/CarKey/RemoteKeylessEntryEnduringAction/actionID)

The vehicle-specific code that identifies what action
to take on the targeted feature.

[`let recipientVehicleID: String`](/documentation/CarKey/RemoteKeylessEntryEnduringAction/recipientVehicleID)

The vehicle to receive the action request.



---

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)