<!--
{
  "availability" : [
    "macOS: 10.15.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "SystemExtensions",
  "identifier" : "/documentation/SystemExtensions/OSSystemExtensionRequestDelegate/request(_:didFinishWithResult:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "System Extensions"
    ],
    "preciseIdentifier" : "c:objc(pl)OSSystemExtensionRequestDelegate(im)request:didFinishWithResult:"
  },
  "title" : "request(_:didFinishWithResult:)"
}
-->

# request(_:didFinishWithResult:)

Tells the delegate that the manager completed the request.

```
func request(_ request: OSSystemExtensionRequest, didFinishWithResult result: OSSystemExtensionRequest.Result)
```

## Parameters

`request`

The request that completed.

`result`

Additional information about the completion state.

## Discussion

If the request completes with the [`OSSystemExtensionRequest.Result.willCompleteAfterReboot`](/documentation/SystemExtensions/OSSystemExtensionRequest/Result/willCompleteAfterReboot) result, then the extension isn’t active until after the next restart. After restarting, the most recently-processed request determines the extension’s state. Consider the following scenarios:

- Activate extension and restart: the extension is active upon restarting.
- Activate extension, deactivate extension, and restart: the extension is inactive upon restarting.

---

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)