<!--
{
  "availability" : [
    "iOS: 8.0.0 -",
    "iPadOS: 8.0.0 -",
    "macCatalyst: 8.0.0 -",
    "macOS: 10.15.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 6.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "PushKit",
  "identifier" : "/documentation/PushKit/PKPushRegistry/desiredPushTypes",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Property",
  "symbol" : {
    "kind" : "Instance Property",
    "modules" : [
      "PushKit"
    ],
    "preciseIdentifier" : "c:objc(cs)PKPushRegistry(py)desiredPushTypes"
  },
  "title" : "desiredPushTypes"
}
-->

# desiredPushTypes

Registers the push types for this push registry object.

```
var desiredPushTypes: Set<PKPushType>? { get set }
```

## Discussion

When you assign a value to this property, the push registry object makes a registration request with the PushKit server. This request is asynchronous, and the success or failure of the request is reported to your registry’s delegate object. For a successful registration, PushKit delivers a push token to the delegate. Use that token to generate push requests from your server.

For a list of push types that you may include in the set, see [`PKPushType`](/documentation/PushKit/PKPushType).

---

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)