<!--
{
  "availability" : [
    "iOS: 2.0.0 -",
    "iPadOS: 2.0.0 -",
    "macCatalyst: 13.0.0 -",
    "macOS: 10.0.0 -",
    "tvOS: 9.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 2.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Security",
  "identifier" : "/documentation/Security/errSecDuplicateItem",
  "metadataVersion" : "0.1.0",
  "role" : "Global Variable",
  "symbol" : {
    "kind" : "Global Variable",
    "modules" : [
      "Security"
    ],
    "preciseIdentifier" : "c:@Ea@errSecSuccess@errSecDuplicateItem"
  },
  "title" : "errSecDuplicateItem"
}
-->

# errSecDuplicateItem

The item already exists.

```
var errSecDuplicateItem: OSStatus { get }
```

## Discussion

The system considers an item to be a duplicate for a given keychain when that keychain already has an item of the same class with the same set of composite primary keys. Each class of keychain item has a different set of primary keys, although a few attributes are used in common across all classes. In particular, where applicable, [`kSecAttrSynchronizable`](/documentation/Security/kSecAttrSynchronizable) and [`kSecAttrAccessGroup`](/documentation/Security/kSecAttrAccessGroup) are part of the set of primary keys. The additional per-class primary keys are listed below:

For generic passwords, the primary keys include [`kSecAttrAccount`](/documentation/Security/kSecAttrAccount) and [`kSecAttrService`](/documentation/Security/kSecAttrService).

For internet passwords, the primary keys include [`kSecAttrAccount`](/documentation/Security/kSecAttrAccount), [`kSecAttrSecurityDomain`](/documentation/Security/kSecAttrSecurityDomain), [`kSecAttrServer`](/documentation/Security/kSecAttrServer), [`kSecAttrProtocol`](/documentation/Security/kSecAttrProtocol), [`kSecAttrAuthenticationType`](/documentation/Security/kSecAttrAuthenticationType), [`kSecAttrPort`](/documentation/Security/kSecAttrPort), and [`kSecAttrPath`](/documentation/Security/kSecAttrPath).

For certificates, the primary keys include [`kSecAttrCertificateType`](/documentation/Security/kSecAttrCertificateType), [`kSecAttrIssuer`](/documentation/Security/kSecAttrIssuer), and [`kSecAttrSerialNumber`](/documentation/Security/kSecAttrSerialNumber).

For key items, the primary keys include [`kSecAttrKeyClass`](/documentation/Security/kSecAttrKeyClass), [`kSecAttrKeyType`](/documentation/Security/kSecAttrKeyType), [`kSecAttrApplicationLabel`](/documentation/Security/kSecAttrApplicationLabel), [`kSecAttrApplicationTag`](/documentation/Security/kSecAttrApplicationTag), [`kSecAttrKeySizeInBits`](/documentation/Security/kSecAttrKeySizeInBits), and [`kSecAttrEffectiveKeySize`](/documentation/Security/kSecAttrEffectiveKeySize).

For identity items, which are a certificate and a private key bundled together, the primary keys are the same as for a certificate. Because a private key may be certified more than once, the uniqueness of the certificate determines that of the identity.

---

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)