---
title: "update(_:completionHandler:)"
framework: coretelephony
role: symbol
role_heading: Instance Method
path: "coretelephony/ctcellularplanprovisioning/update(_:completionhandler:)"
---

# update(_:completionHandler:)

Updates the capability and region availability for an eSIM.

## Declaration

```swift
func update(_ properties: CTCellularPlanProperties, completionHandler: @escaping @Sendable ((any Error)?) -> Void)
```

```swift
func update(_ properties: CTCellularPlanProperties) async throws
```

## Parameters

- `properties`: A required parameter where you specify the eSIM’s doc://com.apple.coretelephony/documentation/CoreTelephony/CTCellularPlanProperties/associatedIccid, doc://com.apple.coretelephony/documentation/CoreTelephony/CTCellularPlanProperties/simCapability and doc://com.apple.coretelephony/documentation/CoreTelephony/CTCellularPlanProperties/supportedRegionCodes-yhu5. If missing, an error is returned. You are allowed to provide an empty list for supportedRegionCodes.
- `completionHandler`: A completion handler that executes after processing the request. The parameter passed to the completion handler indicates whether the request succeeded, failed, or ended in an unknown state.

## Overview

Overview When you can’t call addPlan(request:properties:completionHandler:) because a person installs your SIM with a QR Code, a universal link, or a physical SIM, use this method to issue eSIM property information for a particular eSIM before provisioning begins. Use the associatedIccid so that the system can match the future install with your provided property information. You can also use this method to update information on an ICCID that already exists on the device. After matching the associatedICCID, the system updates the eSIM with the information you provide.
