---
title: "completeRequest(completionHandler:)"
framework: callkit
role: symbol
role_heading: Instance Method
path: "callkit/cxcalldirectoryextensioncontext/completerequest(completionhandler:)"
---

# completeRequest(completionHandler:)

Completes the request to the extension context.

## Declaration

```swift
func completeRequest(completionHandler completion: (@Sendable (Bool) -> Void)? = nil)
```

```swift
func completeRequest() async -> Bool
```

## Parameters

- `completion`: A block to be executed after the request to the extension context is completed. If doc://com.apple.documentation/documentation/Swift/true, then any identification or blocking entries added by the extension context were not added to the extension.

## Discussion

Discussion important: You can call this method from synchronous code using a completion handler, as shown on this page, or you can call it as an asynchronous method that has the following declaration: func completeRequest() async -> Bool For information about concurrency and asynchronous code in Swift, see Calling Objective-C APIs Asynchronously. Call this method on the instance of CXCallDirectoryExtensionContext passed as an argument to the block parameter of the  CXCallDirectoryProvider instance method beginRequest(with:). This method should be called once at the end of the block.

## See Also

### Completing Requests

- [isIncremental](callkit/cxcalldirectoryextensioncontext/isincremental.md)
