---
title: "addPasses(_:withCompletionHandler:)"
framework: passkit
role: symbol
role_heading: Instance Method
path: "passkit/pkpasslibrary/addpasses(_:withcompletionhandler:)"
---

# addPasses(_:withCompletionHandler:)

Presents a user interface for adding multiple passes at once.

## Declaration

```swift
func addPasses(_ passes: [PKPass], withCompletionHandler completion: (@Sendable (PKPassLibraryAddPassesStatus) -> Void)? = nil)
```

```swift
func addPasses(_ passes: [PKPass]) async -> PKPassLibraryAddPassesStatus
```

## Parameters

- `passes`: The passes to add.
- `completion`: The completion handler that PassKit calls after the user selects an action. This handler takes the following parameter:

## Discussion

Discussion Use this method whenever the user initiates an action that generates a single pass (like purchasing a concert ticket) or multiple passes (like checking into a multiconnection flight). The user receives a prompt to confirm the overall action or to review the passes individually. If you want to force the user to review individual passes visually before adding them, use an instance of PKAddPassesViewController.

## See Also

### Adding passes

- [canAddSecureElementPass(primaryAccountIdentifier:)](passkit/pkpasslibrary/canaddsecureelementpass(primaryaccountidentifier:).md)
- [canAddFelicaPass()](passkit/pkpasslibrary/canaddfelicapass().md)
- [PKPassLibraryAddPassesStatus](passkit/pkpasslibraryaddpassesstatus.md)
