<!--
{
  "availability" : [
    "iOS: 11.0.0 - 18.0.0",
    "iPadOS: 11.0.0 - 18.0.0",
    "macCatalyst: 13.1.0 - 18.0.0",
    "macOS: 10.13.0 - 15.0.0",
    "tvOS: 11.0.0 - 18.0.0",
    "visionOS: 1.0.0 - 2.0.0",
    "watchOS: 4.0.0 - 11.0.0"
  ],
  "documentType" : "symbol",
  "framework" : "CloudKit",
  "identifier" : "/documentation/CloudKit/CKUserIdentity/contactIdentifiers",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Property",
  "symbol" : {
    "kind" : "Instance Property",
    "modules" : [
      "CloudKit"
    ],
    "preciseIdentifier" : "c:objc(cs)CKUserIdentity(py)contactIdentifiers"
  },
  "title" : "contactIdentifiers"
}
-->

# contactIdentifiers

Identifiers that match contacts in the local Contacts database.

```
var contactIdentifiers: [String] { get }
```

## Discussion

Identities that CloudKit discovers using [`CKDiscoverAllUserIdentitiesOperation`](/documentation/CloudKit/CKDiscoverAllUserIdentitiesOperation) correspond to entries in the local Contacts database, matching the identifier on <doc://com.apple.documentation/documentation/Contacts/CNContact>.  Use these identifiers with the Contacts database to get additional information about the contacts. Multiple identifiers can exist for a single discovered user because multiple contacts can contain the same email addresses or phone numbers.

To transform these identifiers into an array of unified contact identifiers, create a predicate by calling the <doc://com.apple.documentation/documentation/Contacts/CNContact/predicateForContacts(withIdentifiers:)> method, and then pass that predicate to the <doc://com.apple.documentation/documentation/Contacts/CNContactStore/unifiedContacts(matching:keysToFetch:)> method.

---

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)